Lately I’ve struggled with being excited about coding projects and programming in general. I don’t know if I could pinpoint what exactly has made me feel this way. It’s not burn out, I’ve rarely been doing any programming outside of work. So far the only identifiable reason I’ve landed on is that I’ve not managed to complete my most recent programming projects because their scope is fairly large.
While examining what is causing this lull in excitement I realized I tend to experience passions and get excited about things cyclicly. I will have an idea that will get me very excited, will work on it, and then within a month or so move onto another new idea. This happens a few times before returning back to the original idea. This happens in my habits as well. I will exercise every day for a few months, then stop, then get back into it, then stop again. This pattern has cropped up in seemingly small things that I do every day as well. On my commute to work I will go through a period of wanting to do nothing but listen to podcasts, then I go through a period of listening to music on Spotify, then the radio, and then back to podcasts. This pattern is one of the root causes as to why large projects are difficult to complete.
As I talked about in Lessons learned refactoring my basement, we had an internal engineering conference recently at work. While attending, this problem of being passionate about programming was on my mind. I attended many sessions about how to improve ones self, as well as technical talks about latest trends, tools, and ideas. One of my biggest take aways occurred wasn’t about a specific presentations content, but I was inspired by their passion for what they were talking about. Their appreciation and excitement for what they do and know drove me to consider my own situation and try to turn my focus from what caused my lull, to finding some solutions for what I could do to get out of it.
Later that evening I was having a conversation with a friend where we struck up a conversation about our similar lack of excitement over programming. We were both lamenting, when the thought occurred to me that perhaps what I needed to do was to examine what made me excited to get into programming in the first place. I enquired why it was myself friend got into programming, which led to a great conversation about how to find the passion again by getting back to the roots of what made us passionate to begin with.
Considering this question myself reminded me of my excitement over small projects that could almost be considered a hack. The most illustrating example was after I learned about WebRTC, the technology behind video/audio conferencing tools in the browser, such as google hangouts. I used to spend hours putting together interesting uses of this technology and just playing with it, with not much intention to take those small projects and do anything with them. The end goal was to make something, then show it to friends and family. They were quick projects, less than a week, sometimes a single night, just something I could tackle and experiment with. Reimplementing this practice into my routine, identifying small problems, or interesting uses of a technology and then just spending a few days building it, has helped me immensely.
There are many different ways to relight a passion for a hobby or skill, but examining the roots of what got you excited enough to spend time in said hobby should be your first step in the path to discovery. In many cases we lose sight of those things as we progress due to the fact that our increased skills tend to lead to projects that are much larger, and/or much different in scope. If you use this skill or hobby for work, sometimes we have to sacrifice the ideal environment that gets us excited to do what we do. Which makes it that much more important to take the time to return to the roots and include those things that get us excited in our routines.