It’s taken me far too long to understand a simple concept. Good code doesn’t have to be complicated. If another developer looking at my code can’t immediately jump in and get started, then “Houston, we have a problem”.
Over the past year, driven by my own ego and a compelling urge to look clever, I went about creating a Genesis child theme – something which ultimately only requires two files, a stylesheet and a functions file – that was object-oriented, config-driven, namespaced, loaded 11 libraries using Composer, and relied on a Gulp build process to produce optimised versions of its assets.
Overkill, to say the least.
Now don’t get me wrong, at the time I was pretty happy with how it turned out. Technically it’s marvellous, but practically, it doesn’t fit with my workflow, and personally, it made me want to take a long hard look in the mirror. In doing so, I realised I’d become consumed by the urge to improve my workflow and learn about all the latest technologies, to the point that I realised I was burned out.
I’d created something that I didn’t really need, and in doing so I’d lost my motivation for writing code and solving problems, and started to suffer from imposter syndrome.
Reflection, and moving forward.
Since then, I’ve taken a step back and have deliberately taken on less client work, and been less active in online communities. Reflection has helped me recover my motivation, and realise that good code doesn’t have to be complicated.
What drew me to the Genesis Framework in the first place, the simplicity of being able to create an original work with a minimal amount of code, is ultimately what has helped me grow and move past this uncertain time.
I’ve given my own website a coat of paint, have a long list of ideas for future blog posts, and have begun working on a Genesis child theme I’d eventually like to sell. Onwards and upwards.