Technically minded engineer with a passion for innovation.

Simplest Journal Solution

2019-01-29 Code
This is my simple journal solution. Put the code belowe in your ~/.zshrc or ~/.bashrc Type a j from a terminal, type some notes, save and exit. The script creates a file in the format of ~/journal/2019/ and automatically pushes it to git. EDITOR=vim journal() { mkdir -p ~/journal/`date +%Y` $EDITOR ~/journal/`date +%Y`/`date` (cd ~/journal/; git pull; git add *; git commit -a -m "Update `date +%Y-%m-%d`"; git push) } alias j=journal Easy, simple, effective. Continue reading

Sniffing one's own farts: Moving from GitHub to Gitlab

2018-09-04 Code

I recently announced a new side project of mine, HomelabOS on Reddit.

There was a lot of great feedback, and then there was the hilarious comment in the screenshot.

oh of those people that moved to gitlab to 'send a message'.

OP sounds like the kind of person that sniffs their own farts

While I do enjoy the occassional whiff of gourmet flatulence, I thought I would address my actual motivations behind moving my projects from GitHub to GitLab.

Continue reading

Slither Bots - How I built a series of JavaScript snippets to play for you

2018-08-22 Code

Slither Bots is a series of scripts I created that automate playing the web-based game in increasingly complicated ways. is a multiplayer version of the classic Worm game. You hit other snakes, you lose, they hit you, they lose. Once a worm dies, it drops a bunch of food that can be slurped up by the survivors (or anyone else) and can double or triple a player’s size in a second or two.

I started very simply, and added layers of complexity one after another, saving them each as a separate generation.

Continue reading

Papyrto - A simple paper based strategy game based on Quarto

2018-08-12 Projects
8 months or so ago I designed a paper adaptation of the board game, Quarto. I call it Papyrto. Papyrus (Paper) + Quarto = Papyrto. Invented by Swiss mathematician Blaise Müller in 1991, Quarto is a simple game with interesting rules. There are 16 game pieces, each with 4 distinct attributes; tall or short, light or dark, round or square, and solid or hollow. So my design had to have a similar set of ‘pieces’ with a different set of 4 distinct attributes. Continue reading

Introducing HomelabOS - Ansible scripts to deploy privacy centric personal servers

2018-07-17 Code
I’ve been working on a new Open Source project lately called HomelabOS that aims to make it easy to set up a home server to be a nearly complete cloud services replacement. I call it ‘Your very own offline-first privacy-centric open-source data-center!’ The goal is to make it easy for anyone to own all their data in an easy and secure way, without the need of cloud providers. It has a simple one-command setup (make) that uses Ansible to configure and deploy dozens of services for you in Docker containers to a server in your home network. Continue reading
Newer posts