Grant's Site

Autonomous robotics video

Picking up blocks and putting them down again.

Measuring low power modes on the ESP32C3

When light sleep is better than deep sleep.

From-scratch compiler for embedded systems language

A compiler for a simple language with special features for ARM Cortex-M firmware development.

Custom RISC-V instructions in verilog

Fastest selection sort in the west.

Poller

A simple web app for creating polls.

DevCA

A tool to make TLS certificates for development use.

Structural typing and algebraic data types in typescript

An internal talk I gave introducing some cool typing concepts and examples of what you can do with them.

Squaresplosion

A friend and I made a small game during the pandemic.

I want to own the database that my apps use

An idea for a protocol that would put data into users' hands, while only being a huge (but not massive!) burden on developers.

Pros and cons of building "serverlessly"

A past solo product attempt, Coalesce, was user-less… and also serverless!

Why I made a PWA

A past solo product attempt, Coalesce, was a PWA, which was (and still would be) a questionable choice.

Framework agnostic HTTP endpoint go handlers

See within for some very beginner go code mixed with a neat little abstraction.

A case for questioning defaults

Defaults rule the world. Be careful out there.

What's inside a laptop?

Mostly screws and plastic apparently.

Stop using security questions, please

They're a bad idea.

Making a home out of vim

Do you even use vim if you haven't written about your .vimrc file?

New year, new blog

I want to write more, maybe this year?

Hooking with Binary Ninja

I wrote a plugin for Binary Ninja that has been found useful by handfuls of people!

O router, where UART thou?

Beginner's guide to understanding UART and using it IRL.

Reverse engineering practice

Using radare to reverse some puzzle binaries.

Hello word

This was my first blog post ever.