Это перевод забавной заметки Alex Papadimoulis, основателя «The Daily WTF».
Во время разработки хорошего программного обеспечения, мы всегда находимся под давлением сразу с нескольких фронтов.
Во-первых, опасность представляют новички, которые кое-как смогли получить свое первое место работы, прочитав «Программирование для чайников» накануне, перед собеседованием.
Во-вторых, нам грозят начинающие карьеристы, которые смогли удачно устроиться после завершения первого контракта (читайте: получили деньги, а клиент не засудил их за разработку бесполезного продукта). Иногда им даже удается построить карьеру, ухитрившись повторить этот путь несколько раз.
И наконец, есть «Усложнители», или "МегаРешатели" (найти удачный громкозвучный перевода слова «Complicators», не удалось, поэтому — «МегаРешатели». — прим. переводчика), еще одна сторона, которая заманивает лучших из нас присоединиться к ним, даже всего лишь на один или два микро-проекта.
Есть люди, которые настолько глубоко погрязли в решениях Мега-Проблем, что они словно приобрели некое шестое чувство: способность находить Мега-Проблемы («решение проблемы, которое создает еще одну проблему в процессе решения реальной проблемы») в любом месте.
Мы видели много таких систем и продуктов, созданными такими "МегаРешателями". Они выглядят как функциональные приложения типа «матрешка», которые состоят решений, влекущих за собой другие проблемы и решения этих проблем, и так до бесконечности.
Иногда следует давать шанс возможности найти решение проблемы, не используя информационные или инновационные технологии. Я часто задумывался, какой удачный пример такого абсурда можно привести. К счастью, один мой знакомый, Майк, дал нам такую возможность.
В корпорации, где работает Майк, есть общая электронная доска сообщений, где все сотрудники могут спросить совет, или поделиться своей идеей со всеми разработчиками.
Однажды, один разработчик, сеньор архитектор из офиса с восточного побережья, запостил следующее:
[Off-Topic] Апгрейд велосипеда
Сегодня я добирался на работу на велосипеде, и спросил сам у себя — ну почему, почему никто не придумал велосипед с подогревом руля?
Из-за этих новоанглийских утренних морозов, мои руки леденеют, а суставы жутко ноют!
Кто-нибудь слышал что-то про такие штуки?
Первый ответ был от разработчика, который работал в отделе Майка, и отвечал за самый запутанный и странный компонент в их приложении:
Быстрое гугление не нашло ничего готового, но я думаю, что это шикарная идея!
Давайте сделаем такую штуку сами!
Я уже придумал примерную реализацию, и вижу ее так: прицепить динамо-машину к педалям, пропустить провода через раму и приделать обогревательную электросеть на рукоятку руля.
Этот ответ запустил целую лавину обсуждений. Разработчики разных уровней, из разных отделов вступали в обсуждение, предлагали свои варианты, вроде дополнительных аккумуляторов, еще одной динамо-машины работающей от переднего колеса, чтобы использовалась энергия наката и другие. После обеда ход дискуссии несколько замедлился, но идеи стали выдвигаться более сложные и продвинутые:
Предлагаю блестящую идею:
Мы можем использовать тепло нашего тела более эффективно! Кроме того, такой подход также можно будет использовать во время ходьбы или бега. Нужно сделать тонкую куртку, под верхнюю одежду, но плотную, типа ветровки, и несколько теплопроводных гибких трубок, чтобы передавать тепло от живота (который, похоже, никогда не замерзает). Небольшие клапаны на рукавах будут помогать передавать нагретую жидкость на руки, где тепло будет распределяться при помощи сети более тонких трубок.
Вода будет циркулировать, благодаря односторонним клапанам из-за сжатия-расжатия от движения при ходьбе или езде на велосипеде.
Если что, мы можем добавить небольшой аккумулятор или динамо, чтобы запитать внешний обогреватель для жидкости.
Очевидно, что с велосипедом это реализовать проще, я так думаю.
К счастью, в компании Майка, работал как минимум один адекватный разработчик, который вступил в обсуждение анонимно.
Это самая идиотская дискуссия, которую я когда-либо читал… ну точнее за последние несколько дней, перед которыми вы обсуждали архитектуру UND компонента.
Причина, по которой «система подогрева рук» еще никем не разработана, заключается в том, что большинство нормальных людей просто купили себе пару перчаток. Перчатки весьма эффективно сохраняют тепло рук.
К несчастью для нашего примера (а например, я бы хотел подождать и посмотреть парочку диаграмм и схем от "МегаРешателей"), после этого ответа, дискуссия про «систему подогрева рук» завершилась.
Напоследок, я хочу дать маленький совет:
В следующий раз, когда вы будете разрабатывать новый продукт, берегитесь "МегаРешателей".
Перед тем, приступить к непосредственно разработке — остановитесь на минуту, возьмите себя в руки, окиньте ваш дизайн проекта общим взглядом и мысленно произнесите про себя "Перчатки".
The Complicator's Gloves
Feature Articles by Alex Papadimoulis on 2007-01-16
Автор: saboteur_kiev