My MPA Journey...
Why Vanilla?
The term “Vanilla” refers to the pure, core form of a language — as close to the foundation as possible. My main reason for using vanilla tools is longevity: the core standards live far longer than frameworks and libraries. jQuery is fading, but JavaScript remains. Vanilla code also runs lighter, using fewer resources, which almost always improves speed and maintainability. Vanilla gives Long Term Support.
Vanilla Javascript
JavaScript is the backbone of the web, evolving slowly and predictably. Frameworks like TypeScript or jQuery may offer benefits, but sooner or later you need to understand vanilla JavaScript.
Vanilla CSS & HTML
CSS and HTML continue to evolve, often reducing the need for JavaScript. Tools like SASS, SCSS, or HTMX add layers, but they also add complexity. Sticking to the core keeps your frontend simple, future-proof, and easier to debug.
Vanilla SQL
SQL is already simple and expressive. ORMs may cover 80-90% of cases, but when they fall short you return to raw SQL. Especially if you use CTE frequently. Why learn two SQLs when the original solves the problem without extra detours and dependencies?
Lesson learned: I have yet to see a problem that cannot be solved with vanilla tools. The core lasts longer, runs faster, and stays maintainable. Why learn two languages when one is enough?