What learning to draw taught me about learning to program — Vincenz Lachner
Unsurprising relationship between mastering two very distinct craftsmanship.
I still remember the first steps I took, at an early age, towards learning how to draw. Drowned by the immensity of possibilities within a letter-sized blank page.
Until I began an unexpected journey, by imitating the art style of an artist I admired. Took one of their pieces and tried to copy it as neatly as I could. Doing this at least once per day. Slowly, but surely I started noticing patterns, how shading behaved in a certain way, how colors were used to provide depths and textures.
Then the first breakthrough came, noticing I could add details of my own from experience, mixing elements from different drawings. Soon enough I was recreating decent pieces of my own.
I repeated this process each time I found someones work I admired. My own art style became a mixture of those that inspired me, a blend that became something entirely new, something I began to own.
Once I got quite a variety of tools down in my utility belt, I embarked in the last and most satisfying parts of the journey. Drawing from observation. Just like a filter I could take reality in and leverage my experience to frame what I wanted people to feel and experiment. Thus, taking me where I am now, maybe not a professional artist but definitely passionate learner.
“What does this have to do with programming?” — Every reader up to this point.
Maybe you have noticed certain parallels. To me the relationship between the two caught me off guard.
I had taken quite a few courses on Web Development, programming and Computer Science in general. It certainly sparked curiosity in me delving deep in theory and history of how everything came to be. However, how everything fitted together on practice seemed so distant and unapproachable, reserved to only those who master the art of talking to machines.
It was until I started an apprenticeship at Pernix. The first day my mentor and I reviewed code I had written in the past. Sloppy and messy, almost like applying to art school with your childhood crayon drawings. Only more enlightening, but equally embarrassing.
My mentor provided me a couple of tutorials and some snippets of code from his own exercises and projects.
I suddenly found myself in familiar territory. Imitating the art style of a work I was inspired by. I started going down the same path, following a guide at least once per day. By the end of my second week I started refactoring code from one guide with what I learned from another guide. Mixing and mashing functionality from one project to another. The patterns started to emerge and opening the editor to some codebase started to feel like familiar territory.
Even though the journey ahead is still long, the feeling is very similar and reassuring. For now, I’ll keep adding to my utility belt, as I create projects I can call my own.
I suddenly found myself in familiar territory. Imitating the art style of a work I was inspired by. I started going down the same path, following a guide at least once per day. By the end of my second week I started refactoring code from one guide with what I learned from another guide. Mixing and mashing functionality from one project to another. The patterns started to emerge and opening the editor to some codebase started to feel like familiar territory.
Even though the journey ahead is still long, the feeling is very similar and reassuring. For now, I’ll keep adding to my utility belt, as I create projects I can call my own.