Detecting Loud Sounds in Python

I wanted to play around a bit in Python and make a small script that said "bless you" when hearing a sneeze. This treads closely to a job that would require machine learning, but luckily my use-case was pretty easy: a quiet room where the only loud sound would be a sneeze. The script uses the python-sounddevice library to listen »

Arch Linux on ASUS X205T/X205TA

I recently found an old ASUS X205T laptop squirreled away in my closet. When I tried to boot it, it constantly rebooted back to the BIOS. Since it was 100% unsalvagable, I decided to try putting Linux on it. To save others my pain, I have decided to chronical my steps from nothing to boot. There are several other tutorials »

Drawing GBA Tiles on an HTML5 Canvas

I've recently been working on an electron application that disassembles and displays various components of Gameboy Advanced (GBA) games, like graphics, sounds, and text strings. The graphics rendering has easily been the most obnoxious part, in no small part due to my terrible design decisions. I hope to prevent pain for anyone who attempts this in the future.A section »

Writing a Terminal Text Editor

I wrote Clunk because I was tired of exiting the terminal to take notes. A majority of the work involved was creating the text buffer. I feel there is too much extra overhead code in Clunk's source to properly illustrate some of the base concepts involved. Because of this, I wanted to write a post that would have helped me »

Being a Dick with Pointers in C

I like to argue that C can be a boring language. Boring here is a good thing. This is boring code: void some_function(int param1, void *param2) { if( param1 == 0 || param2 == NULL ) { return; } char *casted_value = (char*)param2; if( casted_value[param1] == 'A' ) { //do something } } It's boring because it's obvious what each piece does, even with nonsensical variable names. »