Skip to main content


Hookah: A Swiss Army knife for data pipelines

Hookah lets you pipe data between different stream types.
Check it out on Github: View the Go package docs:
Some CLI examples: Pipe from stdin to a new TCP server on port 8080: hookah -o tcp-server://localhost:8080Pipe from an existing TCP server on port 8080 to a new HTTP server on port 8081: hookah -i tcp://localhost:8080 -o http-server://localhost:8081Pipe from a new Unix domain socket listener to stdout: hookah -i unix-server://path/to/sockPipe from a new HTTP server on port 8080 to an existing Unix domain socket: hookah -i http-server://localhost:8080 -o unix://path/to/sock
Recent posts

Encrypted reverse proxy in Go

This was part of an interview technical challenge but I decided to write it out as an actual Golang tool. It has a program for starting the reverse proxy from command line as well as package interfaces for using the proxy handler and implementing the target server encryption.

Github repo:
Godoc page:

Build a Feed Reader in Python (Parts 7-9)

Part 07 Adding Jinja2 templates to a flask web application.

 Part 08 Adding static files so we can serve some CSS to style our app.

Part 09 Adding a background task to continuously update the articles while the application is running.

DIY Raspberry Pi Game Console

I just got a brand new Raspberry Pi case and decided to build a little gaming console with it...

Build a Feed Reader in Python (Parts 4-6)

Part 04Adding methods to insert data into our database using SQLAlchemy.
Part 05Adding GET and POST request handlers and routes to a flask web application.

Part 06Finally implementing some of the request handlers and core logic behind the routes for this feed reader.

Build a Feed Reader in Python (Parts 2 & 3)

Part 02Installing and configuring MySQL, flask, and SQLAlchemy.

Part 03Modeling our feed reader data using SQLAlchemy.

Build a Feed Reader in Python (Part 1)

Adding the feedparser module to the project and using it to extract information about feed sources and articles.