Tim Hentenaar's Blog

Jul 14, 2015 16:30

This Month's New Software

I don't always have enough time on my hands, but over the last month I've published a few more projects to my Github page. Since I haven't updated my blog in a while, I figured it'd be an opportune time to write a short post introducing those projects.

The most recent one, which I just pushed yesterday, is tp2 - a powers-of-two tile matching game, loosely based on 2048, with a curses UI. It runs on Linux, Mac OS X, and even DOS -- yes, DOS.

Next, there's mmm, the Minimal Migration Manager. This is a database migration tool designed to stay out of the way and focus only on rolling out and rolling back database migrations; which in this case are simply blocks of SQL. It is completely unencumbered by DBALs, ORMs, and other such things; and works with SQLite 3, PostgreSQL, and MySQL.

Next up is a simple DNS sniffer which was written a while back as a post-job-interview assignment. It was done in the span of two evenings, so there's certainly room for improvement. But, I've shared the code in case some person curious about how to use libpcap for such a case stumbles across it.

Finally, I've been doing a lot of hacking on GNU indent and keep my working copy on Github for everyone who wants to track my progress with it and/or use my patches before they're incorporated upstream. I've fixed quite a few bugs in it, and have added some features, namely:

-as  Indent with tabs, align with spaces
-slc Allow single-line conditionals (e.g. if (...) stmt;)
-sar Spaces around initializers (e.g. struct ... = { x } instead of {x})
-ntac Don't tab-align comments

You can check-out mmm's indent profile for an example of the settings I'd use with it.