background background dark
logo

Farewell!


heatmap
Message volume as percent as maximum

Books, games, and songs on Discord are hard to find and so are smart people. It's full of trash. I wanted to help people learn and play using Discord and I didn't have a lot of time, money, or help, so I cut corners doing so. I didn't know a lot about programming, but I'm pretty smart.

I had issues with people complaining about poor privacy. I fixed many privacy issues like I did not allow people to search up users (or user IDs, in the end) and I did so many tickets, in my email and in my server.

But there were more things people didn't like than I could deal with. I tried my best and I did all the tickets. Here's how a ticket worked. Using a screenshot you could remove any server or message from my list. Some people tried to put servers back that weren't theirs so they could read them by providing proof they were admin.

I could not play detective, so I defaulted to just removing servers. This all took a lot of time from me coding more, which was an issue I tried to fix but could not. So, I closed the project. If you want answers for questions you can only solve on Discord, you should look up Answer Overflow. It's opt-in and I have no involvement. I used my service to look up textbooks and cool songs and most people using it did the same. There were bad actors, though, so I get it.

Here are some technologies I used: AI, Elasticsearch, Proxmox, VMs, RAIDZ, SvelteKit, AI.

AI helps me, but it can't do everything. It's hard without help, but to make work like this last for a long time, you have to learn a lot of unfun skills like checking and looking at everything to see big problems fast. I'll talk about my problems later.

With Elasticsearch, I removed _source. That's how Discord does it as per their blog. Proxmox, I used because I wasn't sure what type of Linux to use. VMs I had a lot of to separate my work. They use a lot of RAM and if you run out, the VM dies, so sometimes I ran on the host machine. RAIDZ, I used to save money. My website used SvelteKit and I put the Svelte docs into AI and it made a website for me.

I want to give a big shout out to all these technologies as they were really easy to work with.

I had a few drives, I worked a few summers as a temp and I love computers. If people looked at messages, I tried to save the files on them temporarily to make the service snappier, but I couldn't do them all and people also complained about it. I rented servers and I even co-located some, but that cost a lot, so I was kind of running out of money.

Here are some regrets and problems. ScyllaDB using 100% CPU to make the core spin up fast — I asked AI and it said I needed to add the Monitoring Stack. Also Go panics on maps. Cursor didn't add the mutexes I needed, I guess. Keeping RAID was a regret because the array ran slow, but you have to remake everything to change how it works for some reason, so I kept it. Also, I noticed after a long time that if I put two billion things into Elasticsearch, it would lose things. At the start, I did not use shards... or anything.

Here are some things I should have done. I should have used a test environment. I just used the interrupt key fast when I made mistakes like forgetting to put where on update right. Writing queries into live slowed my servers down. I put barriers off to make my work faster, but not putting writes to disk for a long time is bad, as I lost all my work when my host lost power. I did this because I used a script to see if I saved a deleted channel by accident, but my server was so big and slow that the script would run out of time.


Here are some density plots. (I wrote them in o3.)

length messages sizes members

Thanks for reading~! ♡