Introducing “Codelets”

3 minute read

In an effort to post more, I’m going to start posting shorter (and frankly, lower effort) blog posts known as “Codelets”.

For some background, the posts I currently on average took about 3-5 days1 of research/notes/writing/editing (at around 2 to 4 hours a day). This isn’t that crazy, but is long enough to be kind of untenable:

  1. They seem to be getting longer with each one2, and I’m not actually finishing them.
  2. I tend to lose interest after a first draft, or even after the research/notes phase.
  3. I don’t feel like I can justify spending that much time on my blog (even if I was finishing them), which is mostly a function of my current employment status3.
  4. I have weasels in my brain that want me to talk about stupider things.

So: Codelets

The name comes from term I’ve heard when I used to work on compilers. It refers to a pre-baked sequence of instructions a compiler emits to implement some small piece of functionality — for example, “template JITs” are JIT compiling virtual machines which read (usually) somewhat high-level instructions, and spit out a codelet for each one.

I haven’t done serious compiler stuff recently at all, but I’m going to borrow the term, since it’s fallen out of favor enough to feel up for grabs, seems unlikely to confuse anybody very badly, and is (IMO) kind of cute and whimsical.

Runners up4 were: “Ramblet” (for “little rambling” or something, but it sounds too much like a the name of a Pokémon), “Snippet” (good, but I feel like it implies that the contents of the post are going to be a snippet of code, which they might not be), and “Bloglet” (just looked kinda weird — too close to “Blog” maybe, which is the terribly vague name for the other post).

The Section With The Longest List In This Blog Post

In practice, this just means I’m basically just adding another “Category” to this blog, that will be full of shorter posts with “Codelet” in their titles, which that won’t have quite as much effort put into them.

Here’s a smattering of stuff you can expect from them:

  1. Half-formed ideas that I’d like to write down for future reference (and linkability), but don’t intend to fully explore or research.
  2. Topics that are just a bit too short for a proper blog post.
  3. Topics that are definitely long enough for a proper blog post (or even a series) but aren’t going to be covered in nearly the detail they deserve.
  4. Rough notes on a topic that I have low motivation to clean up into a full post.
  5. Ideas that seem good when I wrote them, but may be bad.
  6. Code that seemed good when I wrote it, but may be bad.
  7. Code that seemed bad when I wrote it, and still seems bad now.
  8. Posts I make factual-sounding statements about the performance of some code relative to other code, without bothering to do any benchmarks. #trustworthy
  9. Aimless rambling yeeted directly onto the internet.
  10. Biased opinions and spicy takes5.
  11. You get the idea.

I’m Fully Sold On This Wonderful Idea

Thanks, that’s very nice of you, imaginary strawman friend.

My goal is eventually to have spearate pages for “proper blog posts” versus the “codelet posts”. I can’t figure out how to wrangle that out of my website template6, so for now you’ll have to deal with them being on the same page:

Anyway, I’m going to post a couple of these today and tomorrow and such, since I have a few in the backlog. Also, it would be way too embarassing to have all this buildup, and then never post any.

  1. I know, I wouldn’t be able to tell either. 

  2. Someday I’ll get one of these “30 minutes read”7 behemoths out the door… (In the mean time, if that’s what you’re after, has the goods). 

  3. At the stage of indie gamedev where I’m pretty much still working on turning funemployment into self-employment. 

  4. I dunno, I guess I got stuck on the “et” suffix? 

  5. Probably with plenty of hedging, because I have no spine (rather, I don’t want to offend people). 

  6. Eventually maybe I’ll fix my issues here by writing this stuff myself, but until then, I’ll just say things like “these layouts are more trouble than they’re worth” despite the fact that they do acceptably at a job I don’t find enjoyable at all. 

  7. According to a mysterious heuristic that my static site generator employs, I guess.