Some notes on web accessibility

People with varying types of abilities who want to navigate the web are often faced with vastly different and inferior experiences compared to those who don't use any type of assistive devices. When developing for the web, how can we build things that can be used and enjoyed by all?

Machine learning in production with Flask, Twilio, Docker, and Google Cloud

Making machine learning models work in the wild, and what I learned along the way.

async/await vs .then() in JS Promises

Promises are at the core of asynchronous programming in JavaScript, but sometimes the patterns surrounding their use can be really confusing. First of all, there are two main things you can do with promises: *create* and *handle* them. This post will be mainly focused on the latter...

Dynamic Programming with Python

Today I worked on a LeetCode problem called House Robber: given an array of numbers, each representing the amount of money in the house, find the maximum amount of money you can rob without robbing neighboring houses.

Automata, Consciousness, and 17th Century Mechanics

Automata — machines that operate according to a set of predetermined instructions — are some of our earliest iterations of artificially intelligent technology. What epistemic purpose did they serve, and what do they demonstrate about how people have historically thought of machines as alive?

Hardware hacking with Arduino, Neopixels, and MTA data

As a New Yorker, I've had this dream, for awhile now - to be able to glance at a display on my wall and know when my train is coming. The MTA has a website: that provides this experience, but the user experience is pretty terrible and you can't even bookmark your subway stop.