I wanted to add new functionality and found it time consuming to adapt the framework template I was currently using. I was considering an alternative that already had the functionality I wanted, and which could be extended upon further with more ease in the future.
The guilt stemmed from the belief - perhaps a mistaken one - that as a software developer, I should be excited to build and maintain my website rather than feeling an aversion to the hassle.
My friend's response?
You're not a web developer. Leave that shit to the professionals.
This gave me a bit of a laugh because, at least in my mind, I've been working as a professional web developer for my entire career. I wondered what she thought I had been doing all this time. Fortunately for my mildly damaged ego, she clarified things further:
You're writing large scale software systems.
She saw a web developer as someone who builds websites exclusively. That type of work, she argued, shared characteristics with the type of work I've done in the past (such as building checkout flows on a single page application) but is distinct enough to be a whole different branch of software development.
As a result, I couldn't be expected to be proficient in that type of development. The building and maintenance of a personal website would require more time and energy on my part than it would for a developer who builds websites for a living.
This is a great example of the "build vs. buy" decision we often have to make as software developers. We consider the advantages of both in the tools we use and in new functionality we want to include in the products and services we build. So why couldn't I apply this to my personal projects?
When deciding what to do with my personal site, I asked myself:
- Did I benefit substantially by building (potentially multiple times over the years) everything I needed and wanted for my site? What were those benefits?
- Was I certain that once the site was built I was likely to leave it as is? Were the monetary savings worth it relative to my time and energy spent?
- If I 'bought' instead, how would I use the additional time? Could I advance my career in better ways as opposed to the learning that comes from building the site myself?
After considering my answers, I ultimately landed on paying for the service and I couldn't be happier with my decision. The time saved not coding and designing has given me more time to write, work on talks that I'm giving, or experiment with a new shakshuka recipe.
So, if you don't work as a professional web developer and have felt guilty about considering the 'buy' option in this context, I'm here to say don’t. You're not a failure as a software developer if you don't build your own website. In fact, I applaud you for it. Leave that shit to the professionals, and use the extra time to do more of what you love.