qqrs.github.com

http://qqrs.github.com (RSS)
visit blog
Doorbot
29 Mar 2018 | original ↗

What is it? Doorbot is an Internet-connected door unlocker that I built for a community space. It allows people to enter the space without needing to be buzzed in. System Architecture The Doorbot system consists of: servo motors to actuate the door buzzer button ESP8266 microcontroller with built-in Wi-Fi NodeMCU firmware for ESP8266 lua...

Writing a BitTorrent Client
22 May 2016 | original ↗

This post is a short overview of what is required for a minimal, download-only BitTorrent implementation. Earlier this year, I wrote a BitTorrent client as an excuse to practice concurrency and networking concepts. But the resources and documentation I found while researching the protocol felt scattered, so I’m distilling my understanding here as...

Which Python operations are atomic?
1 May 2016 | original ↗

A conversation with a coworker turned me on to the fact that a surprising range of operations in Python are atomic, even operations like dictionary and class member assignment. This wasn’t something I would have anticipated, given the number of machine language instructions that must ultimately be performed to complete an operation like hash...

Reading Notes: The Architecture of Open Source Applications II
1 May 2016 | original ↗

Earlier this year, I read The Architecture of Open Source Applications, Volume II: Structure, Scale, and a Few More Fearless Hacks. It was an excellent read, and fills a gap in the market for software engineering books: Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters. In...

Git Hash Collisions
1 May 2016 | original ↗

While re-reading The Architecture of Open Source Applications, Volume II, a line in the chapter on git caught my eye: if two objects are different they will have different SHAs. This was surprising, as there should always be be some very very small but nonzero chance of a hash collision. Either the book is simplifying for ease of explanation,...

Time Fountain
16 Dec 2015 | original ↗

Inspiration The first time I remember seeing a time fountain was a blog post by Nate True from 2006 (archive.org). Operation The time fountain works by using flashes from UV LEDs to illuminate falling drops of fluorescent dye. If the drops fall at a consistent rate, the UV LEDs can be flashed at the same frequency as the drops are falling so that...

Proofing Spirits with a Homemade Electrobalance
22 Aug 2015 | original ↗

A panel voltmeter can be used to build a milligram-range electrobalance, which turns out to produce surprisingly linear measurements. Using a bare-bones panel meter electrobalance, I attempted to measure the proof of alcohol by tracking evaporation over time. Electrobalance A typical panel meter passes a current through a coil to generate a...

Vim on a Mechanical Typewriter
3 May 2013 | original ↗

Watch on Youtube (with sound) >> Inspiration I’ve had the idea for this project kicking around for years, but it was only recently that a minimal-assembly-required interfacing scheme presented itself and I found the time to make it happen. The original inspiration came a long time ago when I read a writeup by someone who had thoughtfully...

Android-Controlled Bluetooth Double-Bell Alarm Clock
30 Apr 2013 | original ↗

I’ve woken many mornings to a blaring square-wave-through-overdriven-8Ω-speaker alarm tone dragging me back to consciousness from the warm depths of sleep. Searching for a better alarm, I bought an analog-face alarm clock with a double-bell ringer and found the alarm sound to be crisp and clear. However, the clock wasn’t perfect: I had to...

Interfacing a SoftPot Membrane Potentiometer
22 Apr 2013 | original ↗

SoftPot? The SoftPot is a touch–sensitive position sensor produced by Spectra Symbol. It is available in a variety of sizes and configurations for linear and angular position measurements. There are also two related product lines: the ThinPot, which is narrower, and the HotPot, which is rated for higher temperature operation. A SoftPot acts as a...

Voice– and SMS–Enabled Light Sensor using Raspberry Pi and Twilio
10 Apr 2013 | original ↗

This was a quick project created in collaboration with @leocadiotine at Hacker School. Hacker School is a free three–month self–directed learning environment that has been described as being “like a writers’ retreat for programmers.” Thanks go to @sashalaundy for the introduction to the Twilio API that sparked the idea. Overview The Hacker School...

↑ these items are from RSS. Visit the blog itself at http://qqrs.github.com to find other articles and to appreciate the author's digital home.