My professional web dev days are behind me, but I run a few personal projects.<p>Stack: MySQL/Java/Spring/Maven/Linux/Docker/Google Web Toolkit<p>MySQL: most data are JSON blobs, it's convenient for document-oriented data models and supported well in Java and GWT. Mysql supports JSON and tabular views on top, which is super-convenient for queries.<p>Java: especially since records and lambdas entered the language, it's nice to work with. Strong typing is an added bonus. Excellent ecosystem, good testing tools for the entire stack (unit testing up to end-to-end testing).<p>Spring: abstracts away a lot of functionality (JSON-to-objects, authentication, web serving, database handling, dependency injection) that I would have to otherwise implement myself or through 3rd party libs<p>Maven: there are better and faster build tools, but I kind of missed the train there. I don't use a CI/CD server, just a docker container with Maven that builds app images<p>Linux: the best OS if you run open source software.<p>Docker: my personal projects don't justify the complexity of k8s, also public cloud is too expensive.<p>Google Web Toolkit: imho the most misunderstood web framework out there. Google had the right hunch but destroyed it by adding too many esoteric features. I use GWT as a java-to-javascript compiler and for the excellent DOM abstractions which allows me to write fairly complex applications with a very low bug count.
I consider myself more of a backend dev, but I use Django and Postgres. Often I’ll prototype in Flask. I like the ability to get something running - be it full site or API with minimal fuss.<p>On the front-end, I’ll take whatever comes. I have dabbled with React, but not enough to get beyond the nagging feeling that it has the potential to become 1990s PHP.
Started with LAMP, slowly evolved to MERN. In the process, gained experience with several other web stacks. These days when I can choose it's basically Expo, React Native, GraphQL and Postgres. I rarely have the luxury of choosing the whole stack though.