Indie dev sharing the journey. Creator of https://xitter.cf/t.co/qxgVDAINSp 🌱 Exploring React Native, AI & game dev

YouTube →
Joined April 2010
Simon Grimm retweeted
After Tiny Harvest, we made a second game. Tiny Hospital is a cozy hospital sim for iPhone. Nobody dies, nobody goes broke, and the worst disease is a personal raincloud. The open beta starts today. Come cure some patients 🩹
12
5
1
89
5,294
After Tiny Harvest, we made a second game. Tiny Hospital is a cozy hospital sim for iPhone. Nobody dies, nobody goes broke, and the worst disease is a personal raincloud. The open beta starts today. Come cure some patients 🩹
12
5
1
89
5,294
Every Tiny Harvest update can break the game for 1,000 players. The fix often takes 2 minutes. Getting it onto their phones through App Store review takes days. So here's my whole release pipeline, and when I skip the store with an OTA update 👇
🤝 Paid partnership
2
12
2,464
The one question I ask before every release: "Did the native app change?" Yes → new build, TestFlight, store review No → an OTA update might be enough Full video, sponsored by @codemagicio: youtu.be/mTPboJJwf-M
1
1
452
One day Google blocked the payouts for our game. The cause: a payments profile mismatch from a setup ~10 years ago. Support's answer: create a new developer account and transfer the live app to it. Sounded terrifying. Reality: a few keys to update, zero downtime, payouts released.
2
8
1,795
Instant Cloud, the backend our game runs on, is shutting down. I got the email the moment our plane landed after summer vacation. Deadline: about 3 weeks. Thousands of active players. Downtime wasn't an option. How we moved to self-hosting, and what it costs now 🧵
2
11
2,712
4/ The cost: our backend used to be about $25 a month. Self-hosted on AWS it's around $500 (a big Aurora instance plus two EC2 servers). It runs a bit better than before. That's the price of owning your backend.
1
1
271
5/ Lesson: keep database calls behind your own layer, so a provider can be swapped. I didn't, and it might not have saved me, but it would have given me options. Full story in this video: youtu.be/6aBvhmaLqug
2
403
Our game's Sentry had 324 unresolved issues. So many that real regressions were invisible. One session with Claude and the Sentry MCP: 324 → 48. How we sorted them 👇
6
34
4,962
3/ The other half: Seer autofix. Connected to GitHub, it reads the issue together with our logs and spans, drafts a fix and opens a PR. So sometimes an issue arrives with the fix already waiting for review.
1
2
403
On the way to our Easter vacation, my dad messages me: something's wrong with the game. Players were in the wrong co-op. Profile screens showed another player's data. I hadn't touched the code in days. For an hour I was sure we'd been hacked 🧵
2
5
2,637
3/ The part that was on me: our API never told caches "don't store this". Any response that depends on who's asking should send Cache-Control: no-store. Ours now sends it on every API response. One header, and an upstream cache mistake can't leak player data.
1
1
293