I really like this metaphor by Robin Sloan. I would never call myself a ‘real’ programmer, or a programmer at all really. Yet, I’ve been programming stuff since I was 12. In BASIC during my school years, in assembly, Pascal, C++ at university, and in Perl, VisualBasic in my early days at work (which included programming the first intranet applications for my then employer), and currently in PHP and Applescript (to get my websites/tools and my laptop to do the things I want). Except for some university assignments all of that programming was and is because I want to, and done in spare time.
I too am the programming equivalent of a home cook (which coincidentally I also am).
Robin Sloan also hits on what irks me about the ‘everyone needs to learn to code’ call to action. “The exhortation “learn to code!” has its foundations in market value. “Learn to code” is suggested as a way up, a way out… offers economic leverage … [it] goes on your resume.”
“People don’t only learn to cook so they can become chefs. Some do! But far more people learn to cook so they can eat better, or more affordably, or in a specific way…..”
The above is I think an essential observation. Eating better, more affordably or in a specific way, translates to programming with the purpose to hone the laptop as your tool of trade and adapt it to your own personal workflows, making it support and work with your very own quirks. This is precisely what I don’t get from some that I quizz about their tool use, the way they accept the software on their laptop as is, and don’t see it as something you can mould to your own wishes at all.
“And, when you free programming from the requirement to be general and professional and scalable, it becomes a different activity altogether, just as cooking at home is really nothing like cooking in a commercial kitchen.”
Removing the aura of ‘real programming’ from all and any programming except paid for programming, might just break this ‘I’m not a programmer so I better accept the way software works as the vendor delivered it’ effect.
Me and Boris Mann cooking in his kitchen in Vancouver in 2008. Coincidentally we connected through our desire to shape tools to our personal wishes. Programming as a home cook, brought us together to well, home cook. His blog still is a mix of cooking and programming well over a decade on.
For a long time, I have struggled to articulate what kind of programmer I am. I’ve been writing code for most of my life, never with any real discipline, but/and I can, at this point, make the things happen on computers that I want to make happen. At the same time, I would not last a day as a professional software engineer……
I am the programming equivalent of a home cook.