Чем отличный программист отличается от хорошего? А чем хороший от среднего? Что такое плохой программист?Отличный - обладает всеми нужными знаниями и умениями, применяет в своей работе самые передовые технологии, решает любые задачи, всегда предварительно прорабатывает блок-схему своего творения, уделяет много внимания мелочам, продумывает дизайн, придерживается стиля, делает самый короткий код, который работает быстро и надёжно.
Хороший - обладает знаниями, достаточными для выполнения необходимой работы, но продолжает учиться и совершенствоваться, решает сложные задачи, но иногда упускает из виду некоторые второстепенные вещи, пишет не оптимальный, но работоспособный код, не всегда снабжает код подробными комментариями, поэтому иногда убивает много времени на поиск багов. Обеспечивает решение задачи «в целом», в заданные сроки, без фанатизма.
Средний - Находится в процессе обучения, т.е. многое уже умеет, может решать некоторые сложные задачи, но сталкиваясь с неизвестным, учится по ходу работы, пишет код часто без проработки блок-схемы, всегда торопится, но всё равно пишет код долго, и код получается длинным и не оптимальным, упускает важные мелочи, никогда не укладывается в заданные сроки решения задачи. В коде всегда есть некритичные недоделки.
Плохой - находится на начальной стадии обучения, делает первые шаги в программировании, код пишет долго, отлаживает код долго, код получается большим и не оптимальным, комментарии в коде пишет редко. Код содержит ошибки разного плана. Блок-схемами не заморачивается, не успевает уделять внимание мелочам, поэтому может решать только самые простые задачи, при этом продукт работает, но может зависать при возникновении неучтённых обстоятельств.