Антон Игоревич написал:

#186533
nblkanblka
Участник
  • Томск
Антон Игоревич wrote:
Ойлорд wrote:

Такой же сговор наблюдается в IT и интернете — производители софта делают его все более тяжелым, что бы покупали более лучшие процессоры, веб-сайты делают все тяжелее, что бы был больше траффик.

Сравните Ленту.ру сейчас и 15 лет назад — информации столько же, а грузится в разы дольше.

Тут все проще, если производитель софта знает, что средлний потребитель давно имеет 2+ядра, 2+ ГГц, 2+ Гб и мегабитный канал, зачем тратить время на оптимизацию алгоритмов под третий пентиум и диалап модем. Большиснтво разницы не увидит, а софт получится дороже.

Другое дело, что в плане качества тоже полнейший мрак настает. Раньше выпустить на CD софт, который бы не запустился у всех владельцев процессоров AMD — это был бы провал. А сейчас при запуске обновления проверятся, патч, исправляющий багу подтянется и все запустится. А узнают об этом только те первые владельцы AMD, которые писали письма в службу поддержки.

опять заговор нашли никто специально не делает продукты более тяжелыми и более требовательными. Увеличение размера и требований ПО со временем обусловлено следующими факторами:

  • переиспользование библиотек ускоряет разработку в разы, а чем выше скорость разработки, тем более конкурентноспособна компания. Те, кто медленно разрабатывает, оптимизируя размер или требования, вымирает. А в библиотеках, которое софт тащит с собой, собрано как то, что нужно софту для работы, так и то, что не используется.
  • Сами библиотеки — это слоеный пирог из вызовов функций других написанных ранее библиотек, все это накапливается как снежный ком. Уровни абстракции все время растут, и это имеет плюс в виде более унифицированного подхода, но минус в увеличении накладных расходов.
  • Функциональность софта тоже расширяется, а чем больше возможностей, тем больше кода нужно для обеспечения этих возможностей.
  • Часто быстрее написать нужный софт на языке, работающем в медленно исполняющейся среде, чем париться с тем же C/C++ (впрочем и там всякие Qt/boost дофига весят)
  • Лента.ру стала не только тяжелее, но и красивее, и интерактивнее, и с большими возможностями. Раздувание размера — следствие этого.
  • Программирование стало более доступной профессией, и в нее приходят не только "звезды", как когда-то раньше, но и "середнячки", и "нубы", это сказывается на размере и скорости работы. Особенно это заметно в вебе. Обратной стороной этого является увеличение количества разрабатываемых продуктов и средств их разработки.
  • Есть такое понятие, "преждевременная оптимизация", в разработке ПО она считается злом — в том смысле, что нельзя заранее сказать, что данный кусок кода нужно заранее оптимизировать по быстродействию. Правильная стратегия — сначала разработать, а потом пройтись анализатором, чтобы он показал, какие куски кода оказывают наибольшее влияние на быстродействие при работе приложения в целом. Часто анализ происходит уже на пользователях (снова для ускорения вывода продукта на рынок)
  • Основная цель любого стартапа — как можно быстрее провалиться стратегия называется "fail fast". Смысл ее в том, чтобы как можно раньше выпустить на рынок "минимально ценный продукт" (MVP, minimal viable product), с тем, чтобы оценить, будет он пользоваться спросом или нет. Если да — продукт можно улучшить или даже заново переписать, уже по уму. Если окажется что нет — продукт надо поскорее выбросить и не тратить на него время, а заняться следующей идеей. Мир разработки ПО в век интернета это позволяет делать — требований и сертификаций никаких, ответственности в потребительском сегменте тоже (это не ПО для ракет делать, там уже все серьезно).

Почитайте здесь или тут, и убедитесь, что теория заговора здесь излишня.