I first got the plan for Coverloop on my drive to work, idly thinking about profile pictures and how I wanted the best of both worlds: a cool piece of art alongside a bunch of my favourite albums. I had a clear vision for what I wanted before I even pulled into the parking lot, so I spent any downtime I had from my job planning out the structure of the website so that a clear, actionable plan would be ready when I got home.
After work, like every other day, I was tired. Critically and habitually, this is where my other planned projects I had thought of fell apart and were abandoned. I would try to execute the plan, even in a tired state, reach the first of many walls, then postpone it to another day (which would never actually happen). However, this was different: I set a goal to commit to this one (this can be viewed in my Personal Development Goals on my goals page), SMART-ly set so it is one that can be measured and properly tracked. Similarly, I managed the project into bitesized chunks with clear, identifiable checkpoints. This was a fantastic project management skill I learned from my co-op terms at Atlantic Packaging and allowed me to stay engaged with the work, instead of dropping it when things got boring or hard as I did with other abandoned projects. This also allowed me to properly address design issues, such as the alternate APIs I tried out (iTunes was fast and easy, but lacked a good library, surprisingly).
I realized that deployment was the easiest part, being excited to finally show-off my newest work to my friends and family. The fulfillment I felt after being able to interact with something I’ve worked so hard on was euphoric – this is what I loved about developing. In retrospect, I learned that I work at my absolute best when I care about what I build. Making something that is useful to someone is a big motivator for me. This addressed a problem that I encountered and wanted to solve. If it wasn’t useful to anyone else, it surely was to me.
This allowed me to push through numerous technical obstacles like excellent APIs having terrible ToS (looking at you, Spotify) or an API being too wonky on its own (MusicBrainz). Looking back, I could have avoided this with more careful planning, but this was due to a lack of technical knowledge of what the project would entail. I’m glad I can take away some technical learnings in the future so that I avoid the same roadblocks I encountered here. Going forward, some self-reflection is in order and re-establishing what I care about / my values are incredibly important. I learned that my motivation is another thing I need to manage for every future project too.
With my heart in it, I can move mountains.