~/gandhiji — available for work

Gandhiji

I build things close to the metal and close to the math — from systems software in C, C++ and Rust to numerical work in Julia and R, all driven from the Unix shell.

Languages
10
Focus
Systems
Shell
fish
gandhiji@arch — zsh

The tools I reach for

Ten languages, one mental model: understand the machine, then write the smallest thing that explains it.

  • Py Pythonscripting · glue
  • C Ckernels · ABI
  • C++ C++engines · HPC
  • Rs Rustsafe systems
  • Jl Julianumerics · sims
  • R Rstats · plots
  • Sh Bashautomation · CI
  • Fi Fishdaily driver
  • Lx Linuxsysadmin · perf
  • </> HTMLsemantic markup

Systems programming

C · C++ · Rust

Zero-cost abstractions, explicit memory, predictable latency. I care about what the compiler actually emits.

pub fn parse(buf: &[u8]) -> Result<Frame, Err> {
    let (hdr, rest) = Header::read(buf)?;
    // no copies, no surprises
    Frame::decode(hdr, rest)
}

Scientific computing

Julia · R · Python

Simulation, statistics and plots that hold up to review.

Tooling & automation

Bash · Fish · Linux

Scripts that fail loudly and run quietly.

#!/usr/bin/env fish
for f in (fd -e rs)
    cargo fmt -- $f
end

Interfaces

HTML

Clean, semantic markup — fast by default, readable by everyone.

How I work

  1. 01

    Measure before you optimise

    Profilers, traces and benchmarks first. Intuition is a hypothesis, not a result.

  2. 02

    Pick the boring tool

    The right language for the job — not the newest one. Often that's a shell script.

  3. 03

    Make it reproducible

    Pinned versions, one command to run, output you can diff. Future-you is a user too.

Got something
worth building?

Open to systems, scientific and tooling work. Replies within a day.

hello@gandhiji.dev