Хороший программист! Хорошая программа?

img15Почему хороший программист никогда не напишет хорошую программу?
Хм… Спорно, правда?

Давайте для начала посмотрим кто такой “хороший программист”.

Профи от программирования

  • досконально знает все конструкции языка программирования,
  • великолепно разбирается в алгоритмах и приемах написания кода,
  • постоянно изучает и применяет новые технологии,
  • всё время совершенствуется и придумывает что-то новое,
  • горит энтузиазмом,
  • обладает острым умом и изобретательностью.

Несомненно, такой профи достоин уважения и даже зависти. Неужели он не сможет написать хорошую программу?

Да, это так. И именно из-за перечисленных выше причин хороший программист этого не сделает.

Бред? Ничуть! Ответьте, пожалуйста, на простой вопрос: для кого пишут программы?

Ответ, вобщем-то, хорошо известен: для пользователей. Для пользователей, которым совсем нет дела до тонкостей реализации; которым не интересны алгоритмы, и совершенно всё равно как записаны конструкции языка и современные технологии.

Пользователям нужна только их конкретная, узко специализированная задача. Причем решить эту задачу они хотят приложив минимальное количество усилий.

“Простота решения задачи” - вот основной критерий “хорошести” программы с точки зрения пользователя.

А теперь скажите, какому хорошему программисту интересно разбираться бизнес-процессах и задачах пользователя? Никакому! Гораздо интереснее разобраться в тонкостях программирования, чем думать над тем, где лучше расположить кнопку, как минимизировать количество кликов или какие колонки лучше вывести в таблице со списком клиентов.

И не надо в этом разбираться. Задача программиста - блестяще закодировать. А замечательные решения для пользователя пусть придумывает бизнес-аналитик. Тогда и только тогда созданная программа будет совершенной!

Именно поэтому хороший программист никогда не сделает в одиночку хорошую программу для пользователя. Он сделает её хорошей внутри, но при всём своём желании не сделает её хорошей “снаружи”.

Вместо послесловия

В один прекрасный момент хороший программист вдруг понимает, что изучил всё самое интересное в программировании, и начинает двигаться вперед, постигать новые вершины, получать новые знания, делать программы не для себя, а для тех людей, которым они в реальности предназначены. И тогда программист становится аналитиком…

Вывод: www.zerostart.ru