About a year ago, I thought I’d try to build an app.
I still don’t have an app, but I do have a website.
Solitaire Arcade is now live, which still feels slightly strange to say because when I started, I knew almost nothing about web development.
There wasn’t really a roadmap. I had an idea, started pulling at different threads, and gradually worked out what I needed to learn next.
That has pretty much been the process ever since.
I’ll finally understand something, feel like I’m making progress, and then discover another problem I didn’t even know existed. Sometimes that means learning something new. Sometimes it means undoing something I thought was a good idea a week earlier.
And sometimes it means spending far too long fixing something that eventually turns out to be embarrassingly simple.
But that has also been one of the things I’ve enjoyed most about it.
There is always another problem to solve.
The first game that really felt like a milestone was Solitaire.
I know I haven’t built Fortnite, but that wasn’t really the point.
For me, getting Solitaire to the point where I could open it, play a full game and genuinely enjoy it was a success.
Once that worked, I wanted to keep going.
That led to FreeCell, Spider, TriPeaks, Hearts, and Spades.
Each game brought a different set of problems. Game logic, state, layouts, mobile behaviour, controls, scoring, AI, and plenty of smaller things I had never really thought about before trying to build them.
The interesting part is how quickly something that looks simple from the outside stops being simple once you try to recreate it yourself.
A deck of cards moving around a screen sounds straightforward.
Then you start thinking about every possible move a player can make, what should happen when they do something unexpected, how it behaves on a phone, what happens when the screen rotates, and all the little details that make a game feel right.
That has probably been the biggest lesson for me so far.
Building something is very different from using it.
I’ve also realised that I don’t need to understand everything before I start. I just need to understand enough to take the next step.
That might not be the most efficient way to learn, but it seems to be the way that works for me.
There is still a lot I don’t know. There are things on the site I want to improve, games I want to add, and probably problems I haven’t learnt enough yet to recognise.
But the first version is live.
That feels like a pretty good milestone.
I’ve learnt more than I expected to, broken plenty of things, fixed most of them, and somehow built games I actually enjoy playing.
I still don’t have that app.
But I think I’m okay with where the detour took me.
Top comments (1)
Congrats on building your first website! 🎉
Outstanding work!