Этот пост про то, что Эволюция как подход вообще не используется (как в жизни так и в АйТи).
Сейчас особенно модно быть РЕВОЛЮЦИОНЕРОМ, хотя никто не оценивает последствия от таких революционно действий. Как правило революция заканчивается полным вакуумом на некоторое время, нервами, бешеной разработкой в надежде, что все вдруг срастется.
Основная причина такой ситуации мне видится в очень агрессивной современной рекламе и методах создания интереса покупателя. Чтобы товар был продаваемым, он должен превосходить все, давая что-то супер-новое, прорывное. Многие еще до сих пор живут на волне iPhone и iPad, но такие вещи не случаются каждый день и не должны случаться.
А теперь - ближе к разработчику, итак... Думаю, что каждый... разработчик или команда сталкиваются с моментом, что есть старые проекты. Они важны - но с технической точки зрения стали балластом. Никто не хочет ими заниматься, хотя они по-прежнему важны. Каждый только при мысли об этом, уже не хочет работать.
Естественно в какой-то момент появляется желание вообще все переделать, сделать лучше быстрее и вообще...) Но ресурсов то на это нет. И )) все хотят быть революционерами и создавать только абсолютно новое. Но....
Мой собственный опыт показывает, что есть несколько вопросов, ответив на которые все станет понятно... и все захотят работать.
Вопросы:
После многих переработок мне пришлось признать, что качество работы и понимание разработчика не полные, если он не умеет переработать проект. Как правило, при плавном переходе технологию проекта приходится узнавать лучше. Да и затраты ресурсов при эволюционном подходе в разы меньше.
Самому до винтиков пришлось узнать Zend Framework просто дорабатывая старый проект.
Так же есть древний проект с аналитикой и графиками на библиотеке http://www.pchart.net.
Эта библиотека мягко скажем не новая, а сейчас модная уже https://d3js.org.
Но работая со старой библиотекой в старом проекте часто наслаждаюсь тем, сколько всего в нее заложили кучу лет назад. В ново проекте pChat не будет использоваться, но в старом проекте некоторые вещи и не представляю как сделать на d3.js.
Главный вывод - если все-таки приходится поддерживать проект, надо внедрять самое свежее, и тогда он прекратит быть Мертвым грузом.
Это не призыв отказа от Революции. Иногда без этого никак, если отставание слишком большое, это скорее рассуждения о том, что не надо допускать ситуации, где революция это единственный метод.