Skip to content
View egasimus's full-sized avatar
🟢
talk to me
🟢
talk to me

Block or report egasimus

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
egasimus/README.md

Overview

Self-taught generalist programmer.

Writes code by hand for money to achieve shared understanding.

See Peter Naur - Programming as Theory Building.

Portfolio

Below are my personal explorations over the past few years.

See my source repo list for more things I haven't documented here yet.

Rust

Created Touched What Why
dop Rust. A minimal local-first habit tracker that lets you track your positive and negative actions from the command line.
mpcemu Rust. Emulator of NEC V53 CPU, as used in AKAI MPC2000XL. I've implemented about half of the instruction set - it runs the MPC3000 ROM about as far as printing the initial boot string.
hfedisk Rust. Partial implementation of HFE disk image format used by the Gotek HxC floppy emulators, like the one I have in my S3000XL sampler. Used by dawless to load drum kits into that old beast.
laterna Rust. Renders piano rolls to the terminal. Used by dawless when browsing Electribe patches.

Zig

Created Touched What Why
midichka Zig. This was supposed to be a MIDI message router and processor. I got as far as some of the TUI, ran against an actual compiler bug in Zig 0.x and moved on to other things. At least I got to write some Zig, which was fun!

JS/TS

Created Touched What Why
dothot NodeJS. CommonJS hot reloading by purging the require cache on file change. Add some late binding and clever state-management, and Node becomes live-codable. Made obsolete by the prevalence of ESM which still does not support this.
redux-helper React. My attempt at making React Redux less annoying to use. Made obsolete by the prevalence of React Hooks as a preferred state-management mechanism.

Haskell

Created Touched What Why
xmonad-equalspacing Haskell. I'm quite proud of being able to figure this one out while having absolutely zero idea what I was doing. I miss XMonad! I haven't used it in many years, but I fondly remember its workspace switching behavior when coding on dual displays.

C

Created Touched What Why
postmelodic C. A musical instrument that chopped samples and let you juggle them over OSC. Another early project I'm proud with, even though it has probably succumbed to bitrot long since I laid eyes upon its glorious mess of a codebase. I did not know the first thing about low-level programming when I did it, and learned tons about how things really work under the hood by writing out my entire though process on paper.

Contact

Warning

Oopsie daisy! My GMail addresses should be considered compromised.

No biggie though - been degoogling anyway. (For the record: GitHub is uncool, too!)

Preferred way to get in touch with me: rustacean@rootshell.is.

Details

Especially if you're the very cool guy 🤡 - or gal! 🤩 - who somehow managed to attach an unfamiliar Pixel 5 to my Google account and scrambled @alesandar's phone number in my contact list 😉

Do let me know whether you really burned a Google Accounts 0day in my honor, what 😁

Pinned Loading

  1. ubik ubik Public

    Forked from hackbg/ubik

    (2022-2025) Publish better-formed TypeScript packages to NPM.

    JavaScript

  2. fadroma fadroma Public

    Forked from hackbg/fadroma

    (2021-2025) Full-stack adventures in the DLT space.

    TypeScript

  3. hfedisk hfedisk Public

    (2024) Support for HFE format as used by Gotek.

    Rust

  4. rabbits rabbits Public

    (2020) Electron-based software by the folks at https://100r.co, packaged for Nix

    Nix 20 3

  5. xmonad-equalspacing xmonad-equalspacing Public

    (2013-2016) Layout modifier that makes the spacing between two tiled windows equal the spacing between window and edge.

    Haskell 16 1

  6. django-cbv-factory django-cbv-factory Public

    (2013) Simply output a set of customizable Django CBVs for a Model class.

    Python 2