TAGGED: development


K3Y.CO - A RETROSPECTIVE ON DEVELOPMENT

2025-09-23 01:41:08.764Z

INTRODUCTION

for my own peace of mind, i decided very last minute that i wanted to write a sort of "postmortem" for the development of this website. it's taken a very large amount of my time this month, and it feels right to me that i should really try to sit down and parse what exactly it was i learned from this experience, and potentially, what i might pass on to someone who would ask me about making their own site.

so let's start with the most obvious.

was this worth it?

i really don't fucking know.

WHAT WAS EVEN THE POINT?

the entire point of this project was to create a "permanent" base for myself where i couldn't be banned, and then, upon seeing that SubscribeStar (a website you should subscribe to me on :) ) had a working API that i could plug in, i just couldn't help myself. what better use for my time is there than creating a little spot where people can not only SEE my website, but can also vote on polls, leave comments, and see early access stuff?

WHY DID IT TAKE SO LONG?

the original launch date for this update was meant to be march 9th of 2024.

as you can see by the date of THIS post, that absolutely did not get met.

but why? what actually went wrong?

well it's very simple. i'm working with subscribestar's API. it was for the purpose of connecting with clients. and fuck, while i'm at it, why don't i add an askbox? then people can send requests. it'll be like old tumblr stuff!! and actually, twitter and aethy have APIs too. maybe i should plug those in, so i can post to those websites all at once. ooh, and what if i--

you get the point.

THE ACTUAL WORK

the entire website is designed using pocketbase as it's backend. i'm not much of a GO developer, so i opted to instead just make use of the JS extensions and library that had been written for it. and i have to say, it's incredibly well put together, and does basically everything you would need it to.

one thing i learned, however, was that the API rules slow down the server signifigantly. the work around to this was actually pretty straight forward -- just make everyone use a route that you filter, and you don't actually NEED API rules, and in fact, can just set them to all be "admin only", meaning there's no actual way to use the API except through your site itself. has helped a lot with security, i must say.

specific things were giving me trouble -- for instance, using twitter's API in it's entirety. (which, by the way, if you're reading this and happened to be watching my account at the time i was spamming myself to test it, i do very much apologize.) you don't truly appreciate how much you love reading documentation until you get hit with twitter's lack thereof.

this dog is a fucking bitch.

the number of 404 pages on this website is fucking shameful.

the ONLY reason that my twitter plugin works is because i finally just threw out any attempts to do this in JS, and instead opted to write a script in python which performs these tasks for me, going on the intervals set by the JS code. it works like a charm, too, though i admit, i'm not a fan of python, so needing to rely on it irked me a bit. at some point, i do want to try rust, but that's probably for another time.

there was a point where i decided i needed to refactor the code. a lot of it was slow, and full of bloat, but i was concerned greatly that taking the time to do this would result in a full re-write, which could take just as long to write as it did the first time!

as it turns out, it DID require a full rewrite -- but that rewrite took a mere 5 hours. 2 weeks of effort, crunched down into 5 hours. this revelation sorta gutted me a little bit -- what i had been doing up to that point was completely useless. i was losing all of this time, all of this sleep, and it was my own fault.

so, to no one's suprise, the remaining necessary fixes only needed to happen over the course of the next two days. pushing the site came with a small share of bugs, but they were mostly patched as i went.

SO WHAT DID WE LEARN?

for the course of two weeks, including the two weeks where i didn't have my objectives categorized and written out, i spent several nights awake, long into the early hours of the morning, working on this thing.

looking back at it, that was not worth it; the work being done was a lot, but i could've absolutely parsed it out more efficently over a longer period of time, and i absolutely could've stuck working on commissions in between it.

this thing spiraled way out of control, and feature creep set in very early on. this was entirely my own fault -- i did not set up an actual, dedicated plan for the site until nearly the very end. for someone with a degree in project management, it's more than a little stupid that it never even crossed my mind to make that happen.

because of the need to create a dedicated tracker that i could easily access and parse over, i was able to really, truly make use of two tools i had developed in the past -- a tasktracker, which actively monitors what applications i'm using, and a checklist app, which does basically exactly that. they're very basic, and other tools like it exist, but something about the fact i made them really helped me focus on stuff. i wish i had thought to be using them sooner -- the final clock on the task tracker was only dedicated towards the last two days, which in the end looked like this:

this was not a small endeavor.

all of this to say, i will definitely be using these tools in the future. they were incredibly useful towards helping me maintain being productive.

additionally, they inspired the creation of < href="https://k3y.co/queue">the queue, which will help people who get commissions see where they are, as well as how much i have done in specific regards to their work. it also lets me put up small little announcements for what work i'm currently doing, and what time is going into that. hopefully, this will help keep me both transparent and accountable for what i'm putting out.

overall, this experience has taught me that there is a lot of value in being very hyperspecific when you do projects. and by hyperspecific, i mean SPECIFICALLY making a bullet point list with LITERALLY EVERY SINGLE POSSIBLE THING you want to do, and doing NOTHING BUT THAT. otherwise you're going to waste a lot of time and effort on shit that doesn't matter.

thank you to people like NotBoogie for specific advice and help with technical aspects of the site. this experience has fucking sucked my dick. but not in a good way, like with teeth. so any help i was able to get is more than a little appreciated.

how do i end this

i hope you liked reading this essay as much as i enjoyed writing it :)

sort by
per page
after
before
(search help)