A good programmer always looks at the bigger picture. They understand when SOLID is appropriate and when "worse is better". A good programmer is familiar with the best practices and guidelines and principles, but always question them to understand their context and limitation. A good programmer understand that all tools and techniques are means to an end.
Great phrasing. Context is key. There are absolutely times when throwing together a quick solution is better than seeking an optimal solution. Because sometimes it just simply does not matter and you can spend your time working on more impactful items.