Как стать автором
Обновить

Лучшее — враг хорошего

Здравствуйте, уважаемые хабровчане.

С каждым новым проектом, с каждой новой решенной задачей приходит кратковременная эйфория.
Почему кратковременная? Сначала ты видишь слаженную работу всех частей и механизмов, радуешься, наслаждаешься. Но вот в голову приходит очередная шальная мысль — может быть можно оптимизировать? Начинается исследование, замеры времени, переписывание запросов и т.д. и т.п. Все это может настолько запутать и сбить с толку, что смотришь на свое творение уже с неким недовольством.
Невольно задаешься вопросом — где же эта грань, когда надо сказать себе «стоп»?

Программируя чуть больше 7 лет, эта грань с каждым годом становится все тоньше, вариантов решения задачи познаешь больше, алгоритмы приобретают большую универсальность, за технологиями вообще сложно угнаться.

Чем сложнее конкретная задача, тем сложнее писать методы ее решения. Постоянная борьба с непредвиденными фичами. За небольшой срок разработки приложений лично у меня сложились два верных(для меня) пути, которые, тьфу-тьфу-тьфу, ни разу не подводили.

С первым все просто. Когда заказчик далек от нашей сферы деятельности удивлять его легко. Прикручиваешь самые разные диковинные рюшечки, показываешь как все красиво работает(ну и правильно, естественно) — удивлению и восторга нет предела. С такими клиентами очень интересно работать в начальной стадии карьеры — когда гонишься за проектами. Но проходит время, и интерес пропадает. Ты выходишь на новый уровень проектирования. Заказы больше, сложнее, и, чего и следует ожидать, дороже. Но меня больше всего привлекает в них не стоимость…

За высокими требованиям к приложениям, как правило, стоят технически подкованные специалисты. Просыпается профессиональное Эго. Сделать так, чтобы человек, который владеет технической спецификой проекта, удивился. Заставить его увидеть в себе профессионала. И вот тут-то как раз и проскакиваешь эту грань, когда надо успеть вовремя остановиться.

Чтобы не наломать дров, для себя уяснил некоторые тонкости. Не претендую на универсальность, просто делюсь некими соображениями.

1. На первой демонстрации никогда не гонюсь за скоростью и качеством — нужен некий резерв, всегда приходится чем-то жертвовать.
2. С каждым новым показом прикручиваю новые блоки, которые также имеют свой резерв оптимизации.
3. Каждое пожелание заказчика может обернуться любой непредвиденной неприятностью — поэтому досконально уточняю и по возможности стараюсь предугадать.
4. При выпуске любой версии(пусть даже и промежуточный) — максимально использовать в оптимизации заложенный ранее резерв.

Спасибо за внимание.
Долгих вам дедлайнов и по-больше удовлетворенного профессионального Эго.
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.