About
Hello, I am a programmer by trade, science enthusiast, a runner, and I enjoy all things in nature. This site is my personal website where I discuss my thoughts on computer science, projects I’m experimenting with, and occasional philosphical musings on life. Every now and then I will publish a goals update to keep things up to pace (setting goals in public).
I’ve worked as a programmer professionally for over 10+ years in data science, medical information processing, social analytics, devops, and realtime collaborative editors. I’ve taken courses on Machine Learning, Brain Science, and Signal Processing (my personal favorite courses I’ve taken on Coursera includes Signals, Neurons, and Brains and Machine Learning). Feel free to browse around my work below!
Resume
If you’re looking for my resume, feel free to download that in the link.
Side Projects
- drawing-webrtc: Realtime Collaborative Drawing with WebRTC and Canvas
- salient: Machine Learning, Natural Language Processing and Sentiment Analysis Toolkit
- reconcile.js: Simple reconciliation/diff/merge implementation for the DOM
- dive: Various standard scuba diving algorithms, formulas, calculations
- viterbi viterbi path finding algorithm go library used for trigram HMM
Posts
- Framebuffers, WGPU and Rust
- Winit Rust and Pixels
- ECS in Rust
- GPX Strava Data
- Hiking and Time Passing By
- Redis PubSub + WebRTC Signaling
- Simulating webkit force, canvas color swatches
- Server Sent Events + WebRTC Mesh Networks
- Realtime collaborative drawing with canvas and WebRTC
- CRDTs and Realtime Collaboration
- Drawing interactive graphs in canvas
- lsof to diagnose network and system issues
- Undo in Git
- Tokenizing markdown for canvas
- Useful Shell Commands
- Drawing markdown in canvas
- Git Commands
- Performance profiling in Node.js
- Diagnostic Reports in Node.js
- Debugging node with devtools
- Product Design
- 2020 Update
- Game Engine
- Goals Update
- Inquiry
- Intuition
- Blog
- Noise
- P5 JS
- Aiming purposefully
- Order and Chaos