Projects

   beerlister - An Alexa Skill that will read the taplist of select Northern NJ craft breweries. This codebase is fully CI/CD utilizing CircleCI. Runs for "free" on AWS Lambda services.
   JerseyTrains - An Alexa Skill that find you the next NJTransit train to your destination. This is a work in progress, the NJTransit web api is unreliable.
   sensorPi - A raspberry pi project to read and log temperatures. Historical data graphed with Google charts. Utilizes an interface "hat" to connect DS18B20 temperature sensors.
   genesis - A set of RESTful web services (Python/Flask/SQLAlchemy) to support a mobile app venture (Image Improv). The mobile side was written in Xamarin and supported both iOS & Android. Hosted on Google Cloud (GCE) using Cloud SQL and Cloud Store.
   FaultSim - A proxy server that injects faults into the connection stream for testing. This has been very useful over the years as it also serves as a "middle man" for logging traffic between a client & server. This was written for PointCast back in 1995 and makes use of "I/O completion ports" to increase throughput (and just because they are cool).
   blog - This blog! This is a Hugo generated site, hosted on a Raspberry Pi 3 b+. I use CircleCI to build from gitHub and deploy to the pi via SSH keys. It's freak'in awesome! I can edit content in Visual Studio, check it into github and it is automatically "checked" and securely deployed to my Raspberry Pi.
   LogicParser - A logic parser. Basically parses & executes embedded logic strings to support conditional surveys. Striving for speed and simplicity. This was written in 2008, I had stepped away from hands-on programmer for awhile and wanted to tryout a simple (but useful) project that utilized TDD principles.
   RpiPG - A photogrammetry device implemented in Python on the Raspberry Pi. Photogrammetry is the process of producing a 3D model of an object by taking photographs from various vantage points. The model is generated by specialized software (e.g. Agisoft) that constructs a 3D model from the 2D photos. The more photos and differing angles, the better the result (and the longer it takes the photogrammetry software to produce a model). This solution runs a 3D printed rig with stepper motors, limit switches and a Nikon Coolpix S3300 camera to automate the process.
   RaspberryPint-lite - Based on the taplist management codebase RaspberryPint, the -lite means a Javascript only implementation. The original RaspberryPint utilizes a database and a convoluted management interface. Now it's a simple json array. Added some data to lookup styles and SRM coloring as well. Can easily drive a monitor with a Raspberry Pi Zero. Also CI/CD using CircleCI directly deployed to Raspberry Pi near my keezer.