Journal

My journal for smaller posts & updates.

now

updated July 7, 2025

Recently, I went to a Waffle House for the first time. It was really cool. I wasn’t there to eat, though; I went there for an interview. I think if they found out that was the first time I’ve ever been to a Waffle House they would die. (…and then not hire me lol)

do I have a job: nope

currently watching: given: the movie, Megalobox, Gundam 0079 (currently on pause ;3;)

currently reading: nothing (recommend me good books & manga plz)

currently working on: this site

| page 1 |  next →

July 7, 2025

Did y’all survive Independence Day weekend? I think I did. I hope.

I think it may be time in the next few days to perform my server move from Vultr to Hetzner… again. I switched back to Vultr because I was not very impressed with the performance I was getting from Hetzner. Notably, I would have to shut down my webserver in order to rebuild the site when I was still using Next.js. There is a trade-off for better performance, though… I am paying double what I paid Hetzner per month for the privilege. Ouch.

So, considering I still don’t have a job, I should have made this move before I moved (which is another thing to add to the “things I should have thought about before I graduated and moved multiple states away” list) — but now that I am actively coming up on a situation where I need multiple separate VPS’s in order to do what I want, it would be much more cost-effective to go back to Hetzner. So… that’s what I’m going to be doing soon.

If y’all have any tips on how to build a CI/CD system for sites like mine (Astro + NGINX reverse proxy) or how to Dockerize Astro sites, specifically as part of a Forgejo Action (i swear to god it has been a lot harder than it needs to be to make a containerized setup work), please reach out . I am just a widdle gal and I don’t know what the fuck I’m doing and everything is just way too confusing.

Finally, right now I am writing this journal entry in iA Writer , but I think for my next entry I should be crazy and write it using a Neovim Markdown extension… Technically, since they’re written in Lua, I could make my own extension to add basic MDX parsing for the components I use (for example, making MDXCallouts look a little more like they would in the browser)… which would also be a good excuse to start thinking about how I could represent these components in plaintext or Geminispace (remind me to make a blog post about Geminispace one day like I’ve wanted to for a whole year now lmao).

oh and pick up the phone, show me it was real for me okay? thanks

July 5, 2025

updated July 5, 2025

note

Whoops, never mind, it still doesn’t update dynamically. I’m going to screm

Good news: the sharefeed is now an Astro content collection! Thanks to the recent upgrade, it was a lot easier to turn it into a content collection.

Bad news: due to the re-formatting of sharefeed entries I had to do in order for this to work, I might have made your RSS readers see all the entries as new items. Whoops.

More good news: I’ve now got a basic Micropub implementation going that can create, update, and delete journal entries as well as create new sharefeed entries. Using Postman to test the API, it just works!

More bad news: turns out if I want to make the Micropub implementation work the way I want it to, I need to make sure that both the journal and sharefeed pages server-rendered pages instead of prerendered static pages. I don’t think this will impact performance too much, but if I didn’t do this, just an endpoint on the webserver wouldn’t be enough to automatically update the site.

Eventually, I would want to make this stuff more “isolated”, possibly with a separate Express worker… but the main concern I have right now is setting up proper OAuth2 Bearer Token authentication. Ideally, I would set up a completely different server for authentication… which costs money. Right now, I just want to get everything else working, then put the project on the back-burner until I get the auth system figured out (since I’ll also need that auth system for the comments section I plan on implementing).

Finally, fun fact: This post was actually written in iA Writer , transferred to Postman, then sent to my dev server through the Micropub protocol. Yay!

Here’s the obligatory song link . byyyyeeeeeeeee

July 3, 2025

important

Whoops, I forgot to update the RSS feed to work with the new content collection system. So I did that.

…and I also updated it to now

  • include journal entires, and
  • include both the published date and the updated date (since apparently date on the library I use is put into the updated field on the Atom feed because OF COURSE IT DOES).

So that’s fun! Hopefully I didn’t break your feeds too bad. I also hope that sending the rendered HTML of each entry actually works… we’ll see! 0:3

A day later and I did the tedious part: converting the big journal page into a series of individual .mdx files in an Astro content collection. That was… fun.

It turns out that Astro slipped an overhaul of their content collection system right under my nose when I wasn’t looking. In their 5.0 update, they upgraded the system into a full-fledged “content layer” ( heyyyyyy ) that supports processing all sorts of #content and #data from literally anywhere you want. Part of this update was literally giving you the freedom to process the data however you want, replacing the weird type attribute with a new loader attribute that you can slot either the two built-in functions (representing the two old type’s) ooooooor your own bespoke function for whatever content you want to work with. It’s actually really cool… and slightly breaking compared to the old system. Whoops. So, just to be on the safe side for the future, I migrated from the old system to the new system.

After that, it was pretty simple to get the new journal set up… it was just really tedious to make all the new individual files and copy all of the content over. Honestly, it kinda made me wish I had a generative AI agent handy, but I would rather move slowly and ensure that everything works right than move fast and break everything with AI slop. I also decided to make the now and todo sections of the journal their own files for later use with Micropub . This way, I can (eventually) not only make new journal entries outside a code editor, but I can also update those journal entries and the now & todo sections outside a code editor!!! How sick would that be???

Now that I’ve done all that, though… look!!! Pages!!!!! It isn’t just one giant page anymore!!!!!! Currently, I’ve got it set to display 10 entries on each page, but I might tweak that later. I’ve also got it set up to only display the now and todo sections on the first page, and only display the really old entries section on the last page. Pretty slick, huh?

My main worry when implementing this was that all of the async stuff I had to add to get this to work would mean excess loading, but I think I can solve that by making this page static instead of server-rendered (the pages are precompiled with all of their content, so when the browser requests the page, all the server needs to do is hand the browser that precompiled page instead of having to go and fetch all of the content it needs first). All of the blog posts are handled this way, so I figured it would be worth it to do it for the journal page as well.

Also, while I haven’t started implementing it yet (I’m waiting for the weekend to do that), I have started looking at the Micropub specification… and it seems like a really good “baby’s first protocol implementation project”. Everything is very straightforward & well laid-out, and both the h-entry and h-cite microformats seem great for what I am personally looking for. The Micropub protocol itself seems pretty loose when it comes to what you can do through it: as long as the client and the server agree, you can exchange whatever data you want. So, for instance, I can staple a note field to my h-cite entry for use with the sharefeed and hope none of the IndieWeb people get mad at me for sacrilege. Alternatively, I could make the in-reply-to field in my h-entry its own h-cite object so I use the same base microformat for both journal entires and sharefeed posts, but I think that might be a bit too tryhard… I’ll figure it out once I get a base implementation going for journal entries.

Finally, I made some other miscelaneous changes lately. For example, I got rid of that stupid external link icon and replaced it with a more subtle change: all links (within markdown, at least) now have underlines, and they are dashed if they are internal links and dotted if they are external. Will anyone notice this? Probably not. Do I need a better solution? Yes. But that’s for later me.

also here’s a cool raggae song kbyyyyeeeeeeee

July 2, 2025

I think I’m finally starting to get to the point where editing a big long Markdown document for my journal is starting to make less sense. The way I’ve got things set up right now, it’s hard for me to publish my journal entries in my RSS feed, as I would need to scrape this document for date headings. However, if I use Astro’s built-in “content” system instead (like I already do with all of my blog posts), I will be able to parse those MDX files just like I do with my blog posts when it comes to RSS. It will also mean I will finally be able to build pagination into this page very easily: since each journal entry would be its own “object” instead of a part of one massive document, I can make the actual journal page whatever I want and process each entry however I want.

It would also mean I could technically build some sort of API to automatically submit journal entries to my site whenever I want, like through Micropub. Since MDX is just plain text when you boil it down to its bare elements, it would be trivial to send that plain text through Micropub, save that text to a new .mdx file, then recompile the site to serve that new entry within a few minutes. It would also also mean that I can use Micropub to produce sharefeed entries as well, but that may require wrangling JSON file editing (unless I also times 3 migrate the sharefeed into its own content collection and unify every type of #content on this site under one spaceship roof).

I’ve added my plans to the todo list up top so we can all keep track of what I’m doing… which reminds me, I should probably finish that unlisted article I linked up there, huh? I’m also not sure exactly what I’m supposed to do with the now section… I mostly use it for shitposting or random status updates whenever I touch this page. I get the feeling that I’m supposed to do more with that section, like listing out the books I’m reading (none atm) or what projects I’m working on (this site, trying not to starve)… but I don’t really have much to put in there other than. whatever.

Anyways, I got this indie rock song that I think I first heard in 2018-ish stuck in my head again so I wanted to share it.

Finally, if you have read this journal entry, you are legally required to email me with the word “pookie” somewhere in the message. If you do not do so within 24 hours, I will be very cross with you. Thanks! :3

June 23, 2025

I made a cool little thing. It’s called the Sharefeed Entry Tool and it’s my way of decreasing the friction between me seeing something cool and logging it in the sharefeed . It auto-generates a JSON object with the url of the webpage, the current date and time, and if it detects metadata it can grab on the current page, all the other data I would need to make the sharefeed entry. It currently supports all Substack websites, Medium, YouTube, GitHub, and more… and I only made it in a day or two. Without AI.

I really want to make a blog post about it soon, so I’m going to hold off on rambling about it too much for now. Instead, I’m going to share this cool ambient piece with a real Rhodes and try to calm down after a slightly stressful day. Mwwwah, love you, bye.

June 14, 2025

I did it. I graduated from college with a bachelor’s in computer science. I have an… okay GPA — worse than I would like it to be, but considering everything, I think everything turned out okay in the end. I also got some silly certificate and a cool “emphasis” but none of those really matter.

Now I just need to get a job. And I don’t think that will happen.

I moved to an area that is absolutely not condusive to my current line of work. I would need to relocate again or get a remote job to find something good, and even then, the market is absolutely horrible right now. Everyone wants to fire. No one wants to hire. It’s going to take me a minimum of three months to find a decent job. I can’t wait that long.

So, here’s what I am going to do: I’m going to see if I can get some income. Work a minimum-wage service job for less than I made in college. From there, I can wait for the market to decide I matter. I’ll network constantly, looking for new opportunities. I’ll continue doing what I’m currently doing, working on this site and at FurSquared , to continue to hone my skills and find more ways to network.

I’ll also be looking at solidifying one additional side project that I can slap on a portfolio. For example, I recently discovered the right way (for me) to use Notion: use the database tool to quickly organize personal data in a fast and intuitive way. I currently have on a second monitor (!!!) a kanban board full of the job applications I’m managing that I can easily turn into a Gantt chart to visualize when I need to take next steps. It’s lovely. But it has limitations. I can only look at one view at a time; I can’t combine them. Automations are locked behind a paywall. Everything is in the cloud in servers I do not control, which means if some big brain hacker wanted to see all the anime I want to watch for some reason, they might be able to find a way.

Ideally, I would want the automations to be something I can easily “script” using a language like Lua or Python (so more advanced automations can be made without having to push through a silly visual workflow). I would also have the views themselves be more customizable, also possibly with a scripting language. Finally, I can start everything as a local-only app w/ a basic SQLite database and eventually work my way to self-hosted paradise (so eventually I can make my own mobile apps for it!!) This may be a bit too over my head, especially considering a big reason why Notion works so well for me right now is because it’s right there and Just Works™… but there’s a little shit in the bottom-right corner that periodically animates itself to goad me to look at it, click on it, and remember it’s their stupid AI thing they desperately want me to use and I want that twink obliterated. So, the perfect reason to reinvent the wheel :3

Since it has been again a hot minute since I wrote a blog post, I’m going to make a new one real quick about my misadventures moving to a new setup and what I plan to do now that I am out of school.

So… yeah! I was looking for one track but accidentally came across a totally different one so here’s that one . I also have literally no income so any donations to keep this site up and running would be amazing . Hopefully this all goes well and I can finally break my YGS curse. Please.

March 4, 2025

Welp, that didn’t work.

I tried creating a CI/CD system with Docker containers and Forgejo Actions… and it worked once. Now it doesn’t work.

I’m going to revert back to my old method, which involves a local node server managed with PM2, and figure out why Docker refused to cooperate later. I made this system so I didn’t have to think about pushing changes, but since I clearly have to think about this a lot more with this system, it just isn’t worth it.

In other news I just had to spend $600 to make my car usuable so if anyone wants to send me a few bucks on Ko-fi I would appreciate that so much <3

This entry and the entry below it are both new now since the update that contained it never went live. Feel free to read that one too!

Finally, here’s a deep cut from a legendary rock band’s lesser-known albums. ktnxbye

February 18, 2025

Today I learned that NetNewsWire added an extension to Safari that puts a little RSS button to the left of the address bar. When you click it, it auto-magically finds the RSS feed for the website you’re currently on and opens the “New Feed” dialog on NetNewsWire w/ the feed’s URL already copy-pasted into the dialog box. Found a new blog that you think is neat? Two clicks ( philip ) and that blog can be added to your RSS reader, ready to view on both your laptop and your phone whenever you want (remember, this app has iCloud sync! :3).

I immediately went through my sharefeed and added as many blogs as I could to NetNewsWire. I doubled the amount of blogs in my “Blogs” folder. I feel like a god.

…But I also realized how neglected my sharefeed has become lately. The last entry to it before today was in August. Of last year. Ouch.

Have I just run out of content to regurgitate? Nope. I’m still glued to my Hacker News Telegram bot , saving articles that look cool. I just haven’t read many of them to the point where I feel comfortable doing my blog equivalent of a retwskeet yet. I save, but I do not engage. I hoard instead of currate.

I’m not sure how to fix this other than… doing the freakin’ thing more often. I’ve thought about automating the process of adding new entries a little more, maybe with a tiny wizard script that asks for each field and then adds that object to the JSON array… but I feel like making that whole thing work would be overengineering, as opening up the JSON array itself and adding the object myself is just as easy.

Hopefully, this little button in Safari will help me keep tabs on sites I like better. I’ve really enjoyed the thought of using RSS readers, but I keep running into little issues with them. NetNewsWire has solved most of them, but even then I get more outside problems like “oh god why did I add this news website, now I get like 100 new articles a day about things I don’t care about and half of them are ads and I can’t keep track of all of these posts aaaaaaaaaaa”. The more I replace these big news sites with a bunch of smaller blogs, the better my RSS experience will be, I think.

note

This is my call-to-action: If YOU use RSS readers to subscribe to blogs and other websites you enjoy, please email me with what sites you subscribe to! I would love to hear about more cool places on the internet from other like-minded people.

Oh, and I’ve decided it would be a cool idea to make a blogroll to more explicitly recommend sites and people I find cool. I’m still wanting to flesh it out a little more before I publish it for real, but I hope it will be a good resource when it is released.

Finally, here’s a song that feels very thematically appropriate regarding current events . ok bye

January 22, 2025

Oh my god!!! It’s another year!!!!

In fact, it has officially been six-ish months since this version of my website has been around (yes, it’s only been two since I switched to Astro, but since that was more of a technical migration rather than a whole website redesign, I’m not counting that lol).

On one hand, it is really cool that I’ve settled on something that I can feel proud of every time I look at it. On the other hand, my god do I need to put more stuff on here.

So, here’s the current plan:

  • Make an editing pass on the last blog post (FINALLY) so I can stop worrying about it.
  • Just. Write. Goddammit.
  • Theeeeeen maybe we can worry about that fancy comments system I keep fantasizing about.

Heck, if you want to leave me a note on one of my blog posts, there’s a great way to do so: email me! Or fedi me!! Or bsky me (ok maybe dont do that because i rarely use bsky)!!! The main reason I want to implement a comments system is to build a community… but I can’t really do that if there are no people to fill it. So if you want to be a part of that, let me know.

…Completely unrelated question, does anyone want to see an eleboog.com IRC chatroom?

oh and obligatory song link

November 14, 2024

As I said in my now entry, my hyperfixation has returned to this website. I do not control the hyperfixation, and I wish it would hyperfixate on class instead, but since this is still somewhat productive, I’m okay with it being here for now.

The main thing that I did was add my first “interactive” element: the accordion.

Now that I know how to make stuff like this and give them noscript fallbacks, I feel much more confident about “Phase 2” of my site (implementing a comments section and account system).

The prototype version of my site with an accounts system should be coming out by mid-December. It will likely be hosted on a completely separate server (not on Hetzner lmao) and require manual approval to sign up. I’ll make sure to give you a little badge next to your name in the comments if you help me out with beta testing, though :3

Currently, my ideas for Phase 2 consist of the following:

  • Accounts will not use passwords. There will be two authentication methods available: passkeys and single sign-on. SSO is the easier of the two, as it just refers to using another site to log onto this one (right now, Google, Microsoft, and Discord are the sites I’m thinking of using for SSO). Passkeys are more secure but not fully ready for prime-time and obscure in documentation. I’m implementing them partly as a challenge to myself and partly as a way to yell at everyone else “HEY!!! THESE ARE COOL!!! WE SHOULD USE THESE MORE!!!!” I’ll be sure to make a guide on how to sign up with passkeys and/or add passkeys to an existing account for those who are not in the know yet. Eventually, I will want to fully move my account system to only use passkeys, but I recognize that I can’t do that now with the current state passkeys are in.
  • Even after the beta, I’ll likely have account signups operate under a manual approval / application system. Basically, you’ll have to prove to me that you aren’t a bot or a Nazi, and if I believe you, I’ll let you in. This is my way of preventing spam and exploitation of my site.
  • I want the accounts system to be flexible enough to where they can be used for things other than just my comments section. If I ever make a forum on my site again, the forum will use these accounts. I also want accounts to have their own profile pages so if you see someone in the comments you think is cool, you can check out their profile and follow them on other places. I want the comments section to be its own sort of community, and stuff like profile pages helps reinforce that aspect of community imo.

Is this way too much effort for an obscure blog’s comments section? Yes. Is this just a way for me get more portfolio work done and justify it with a lofty humanitarian goal? Yes. But I think it will be worth it. It will be another thing to set my blog apart and hopefully encourage more people to check it out… and possibly give me money .

Anyways HA IM NOT GOING TO GIVE YOU MUSIC TODAY, THE NUKETOWN EASTER EGG DROPPED AND IT’S GREAT ok cya

| page 1 |  next →
contact —   |  tips appreciated!

The writing contained within this site may contain the author's personal opinions. These opinions do not represent any of the author's employers or other organizations the author is a part of — past, present, or future.

© 2023-2025 kebokyo — All Rights Reserved