Server rendered web pages, no fancy client side js, just good old websites. Quick to build, easy to maintain, just ship it.
So what are your recommendations? For a web developer that wants to be productive, not trendy.
You just can't go wrong with one of these 3 above. Boring. Tested. Server side web pages
All the 3 above also have great communities, support, documentation and above all, plenty of experienced talent over the years. These are battle tested.
Their old simple API framework is deprecated.
I started looking at Yii and Phalcon a bit but not crazy about either.
Yet.
I want something like Struts but for PHP.
So, I might have to... create another framework. :-D
Thought about RR but every time I jump in again, I nope out again. Maybe just need to really learn it.
FastAPI seems interesting but can't find simple videos on how to do login/auth sessions in under an hour -- red flag.
If you want something less niche, PHP/Laravel
If you want something super niche, Elixir/Phoenix
Also the documentation is fantastic, you should be up and running in 5 minutes.
Pair it with a good IDE (i.e. WebStorm) and the websites write themselves.
Instead of php framework I just use an independent component for routing. Php has the ability to handle the rest well without requiring a server side framework (at least for my use cases)
I'm playing with Hugo right now, no fancy things, just a plain static pages.
I'm assuming you aren't building internal apps in an enterprise environment that would push you toward Java or .Net, but instead public facing sites/apps as an independent developer.
For Python, the major popular choices are Django[0], a "batteries included" framework, and Flask[1], a more lightweight option.
For Ruby, the equivalents are Rails[2], and Sinatra[3].
There are many other options, mostly created with a specific niche or use-case in mind.
Personally I am most familiar with the broader Python ecosystem, so additional frameworks that come to mind are Pyramid (Lightweight framework that scales up to complex projects as needed), Tornado (async non-blocking), Dash (low-code for ML), Cube (semantic web).
And of course there are many other languages (eg. Java, PHP, JS, etc.) in which you can create web sites and apps, but sticking to the popular options to start with has advantages in terms of ecosystem, documentation and other learning resources, and so on.
I'd be remis if I didn't mention one other option that has a lot of bang-for-the-buck if it fits your use case: Most websites (and a lot of web apps) are content-oriented and just a content management system. In which case, starting from an open source CMS and doing a bit of customization will get you to "done" a lot faster. There are plenty of open source CMSs to choose from (most are written in PHP) but the most popular by far is humble WordPress[4]. Check it out if your site is going to have anything like a simple posts and pages organization, and a drafts and publication workflow (personally I am invested enough in Python that even for that sort of site I default to choosing something like Wagtail or another Django-based CMS[5], or Plone[6], which reinforces what I said at the start: make your choice based on the languages and tools you know well).