This is a list of most of my Opensource projects, and documentation examples.

If you click a "select row" button, you'll be taken to a list of technologies involved in a project.

If you click a "select column" button, you'll be taken to a list of projects using a particular technology (think programming language, etcetera).

If you get a little lost in this big table, you can mouseover a "Yes" to see what row and column you are currently looking at.


Description


Highlights


Code in Rust


Code in Python


Code in POSIX shell


Code in C


Code in C++


Code in Java


Code in C#


Code in Perl


Code in JavaScript / TypeScript


Code in Haskell


Code in Golang


Programming: theory and building blocks


Problem Solving: abstract and instances


Automation


*ix in general


Linux specifics


Solaris specifics


AIX specifics


MacOS specifics


Performance


Networking


Security


Graphics and/or GUI


Web stuff


Database


Printing


System Administration


E-Mail


Spam


Large Storage


Host Documentation
drsmenu Yes Yes Yes
line-lengths-summary Yes Yes
mactools: create MacOS apps from GUI-utilizing scripts Yes Yes Yes Yes
Install-cgoban3 (for KGS) Yes Yes Yes
python-thread-comparison Yes Yes Yes Yes
zip-distances: find all zip codes within n miles of a target zip code Yes Yes
frequencies: count word frequencies on stdin Yes Yes
Computing a square root using Newton's Method Yes Yes Yes
Rolling-checksum-mod Yes Yes Yes Yes Yes Yes
just-one Yes Yes Yes Yes Yes Yes
log-gap Yes Yes Yes Yes Yes
bpe: a binary patch editor Yes Yes
screen-movie: capture a video of your screen, even on an old, slow computer Yes Yes Yes
true-false-tournament: run a command and compute percent success Yes Yes Yes Yes Yes
fractal-dragon: an eye-pleasing mathematical object Yes Yes
coordinate: yet another n shell commands m at a time Yes Yes Yes Yes Yes Yes
histogram: generate a histogram of values read from stdin Yes Yes Yes
Malloc-wrapper Yes Yes Yes Yes Yes Yes
srsh: an rsh with secure authentication (of purely historical interest) Yes Yes Yes Yes Yes Yes Yes Yes
MD5 performance comparison across a few different languages Yes Yes Yes Yes
TCP/IP and message boundaries Yes Yes Yes Yes Yes Yes Yes
Catenate-mp3s Yes Yes
Music-pipeline Yes Yes Yes
Bidir: Keep the latest of two files, overwriting the older Yes Yes Yes
pylint-json-report Yes Yes Yes
bgrep: a binary grep tool Yes Yes Yes
setup-passwordless-ssh Yes Yes Yes Yes Yes Yes Yes
The House Robber Problem, solved using a Genetic Algorithm Yes Yes Yes Yes Yes
Performing set arithmetic on files Yes Yes Yes
On strongly vs weakly typed languages Yes Yes Yes
Getting a hierarchical process list Yes Yes Yes Yes Yes Yes Yes
'Why is Python so slow?' Yes Yes Yes
find-dead-links: Find dead and malformed links on a website Yes Yes Yes Yes Yes
pythons: run a command or file on several python implementations Yes Yes Yes
cpythons: build several Cpython versions automatically Yes Yes Yes Yes
bcgrep: a grep tool with experimental support for not fouling your buffer cache Yes Yes Yes
hcm: Run predefined commands on predefined hosts with minimal clicking Yes Yes Yes Yes Yes Yes Yes
The alien language problem Yes
Play-music-collection Yes
Python's Calling Convention Yes Yes Yes Yes
Learning C Quickly Yes
6502 programs Yes Yes
from-table: extract HTML tables as csv Yes Yes
semirandom: rearrange lines from stdin a little bit Yes Yes Yes
recent: identify recently modified files Yes Yes Yes Yes Yes
database: a shell-callable interface to single-table databases Yes Yes Yes Yes Yes
Shadow Password Suite Yes Yes Yes
goo: a flawed go AI Yes Yes Yes
newstosgf: change rec.games.go ASCII diagrams into SGF for more pleasant viewing Yes
Kentou: memorizing pro 'go' games Yes Yes
toaster: improving the security of old *ixes by turning off most services Yes Yes Yes Yes Yes Yes Yes Yes
ppmdist: convert low numbers of colors in a picture to high-contrast grayscale Yes Yes Yes Yes Yes
maxtime Yes Yes Yes Yes Yes Yes Yes
circle.png: an application of the inverse square law Yes Yes Yes
Screensaver stuff Yes Yes
soksoo: An automatically-derived SGF file with joseki mistakes and punishments Yes Yes Yes
Pggo: A PyGame interface to GnuGo Yes Yes
bash's $PS0 prompt Yes Yes Yes Yes
dedup-notes: deduplicate a file with a line-oriented delimiter Yes Yes Yes
snapcat: like dd but with variable blocksizes Yes Yes Yes
NFS performance tweaking Yes Yes Yes Yes Yes Yes Yes
On heaps and garbage collection Yes Yes Yes Yes Yes Yes
A performance comparison (on an unrepresentative microbenchmark) between C++ and Python Yes Yes Yes Yes Yes
this-pylint: Check python code against 2.x and 3.x pylint allowing selected messages to be ignored. Suitable for use in a Makefile or related tool Yes
Mandelbrot web-browser performance comparison: C/ECMAScript vs Brython Yes Yes Yes Yes Yes Yes
sieve: Compute primes beneath a particular value Yes Yes Yes Yes
bits_mod: An array of bits Yes Yes Yes
Fibonacci-heap-mod: A Priority Queue implementation with nice theoretical performance Yes Yes Yes Yes
Interesting-quotient: demonstrates some repeating decimals Yes
Limited-fingerd: a finger daemon that gives the user the option of not publishing much information Yes Yes Yes Yes Yes
gquiz: drilling on questions and answers Yes Yes Yes
Head0: a null-terminated head(1) program Yes Yes Yes
Binary Trees Yes Yes Yes
Scapegoat Trees Yes Yes Yes
to-table2: Automatically converting CSV to an HTML table Yes Yes Yes Yes Yes
Why you should use Solaris 2.x instead of SunOS 4.1.x Yes Yes
Rot13 - very minimal (weak) encryption for things you don't care to protect well - EG movie spoilers or joke punchlines Yes Yes Yes
Recreating directories for the sake of adding ext3 indexes Yes Yes Yes Yes Yes Yes Yes
A splay tree implementation Yes Yes Yes
A list of datastructure implementations I've worked on Yes Yes Yes Yes Yes
A linked list implementation in pure python Yes Yes Yes
An implementation of Diffie-Helman key exchange Yes Yes Yes Yes
Prime numbers Yes Yes Yes Yes Yes Yes Yes
Python dictionaries (or dict-like objects) that allow duplicates Yes Yes Yes
Generating all valid anagrams from an input word or phrase Yes Yes Yes Yes
Copying data from a stochastically failing hard disk Yes Yes Yes Yes Yes Yes Yes
An exploration of common POSIX threading mistakes in C Yes Yes Yes Yes
MIT Open Courseware Java assignments Yes
Comparison of available Python-in-the-Browser technologies Yes Yes Yes
Fibonacci sequence Yes Yes Yes Yes Yes
red-black-tree-mod Yes Yes Yes Yes
Speeding up Python Yes Yes Yes Yes Yes Yes
Python Tree Comparison Yes Yes Yes Yes Yes
ttype - single character non-echoed tty I/O in C Yes Yes Yes Yes Yes
Sort Comparison Yes Yes Yes Yes Yes
Drs-bloom-filter Yes Yes Yes Yes Yes
Pyrabinf: A C++ Rabin Fingerprinting implementation wrapped for Python callability using Cython Yes Yes Yes Yes
Backshift: A deduplicating backup system Yes Yes Yes Yes Yes Yes Yes Yes
Fast GUI pipe meter Yes Yes Yes Yes Yes Yes Yes
Finding a zip code at the center of n zipcodes Yes Yes Yes Yes
On the use of significant whitespace in a programming language Yes Yes Yes
A treap implementation in Python Yes Yes Yes
Looper: Running n commands m at a time with good error checking Yes Yes Yes Yes Yes Yes Yes
replacebell: Making X use a nicer bell sound Yes Yes
daemon: daemonizing arbitrary programs Yes Yes Yes Yes
UCI-yppasswd: a yppasswd extended to do password testing Yes Yes Yes Yes
working-set: a benchmark for measuring OS memory overhead Yes Yes Yes Yes Yes
symmat: symbolic matrix arithmetic Yes Yes
A /usr/bin/script reimplementation Yes Yes Yes Yes Yes
Usenix/LISA December 2005 Recovering from Linux hard drive disasters Yes Yes Yes Yes
Reading null-terminated lines - and other delimiters Yes Yes Yes Yes
odirect - deterring buffer cache pollution Yes Yes Yes Yes Yes Yes Yes Yes Yes
The distinction between hardware and software Yes Yes Yes
Counting lines of text in a pipeline with a progress report Yes Yes Yes Yes Yes
Searching for a large number of patterns in a larger amount of ASCII data Yes Yes Yes Yes Yes
A python module to convert nonnegative whole numbers to/from a null terminatable string Yes Yes
A caching dictionary wrapper around python databases like gdbm, Berkeley DB and ndbm Yes Yes Yes Yes
Software for DCSLIB Yes Yes Yes Yes Yes Yes Yes Yes Yes
Merging AIX libraries Yes Yes Yes Yes Yes
How to make a website more plucker-friendly Yes Yes
Network trouble on autoinst Yes Yes Yes Yes Yes Yes
Testing a network to see what of half/full 10/100/1000BaseT works well Yes Yes Yes Yes Yes Yes
Splitting a file into multiple files on regex boundaries Yes Yes Yes Yes
Open source desktop search applications Yes Yes Yes
A means of indexing directories in an ext3fs without backup and restore Yes Yes Yes Yes Yes Yes
A couple of programs for summarizing disk use Yes Yes Yes Yes
Efforts to write a device driver for an Olympus VN480PC Yes Yes
Running a single command on many hosts - some programs for doing it Yes Yes Yes Yes Yes
WDS notes Yes Yes Yes Yes
Rebooting a hung Sun Yes Yes Yes Yes
loop: running a large number of parameterized shell commands Yes Yes Yes Yes Yes Yes Yes
An exploration of the relationship between setpgrp and exit Yes Yes
Generic hashing routines Yes Yes Yes Yes
Why you should use ADT's in your code Yes Yes Yes Yes Yes
OPeNDAP stuff Yes Yes Yes Yes Yes Yes
Empirically determining your system's maximum TCP window size Yes Yes Yes Yes Yes Yes Yes
Converting Redhat static routes to AIX static routes Yes Yes Yes Yes Yes Yes Yes Yes
The relationship between malloc and sbrk or 'Why is my program's RSS growing even though I keep free'ing memory?' Yes Yes Yes Yes Yes Yes Yes Yes Yes
A program to gracefully notify users when a set of URL's have moved Yes Yes Yes Yes Yes Yes
A pair of programs for merging NIS domains or other /etc/passwd-style databases Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
An overview of how X11 works Yes Yes Yes Yes Yes Yes
Indexing a list of files Yes Yes Yes Yes Yes Yes Yes Yes
Dividing files up into equivalence classes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Stamp: An OS signature generator and comparator Yes Yes Yes Yes Yes Yes Yes Yes
Increase privilege with your own password Yes Yes Yes Yes
IQS: A portable 'ultrabatch' scheduler class Yes Yes Yes Yes Yes
For displaying pbm images on an ancient hercules video card Yes Yes Yes
Plpd: A BSD-compatible print system Yes Yes Yes Yes Yes
Sunrays in ET509 Yes Yes Yes Yes
Perl notes Yes Yes
oacstats: behind the scenes doc Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Loadleveler notes Yes Yes Yes Yes Yes
DTrace notes Yes Yes Yes Yes Yes Yes
dcs.nac boot trouble Yes Yes Yes Yes
bpgetfile workaround Yes Yes Yes Yes Yes Yes
Big dd hypothesis Yes Yes Yes Yes Yes Yes
Bash notes Yes Yes Yes
Writing portable Bourne shell scripts Yes Yes Yes Yes Yes
Wifi and cordless phone conflicts Yes Yes Yes Yes Yes Yes Yes Yes
What program is active on that port? Yes Yes Yes Yes Yes Yes
VPN info Yes Yes Yes Yes Yes Yes Yes Yes
Usenix 2005: Next Generation Storage Yes Yes Yes Yes Yes Yes
Useful AIX commands Yes Yes Yes Yes Yes Yes Yes
Unix and Linux filesystem recovery without LVM or other volume management Yes Yes Yes Yes Yes Yes
Troubleshooting a gnome problem early in the login Yes Yes Yes Yes Yes
SunFire V490 notes Yes Yes Yes Yes
Sun video configuration Yes Yes Yes Yes
Sun alternate break sequence Yes Yes Yes Yes
Sun StorEdge 3511 installation notes Yes Yes Yes Yes Yes Yes
Solaris 'zones' notes Yes Yes Yes Yes
Solaris Patch Pro Yes Yes Yes Yes Yes
Solaris notes Yes Yes Yes Yes Yes Yes
Samsung ML-2150 laserprinter with Samba and CUPS Yes Yes Yes Yes Yes Yes
SAM-FS notes Yes Yes Yes Yes Yes
Redhat linux commands Yes Yes Yes Yes Yes Yes Yes Yes Yes
Redhat NFS trouble Yes Yes Yes Yes Yes
Rebooting portions of the ESMF Yes Yes Yes Yes Yes Yes Yes Yes
Rebooting an IBM SP2 compute cluster Yes Yes Yes Yes Yes Yes
POPTOP (PPTP) notes Yes Yes Yes Yes Yes Yes
PalmOS network diagnostics Yes Yes Yes
Orange County computer stores with a web presence Yes Yes
Networked Hewlett-Packard printer notes Yes Yes Yes Yes Yes Yes
Netreo SNMP notes Yes Yes Yes Yes Yes Yes Yes
NX (the graphics compression system not the NoeXecute bit on newer Intel and AMD CPU's) Yes Yes Yes Yes Yes Yes
NFSv4 notes Yes Yes Yes Yes Yes Yes Yes Yes Yes
NFS timeout notes Yes Yes Yes Yes Yes Yes Yes Yes
MySQL notes Yes Yes Yes Yes Yes Yes Yes
Maxtor RMA procedure Yes Yes Yes
Machine room options Yes Yes
Low bandwidth addons for X11 Yes Yes Yes Yes Yes
Loadleveler problems and resolutions Yes Yes Yes Yes Yes Yes Yes
Linksys WRT54G notes Yes Yes Yes Yes Yes Yes Yes
Keeping backups from pounding a system Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
HSSOE spam filtering Yes Yes Yes Yes Yes Yes Yes Yes
Free X11 server options Yes Yes Yes Yes Yes Yes Yes
Floppy disk notes Yes Yes Yes Yes Yes Yes
Fedora Core 3 notes Yes Yes Yes Yes Yes Yes Yes
FLOSS development NNTP server Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Encrypting documents Yes Yes Yes Yes
EXT3 filesystem recovery Yes Yes Yes Yes
ESMF scheduler notes Yes Yes Yes Yes Yes Yes Yes
ESMF ratio of data blocks to inodes Yes Yes Yes Yes
Debugger notes Yes Yes Yes Yes Yes Yes Yes
CUPS notes Yes