Feynman described his run-in with burnout, you may find his experience interesting. I quoted a piece below, but the book is more persuasive with more intricacies of his situation. Then I had another thought: Physics disgusts me a little bit now, but I used to enjoy doing physics. Why did I enjoy it? I used to play with it. [...] So I got this new attitude. Now that I am burned out and I’ll never accomplish anything,…
Ask HN: How to rediscover the joy of programming?
71–80 of 337 posts
Re: Ask HN: How to rediscover the joy of programming?
#72I had the same issue. Then I went back to the roots: Lisp And learned Clojure. You will feel like you know nothing. You will feel handicapped. You will be confused. Then, one day, you will understand what simplicity means and how Clojure's design embraces that more than in any other language I know. By then you will have embraced the flying-by-your-pants-exploratory style of programming at the REPL. And don't want to…
Re: Ask HN: How to rediscover the joy of programming?
#73When I discovered programming in my teens it was the single greatest thing I could do. I spent all my time doing it, constantly learning new things, breaking into new areas of discovery and then finding still more interesting thing. I wrote code for entertainment, I wrote code to relax, and sometimes people even paid me to write code.
Fast forward 20 years and I felt like it hurt to write code. So many things were in your way between the writing and the running, useless hoops to jump through, arbitrary changes to things that used to work just fine and now worked in a different way, why? why? WHY? I was pretty burnt out about it.
That lasted for a few years (okay probably closer to six or seven years) when I got a chance to help a teen learn to program who was super excited about it. I showed them the opaque APIs and they were thrilled, I showed them the crappy IDEs that prevented you from seeing what was really going on and they loved it, I showed them tool kits that created guard rails around what you could and could not code and that was just fine. They wrote line after line of code and marveled at each new thing.
It struck me that they were me and I was them and why were they so excited about this when I was so offended? After a lot of introspection I came to realize that the answer for me was that nothing had changed.
The reality I was missing was that computers haven't changed a whole lot since the IBM 360. The only thing that changed is that they got faster, smaller, and way cheaper. But their nature hasn't changed at all. They have registers, they have machine code, they have fast I/O devices and slow I/O devices, they have memory and displays and peripherals of various kinds. But at the end of the day, and this is especially obvious with various recreations and emulators, the computers of today are not really all that different in nature from the ones I learned programming on.
That in itself might not have been a killer, but the killer was software was by and large unchanged as well. After 20 years of programming, every single programming task felt like a remake of something I had already done. And for what? To implement it in the language of the day? Because you couldn't get the source to one version so you rewrite it from scratch to get better licensing terms? Lots and lots of software was done in the sense that there really isn't a good reason to re-design it, but there are a zillion reasons while you might be asked to re-write it.
Imagine if you were a screenwriter or a songwriter and someone said, "Ok we need 'Gone with the Wind' but now its going to have a gay couple, take place during the Syrian Civil war. Don't change any part of the plot or the story or the relationships, just swap Arabs for Southerners, Syria for the South, and have the love interest die of MERS or something."
Wouldn't that be a crappy job? What can you do with that? Where is the creativity? Where is the opportunity to express a fundamental truth in a new way?
I realized that I had come to hate programming because everyone was asking me to program the same stuff that had been written before but now in the Fluff Framework. I could do that with my eyes closed and so could any teen fresh out of college. What did they care that it had been implemented twice, three times, maybe five times previously in different ways?
Once I understood my problem I could start working on the solution. I decided to start writing software in areas where I had never written code before (like DevOps), or in areas where hardly anybody had re-written code before (like software radios). I also started to meticulously develop a workflow that ran on every operating system I might have to work on (Linux, Windows, and MacOS) that worked for me and saved me from having to relearn a new thing "just because" someone got it in their head that they could "improve" text editing for coders. When the friction between thoughts and code and execution are low, and the problems being coded or solved are novel, I love programming. Because I know what to avoid (arbitrarily complex tools and rewriting CRUD code again and again) my level of joy has gone up significantly.
I don't know if any of this will resonate with your question but it worked for me.
Re: Ask HN: How to rediscover the joy of programming?
#74Re: Ask HN: How to rediscover the joy of programming?
#75Also I feel that there is a lot of pressure within communities like HN that implicitly (... or outright explicitly) makes you feel like you should always have a side project on the go, or you should be working on some amazing start-up idea, or you should be contributing to open source etc. All of that is basically a second job I'd say - you need to apply the same mental energy and rigor doing that sort of thing as you would in your job. I feel like this is an unhealthy mindset and unfair expectation.
I don't know about you but when I was a kid just starting out in programming I just messed about doing whatever I fancied without any expectations of "releasing" anything or turning a profit etc - I just scratched my own itch and left a chain of unfinished ideas and projects behind me as my mind wandered and I had zero mental attachment to any particular idea or objective. I was free to follow my own path without feeling that I needed to give an idea justice and see it through to some kind of release or public distribution etc.
I now personally try to do the same now too - I try to avoid letting any ideas about "releasing"/sharing/distributing any of my spare-time work from creeping into my mind. If I go into something knowing that I might close the IDE the same evening and never ever open the file again, or I can write hideous hacky messes because why the hell not, or I can just forgo any kind of tests or repeatable builds etc etc then that is freeing and removes a lot of the mental baggage of doing a "good job" and let's you concentrate on satisfying your own needs.
Oh and also unlike other people on here, I personally recommend JavaScript as a great language to use for personal messing about - flexible, universal, performant, and most importantly it has absolutely zero barrier to entry - you can litterly just open your browser's dev console right now and you are up and running, or just create a .HTML file and you are up and running that way too without any joy-/motivation-sapping bullshit or ceremony related to setting up build files/python anaconda bollocks/environment variables/installing compilers or other nonsense - it just works right now with what you already have on any computer you sit at (... or you can go deeper and install typescript compilers or node+npm etc if you want to) Ignore comments about churn or change-fatigue regarding JavaScript - the language itself is separate from the libraries people use and you can go a long way with the core language and modern standards-based APIs without ever touching an external library.
Good luck!
Re: Ask HN: How to rediscover the joy of programming?
#76Re: Ask HN: How to rediscover the joy of programming?
#77I've had times when I don't feel that I'm enjoying programming, followed by times when I'm really into it, there was this talk called "The Art of Code" that might interest you, the presenter Dylan Beattie shows what I now think is what makes programming interesting, it's about doing things, the programming is the how, not the what
Re: Ask HN: How to rediscover the joy of programming?
#78I feel very similar so probably don't have great advice, but as someone else mentioned it depends on your particular scenario. For me I have a day job at a company then my own company on the side I do a few hours of work a week for too. After dealing with all that work (much of it involves programming or related efforts), I have nearly zero energy to think about programming outside of that. I used to have various sid…
Programming in our youth required one language/framework such as C/UNIX or even Visual BASIC. In contrast, to develop something useful today, you need to learn a different language or framework for the UI, services, DB, security, deployment, and others. Each offers its own universe of packages, tools, procedures for debugging, troubleshooting, and building.
One can certainly persevere and complete a full-stack application with the aid of StackOverflow, Dash, and Google searches, but there is no pleasure in it. The drudgery replaces any sense of gathering speed you feel when you’re proficient and rushing with satisfaction toward your next stopping point — before you realize it’s 5:00am.
My guess is that you keep returning to Hacker News in search of that one-stop language which will offer a hobbyist the old-fashioned combo of proficiency and completeness.