← Back to Kevin's newslettersPublished: 2019 Feb 5

Hi friends!

Happy lunar new year!

A relational database GUI

Jamie Brandon and I spent a few months in 2018 collaborating on Reltron, a relational database GUI.

What if you could just open up a new database, immediately see the data, sort/filter, and join, without having to muck around with SQL or fully internalize the schema?

Check out a 10m demo video and my notes on what worked and what didn’t: http://kevinlynagh.com/reltron/

Diving into LLVM + assembly

Most of my career has been on the web, which is a gazillion layers of abstraction away from what computer hardware is actually doing.

When I came across a perplexing Rust pull request — changing a simple match statement to a lookup table improved performance by 20% — I thought it’d be a great excuse to explore “under the hood”. I ended up looking at both the assembly code (CPU instructions) as well as the LLVM intermediate representation (which is nicer to read, but also sort of mysterious and low-level).

I mean, how complex can a function like:

fn match4(x: u8) -> u64 {
    match x {
        b'A' => 1,
        b'B' => 2,
        b'C' => 3,
        b'D' => 4,
        _ => 0,
    }
}

really be?

Well, the article is, uh, 5000 words and ends with a bunch of open questions: https://kevinlynagh.com/notes/match-vs-lookup/

Neat stuff

Neat things from other people that I’ve found this past month:

Best,

Kevin