I am a competent programmer, and I want to create a website, which I have not done in a very long time. My best language is Python, though I am not against using PHP or some other language. I am familiar with HTML and CSS, but not great with JavaScript yet. In my case, it would be something similar to a community site (like a small social network) with a newsfeed, p2p chat, mailbox, forum (preferably VBulletin) etc. and would need to be mobile friendly. I know that I will use PostgreSQL due to spatial data types, likely Nginx, probably on AWS.
Over the years, there have been many trends in web development such as Ruby on Rails in 2006. Now, there are so many JavaScript front end packages like React, Vue and Angular, and even for back end work like NodeJS. In 2020, I am lost as to all of the options and if all of these decisions need to be made before working on a project of this size.
Obviously, this is a vague question and heavily depends on the use case, but I am interested to hear if HN has suggestions on things to consider and what to think about when deciding. What do you think is the best tech for a web app these days, in 2020?
It's more important to get the job done than thinking on what tool to use. This aspect would be considered only when you'll scale up, thus doing a rewrite/upgrade of the actual tech.
For CRUD apps I use and love Django. It's a great backend with plenty of goodies to make life easier.
For lightweight APIs that don't require an ORM, I would just use flask.
For frontend development I use VueJS. I'd use React otherwise. I just know Vue better.
I pick the right tool for the job, with a bias towards technologies I'm familiar with.
https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...