I changed my mind about my tech stack several times in my first two years as a developer. These are my notes, in order.
Finishing the training (March 2024)
I became a trained full stack software developer in March 2024, with an overall Merit and eCommerce as my focus. My five projects were Sologamy (HTML and CSS, Merit), The Cycle of Life (JavaScript, Pass), Corri Construction (Python, Distinction), Our Spot social network (Django, Merit) and Poster Palace (eCommerce back end, Merit). I planned to use Python, APIs, Flask and Django to build chatbots, eCommerce sites and learning management systems, and to learn more about machine learning, large language models and prompt engineering.
My first stack list (April 2024)
A tech stack is the languages, libraries and tools a developer builds with. I wrote mine down to stay focused. I planned to offer back end work and AI chatbot services.
What I knew: Python, Django including logins and permissions, Flask, REST APIs, SQL databases (PostgreSQL, MySQL and SQLite, as a beginner), Git, Agile and basic testing.
What I wanted to learn: more SQL, Docker, cloud, MongoDB, Celery, Postman, Nginx and more testing.
For AI I knew very little: generative AI, large language models, machine learning, prompt engineering and RAG. I thought the list might change but not what I wanted to offer.
The same month I noticed Djangonaut Space, an eight week group mentoring scheme for people who want to contribute to Django.
Flask, FastAPI or Django (August 2024)
A Tech with Tim video compared the three frameworks, especially for getting a job. He did not recommend Flask for production, though many people run sites on it. I agreed it suits hobby sites and small websites, and that Django is better for anything bigger. For my first AI agent I planned to use Flask or Django with FastAPI.
Updated stack (October 2024)
After a few months without posting, my list had changed. Back end: Django, Python, Flask, Django REST Framework and FastAPI. Front end: Astro.js and Tailwind CSS. AI: agents. Without the support from my course I leaned on Claude.ai, which can turn into a frustrating mess quickly but also helped me finish my first project. I spent time on Next.js in November and December and dropped it because it frustrated me.
My stack in May 2025
By then I knew I was a back end developer at heart. I care about the front end but it does not excite me, and neither does JavaScript.
- Django: the foundation for anything that needs structure, such as user accounts, dashboards, eCommerce and APIs.
- Tailwind CSS v4: it keeps me inside my HTML, and every project starts with my brand variables and a few components I have built.
- AI tools: ChatGPT for debugging, planning, building and writing, and Claude.ai for long explanations and for understanding why something works.
- Hosting: a Hetzner VPS with Hestia Control Panel. I deploy with Git and manage Nginx directly. Setting it up took time and I only managed it with Claude's help, but I now know how my projects run and it saves me monthly managed hosting fees.
- Version control: Git and GitHub, with separate branches for local and production. My commits log what I learned as well as the code.
- Database: PostgreSQL for all production projects.
- Development environment: Windows 11 with WSL2 and Ubuntu. My terminal opens straight into my dev folder.
I had tried bigger stacks, including Astro and Next.js for the front end. This one keeps me productive and calm, which is where I want to be as a developer who is still learning every day.