Skip to content
View aalhour's full-sized avatar
💭
"That which I cannot build, I do not understand." ~ Richard Feynman
💭
"That which I cannot build, I do not understand." ~ Richard Feynman

Block or report aalhour

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
aalhour/README.md

Hi, I'm Ahmad 👋🏼

I'm a computer scientist by education and a software engineer by trade. I work mostly around databases, storage engines, distributed systems, and the kind of infrastructure that rewards looking under the floorboards.

I build systems to make hard ideas concrete, first for myself. My main project right now is BeachDB, a distributed NoSQL database and storage engine in Go. I use it to explore database internals by implementing them directly, writing about the tradeoffs, and keeping the work inspectable.

My blog, aalhour.com, is the main place where I publish notes on software, systems, books, and whatever else I'm currently trying to understand about.

Selected Contributions

I contribute to database and storage projects when I can:

  • 🤖 Turso: an in-process SQL database compatible with SQLite, written in Rust.
  • 🫍 Apache HBase: a distributed, Bigtable-inspired NoSQL database on Hadoop, written in Java.

Tools

Production tools I've built to scratch an itch in my professional life:

Rabbit Holes

A few representative rabbit holes:

  • 🏝️ BeachDB: my main ongoing database internals experiment in Go.
  • 🆒 PyCOOLC: a compiler for the COOL programming language in Python 3.
  • 📟 Assembler.hack: a 16-bit machine-code assembler for the Hack assembly language from nand2tetris.
  • #️⃣ C-Sharp-Algorithms: standard library data structures and algorithms implemented in C#.
  • 🌀 micro_kanren.py: an object-oriented microKanren DSL implementation in Python.
  • 😎 awesome-compilers: a curated collection of resources on compilers, interpreters, and runtimes.

Some are active. Some are archived. All of them started as an excuse to understand something more deeply.

Writing and Visual Notes

I use writing as a forcing function for understanding. When static prose is not enough, I build small interactive animations to make the idea easier to inspect.

Pinned Loading

  1. tursodatabase/turso tursodatabase/turso Public

    Turso is an in-process SQL database, compatible with SQLite.

    Rust 18.5k 853

  2. beachdb beachdb Public

    🏖️ 🪨 Distributed NoSQL database in Go

    Go 22 2

  3. PyCOOLC PyCOOLC Public

    🐍 🆒 Compiler for the COOL programming language in Python 3

    Python 40 10

  4. Assembler.hack Assembler.hack Public

    📟 16-bit machine code assembler for the Hack Assembly Language (nand2tetris)

    Python 84 18

  5. micro_kanren.py micro_kanren.py Public

    🌀 A μKanren implementation in Python 3, with an Object-Oriented flavor

    Python 10

  6. awesome-compilers awesome-compilers Public

    😎 Curated list of awesome resources on Compilers, Interpreters and Runtimes

    9.8k 691