My definition of a good programmer
"A beginner knows a programming language, some portion of its standard library, and perhaps technologies, patterns and frameworks.
A good programmer knows how to apply them to solve and represent complex problems and real-world systems.
An advanced programmer can also make the solution maintainable, and meet other non-functional requirements."
— A. Hoffman
Unisys 1994
Unisys 1994