Taking a break from personal projects: Mental health and coding
Published on under the IndieWeb category.
This morning, on the final day of my holiday, I spent around two hours thinking through a way to auto-classify content on my blog, as part of a project to recommend tags to my posts. Most of my old posts don’t have tags, and I wondered: could I build a system using embeddings and a classification algorithm to help recommend tags when I write a new post? It turns out that yes I can but the hours of work I put into “solving” this particular problem were not worth it. I got stressed and was anxious throughout my coding session.
I have previously taken long breaks from coding outside of work, some of which have lasted months. I remember last time there was a voice in my brain that said “this is enough” and I decided to take a step back. Building projects for work is one thing; I have support and motivation and I am contributing toward a goal that a whole team is working on. But when I work on personal projects, sometimes I get stuck working on things that don’t really matter and that I spend way too much time on. Or I leave work after doing a bit of coding only to do more in my spare time, leaving me little time to do other things.
I find computer programming exciting and liberating. Being able to see a problem and say “I can solve this!” is a tremendous feeling. But, for me at least, building software is not all excitement. If I give myself enough time, I start worrying about whether I know enough, or whether I should try a new technology (only to get stressed and stop the project because I am taking on too much at once). Or I start a project that I convince myself will be small and turns out to be big and I don’t give myself adequate breaks.
Over the last few weeks, I have worked on building a content recommendation engine (that now powers my “Read more content like this” sections on my blog!), highlight.js, among other projects. Much of what I build never gets written about; a lot of coding is sketching and learning, as opposed to shipping something that other people will see or use. It has proven too much.
Yesterday, I ambitiously committed to a “100 days of IndieWeb” challenge, thinking: surely, this will excite me. I’ll have lots of mini things to do and I’ll be able to look back with 100 new blog posts and small things I have built. This morning, after my coding session on content classification, I realised that doing the challenge right now is not a good idea. As much as part of me says “sure, you can do it!”, there’s another part that knows I need to slow down from personal projects. Thus, I shall not be doing the challenge.
Compounded with other factors, writing more personal projects has added to my anxiety. I wanted to write this post to say one thing: if you feel anxious or worried about progress on personal projects, don’t feel that you have to continue. If you always feel in the middle of something and say you’ll stop when you are done, ask whether that is true or whether you’re going to keep starting new things and get stressed. This regularly happens with me and I end up needing to take an indefinite break, like I am doing now.
With so many possibilities – technologies to learn, projects to build, ideas to pursue – coding can feel overwhelming, especially on personal projects where it’s just you building something.