The programmer's dilemma
I wanted to have fun building something of my own. The goal was not really to make everything from scratch, but I wanted more freedom in my choices. I thought that a stronger feeling of control and ownership would help me think more about my website and get back to it. Also, a sense of pride in the hard work would make me want to take good care of it.
The tradeoff is that the more control and flexibility you want from a website, the more time it will take to build and maintain. But I think it's worth it, though not the easiest choice. If that is also the path you wish to take, know that many challenges await you.
Time management and priority
It will take more time than you think. Like many software projects, we often have the tendency to underestimate the time it will take to finish. You'll probably develop in your free time, so be sure to dedicate time to your schedule and prioritize it.
At first, don't worry too much about how long you should commit, but start. Start working on it. Even a little will do but keep coming back. That's the most challenging part when building and maintaining a habit.
Protect the time you will plan to work on your website. It's one thing to have it on your schedule, but it's another thing to sit down and do the work. Distraction in all its form is your enemy. You will have to say no to a bunch of things. If not, life will get in the way, and you'll probably give up. Don't let that happen.
The danger of over-engineering and over-thinking
Do not seek perfection. Easy to say but hard to do. At first, I was overthinking the technical solution. There are many things to think about, like the programming language, the framework, the design, the hosting platform, the mobile responsive, etc. It's a lot of different skills. Trying to reach perfection in everything will put you in motion and not in action.
There will be many moments of reflection and gathering information. But be careful not to over-think. The more time you'll be in that state, the more chance you'll procrastinate and not progress on what really matters. Fix a deadline to decide and then do a kick-off to start working on something concrete.
For example, there was a time I spent too much time browsing for inspiration. I forced myself to stop doing that and created a wireframe prototype with Whimsical using what I learned. It was plain and simple but a nice step to layout ideas and iterate on it. Always balance your consumption by producing something as early as possible.
The devil is in the details
Polishing your site will take time. It's okay if all the features you had envisioned are not implemented. Keep a list of features and prioritize to have something like a Minimum Viable Product. Then iterate.
You'll have to define what you want for your MVP. In my case, it was to publish online as fast as possible with fake content and a simple layout. I could then ask people for feedback and ideas to improve the design.
As I write this article, I still have a backlog full of tickets to work on. But for now, my website is good enough to be shared publicly. Remember that there always will be room for improvement. Don't be trapped in the details too early.
Make it easy to write and publish
Not seeking perfection doesn't mean having a sloppy solution. It's essential to have a robust and automated solution. Because the less friction to write and publish your content, the easier it will be to make a writing habit stick. The challenge is to have something you're satisfied with without going too far.
Break it down into small tasks
When you start, you'll be excited, but reality can hit you hard. You may discover that there's much more to do than you initially thought. You can feel overwhelmed, particularly if you're a beginner in programming and have little experience in software projects.
My advice is to break down the vision of your website into small and actionable tasks. Then prioritize them to match a defined MVP. You may be sick of prioritizing everything, but I can't stress enough the importance of this process.
As you work on your project, don't forget to regularly assess the vision you have for your website to check if you're still in the right direction. Vision and clarity are essential to succeed.
Enjoy the journey
Depending on what you want and your experience, the time spent and difficulty will vary. But you'll learn many things along the way.
Despite the challenges, I enjoyed making my website. I made sure to build a habit of working on it on my weekend. It was something non-negotiable. I saw my vision taking shape little by little, making me keep going.
If you find yourself not enjoying the process at all, challenge yourself to persevere a little more. If it's really not taking, that's alright. It's possible that what you really want is only focusing on something more specific, like the content or the design. There are other solutions than doing too much by yourself, like using WordPress or delegating some aspects of the project. What really matters is that you find some fun doing it and gain the deep satisfaction in finishing what you started, whatever your chosen path.
Last Updated
March 31st, 2022