Jack Nystrom
Who?
A second year CS/EE student at UC Santa Cruz. I'm interested in tons of things but especially systems programming and electronics. I am currently the Firmware Lead for Formula Slug. I am also a passionate Linux / neovim user and NixOS addict... But when I'm not at my computer or in the lab I also occasionally mountain bike, play tennis, and enjoy the sun and Santa Cruz mountains.
I go by bvngee on the internet. More here!
What?
I spend most of my time in Formula Slug's lab space doing embedded programming, PCB design & debugging, wire harnessing, telemetry and data analysis, or whatever else needs doing to prepare for our next racecar. Currently we're working on FS-4, which is set to compete in June!
Here are a bunch of projects I care about, past and present:
- FS-4 Firmware: The firmware for Formula Slug's latest racecar! Including throttle control, BMS, dash screens, data acquisition & logging, traction control, state-of-charge estimation, CAN bus management, drivers for various sensors, and the rest of the racecar's business logic
- NixOS config: The culmination of my years of using and configuring Linux, learning how OS's work, and my descent into madness trying to build the perfect dev environment
- SAR project: I helped construct/organize my highschool's brand new electronics class, leading to tons of fun research, embedded programming, and debugging. This is the result of that!
- bvngee.com!: Written and hosted from scratch using only Astro, nginx, and some bash. Custom automated deployment, manual SSL, etc (see this blog post).
- BvngeeAddons: My personal set of client-side fixes & features for Minecraft 1.17, including screenshot management utils, improved boss bar rendering, bug fixes, and more! Made purely for myself to resolve my own annoyances with the game.
- CoordinateMod and AntiAutoJump: My first two Minecraft mods. Got around 16k downloads (circa 2020)
- A bunch of other stuff (see GitHub): Experiments, C++/Rust adventures, school assignments, etc.
How?
My primary background is in software development. Languages I've used a lot:
C++
Rust
Python
Lua
C
Java
Bash
TypeScript
Astro
React
Nix
What I actually enjoy writing:
Rust
Zig
C
C++
For electronics I'm a fan of KiCad and enjoy working with STM32s. I've used FreeRTOS and Arm MbedOS, as well as AVR's baremetal SDK on an ATtiny. I'm a big proponent of compatible and open build systems, and will do anything I can to stay out of proprietary IDEs and in my Neovim!