When I'm Sad My Computer Sends Me Cats
A developer built a program that uses webcam emotion detection to send cat pictures to their phone when they're sad at the computer.
Andrew Healey writes about programming languages, compiler design, systems programming, and performance optimization. His blog covers building interpreters, compilers, sandboxes, games, and creative developer tooling, often with a focus on speed and efficiency.
123 articles from this blog
A developer built a program that uses webcam emotion detection to send cat pictures to their phone when they're sad at the computer.
Developer builds a web-based code playground to run their custom Adventlang programming language in the browser using Go and WebAssembly.
A developer shares their journey of designing and implementing a custom programming language specifically for solving Advent of Code puzzles.
A developer combines DOOM WebAssembly with the Checkboxland library to render the classic game on a grid of HTML checkboxes.
A developer shares their experience porting the Niceware library to Rust, reflecting on overcoming the emotional barrier of strict compilers and redefining progress.
A developer shares their journey creating Golfcart, a minimal toy programming language for Advent of Code, and the lessons learned about interpreter design.
A developer builds a Raspberry Pi home dashboard with GPS, temperature, and printer modules, detailing the architecture and open-source code.
A developer uses Python and OpenCV to build a program that identifies embroidery thread colors from images, applying computer vision techniques.
Exploring how deep learning and a pre-trained geolocation model can be used to automate and improve performance in the GeoGuessr geographic discovery game.
Explores WebAssembly-powered search tools for static websites, comparing Rust-based solutions like tinysearch and Stork, and presenting a technical demo.
A technical guide to generating realistic text using Markov chains, from basic weather simulation to building a text generator from scratch in Python.
An analysis of five inspiring personal websites, focusing on their design, content philosophy, and the technology used to build them.
A developer shares their journey of building a simple chess engine from scratch, covering search trees, evaluation functions, and computational challenges.
A developer details building a custom React/Node.js web app to track stats, Elo ratings, and trophies for a competitive Among Us league.
A developer's journey learning the Ink programming language, including creating a tutorial resource called 'Ink by Example' to master the language.
A developer builds a privacy-focused web analytics system from scratch, avoiding cookies and PII to eliminate GDPR notices.
A tutorial on implementing the Boids flocking simulation algorithm using the Go programming language and WebAssembly, with the Ebiten game library.
Explores how to generate random numbers in JavaScript without Math.random(), covering PRNGs, seeding, and deterministic use cases.
A practical guide to graph theory, using Breadth-First Search (BFS) to find the shortest path between countries based on border crossings.
Explains how to polyfill the Fetch API for older browsers and Node.js, covering polyfills vs. transpilers and Babel configuration.