Time spent programming is often time well spent
Was the time I spent writing my RSS scripts more than the time I would now spend thinking about the “best” RSS aggregator and reader? Doesn’t matter. I enjoyed writing the scripts. I learned new things and got satisfaction out of seeing them run correctly. I get nothing like that out of comparing apps and services.
I concur so strongly not only because he writes about RSS, which I’m on record as supporting and using. I enjoy rolling my own simple software in almost any domain. Simple has a lot of advantages. Under my control has a lot of advantages. But the biggest advantage echoes what Dr. Drang says: Programming is often more fun than the alternative uses of my time.
I program because I like to, and because I can.
I read the above this morning and just wanted to chime in. It resonates so much with me.
I think that there are three main reasons why time spent programming is well spent and joyful (when you are not dealing with “bugs”).
I have an endless desire to learn, and I genuinely believe that doing is the best way to learn. I’ve started many toy projects along the years just for the sake of learning. Two quick examples: long ago, I built the EmojiHomepage to learn Vue.js; yesterday, I released Alertcamp Live for the sake of learning “Phoenix LiveView” and practice my OTP knowledge.
Building things yourself puts you in control. And we, people, love being in control. You don’t like something, you need some quirky additional feature, or you think something else will work better - it doesn’t matter, you are in control, and you can do whatever you want. Sure, there might be some rough edges, yet the IKEA Effect will compensate for that.
I believe that creating anything is an innate human desire and practising it always leads to joyful experiences. That includes anything - complex systems, simple scripts, an article posted online, a wooden box. I’m sure that any craftsmanship will bring you more joy than many other activities.
Here they are some excerpts from the relevant Hacker News discussion:
I’ve worked on a lot of personal projects over the years that were never finished or were quickly abandoned. I used to feel bad about this, feeling like I had wasted my time. But then I realized that I learned a ton by doing all of this work. - larrywright
- So, tell me, how did you land a job on Google?
- Yeah, I was trying to redo my website…
I spent countless hours on my side project Video Hub App. I’ve learned a great deal, and it’s immensely satisfying to work on. I’ve explored face recognition and server capabilities (learning a lot and having a good time). - yboris
An old colleague tried to convince me that I shouldn’t write my own job queue last night because “it’s all handled in the cloud”. It’s things like this that make me a better programmer whilst also allowing me to run software that does exactly what I want. - arbol
p.s. I will be building an RSS reader/platform in the coming weeks 🙈