113 Posts In Total


March, 20 Turing Test Needs an Update, or: How ChatGPT Ran a Test on Me


September, 6 Tidbyt: Someone's Making the Muni Sign!


June, 29 How to Literally Ask Neural Network for Help and Watch It Deliver
June, 29 Writing Neural Face Detector from Scratch (sneak peek)
May, 27 Why Fast Models are Destined to have a CPU Training Bottleneck
February, 9 I'm now Stanford-Certified with a Non-Degree Certificate


November, 30 The Blog Turns... 10 Years!
November, 29 Lessons from a Smiling Bot, III: Customers don't Care it's Hard
September, 1 Lessons from a Smiling Bot, II: Get Features from Production
July, 21 Lessons from a Smiling Bot, I: Training/Serving Skew, Second Opinion, CSV-based ML Infra
June, 29 What is the gradient of broadcasting?
April, 21 Traffic IV: How to Save 10 Minutes on your Commute, or the Mystery of the 101-92 Interchange
April, 15 I de-lid Core i7 9700k and I have no idea if it was worth it
April, 7 Spring Break!
January, 10 Traffic III: Why doesn't Changing Lanes Always Work?
January, 2 Traffic II: Why does the Fast Lane become Slowest in Traffic?


December, 23 Traffic I: Why is the Other Lane Always Faster?
August, 14 I tricked the Amazon Go store
June, 19 Take Apart that Giant Case: A Compact, 1.5kg Thunderbolt3 eGPU Setup
February, 15 Containers on Amazon made easy: AWS Elastic Beanstalk Speed Run
February, 15 This blog is now a Hugo-powered static website on AWS Elastic Beanstalk
January, 25 A Farewell to Gentoo


December, 16 A New Look


March, 17 Division by Zero? How About Multiplication by Zero


March, 10 How Reader Mutexes Can Deadlock
January, 2 Nonlinear Effects when Web Server is at 100% CPU


October, 2 Light Sensor with Arduino for the Muni Sign
September, 11 Misuse of Caching in Web Applications
August, 8 SF Muni LED Sign at Home with Raspberry Pi
May, 20 Multithreaded Consensus Versus Practice
April, 27 A Mutex Puzzle
April, 7 How to Get Binary Search Right
March, 13 The Pipe-Pipe-Equals
March, 2 Zeno's Flat Screen TV Paradox
February, 8 Why I No Longer Work On Weekends
January, 17 How to Select a Place to Live via Google Maps
January, 3 Not So Static


December, 11 The Fallacy of Simple User Interfaces
November, 12 Consistency Models Explained Briefly
October, 8 How to Watch HDTV from Internet on your TV with Linux PC (Legally)
September, 24 A Dying Tux on an Airbus
September, 10 A Tie for a Python Programmer
August, 28 How Static Verification Tools Analyze Programs
July, 2 Time-Based Protests
June, 9 A Different View on the Strategy Pattern
May, 22 BLAST at the Competition on Software Verification'12
May, 12 Logging in Expressive Languages
April, 5 Counting Visits Efficiently with "Wide Caching"
March, 10 Ruby on Rails Errors and Solutions
February, 19 Optimizing Massive Data Views in Ruby on Rails
January, 28 A Visit to the Computer History Museum
January, 10 The Most Stupid Mistake You Can Make with Ruby


December, 26 Relativity of Simultaneity in Distributed Computing
November, 21 Typical Janitor's Failures
November, 13 Do not use Btrfs!
October, 21 Ruby-ran-off-the-Rails
October, 9 OCaml Hash Table Chronicles
September, 28 Looking for a Match, a Geekier Way
September, 13 So I Patched That Filesystem
August, 22 Microsoft Office Needs Windows... a lot of them!
August, 18 Fail Early, Fail Fast
August, 3 How to Use Open3 and Avoid Dead Locks
July, 17 How to Implement open3
June, 21 Penn&Paper's Solutions™: Table Scroll Sanitizer
June, 10 Pipes in Linux and in The Real World
May, 25 Git Cheat Sheet
May, 4 My "timeout" project is now on GitHub
April, 20 On OpenID (un)success
March, 31 Fast XML stream parsing in Ruby with LibXML
February, 25 XML Stream Parsing: Overview
January, 26 A poor man's benchmark and stopwatch
January, 20 Why execve()-like system() call is a must-have


December, 24 Penn&Paper's Solutions™: Progress Tracker
December, 14 Porting Perl's features to Ruby
November, 30 A year of blogging
November, 27 Parallel merge sort
November, 20 Prisoners and Fairness
November, 7 Syntax elements? User-defined functions!
October, 23 An example of indentation
October, 17 Caching and levers
October, 9 Four years later, GNU Make 3.82 is released!
October, 3 Searching for the declarative language
September, 9 Cross-compiling ARM kernel on x86
September, 5 Scrum: our three iterations
August, 23 Limiting time and memory consumption of a program in Linux
June, 30 OpenID as a public authentication mechanism
June, 17 Performance metrics and parallelization
June, 8 Today I wrote my first unit test...
June, 5 Availability of software development keeps increasing (SYRCoSE 2010 notes)
May, 12 Why Git is treated as so complex?
May, 3 Deleted functions in C++0x and binary compatibility
April, 23 Are women worse programmers than men?
April, 19 StackExchange 2.0: evil grin of "Software As A Service"
April, 17 Uploading and processing data with inotify-tools
April, 9 How I applied for a web server developer, or why the fastest servers are written in C instead of C++
April, 3 SVG is useless
March, 24 Programming as gold mining
March, 18 The most awful limitation of Make
March, 12 Binary compatibility of C++ Shared Libraries in Linux
February, 27 Randomized debugging