12 Jan 2016
Live coding in front of an audience can be exciting, except when there’s a glitch. Make one typo during your demo and you could spend the rest of the presentation troubleshooting while hundreds of onlookers watch you struggle. Not fun. I’ve been there, and it hurts.
Feel the Pain and Fix It
One day, after causing a live coding hiccup during a presentation, I vowed to squash all typos by recording my demos in advance instead of live typing. Tools of choice:
This post shows how QuickTime and Elgato can work for you.
Continue reading →
04 Jan 2016
lunr.js delivers fast search results because the entire search process happens in the browser. There is no network delay because the network never gets touched during the search.

Speed is one reason why this blog uses lunr.js for search. If you run a Jekyll-based blog, this post will tell you how to make lunr.js work for you. Gotchas (and solutions) are shared within.
Continue reading →
02 Jan 2016

This blog is built on three powerful tools, commonly used in the open source community:
-
Jekyll, the Ruby-based static page generator. Static pages are fast because there’s no database to hit.
-
GitHub, the collaboration tool for developers. Also useful for hosting and its content delivery network.
-
lunr.js, which gives visitors fast search capabilities. lunr.js is fast because search requests never hit the network. The entire search workflow happens in the browser.
Continue reading →
17 Dec 2015
Every great technology started as a toy. People played with kites and paper airplanes for thousands of years before the Wright Brothers achieved powered flight. Ada Lovelace and Charles Babbage toyed with the analytical engine over a hundred years before the digital computer.
Continue reading →
09 Dec 2015
Thank you to the Chicago Chapter of the Association for Computing Machinery (ACM Chicago) for inviting me to present Parallella: Supercomputer for Embedded Systems at the December 2015 meeting.
Slides and video appear below.
Continue reading →