Эволюция ПО
Jan. 25th, 2012 10:06 am![[identity profile]](https://www.dreamwidth.org/img/silk/identity/openid.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
Почему так часто программное обеспечение эволюционирует в обратном направлении? Т.е. из удобной и безглючной программы, с выпуском все новых версий, постепенно превращается в жуткого монстра, который тормозит даже на неплохих компьютерах? Как браузер может занимать 500 000 000 байт оперативной памяти?! Зачем программа для записи дисков (больше от нее никогда ничего не требовалось!) пытается по функционалу сравниться с операционной системой, со всеми вытекающими для быстродействия?
no subject
Date: 2012-01-25 08:02 am (UTC)no subject
Date: 2012-01-25 08:04 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:03 am (UTC)Т.е. скоро в браузерах в идеале вся работа будет выполняться.
Остальное - дурновкусие, чо. Попытки выкрутить побольше прибылей и тупое следование моде - ГУИ всякие и прочее.
Ну и рост индустрии надо учитывать - нынче 500 метров оперативы - уже не особо-то и цифра.
no subject
Date: 2012-01-25 08:15 am (UTC)Когда браузер на 3-4 страничках жрет 500 метров оперативы это в скорей всего ненормально.
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:11 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:09 am (UTC)Но вообще да, ад и содомия.
no subject
Date: 2012-01-25 08:10 am (UTC)1. Снизить цену. У софта это получается прекрасно. Вплоть до отрицательной цены. Но ограничением являются свободные бесплатные приложения без рекламы.
2. давить на мозг (think different) и вбухивать бюджеты в раскрутку.
3. Прикрутить побольше свистелок и перделок, которые ни кому не нужны, а просто позволяют выделиться длинным списком.
no subject
Date: 2012-01-25 08:49 am (UTC)2) давит на мозг, но в обратном направлении, чем больше свистелок и перделок тем больше я понимаю, что свои прямые обязанности программа будет выполнять с трудом.
3)см п.2)
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:14 am (UTC)no subject
Date: 2012-01-25 08:29 am (UTC)no subject
Date: 2012-01-25 09:09 am (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:30 am (UTC)no subject
Date: 2012-01-25 08:50 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 08:34 am (UTC)no subject
Date: 2012-01-25 09:09 am (UTC)no subject
Date: 2012-01-25 08:34 am (UTC)а стала какая-то касперщина
улучшили, блин
no subject
Date: 2012-01-25 08:51 am (UTC)no subject
Date: 2012-01-25 08:34 am (UTC)no subject
Date: 2012-01-25 08:52 am (UTC)no subject
Date: 2012-01-25 08:40 am (UTC)no subject
Date: 2012-01-25 08:52 am (UTC)(no subject)
From:no subject
Date: 2012-01-25 08:44 am (UTC)Пользую Адобе с 3 фотошопа и 7 иллюстратора (ну и ИнДи, как только появился) и скажу вам, что на CS3 (а то и CS2) можно было бы вполне остановиться. "Ничего хорошего из тебя не выйдет"
CS4, CS5, CS5.5, сейчас вот CS6 грозятся выплюнуть — а нахрена? Полезных, реально нужных для работы препресса вещей практически не добавилось. А вот всякой идиотский вэбщины, свистелок\перделок и перерисованного инопланетянами интерфейса - это вагон.
Клепать по версии раз в год это похабщина ИМХО.
no subject
Date: 2012-01-25 08:49 am (UTC)no subject
Date: 2012-01-25 08:49 am (UTC)no subject
Date: 2012-01-25 08:54 am (UTC)no subject
Date: 2012-01-25 09:25 am (UTC)no subject
Date: 2012-01-25 09:26 am (UTC)В стране цельнопизженного ПО легко рассуждать о бесполезности всяких монструидальных комбайнов типа неры, типа сделаю все за 99.99USD, а ещё я умею писать болванки. А если посчитать, во что выливается покупка всего софта, который может заменить один большой и сравнительно недорогой пакет, задумаешься.
no subject
Date: 2012-01-25 09:28 am (UTC)небожительэмигрант подтянулся?(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 12:12 pm (UTC)no subject
Date: 2012-01-25 12:16 pm (UTC)одно из объяснений-это то, что необходимость в записи на диск с каждым годом заметно уменьшается, поэтому в прогу и пытаюсь запихнуть все больше других функций
no subject
Date: 2012-01-25 01:26 pm (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 01:59 pm (UTC)хороших антипример - тех
no subject
Date: 2012-01-25 02:23 pm (UTC)no subject
Date: 2012-01-25 04:00 pm (UTC)Не очень мной любимый Apple -- один из редких примеров компании, которая умеет вовремя остановиться.
2. Говорю как разработчик одного из тех, жрущих 500M памяти, браузеров. Стандарты, на которых основывается интернет, не стоят на месте. HTML5 + CSS3 -- значительно сложнее, чем HTML 2.0 из 95-го года. Написать маленький браузер, который бы поддерживал все современные технологии уже физически невозможно. В браузере должен быть и отрисовщик страниц, и быстрый интерпретатор JavaScript, и механизм расширений, и WebGL, позволяющий прям в браузере написать 3D-шутер, качественный код для проигрывания разных форматов аудио и видео, и много всего другого. Без всего этого программа не сможет называться современным браузером.
Но это ещё полбеды. Всё вышеперечисленное, а особенно наиболее используемые части, должно работать БЫСТРО. И добиться этого совсем не так просто. Для того чтобы работать быстрее, приходится усложнять код. Добавлять слои кэширования, откладывать загрузку модулей, заменять простые интерпретаторы JIT-компиляторами. Всё это требует памяти.
no subject
Date: 2012-01-25 04:11 pm (UTC)Для начала, задействование бОльшего количества памяти позволяет подчас быстрее работать - например, не морочиться с каким-либо сжатием переменных, зачастую такой подход оправдан. Или запихъивание ВСЕХ данных/инструкций в оперативку - увеличение кешей тоже благотворно сказывается на скорости выполнения.
Затем, вспомним, как пользовались компом 2-3 года назад. Это сейчас 20 открытых окон/вкладок браузера никого не удивляют... А тогда это было МНОГО и те же 500мб оперативки отжирали наура. Далее, вспомним наши первые впечатления после апгрейда (чем сильнее он был, тем лучше). АААА, всё летает!!!! Только через неделю стоит буквально чуть-чуть замедлить скорость - и кажется, что всё начинает еле-еле шевелиться. Хотя это всё равно намного быстрее, чем было раньше.
Далее, любовь к визуализации у браузеров (безопаснее, надежнее, совместимее, но опять же доп. память).
Далее, более сложные логические структуры - они оооой как любят кушать память. Опять же, языки програмирования, предлагающие более высокий уровень абстракции, более прожорливы.
Опять же, софт, сделаный "модульно", будет более прожерлив до памяти, но если что- его проще отлаживать, исправлять ошибки, он будет более "правильный" и так далее. Опять же, добавление 90% функционала запросто может быть незамеченым пользователями - например, с точки зрения пользователя мозилла 3.5 мало чем отличается от 8, а на самом деле у них совершенно разные "рисовалки" страниц, очень сильное отличие в плане поддерживаемых технологий отрисовки. (другое дело, что 8.0 это на самом деле 4.4, но это уж так повелось... Андройд вон тоже 1.6 максимум на 1.0 тянул, а то и на 0.9. Корпорация добра, блин...)
Подытожу. Кроме клинических случаев - это либо а) возможность писать софт не через задницу, т.к. ресурсов заведомо хватит для производительности, заведомо превышающей человеческие возможности (т.е. компьютер всё равно всё отрабатывает быстрее человека), либо б) ускорить работу этого продукта, получив какие-то "минусы" (например, вин7 по 100мбит сетке кидает медленнее чем хр где-то на 5-10%, зато по 1гбит - раза в 2-3, за счёт смены протокола CIFS). Например, отжирая больше памяти раза в 2, программа будет на 5-10% быстрее - при учёте цены на память это более чем оправдано. Или получая новые возможности, о которых большинство не догадывается, но которые позволяют сильно ускорить работу (человека, а не машины), пожертвовав производительностью. Пример - WinNT6+.
no subject
Date: 2012-01-25 05:19 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-01-25 07:56 pm (UTC)Как следствие:
- высокоуровневое программирование, вылизывать код некогда и некому, утечки памяти местами чудовищные;
- найм низкооплачиваемого персонала (индусы и студенты), который генерит говнокод, понять логику которого и отладить невозможно;
- сокращение времени на тестирование и отладку, баги правятся кое-как и не все, лепятся заплатки "по живому месту", само исправление бага порождает новый баг;
- относительная дешевизна аппаратных ресурсов - памяти дохрена, процессор мощный - не хватит, так пользователи прикупят еще;
- желание обвешать свой продукт кучей фич и рюшечек, которые жрут ресурсы и порождают баги;
- начхательство на стандарты и спецификации, которое порождает проблемы стыкуемости компонентов от разных разработчиков.