Active Side Projects
Free Face Mask Creator
A web-based design tool that lets you add an image to a face mask and print out the pattern, so you can make your own personalized face masks.
- Initial prototype! (2020-06-05)
Purge Alert -
A browser extension that lets your monitor your voter registration, so you can see if you get purged from the voter rolls.
- First voter registration check (2020-02-21)
- Started the project (2020-01-13)
- Ballot API (code) - A free, public-domain database and API of all U.S. ballots and precinct shapefiles.
A tiny python script that will automate free https certificate
issuing and renewing using the ACME protocol from Let's Encrypt.
- Support for GET-as-POST (2019-07-07)
- Added ACME v2 support (2018-04-13)
- Initial release (2015-11-25)
- Added tests (2015-12-05)
Get HTTPS for free!
A browser-based ACME client that allows people to get free HTTPS
certificates from Let's Encrypt without having to install anything.
- Support GET-as-POST (2020-03-07)
- Added ACME v2 + wildcard domain support (2018-04-13)
- Initial release (2015-11-23)
to connect their own data storage backend to your webapp.
- Rewrote to use WebCryptoAPI instead of SJCL. (2015-03-01)
- Hackathon project to make a secure chat example (demo, video). Tied for 2nd place! (2014-02-09)
- Redesigned API and rewrote README to reflect new API. (2014-02-03)
- Started as my project for the Aaron Swartz Memorial Hackathon (project was called "Bring Your Own Data"). (2013)
Finished/Inactive Side Projects
- Did I actually vote for my candidate? (video, slides) - This is a talk I gave at EFF-Austin on how I manually verified the barcodes on my primary ballot. (2020-05-12)
- Energy Data Privacy: How Climate Changes Everything (video, slides [warning: buzzing audio]) - This is an updated verison of my energy data privacy talk I gave at the EFF-Austin Privacy Lab meetup. (2019-11-12)
- Energy Data Privacy: How Climate Changes Everything (video, slides) - This is a talk I gave about energy data privacy at Mozilla's Privacy Lab meetup in the bay area. (2018-12-13)
- Printer-Friendly Diceware (code) - Generates a easy-to-use printout of Diceware word lists so my mom can create strong passwords. (2018-05-13)
- ENRON (video) - Energy Network Research Organization Network (ENRON) is a project created for the Powerhouse Suncode 2018 hackathon. ENRON is a team of experts that help find ways to arbitrage and manipulate energy blockchains. (2018-04-14)
Run one of the OpenPGP keyservers in the SKS keyserver pool.
This pool is a critical public key infrastructure (PKI) for the global community.
When you run
gpg --recv-key 72EFEE3D, you might be pulling from this server.
- ACME Without Sudo - A python script that will get your https certificate signed by the free Let's Encrypt certificate authority without asking for your private keys or sudo permissions. (2015-01-18)
- Eventbrite-to-iCal Converter (website, code) - Nginx+Lua config that converts Eventbrite API to iCalenadar format. (2017-11-26)
- Dice.css (demo, code) - A tiny css library for dice icons, only 867 bytes gzipped. (2016-12-28)
- Bay Area Energy Events - My public calendar of all the San Francisco Bay Area clean energy related events. (2016-06-17)
- HSTS on the SKS pool - This is how I configure my nginx server to handle https while still being a part of the sks-keyserver pool. (2016-05-25)
- Solar Tetris (demo) - A hackathon project for the 2016 Powerhouse SunCode hackathon. (2016-05-14)
- Privacy Checklist - A checklist of privacy links that I built for the Common Cause Media and Democracy Summit. (2016-02-20)
- WebCryptoAPI Overview - A talk I gave at HTML5DevConf 2015 about the Web Cryptography API. (2015-10-19)
- SKS gossip network (code) - This is a visualization of the SKS keyserver pool gossip network. Note how many peers are outside of the pool. (2015-09-01)
- An Open Letter to News Sites - This is an open letter I wrote to news media website owners calling for them to start using https by default. (2015-06-12)
This is a satire project that I created for the
Stupid Shit No One Needs & Terrible Ideas Hackathon
that wraps all of the GNU command line tools with a pricing model,
so that you have to pay to use
gcc, etc. (2015-05-10)
- Firefox Detect Throwaways (demo) - This is a demo that exploits Bug #1100154 in Firefox to potentially compromise the identity of throwaway account users on social media sites.
- Keyserver Elasticsearch (docs) - This is a dump of the SKS keyserver pool database into an elasticsearch instance so that researchers can do complex searches on the SKS public key infrastructure. (2015-04-05)
- openpgp-python - A python library that can parse and generate OpenPGP packets. (2015-04-05)
- WebCryptoAPI Examples (demo) - I couldn't find anywhere that had clear examples of WebCrytoAPI, so I wrote examples and made a live table with them. (2015-02-22)
- PPark - A simple app that guides you into a parallel parking space using the Toyota CAN Gateway API via bluetooth. Made for the OnRamp 2014 hackathon. (2014-12-07)
- The Next "Internet" - An short article I wrote for PV Solar Report about the energy revolution. (2014-11-12)
allows easy email encryption.
- Initial release (2014-08-16)
asymmetric encryption in a browser.
- Initial release (2014-07-26)
- Offset248 - Binary encoding for the Unicode world. A simple technique for encoding binary to text that can be easily copied and pasted. (2014)
- Keen Casa (demo, video) - The Mint.com for Internet of Things. Created this prototype and pitch with a team at ProtoHack San Francisco. We got into the top five finalists (out of 40 entries). (2014)
Nightly builds of Firefox OS
(codenamed b2g) for the
(config name: inari).
- Started nightly builds for three branches: master, v1.2, and v1.3. (2013-12-28)
- Bug #965180 is preventing me from building. (2014-01-29)
- d3 on cheap smartphones (demo, video) - Exploring the svg and d3 performance on $80 Android and Firefox OS smartphones. My first time messing around with Firefox OS. (2013)
- Ascent Solar (demo) - A developing world solar lantern inventory tracker that I helped code for the SFunCube solar hackathon. (2013)
- HCSMP stats - A simple statistics scraper for a Minecraft multiplayer server. My first time messing around with flask. (2012)
- ViewDiff Recipe - A PmWiki plugin that renders the differences between two page versions. (2011)
- IMAPgrab - A python script and gui for backing up IMAP mail servers, including Gmail. My first android. (2010)
- kitco-android - A barebones gold spot price scraper. My first android app. (2009)
- PageFeed Recipe - A PmWiki plugin that generates an RSS feed from a wiki page's history. (2009)
- MailListForm Recipe - A PmWiki plugin that inserts a mailing list registration form. (2008)