The Beginnings of a Programmer

Around two years after I joined smashladder, a new idea arose between a friend and I. A platform named Discord was coming out and was quickly becoming popular. Smash-centric Discord servers were already coming about, but there wasn’t really many tools or ways to automate certain behaviors like there is today. Enter: Floof Bot (a very professional name, I know).

This was something that the aforementioned friend and I co-developed for about a year before I hopped off of contributing directly. We had no idea where to begin, but with a little bit of dedication fueled by pure stubbornness, we were both able to learn nodejs and build a bot using the discordjs package.

Looking back, the first iteration was functional … but that’s about it. The code was a mess (it was all stored in a single file on the internet), and for a while we were so afraid of learning how the JSON structure worked, we essentially emulated it using multi-dimensional arrays. I hope to god that nobody ever has to suffer through the process of building and maintaining a music queue function built with arrays that go about 6-dimensions deep. But we still did it, and despite all the speedbumps we continued to learn and have fun implementing just about every new feature that our hearts desired.

That was my first taste of real programming outside of a school project where you’re graded on everything. It was difficult to understand at first, but once we were able to get it down it felt so much more natural. Perhaps the best part was the satisfaction of knowing that other people could use it rather than it just being some sort of school project that we’d spend a few days writing only to get a C on the assignment and never see it again. It taught me dedication, motivation, presentation, and the fact that StackOverflow is basically a programmer’s bible.

Eventually I built the feature talked about in this reddit post. It took about a year to gather all the data and figure out exactly how to go about creating such a feature. It literally kept me up at night as I tried to bugfix and tweak everything to make it absolutely perfect. I wanted this to be the ultimate gift to the Project M community: an accessible tool that allowed anyone to view any* character’s frame data in a visual manner at any time.

I learned how APIs work, learned what a “library” actually is, learned how npm packages work, and truly learned that I could learn whatever new skills I wanted to thanks to the magic of the internet.