Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Ever lost your love for coding? How did you get it back?
82 points by rlawson 5 days ago | hide | past | favorite | 80 comments
Have you ever lost the love for coding? I sure did after a grind as CTO of a startup and then director at a financial services company. Needing everything yesterday and dealing with the corporate politics - I found my work was no longer any fun. I took a sabbatical and leveled up on Python/Django and started having fun again. I even made and sold a micro-startup that was Django based. What I loved was it allowed me to be productive as an individual - I didn't need a team of 10 to produce something. Have you ever lost your love for coding and then gotten it back? If so how?

I was thinking the same scrolling HN, then saw your post.

After 15 years I'm no longer interested. I don't care about the web, css, javascript, react, testing....it's just an increasingly tedious and difficult headache to me.

I have a creative urge, and a problem solving urge, but i feel maybe it can be better expressed through another medium. I just wish I had some way to unchain myself from this 9-6 5 days a week soul-less grind.

Even when I did enjoy my job before, the increasingly complexity, the amount of tedious plumbing, spending hours fixing obscure npm bugs on a tool I built only 3 months ago (and worked perfectly). I just hate it all.

To answer your question, i haven't gotten it back and don't think i ever will.

I can sympathize with that npm point. I think there's a real distinction between coding-as-problem-solving and coding-as-plumbing, and I feel like a lot of the wear and tear of the motivation to code comes from the latter. This reminds me of the essay the MIT guys published on why they stopped using the classic SICP curriculum and instead moved to Python, the gist of it being that the kind of development they used to teach, with a blank piece of paper in front of you, working through first-principles, etc., was increasingly rare; that the most important skill to teach now was how to take separate pieces of someone else's code and effectively cobble it together onto something new. Which, fair, but I don't think it is doing stuff like that that first ignited the passion for it in a lot of us.

This is good advice. Thanks for sharing.

To OP: What has re-motivated me to code is not the coding work itself; but the application of my skills to solve problems that I care about.

Add to that - one is still writing CRUD apps that seem to run slower than ever even though the computers have become faster. That's why I feel more drawn to my guitar now than computer but then guitar will never make me any money so need to keep churning out CRUD apps.

yeah, i was just thinking today how slow and bloated the web feels. i know things have always been slow, maybe rose-tinted lenses and that but there shouldn't be lag on an input box when using a 2020 mbp with 64GB of ram.

and the frustration of trying to stream a video on reddit whilst the ad seems to have no trouble loading and playing.

I was complaining about this just yesterday[0], while waiting for my media PC, a dual core AMD APU with 8Gb of ram, to scroll the Twitch categories page. I pointed out to a friend a few minutes later how we were watching a game from 1999, which rendered full 3D environments in real time at 60+fps on a 200Mhz pentium with 32MB of ram. Here we are in 2021 with a computer several orders of magnitude more powerful and it is struggling to scroll a fucking document.

[0] to be fair, I complain about this at least 3 times a day, sometimes to an empty room.

OP here - what I found fun about my Django projects was that I used very little javascript. Mainly bootstrap and a dash of htmx. Modern browsers are freaking fast at rendering html and with a light payload and proper CDN setup, it feels like a SPA with 1/10th the work.

Ever think about trying embedded development?

It doesn't pay as well as web development. But it moves more slowly, it's not going anywhere, and it can be a stepping stone towards getting to work with your hands in a technical role.

As a more general response to OP's question, you can always switch industries. We're lucky to work with code, because everything runs on it. Finance, agriculture, medicine, vehicles...moving to a different area of the economy can feel refreshing, and it gives you a chance to learn about things that are unrelated to coding. Soulless web dev is where the big money is, but you won't starve working in other areas.

As an embedded systems guy(Hardware guy who works "on"embedded firmware), i can attest to the fact that its not going anywhere, but caveat emptor, Its glacial growth when you consider career growth and salaries. Also, the tech stack is tied to a couple of big name tooling chain vendors and chip vendors. And after writing the same old I2C/SPI driver for the nth time, you start feeling like the OP. So grass is always greener on the other side.

Isn't a majority of the industry Electrical Engineers who know how to code? You also have a lot more physical hardware constraints to work around unlike standard computers where the lowest baseline is still quite a bit for standard app dev.

Nope! Maybe the trend is that a lot of kids these days double major( in the us) and end up with some passable programming skills. It’s still not the primary focus. Like you mentioned the focus is working with physical constraints in a cross functional environment

The company I interned at did timer and wall din switches which were pretty interesting. They were timid letting me do much programming because it was freshman -> sophomore summer so I basically tackled a counter on one of their wall outlet timers that adjusted with a knob on the front and realized the embedded world was not for me haha. It is REALLY cool to hold your code in your hands, though.

It seems a little easier to go from embedded to app dev than vice versa, harder still to think up a personal project involving embedded to get you excited enough to invest the time into learning by hands-on trial and error.

I’d be interested in some started points, books, etc. to embedded, even beginner ELI5 fun projects. I am familiar to RPis, ESPs and similar microcontrollers for fun, but curious about what career and industry practices are common and different compared to app dev.

> agriculture

This I did not know.

> vehicles

This I hoped would never happen (security and privacy) - but anyway. (It has been a problem for well over a full decade, I know.) Anyway, as said, there is some light side: providing features while defending as much as possible security and privacy is a stimulating goal. One would feel more comfortable, though, if that were an established, common, given, granted goal.

Agriculture is more and more based on computers than ever. Massive expensive tractors with computers inside, that collect and visualize a tons of data as farmers tend to the fields. I watched a couple of farming videos online and it surprised me just how much they're integrated now.


thanks for the suggestion, will look into it.

Pretty much going to have to echo this. The increasing needless complexity in everything has driven me to no longer be interested in technology in general, and it seems that our industry is only interested in making it even worse as time goes on.

I have tried to get myself motivated to do programming projects again and it just isn't taking.

The industry would see the complexity increase not as a bug but a feature. Every complexity is some improvement, some advantage, being marketed or sold, with promises of performance and outcomes but with realities of headaches and bugs. It doesn't help most complexities are someone's company that they want to sell for a huge M&A profit.

I'm on the infrastructure side, so I'm not sure if what I'm saying is true, but you could try taking a look further towards the backend. I'm under the impression that front end work can be a little messy, but again it's not from first hand experience. Beautiful and elegant solutions that solve problems well are a lot not fun to work on for me. Troubleshooting and fixing someone else's mess tends to burn me out a lot more quickly.

What medium are you expressing your creative and problem-solving urges through now?

I guess I meant it in a kind of half poetic sense. I would like to write, or maybe do some kind of digital or video art.

I got into web dev around 98-99 and i've been doing it ever since.

I think what appealed to me about it about the time was the immediacy of it, being able to write these little js widgets and see them in action instantly. Trying to build these intricate table layouts to replicate the offline versions of various websites that came on a disc with internet magazines.

But the field has changed a lot over the years, first it was the iPhone and mobile-web, CSS animations, SVG, Canvas, Node JS, with JS on a server, React, Redux, State management, and now CI and DevOps, Unit tests, TS, - and the endless deprecations and changes that seem to occur faster than I can keep up with.

The things I used to enjoy are only a fraction of my job, and even those parts have become kind of complex - at least for me. I feel like, as others have said, front end is quite messy and the result of that is that I never feel satisfied that I can complete something and just "Get it right". Seems like the edge-cases are infinite, devices, displays, and other weird quirks...

- sorry for the rant.

I asked because I'm partly in the same situation. I don't write code for work, but have (and had) too many side projects running. The fun is always at the start: thinking of something, sometimes discussing with potential users and being able to see things realized pretty quickly. But then the complexity kicks in indeed, and the fun turns into a drag.

(I've never been able to monetize anything for more than a few bucks a month, simply because I like to spend more time on creating something new than growing what I have)

Your initial comment made me realize I'm perhaps more interested in creating things that do not solve a problem (like my side projects do), but that express an idea instead.

I'll try and consider my knowledge of coding (Python and web front end) as an extra tool for expressing ideas, next to writing and talking.

Thanks for inciting this train of thought within me :)

Same here, what I loved about the web was the immediacy. You edited 2-3 files and you were done!

Today I had to work with Angular, this thing is insane. So many files, so many layers, so slow... This thing makes me hate what I do.

I wish web dev took a different direction towards more simplicity.

I haven't lost my love for coding. Coding lost its love for me.

Oh, coding. We used to be so similar. We'd gaze into each other's eyes and get lost for hours, days at a time, teasing the vast boundaries cast by simple questions. But coding changed. You changed, coding, you changed and you left me behind.

All you care about now, coding, is looking in the mirror. Measuring yourself. Analytics. Velocities, sprint points, backlogs; you say you want me, coding, but you really just want me to be there and watch while you go do what we used to do, as the younger developers frolic with the old questions anew. I think, coding, that you're just using me because I accidentally showed you I could do the other things.

You say that we're still coding, coding, but this relationship died a while ago and I'm still around because I'm in love with a ghost.

Is this a play on something else? Well written and the sentiment is unfortunately true in a lot of cases.

thanks! i was just rambling and having fun. appreciate the kind words

I've never lost it but I for sure have my days where I wish I never became a SWE and became a baker or something instead. I don't know what sort of projects your coming from but I know big enterprise projects can really become a drag, couple that with politics and it's not a good mix.

For me I always did some coding at home on my own projects. For me one of the most stressful things in coding professionally is dealing with shit outside of your control. Being able to work on a project that is entirely conceived and written by you lets you have that control back, even if it's on a small toy project.

Crusty bread > crusty code

After 40 years (just retired) as a programmer, I still write code every day (but now what I want, mostly art related), I never got tired of writing code or learning new things, and the joy of shipping things that worked. What I did get tired of was high stress work, long hours, idiotic executive decisions and politics, businesses going out of business, interviewing (even when successful) and dealing with terrible work environments.

One thing I always did was learn new things, usually before they became popular, and find a way to work in that; new things can often reinvigorate your love of the coding part. Sadly the other parts have actually gotten worse over the decades; however the opportunities have also expanded, if you can find a way to get in.

Would you mind sharing some of the art-related projects you have been working on?

Twitter handle is @digconart

This could be a symptom of burnout (or depression) which are slightly wider topics and so have more advice available if that seems to fit.

For regaining joy in programming specifically, I'd say the same as I say to people trying to learn in the first place. Try to find a project that has some real world impact that you actually care about (even if it's trivial or frivolous to others) and use that as a focus to get you through the boring bits.

Similar to woodworking or other crafts, a crappy product that you (or someone else) can actually use for something is a lot more satisfying than a perfectly made thing with no use to anyone.

It's notable how often, too, folk turn to craft analogies when talking about code.

So many people in tech (including me) try to turn to craft/art as a way of 'escaping' the grind. It's often not the coding that gets people down but all the 'organisational' activity (or management or however you want to phrase that) that goes alongside.

Hehe so true.. I also started building wooden longboards in my limited spare time instead of building yet another cool Github project.

Another thing for me is that I actually can finish these projects opposed to many of my private software projects where I just lack the time (and maybe energy) to finish them.

I realized a few weeks ago that I am happier since exchanged coding in my spare time with wood crafting in my spare time.

Yes and no. I've learned to accept the tedium of doing software development at work. But I've grown impatient with the act of coding itself - it just takes too fucking long to do anything. Too much accidental complexity one has to wade through, to express even simplest ideas. My coding cannot keep up with my thoughts, and I find it tiring.

I've ranted on this here: https://news.ycombinator.com/item?id=28568053.

I have some ideas for improvements, but alas, between being a parent and working as a software dev, I hardly have the energy to explore them.

My love of coding is conditional. I still hate work related coding. I love working on my individual projects. I just dont have much drive to do the personal projects after working all day (and child care responsibilities).

After 10 years at a FAANG (and 25 years of programming generally) I haven't lost my love of coding because I hardly get to do any at all. But I have definitely lost my tolerance for process, paper shuffling, politics etc.

I'd love a job again where there was a clear path forward and a bunch of code to write. But in a large org the interesting coding work is eaten up in a feeding frenzy and people like me who don't want to stick their necks out too far end up spending their time putzing around in issue trackers trying to justify their existence.

What I've learned is, generally, the higher the salary band, the more boring the work. And the harder it is to walk away from the $$.

Sadly I’m watching one of the companies I consult with go this way prioritizing process over productivity, while at the same time basing requirements on the deals they’ve signed lately rather than a clear plan. I’ve seen it before and it is painful to watch.

A crude analogy I use is "just because one enjoys sex doesn't mean they would enjoy being a prostitute". To get back to liking coding again I had to do something without deadlines or pressure of delivery and something I just enjoyed doing. That happened to be writing small utilities in F# in my free time.

> What I loved was it allowed me to be productive as an individual - I didn't need a team of 10 to produce something.

For me it was the opposite. Being able to give people an environment in which they can express their creativity and thrive has been wildly satisfying. I love building the boring parts of a codebase (setting up scaffolding, CI/CD, etc) because I love seeing people be able to build off of it.

One thing I can recommend creating your own programming language. If you have no experience with doing this, I would recommend building a parser and interpreter in a language you are familiar with and enjoy.

There is a great guide on how to do this here:


You can introduce some exotic syntax, make it do some funny stuff, and just play with it.

Creating a programming language on your own can be very satisfying, and if you don't expect it to go anywhere you take the pressure off trying to get it right, and you can just play.

You build tools because they enhance your quality of life. You code to build tools to enjoy the service they render you. You will not lose your love for coding (in general, outside specific contexts, you have no reasons to lose it), since you have use for tools and by now surely you will have found processes and systems (or, in general, processes and systems are fortunately available) to implement your tools with a good degree of comfort and pleasure.

If you happen to "lose appetite", you are suffering the consequences of unhealty situations. You must fix them.

Many people who must suffer unhealthy situations, bound to conditions difficult to overcome, actually find a shelter in those hours, carved in the day, in which they can fulfil their creativity and productivity, do something useful with their time. You should use your talents to compensate with the ugly sides of "being alive here today" (which should of course be accompanied by the underlying conscience that "there and yore was much worse, though"), to break with the permeating effect of the ugly, which could enter too much into you - but mind you, you should spend time in creativity and productivity and yet work on planning "how to exit the bad situation". Find time for the healthy things to enjoy - coding is one -, and at the same time work/plan to leave, make past and gone, those things that drag you into a loss for appetite.

1. Learn to build things

2. Learn to hack them

3. Build tools to hack things (or learn existing ones, e.g. https://github.com/GhostPack and https://github.com/cobbr/Covenant for you .NET folks)

Going from business apps to tools offers a nice change of pace.

4. Give yourself permission to write quick, sloppy, slapdash, throwaway code. Note that you won't necessarily DO so but the permission itself lets you stop worrying about engineering the entire product ecosystem and just enjoy bashing out something fun that does something.

You can always fix it later... or not!

I'm coding since I'm a kid (around 5, and I'm now nearing 50), mainly C/C++ with the occasional whatever other language you encounter in a normal coder life.

I had lost it a few years ago. Gdb fatigue, tried higher-level languages (js, java, etc.) but it didn't click. And then I discovered rust nearing its 1.0 release. That was it.

After introducing it at work and being really pleased with the result, I changed jobs and now use it less, but even when coding in C/C++ I'm happier now.

Learning rust has made me a better C coder, it has made me interested in building stuff again, I'm even back doing side projects (although I have a family so I have to spare my time).

There are many new shiny stuff, find the one that clicks with you. Or find something else (a friend of mine is now a paragliding instructor), life is short.

Ironically, by putting in less effort at work. I know this sounds awful and a lot of PMs would probably gasp at hearing this, but I started to exert myself less at work -- worried less about code reviews, stopped stressing over small mistakes, accepted that I'm not producing the highest quality code, stopped trying to go the 110% to impress my peers and higher-ups. Really, I stopped caring as much. Choosing software engineering as your profession carries with it the high probability that it will ruin your hobby of programming.

I found that I was able to refocus most of that energy to when I'm off work and can actually get my creative juices flowing on projects I care about and have control over.

I am an embedded systems guy who recently started coding in React and I can relate my story if its useful to the OP or anyone for that matter. Apart from embedded code(C) and a few python scripts that i wrote for a course, i dont have any singificant experience. I started looking into browser develeopment during the pandemic and got hooked into React. The learning cruve felt like I was learning to drive all over again. But, in the end, I just sustained my interest and kept chugging. Fast forward a year, I stumbled upon a uservoice forum for a very popular enterprise chat app that lacks a basic feature that You would consider a brith right and the customers have been screaming for this feature for about 3 years now. Some of the comments show the customers are willing to pay for an add-on. I have been coding in the side for the past month or so and i am in the process of deploying the solution to their marketplace. I am in the process also am learning how to use their cloud deployment tools, create a static landing page for my app, scrape the users info from the uservoice and reach out to them and cold email them about the app when i release it. Point being, coding becomes an absolute chore if you dont have an end goal. Usually coding is a means to and end and that end is a business solution to a pressing problem. Find the problem and code the solution. Hope this anecdote helps.

I started coding in the mid 90's and have been there, to different degrees, several times. It usually is because I'm in a rut, using the same languages and technologies in the same domain. Another new way to not shoot yourself in the foot with Javascript... So, mix it up and find something challenging that you find personally interesting:

- learn a language or technology that you've always wanted to, but never had a good "reason" to

- change your abstraction: if you are a javascripter learn C/C++ or assembly. If you are a VHDL guru, go learn some Python, Ruby, Elixir, or Javascript.

- Take one of the "how does that work?" questions that have been inside your brain since you first used a computer and get about figuring it out. The dang things are fascinating at every level, from transistors to gates, to operating systems, to compilers/interpreters, to micro-services *AND* it is all documented and available on the interwebs.

- learn more about your tools. There is nothing that makes me feel efficient and productive like when I'm jamming out code, making edits about as fast as I can think of them, floating from tool to tool in a smooth cycle of iterative development. Most of that is just patterns of keyboard shortcuts.

- program away the boring parts. If you have "boring" tasks, see if you can program or automate them away. The programming should be less boring than the task you are automating and you will have your first minion.

If you have time, try another style of coding.

CRUD and business coding can get quite tedious, especially under artificial pressure, for example to hit arbitrary management deadlines, which just fuel resentment.

Try writing a game in a new language. If you have kids, teach them to write a game, while learning yourself, eg in something simple like lua.

For me, programming 'in the small', optimizing loops for example, is much more satisfying than modeling complex or byzantine business systems with sprawling code.

Stop coding and let the reservoir of desire build back up again.

OP here - One of the things that really helped me get back into coding was to listen to podcasts. Especially "Django Chat" and "Talk Python to Me". I'd put them on while jogging and they really helped me to get a survey of the Django/Python ecosystem and also what a warm and welcoming community it is.

I was planning to go get my MBA, then I transferred teams and suddenly I like programming again. To be fair I don't think it was so much the coding that I didn't like, as everything that came with it (at least on my previous team) which in turn made me not want to code anymore.

I lost it when I was tasked of fixing bugs introduced by other engineers. That shit is soul draining as hell.

I resigned, started working on my own projects and tools. I am earning less right now but the peace of mind and interest in coding is back.

Sure, burnout is a real thing. Do lots of other things. Wait for an idea to find you. It should be just for you. It's not for money. Or ego. Ignore the devil on your shoulder that says it won't work, that it won't make money, that it's not furthering your career, that it's not solving the world's problems, that it's not padding your resume. Don't worry about how long it takes. What language it uses. What stack. What other people will think. Just do it because it interests you. If you still find that rewarding then your love is still there. If not, then perhaps the love has truly faded.

I never stopped loving to code...but for many years i only kept it as very mild dabbling on the side...Back in the early 2000s, i was a lowly web developer (mostly simple html, javascript, classic ASP/vbscript, sql server stuff) for a large multinational enterprise...in fact for most of my career i've only worked for medium or large multi-nationals (except for 1 year in a non-profit). What brought me back was 2 things:

1. learning python...which made me so productive without needing to learn some verbose language like java, etc.

2. open source software that let me build stuff without needing to pay large license fees.

I lost my love for coding after the Snowden revelations. The story of programming stopped being, "to make the world a better place," and became a means to a much more nefarious end. I don't have anything to do with the NSA or that type of work, but that made me realize that the programming trade was mainly used for less than altruistic purposes by most people employing them. This includes selling ads and all that garbage.

I still work as a programmer because that's my trade and my work ethic allows me to do it well; and lets face it, I have to pay bills, but my passion for it is gone.

The world contains a substantial amount of perversion. Just make sure that what you code for a public will hardly be possibly used for ugly purposes (you could probably club a seal with a teddy bear, but it would be difficult: try building teddy bears instead of clubs). But when you code your own projects, the right value of coding should be evident.

This has happened to me a couple times. Feeling tired of what I call the "tech rat race".

Both times some time off and working on an idea for fun sparked interest again. I would say if you take time off, don't feel pressured to do anything tech related. At some point you may get a creative idea and then just follow that. One time I finished a gameboy emulator I had started a few years ago, the other I made a little video game. And if you don't get the urge to do anything tech the whole time you're off, at least you'll have some R&R to go back to work with a fresh mind.

Hobby projects. Make something that you care about and want to have.

Work on something you're not getting paid for and that nobody's making you do.

I find it 1000x harder to get excited about code I need to write vs. code for the current bee in my bonnet.

Do something different. I program web backends mostly, but something about fiddling with an Arduino is a totally different thing and I can enjoy it as a completely separate activity.

After 15 years I realized that all the code I’ve ever written is nothing fancier than a clumsily wired breadboard. I’m transitioning to engineering management as I get way more out of coaching, planning, and product management, and it’s a lot more challenging and rewarding.

I can still scratch the coding itch by writing scripts or utilities or visualizations. Writing something for just me or five people is just as satisfying as writing something for a billion people.

I never lost an interest in it. It is just the corporate politics comes with the job, but that's not related to programming itself. Though, the only time work-programming gets interesting is if there is some problem to be solved that requires more than routine development.

Doing something completely different is really nice, to toy around with, at least if you have enough spare time to do something.

As long as it's not web-based, I still have an interest. I completely lost all desire to touch any "web code"

But if we're talking locally running python or controlling hardware via microcontrollers, or things like that- I'm not well-versed in any of it, but it still grabs my interest, and the little I have done, even just small learning projects, has been fulfilling.

If it requires anything web-based, then it drains me of all happiness.

Starting again after a break is a big help. Likewise trying to do something else for a while and realizing that the grass is always greener helps to get things in perspective.

I also think if you love coding then moving up the ladder is neither necessary or helpful because once you get into having to be responsible for other folk than yourself, fun tends to drop off. Coding is potentially a creative activity if you allow it to be.

Not at all a coder, but a painter. Ever now and then I loose the allure of my profusion. What usually brings it back is a change of medium (e.g. from oil painting to digital painting, or from large paintings to small ones). I guess that translates to a change in coding language in your game.

Not a change in language, but in problem space (which tends to lead to a change in language).

If you're a .NET enterprise CRUD guy, try web. If you're web, try C++ application work. Try kernel stuff, try embedded. Branch out.

> Problem space

I like the sound of that. Thought you had made it up till I searched for it. yes... exactly a difference in problem space.

You can try a lot of thing with .NET these days.

Yes, and I never gained it back. I realized I could have a lot more impact on the things that frustrated me higher up in the org as either an architect or product manager. Those were the parts of the job I liked anyway; not the part where I had to spend a day debugging a JSON parser.

I read this when it was posted here recently and it re-sparked me enough to get back up

The Best of edw519 - A Hacker News Top Contributor http://static.v25media.com/edw519_mod.html

I had for a while after coding every day for 20 years: turned out to be a burn out. It came back after moving to management aka not coding for a while. It's been back for almost a decade now.

I’ve been playing with Godot and building small games. Web programming is boring for me.

Switched to a functional language (Elixir) from an OO one (Ruby). Now it's only JS that annoys me, since CSS is declarative and therefore less of a headache.

this x1000. My main frustration with imperative programming has become the devops plumbing and defensive nature in code that was needed to get something done.

Switching to Elixir - learning what OTP brings to the table, e.g. observers, genservers - distillery compiled binaries per OS, negating the need for a lot of the devops complexity, e.g. docker, node, - the switch to esbuild and liveview for less JS cruft - FP transforming of immutable data to more immutable data vs managing state

TBH all of it has been a breath of fresh air.

I've been soft-evangelizing it for a while now (difficult because I'm also kind of anti-religion/dogma) but what we need more of is data supporting our lived experiences/intuitions... I haven't found much out there (there is some, but it's definitively insufficient)

I attended Strange Loop.


Been at it for 39 years. Still love it.

For me it's about first feeling good personally. And to me that means working out and staying healthy.

It's not that I lost my love, but I have experienced massive burnout from coding.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact