Django in 2023
- Django, technology, static
First of all Happy New Year 🎆 I have just finishing porting my last hobby site from GO to Django 🐍.
During the past years I have experimented with several backend options for this blog and other small website. I started with NodeJS, moved to Django and then sweared to the great features of static websites, moved to GO and ....back to Django, currently Django 4.1.3
So this would beg the question is Django is still relevant in 2023. My quick answer (obviously since I moved back) is yes. I have learned a few things on this journey so I thought I would write then down: mostly for myself but perhaps for others too.
Choose🥱 Boring Technology
I had a good laugh with my colleagues checking this article about boring technology because much of the pitfalls presented there are just me : "how about Cassandra?" "how about redis as a relation database "!" and ways to stretch technology or try something new just because it was fun.
Django might not be the most exiting tech but is reliable, has been around for a very long while and is tried and testing in multiple situation.
The GO version of this site had primitive admin login (auth http), a lot of missing feature and doing something relatively trivial like randomising photos from a directory required a lot of time.
If you choose something boring you can focus on content more than adding features to achieve what is already available.
Be Honest with your knowledge 🧠
If you are already proficient in a technology you need to have some very compelling reasons to switch. The main test is "can I achieve the same with X language that I already know?" If the answer to this question is yes, remember that you will always be more productive in the technology you know - have more experience with. Of course for professional programmes this might not be a major hurdle but, if you are not coding professional (so like me, you are a sort of coding entrepreneur) be realistic and honest when assessing your knowledge.
For instance, I realised that in GO I can't really go far without external help (which defeats the purpose of coding something on your own right?)
Don't go static 🛑
Static is the death of creativity. Without anything dynamic your blog/site will be pretty bad. Anything you want to achieve (even a simple search box) will be a continuous fight. So unless your site is really small and almost never updated, don't go static. There are plenty of dynamic options (self-hosted, externally hosted) that will ALWAYS be superior to static webites. And no, you don't need the latest fancy JS frontend framework.
Don't chase the newest technology but pick the one you are familiar with and has been proven and tested throughout the years. Happy Coding 😄