It's been a long time since I've built new software from scratch under my own steam. The first question I had to answer is: how will I build it?
I roll my eyes at people who are snobby about any programming stack: whatever is productive for you is the right choice. Of course, if you're running a new business, "productive for you" has to cover a lot of ideas: you need to consider if you can build stable, resilient code that supports a delightful user experience at speed, whether you can hire a great team that builds in that language, and what the infrastructure landscape looks like. But for a personal project, it's all fair game.
For this project, I've decided that I want to stretch myself a little. I don't want to build this stack in the same way I chose to build Known in 2013, or Elgg in 2003. Both of those were based on PHP, albeit in very different eras; it'd be a fast build, but kind of boring, and the hosting options are limited.
So now my biggest question is: what should I use as the database? I'm torn between using a straight Postgres database, something like a MongoDB, Firebase, or FaunaDB. The latter is completely new to me and seems to be designed for serverless architectures, so maybe I'll try that. I'll try it and report back.
There's a lot of choice out there, and no correct answers. The downside is that setting up your development stack in 2020 is significantly more time-consuming than it ever was. The upside is that you have more choice, more developer support, and friendlier tools than ever. It's a different kind of fun to old-school web development - my first web scripts were written in Perl, and this is a universe away - but it's still definitely fun.
If you're a developer, what are you using these days?