Поэтому я хочу заявить: нынешняя ситуация — полное дерьмо. Как инженеры, мы можем и должны, и сделаем лучше. У нас могут быть лучшие инструменты, мы можем создавать лучшие приложения, более быстрые, предсказуемые, более надёжные, использующие меньше ресурсов (на порядки меньше!). Мы должны глубоко понять, что мы делаем и почему. Мы должны выпускать продукты надёжно, предсказуемо, с самым высоким качеством. Мы можем и должны гордиться нашей работой. Не просто «учитывая то, что у нас было...» — никаких оговорок!
Хоть бы ссылку на оригинал приложили.
Сделаю за вас: http://tonsky.me/blog/disenchantment/
Перевод на русский: https://habr.com/post/423889/
Просто я нашел статью не там, и ссылки и авторства не было на сайте, где я прочитал ее. Так что пардоньте, если задел чувства пишущих :)
Быстрый софт писать дольше, вот и все объяснение. Плюс квалификация у программистов для этого должна быть выше. А дальше чистая экономика: стоят ли такие жертвы результата? Будет ли это иметь значение для потребителя? Затратив столько времени на разработку - не опередят ли нас конкуренты?
Я по своему опыту знаю, как красивые программы превращаются в чудовища Франкенштейна, просто потому что заказчики:
- хотят, чтобы было как в прошлой программе, даже если там был пи@#$ец;
- хотят, чтобы было так, как они хотят, даже если они не смыслят в дизайне интерфейса, архитектуре программы, а их желания противоречат здравому смыслу;
- не хотят быть уволенными, поэтому полностью автоматизировать рабочие процессы нельзя;
- их так много, и каждый хочет свое, и часто их желания противоречат друг другу;
- хотят, чтобы вы переделали все, что делали последние полгода, потому что изменился регламент, требования и законодательство;
- хотят чтобы это было в программе, потому что это круто и есть у всех, даже если они этой функцией никогда не воспользуются.
Также
- заказчику нужна интеграция с существующим говном. Для интеграции подтягиваются библиотеки, состоящие из охуллиона зависимостей и увеличивающие размер до ошеломляющих результатов. Иногда говно не очень ценное (системы статистики, я не верю в аналитиков и их способности читать огромные отчеты статистики), а иногда жизннено важное (доход от рекламы, интересующихся отсылаю к плагинам Appodeal, к примеру, которые способны превратить простенький match-3 в дистрибутив под 100 мегабайт)
- в команде есть разработчики, которые умеют делать то, что нужно - но на существующем наборе библиотек из охуллиона зависимостей. А супер-разработчики вроде Возняка могут написать все быстрее и короче, но у них нет опыта в том, что нужно, а самое главное - потом вы не найдете разработчика, который все это будет поддерживать.
Вот известная цитата:
"В 1976 году по договоренности с Джобсом Возняк за четыре дня создал прототип печатной платы игры Pong для компании Atari в Лос-Гатос, которая выпускала игровые автоматы. Возняк должен был упростить автомат с классической игрой Ping Pong. Он, будучи, перфекционистом, разработал плату в максимально упрощённой схеме, снизив при этом число микросхем TTL всего до 42 штук. Этот дизайн он отдал Джобсу, но его было невозможно воплотить в аппаратуру — он был слишком компактным и сложным, чтобы его можно было внедрить в производстве Atari того времени.
...
Для производства Atari пришлось разработать собственную версию, которая содержала около 100 микросхем. "
Я вообще не понимаю, как это возможно: текстовой процессор тормозит на 4-х ядерном компе. А если надо открыть 3 разных браузера, чтобы потестировать сайт, то это вообще кабздец - прощайте 8 гигов оперативы. Реально, это не прогресс, а свалка технологий, которая растет год от года.
Что мешает поставить офис 2003 или что-то ещё проще?
Реально, это не прогресс, а свалка технологий, которая растет год от года.Это прогресс, но он линейный. Данных больше - кода больше - места больше.