Projects
REST API Powered by Golang (go)
Developed a REST API using Golang (go) for Democracy Live’s new web applications. It is the backbone that powers all their current efforts which together enable us to import many different data specifications into our system, edit and/or translate data to our customer’s wishes, and finally publish it to customer websites, or export it into other auxilary systems. The api I built is much more efficient and flexible than the older Drupal-based system we are depricating, and runs with less than half the cpu and memory requirements, even though our admin user load has increased.
Projects
Ballot PDF Scraper
Architected and developed a system to scrape data off ballot PDF files into structured ballot content which could be QAed and used for accessible, internationalized sample ballots, augmented with voter guide information, or exported for use in other related systems.
The data was scraped from the pdfs via a scalable microservice built on Flask/Python3 consisting of blob storage (s3 or azure), and Redis for pub/sub & queue processing. Pdfminer3k’s API was used heavily in the pdf parsing and processing where an xml dump didn’t suffice.
Projects
Blind Accessible (WCAG 2.0) and Multilingual Sample Ballot and Voter Guide
Developed significant enhancements to our existing Online Ballot, Sample Ballot and Voter Guide products to make them WCAG 2.0 compliant and multilingual. Besides learning about Aria attributes and WCAG 2.0 compliance and implementing them, templates were moved out of drupal/php into handlebars (similar to mustache) templates, and rendered client side from JSON data representing the ballots, which was cached and loaded from Azure Blob Storage. This meant much less load on our servers, and quicker page loads on average for our users, while enabling more people to get ballot information.
Projects
Conky Transmission Bittorent Client Plugin
In 2010 I made a conky plugin to work with transmission bittorrent client so I could easily see my torrent status on my desktop. After sharing with a few of my college buddies, I put it on gnome-look.org to see if there was any interest. Ended up with a pretty good response at over 2000+ downloads on gnome-look.org alone (many more through launchpad.net) for what started as a silly weekend project on a very niche platform.
Projects
Craigslist Cars and Trucks Scraper
For my personal use, in an effort to more easily find a car based on various criteria, I built a craigslist scraper in Python3 that dumped filtered results into a google sheets document for further analysis.
Read the blog post
See it on github
Technologies
Python3 Scrapy Google Drive API