(I’ve forgotten to publish this…7/19/2026)
Currently, I’m working on the 3rd full-stack project that involves Python+SQLAlchemy+Pydantic+FastAPI backend and JavaScript+Vue+Pinia+TailwindCSS+DaisyUI frontend. Before these projects, I knew Python+SQLAlchemy+Flask+Jinja2+BootStrap, ie, server-side only.
I didn’t know that context switching is the hard part for full-stack. If I notice while working on a Vue file that I need to add a column to a database table, I need to change database ORM → Pydantic class → FastAPI → Pinia → Vue.
For an average, non-professional dev like me, the context switching is not manageable. To begin with, I’m always mixing up Python and JS syntax. My working memory is so small that I can’t remember interfaces that I defined a few days ago.
But it’s 2026 now. I can fully count on AI to support my small working memory. It reviews my code before I run it. It’s extremely good at finding TYPOs and Python expressions in JS. It also helps me fix issues. It’s much more helpful than Python or JS/Vue error messages because it knows the context.
When I complained the issue of context-switching to AI, it recommended me to migrate to TypeScript, which I immediately did.
I’m really glad I did. Pydantic classes that I defined for FastAPI can be parsed, and a corresponding TypeScript definition file is automatically created. This is great! I don’t have to interpret in my head from Python to JS(/TS) anymore. When I work on TS, I only need to look at this converted TS file. I can purely focus on TS, forgetting Python while I work on frontend.
AI-assisted development is so easy and fast that I feel guilty. I can see why many serious devs hate AI-assisted development (and vibe-coding, for that matter).
Probably I’m missing many points that I should have learned if I didn’t work with AI. I’m aware of this, but the benefit AI gives me is too big to ignore.