I spent a couple of hours last week thinking about a new project. I think it's a good idea, but like most good ideas, it will take a huge amount of two things that are scarce: time and money. Who knows if I'll be able to justify spending either on this. We'll see.
Of interest, this project involved making an app, which would be my first. I think it was Chris Coyier who said something like: "I can't imagine working on something that doesn't have a url". This perfectly captured how I feel as well. I like to work on things that have urls (links to the App Store don't count). I like apps well enough, and there's a place for them, but projects with urls are where it's at for me.
None of that is the point today, though. The point for today is just how good we have it in 2024 as web developers. I use Next.js and Supabase, but other things like WordPress and Rails are also really, really good. I unknowingly took all this for granted before firing up my potential project with Expo last weekend.
It was painful!
The setup was painful, the docs were painful, the config was painful, using TypeScript was painful. The whole thing, pain! Compared with the stack I was used to, it's a total mountain of friction. On all my projects today I can get rolling with a couple of quick, effortless commands:
$ npx create-next-app
$ npx shadcn-ui@latest init
$ supabase init
It's obscene what you get with just these three simple commands: a frontend, a backend and an incredible component library. It's virtually frictionless.
Still no word on whether or not I'll pursue my app idea, but I did get something out of the exercise: I realize just how lucky I have it.
As Andy Bernard once said:
I wish there was a way to know you're in the good old days before you've actually left them.
Turns out there is a way. Spend part of a Sunday playing with Expo.