Hats off to devs!
I now have a new found respect for developers.
While I always had an idea of how difficult it was to code. It wasn’t until I started to actually ‘code’ i.e escaped tutorial hell and dove head first into my first real project that I realized the insane difficulty of getting a project up and running.
I forked a Jekyll themed static blog for my personal website and decided to customize it a bit to fit my needs. Nothing fancy, just some minor tweaks here and there. How difficult could it be right? Well I was about to find out.
Everytime I changed something, I had broken something else somewhere on the code base. I had a bit of knowledge about HTML and CSS, but nothing that could’ve prepared me for the complexity of this codebase (which is probably simple but seems difficult to a beginner like myself). There were many moving parts, whenever I fixed a certain part of the code I had broken something else. Thank god for ChatGPT and stackoverflow, I poured over other users who faced similar problems.
Bit by bit I started understanding how the code worked, how the files came together to render my blog. I started off by making small changes such as just changing the text, then I moved onto bigger challenges like making modifications to the theme itself - changing the number of menu items, hiding certain pages and adding images.
It was like solving a jigsaw puzzle, in the beginning nothing seemed to make sense to me. However as I read more and broke things it started to make sense. It was almost magical. (Sorry for the cringe, but that’s really how I felt.)
My advice to anyone starting their own project would be this - don’t be afraid to break things, it is just code. Yes, it will be frustrating and there were many occasions where I just wanted to bang my head and give up, but trust me it’s worth it. Only by trusting your intuition and making mistakes will you be able to learn new stuff. Working on your own project without following any tutorial is powerful for this same exact reason, there is no guide, it is reflective of real world problem solving.
From now on, I’m never going to complain about bugs on websites or apps. Having been on the other side, I completely understand the difficulty!