Code

Historical code projects and documentation from the early days of the internet.

Historical Archive: This code collection spans from the late 1990s through the early 2000s, documenting various software projects and utilities.


Using ACM To Decode MP3
This is just a quick little code snippet to show you how to use ACM to decode buffers full of MP3 data. I hope it's useful to some folks out there!


wTimer v1.0
Ever wish you could time something quickly and easily on your computer -- hoping for a quick stopwatch? After looking on Download.com and only finding 2-3MB timers (that required a reboot after install and demanded a $25 shareware fee!), I coded up my own application that does the same in 24,000 bytes. Enjoy.


pixdir 0.3
pixdir is a set of scripts that take recursive directories full of full-size pictures, munge through them, and create thumbnails for pictures not yet thumbnailed; then spitting out HTML pages with tables full of thumbnails. (see this in action at /pictures/) The code's currently quite a hack; not very elegant at all. But it gets the job done. I'll move to something nicer later.

Simple Finger 1.0
Simple Finger is a simple finger client for Win32 systems. It should theoretically work on Windows95, 98, NT, or 2000, but has only been tested on Windows98. It is tiny: the ZIP file above is 18Kb, including the binary and source code. The code is simply structured and should serve as a useful tool for anyone looking to learn Windows Sockets programming. It is non-graphical, running from the DOS prompt. (No documentation is included: if you don't know how it works, you probably can't make use of it anyhow.)

Unbooting Yourself From Napster
Has the Metallica lawsuit banned you from using Napster? Click here for some quick tips on how to get back online.

DiamondSilk: my senior project
DiamondSilk is a project to created structured data from unstructured HTML, such as being able to deduce the price of a product from the corresponding page at buy.com.

Documentation for the Napster Protocol is here.
I did a very quick summary overview of the Napster protocol. A better and more comprehensive description can be found at OpenNap.

Information for circumnavigating an ISP's Napster block is here
Here is a short tutorial on configuring a Linux box to act as a SOCKS5 proxy to grant people who have been blocked from Napster access to the Napster network.

My project for a secure, authenticated file exchange network (known alternately as safeX or fexnet) -- while code work is just beginning and not yet available, read the idea.

console othello has its own page!

rio v1.06

The official Rio utilities have now incorporated the ability to download files from the Rio to the PC, so my patch to do this is no longer necessary. I have cleaned things up and put them in these easy-to-use packages:
  • RedHat i386 RPM [v1.03 - old!]
  • RedHat Source RPM [v1.03 - old!]
  • Raw Source [v1.06 - newest]
ftpcheck v0.33
v0.33: Shifted to a more subtle anonymous email address to pass most anonftp checks - thanks to Tox Gunn for pointing this out!

v0.32: Fixed misclassification of "a.b.c" hostnames as class C IPs (Thanks, Jesper!)

v0.31: Patched up some dumb bugs and cleaned up the code a little bit (Thanks Shane!). Wow, over a thousand downloads now! Keep mailing back those source patches!

v0.3: ftpcheck is now an order of magnitude more efficient, thanks to improvements from Shane Kerr and some new timeout code that I wrote. Also now under the GPL.

ftpcheck scans hosts and networks for FTP and anonymous FTP archives. It was written as a security analysis tool. I wouldn't recommend running it on subnets you don't own, unless you like getting calls from sysadmins at very early hours in the morning.

requires perl modules

relaycheck v0.3
the parent of ftpcheck, relaycheck scans a network for SMTP hosts that permit "relaying" of email. These servers are vulnerable because a 3rd party could come in and use the mail server to relay mail through the server for the purpose of spamming folks. Please email the administrators of any machines you find with this tool and tell them to turn off SMTP forwarding!

requires perl modules

sweep v0.4
mach-sweep was written back when Snap was running their Mach M3 contest back in august of 1998. The basic gist of the contest was that you had some small chance to win an instant prize every time you searched. So I wrote a perl script to "search" snap for the same term over and over again, and see if "congratulations!" was anywhere in the returned page. If so, it would save out the HTML page to disk and notify me. Otherwise, it would just print a period and search again. I ran it on about seven machines in parallel -- let's just say I have enough slinkies, books, and video cameras to keep myself entertained for a while. ;)

requires perl modules





required perl modules

  • perl [for unix | for Win32 | for mac]
  • libnet
  • MD5
  • MIME::Base64
  • HTML::Parser
  • libwww

Historical Context

This collection represents software development work from the late 1990s and early 2000s, covering areas from network security analysis to multimedia processing and peer-to-peer protocols. Many of these tools were created to solve specific problems or explore emerging technologies of the time.

Historical Archive: These projects are preserved for their historical and educational value. Some tools may reference deprecated technologies or systems that are no longer active.