Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Как-то раз Верди, уже убеленный сединами и знаменитый на весь мир, беседовал с одним начинающим композитором. Его собеседнику было восемнадцать лет. Он был совершенно убежден в собственной гениальности и все время говорил только о себе и своей музыке.
Верди долго и внимательно слушал молодое дарование, а потом с улыбкой сказал:
— Мой дорогой юный друг! Когда мне было восемнадцать лет, я тоже считал себя великим музыкантом и говорил: «Я». Когда мне было двадцать пять лет, я говорил: «Я и Моцарт». Когда мне было сорок лет, я уже говорил: «Моцарт и я». А сейчас я говорю просто: «Моцарт!».
Однажды молодой композитор пришел к Моцарту. Он хотел знать, как развить свой талант.
— Думаю, нужно начать с простых композиций, — посоветовал Моцарт. — Песен, например.
— Но вы ведь сочиняли симфонии еще будучи ребенком! — запротестовал молодой человек.
— Да, это так. Но я ведь не ходил к кому-либо за советом о том, как развить свой талант.
… И когда я сотворю что задумал, даже боги ужаснутся, не то что работодатель!!! )
Быстро и правильно — я таких пока не встречал, но они где-то есть, я точно знаю.
Элементарно. На поздних стадиях разработки проекта можно писать быстро и качественно, за счет уже сделанного инструментария.
function updateState($state)
{
global $USER;
//...
mysql_query("UPDATE users SET state = {$state} ... WHERE id = {$USER['id']}";
}
function updateState($state)
{
global $USER;
$user_id = $USER['id'];
UserAdapter::updateState($user_id, $state);
}
global $USER
будут переписаны на UserAdapter, то от $USER можно будет избавиться, а в последствии и от UserAdapter. На поздних стадиях разработки проекта можно писать быстро и качественно, за счет уже сделанного инструментария.
$action = 'update';
$what = 'State';
$funcName = $action . $what;
$funcName(23);
За счёт уже сденного говнокода с захардкоденными всё и вся — невозможно начать писать качественно
С другой стороны, лет 10 назад мой код от этого бы принципиально не отличался бы
видишь, что сталкивался с озвученной проблемой
а разработчик апстрима о рефакторинге слышать не хочет
Вы бы хоть продемонстрировали
Только надо учитывать, что рассказанная история, пропущена через фильтр сознания Ашманова
2) А чего это автор получается весь в белом, а все остальные известно в чём? Или, словами из другого блога, почему автор выходит д'Артаньян, а все остальные персонажи — козлы?
Его теории отлично описывают реальность и дают ее предсказуемость.
И доктора наук в СССР фрикам не дают вроде, не? :)
Корень успеха это талантливые люди. Остальное инструмент в их руках. А не люди а ля инструменты в руках подходовМне показалось, или вы обходными путями всё-таки дошли до первого тезиса Agile манифеста?
Или же, если разработчики уже имели опыт рефакторинга в другой компании, они сходу предложат вам проектировать сразу. UML, использование сложнейших инструментов и так далее — давайте сразу сделаем все правильно, чтобы не переписывать. Это может касаться не только программистов — дизайнер будет стараться нарисовать сразу конечный макет, дабы сдать его без переделок.
Любой дизайнер, программист, специалист, глядя на свои работы годичной давности, найдет много ошибок — ибо вырос профессионально.
простите, креационисты, переходные формы все-таки нашли
Потом заказчику вдруг по требовалось внедрить еще пару ролей.
косяк исключительно этапа проектирования. Которого типа и не надо
assert(sum(2,2), 4)
пишем return 4
»А кто собственно в здравом уме будет пересекать сущности Заказ и Персональные данные?У Заказа могут быть просто поля с контактной информацией закзачика.
Но кто-нибудь скажет мне, как таких определить?
Почему канализационные люки круглые?И как обычно на него отвечают?
Один великолепный программист стоит десятырех раздолбаев или средненьких
Один великолепный программист стоит десятырех раздолбаев или средненькихЗато организация процесса в расчёте на десятерых раздолбаев или средненьких в сто раз надёжнее, чем в расчёте на одного великолепного.
Здесь я буду краток. Мы попробовали фиксированные итерации, пробуем канбан. Так как я программист, помимо PM — могу подтвердить, что все методологии действительно сводятся к пиши-код-блять.рф.
От любой методологии есть реальная польза, когда она применяется в соответствии с допущениями, для которых была создана.Даю 95%, что на момент создания методологии эти допущения ещё неочевидны.
Красной таблетки не существует