Jakie są cechy dobrego programisty? Powstało wiele opracowań tego problemu, niektóre nawet w formie książek wydanych w postaci opasłych tomów.
Jednak tak naprawdę żadne z nich w pełni nie opisuje problemu, o którym mówimy. Należy najpierw odpowiedzieć na pytanie, czym jest programowanie, tak w skrócie, powiedzieć można, że jest to po prostu pisanie kodu programu w jednym z języków programowania. Języki te składają się ze składni oraz cech, jakie posiada każda z komend zapisanych w definicji języka. Jak widać, nie jest to całkiem jasne, a dodatkowym utrudnieniem jest to, że praca programisty tylko w niewielkiej części polega na siedzeniu przed komputerem i pisaniu wspomnianego kodu. Bardzo wiele czasu spędza się na projektowaniu, czyli opisywaniu problemu oraz sposobu jego rozwiązania. Może trudno w to uwierzyć, ale bardzo często używa się do tego kartki i długopisu, a języki programowania wykorzystywane są dopiero w końcowym etapie tworzenia oprogramowania. Na początku kariery programisty pewnie trudno jest się przyzwyczaić do tego, że szef każe nam zastanawiać się nad problemem zamiast usiąść przy komputerze i zacząć pisać.