Skip to main content
CASE FILE 01 / SUB-DOSSIER / STATUS: SOLD
SOLD2024 — WHERE IT STARTED

ORDAKMEMER

A Persian Discord economy and social bot I taught myself JavaScript to build — not knowing the language’s name for the first three months.

OVERVIEW

This was my first real coding project. It grew into a full economy sim — jobs, trading, clans, an in-bot social feed — running on sharded discord.js with MongoDB behind it. It passed 50,000 users and paid me the first real money I ever earned from code.

It didn’t get there in one build. Over five years I rewrote it from scratch four times just to keep up with how fast it grew — each rewrite a response to the last one running out of room.

WHAT BROKE

WHAT BROKE — every rewrite happened because I’d modeled economy state directly on Discord’s rate limits instead of behind a queue; growth kept exposing that coupling. The 4th rewrite finally decoupled game state from the Discord gateway so a Discord outage doesn’t touch the economy.

The pattern repeated three times before I actually fixed it: a feature would ship, users would arrive faster than the last architecture could absorb, and the fastest path back to stable was a rewrite rather than a patch. Only on the fourth pass did I stop treating that as normal and actually separate the two concerns for good.

RESULTS & LESSONS

50,000+ users, four rewrites, and my first paycheck from writing code — all from a bot I built for friends without knowing what language I was even using. It’s the project everything else on this site is downstream of.

The lesson that stuck: growth doesn’t just add load, it exposes which of your early assumptions were load-bearing. The fix isn’t to predict that up front — it’s to notice the second time you’re rewriting the same seam and actually decouple it instead of patching around it again.

MATERIALS — NODE.JS · DISCORD.JS · MONGODB · MONGOOSE · CLOUDINARY
← BACK TO CASEWORK