Small steps

2021 Week 314 min read

I started working on the game this week. I don't know the best way to go with this, I could either:

  1. try to make the project immediately and learn things along the way, or
  2. learn a lot of stuff early, maybe try to make other smaller games, and then jump into the project when I feel like I've got a solid grasp on the patterns.

In the end, I chose the former, at least for now. I know that the results might not be ideal because I would be able to do stuff better if I learned more about things first. However, choosing the later might end up with me not starting the project at all.

I mean, I've already learned the basics, so it should help.

I also managed to find the original developer's Twitter account. I'm thinking about asking for his permission to remake the game. Maybe he could even give me the original assets. Or even join the project!

I won't contact him before I have something that's somewhat playable to show, though.

I spent the whole day writing and publishing a component library for giscus so it can be used with React, Vue, or Svelte without using the client script. It's forked from a similar component library for utterances. The repo setup is a bit too convoluted, though. I don't really like the automated magic of semantic-release and other stuff in the repo. The automated release notes still contain descriptions from the original project. Ughh...

Anyway, it's out now. There may still be some caveats with the Svelte component, though. I encountered some issues in the development environment, but it seems fine in production.

I also spent a few hours on Saturday trying to prevent the default theme flashing on initial load of giscus. It was tricky because I kind of "break" out of how Next.js handles CSS in order to make dynamic CSS loading possible. Such issues might not have arisen if I didn't go with a frontend framework.

I would love to try htmx or hotwire, but there's one thing that keeps me from doing so for my projects, especially giscus: deployments.

See, with platforms like Vercel, Netlify, etc., I can deploy stuff that has some backend functionality with near-zero configuration and use my custom domain for free. I don't have to worry about downtime if for some reason I need to make configuration updates to the server. Plus, deploy previews are always nice.

I haven't found a similar platform to deploy Python apps. There's Heroku, but your app sleeps after 30 mins of inactivity and you can't use a custom domain unless you use a paid dyno. Other platforms don't even provide a free tier.

Maybe I'm just being cheap, but $5/month per project is too expensive for me. At least for now. I do my stuff for free, and they're still relatively small scale, so free tiers are a life saver for me.

I can still afford $5 a month for a single VPS, and I do have one. But you don't get the benefits of the simplicity and reliability of app platforms.

If giscus scales way bigger and I run out of my free limits on Vercel, I don't mind paying $5 for it, though. However, if I have more projects with that scale... 🙁

At work, we completed a milestone this week. I finished my tasks and things went smoothly. I'm relieved.

It's August now, which means I'm about to hit 6 months working full-time. That was fast.

Anyway, to spice things up a bit, I found this band about a month ago and I really like them.

That song in particular is nice, but the whole album is great.

I haven't explored more artists than I'd like to this year. Feel free to drop some suggestions!