It may seem strange to some of you, but I consider myself an artist. Visual Studio is my canvas, and the keyboard is my paintbrush. This is why I wouldn’t survive in a stuffy corporate environment with committees, red tape, and politics. I’m a visionary, not a software engineer. I don’t like to plan every little detail; I’d rather start with a grand vision and just let the code go wherever my vision leads it.
I confess this can be both a strength and a weakness. For example, I’ll spend two weeks refactoring perfectly working code because I don’t think it’s elegant enough. On the other hand, aesthetic beauty of structure and architecture is every bit as important in software as it is in other fields. It’s just that the benefits are intangible and more difficult to quantify.
Perfectly working code, you say? I admit, that’s a bit of a rarity these days. It’s a rarity precisely because not many programmers consider programming as an art form. Real artists are never satisfied with their work; they never stop working toward absolute perfection of both form and function.
This leads me to my real point. I have a favorite saying, “Have you made your mistake today?” Ironically, perfection can only be achieved by making mistakes. If you’re not making mistakes, you’re not learning. If you’re not learning, you’re not taking any risks. If you’re not taking any risks, you’re achieving mediocrity at best. Learn to make mistakes gracefully. Enjoy your capacity to learn and evolve toward perfection, no matter what kind of art you create.