[Перевод] Перчатки для тех, кто всё усложняет
Хорошее программное обеспечение всегда находится под атакой критиканов. С одного фронта нападают дилетанты, которым как-то удалось заполучить масштабный проект несмотря на то, что они буквально вчера ночью дочитали «Программирование для чайников». Затем идут профессиональные дилетанты, которые добились успеха после своего первого контракта (читай: получили деньги, которые впоследствии у них не отсудили — несмотря на то, что они разработали бесполезный продукт). И после этот сделали себе карьеру, просто повторяя этот «успех» снова и снова. Наконец, есть те, кто всё усложняет. Самое плохое, что к их числу часто примыкают лучшие из нас (по крайней мере на один-два проекта).
У любителей усложнять появляется что-то наподобие шестого чувства, которое помогает им найти мета-проблему. По существу, они могут найти мета-проблему во всём. Мы все видели эти едва работающие приложения, которые создаются благодаря стараниям этих людей и скорее напоминают матрёшку, где череда проблем и их решений следуют одна за другой. Меня всегда занимало, как эти люди поведут себя за пределами информационных технологий. К счастью, такую возможность мне предоставил Майк.
В системе корпоративного интранета Майк заведует форумом, где разработчики программного обеспечения могут спросить совета или поделиться идеями с другими разработчиками внутри компании. Недавно один из архитекторов программного обеспечения из их офиса с восточного побережья написал следующее:
[не в тему] Улучшение велосипеда
Пока я ехал на работу на велосипеде, мне пришла мысль –, а почему никто не изобретет велосипед с подогреваемыми ручками руля? У нас в Новой Англии по утрам иногда так холодно, что пальцы ломит. Кто-нибудь видел, слышал о чем-нибудь подобном?
Первый ответ был от другого программиста из отдела Майка, который, как оказалось, был ответственным за один из самых «усложненных» компонентов приложения.
Ничего не нашел в гугле, но я думаю, что это просто фантастическая идея. Давай сделаем такой! У меня уже есть в голове примерная схема: присоединить генератор тока к педалям, провести несколько проводов через раму и добавить стальную сетку на ручки руля.
Лёд тронулся! Несколько программистов из разных отделов присоединились к обсуждению со своими предложениями, начиная с того, что нужна запасная батарея, и заканчивая тем, что нужен дополнительный генератор на переднем колесе, который будет использоваться только во время спуска. После обеда дискуссия стала «упрощаться»:
Это просто потрясающе: мы можем использовать температуру тела более эффективно! В этом случае наша система может также использоваться во время ходьбы и бега.
Нам нужно просто использовать тонкий внутренний жакет (по типу штормовки) и запустить несколько гибких трубок от краешка рукава к диафрагме (которая, кажется, никогда не охлаждается). По этим трубкам вода, согретая диафрагмой, будет доставляться к ладоням.
Вода будет циркулировать за счет специальных клапанов и движений, вызываемых ходьбой или вращением педалей. При необходимости, мы можем добавить батарею/ обогреватель для дополнительного подогрева воды. Конечно, он будет работать только у велосипедистов.
К большому счастью, в компании Майка есть по крайней мере один здравомыслящий разработчик. Он присоединился к дискуссии анонимно:
Это одна из самых идиотских дискуссий, которую мне доводилось читать… хм… с прошлой недели, когда вы обсуждали архитектуру для UND компонента.
Подогревателя для рук не существует, потому что большинство людей нашли пару перчаток идеально подходящими для того, чтобы руки не мёрзли.
К несчастью для нас, этот ответ быстро завершил дискуссию об «обогревателе для рук». Но я оставлю вам небольшой совет. В следующий раз, когда вы будете разрабатывать программное обеспечение, бегите подальше от тех, кто всё усложняет. Посмотрите строго, очень строго, на вашу первую версию. А потом просто скажите себе: «перчатки».