Some Projects I Have Worked On:


CSoundExperiments

Some fun csound experiments.

Fun csound experiments, mostly just score generating programs written in C.


PythonGraphGame

A simple game draft involving mathematical graphs.

A simple game involving graphs. The game is pretty rough but as a proof of concept it works fine.


PixMapFun

C programs dealing with graphics and ppm files.

PixMapFun is a collection of programs for dealing with graphics in terms of ppm files. A lot of it comes from working through assorted sections of Fundamentals of Computer Graphics by Shirley et al.


Text Reminder Site

A simple text reminder/bulletin website.

This website was mostly just a modification of a project from the book ‘Flask By Example’


Location Database Website

A website which can store and display bits of geographic information.

Like the text reminder website this project was mostly just a modificaion of code from the book ‘Flask By Example’


NDraw

A program for drawing simple pictures in the terminal.

NDraw is a program written in C using ncurses for making simple terminal art.


QuizWFIO

A simeple program for taking, creating and storing quizzes at the command line.

QuizWFIO was written in C it can load and store and administer simple quizzes and features some hacky encryption for keeping the solutions unknown.


DB_CMD

A gui and command line database program.

DB_CMD was written in C++, it features a scriptable command line interface as well as a gui interface which was written in tcl/tk.


AtEater

A very primitive pacman style terminal game engine.

AtEater was written in C++ the goal of the game is to eat all of the ‘@’ symbols on the map without getting eaten by the monsters (‘M’). The game engine is written for the command line, users can create their own maps with a text editor and the included map building program.


RandChord

A gui program for generating random musical chord progressions.

RandChord was written in C++ and uses tcl/tk for its gui. The program can also be run at the command line if the user chooses.


QuickMenu

A configurable gui menu launcher program.

QuickMenu was written when I first started using dwm a minimal window manager with no gui launcher menu of its own. QuickMenu was written in tcl/tk.


QuickHelp

QuickHelp is a simple documentation system.

QuickHelp was written for tracking configuration information for my computer. I was bouncing around between gentoo and archlinux at the time and needed a good way to track some of the more idiosyncratic bits and pieces of how I had configured my computer. It is written in a mix of bash and python.


FirefoxSearch

No not the real firefox search. This program is just a wrapper around the real thing.

This was written to add a convenient entry for searching the internet from QuickMenu. It is just a primitive tcl/tk wrapper around the command line interface to firefox.


LineDrawing

An ncurses library for drawing shapes and functions.

LineDrawing is a set of functions for drawing some basic shapes and graphs at the commandline.


Containers

Some basic container classes for C++.

This was written before I knew much about data structures but after I had learned some of the basics of OOP. It features various implementations of Stacks, Linked Lists etc.


exprTest

A propositional logic prover.

exprTest is a propositional logic prover which uses a proof procedure derived from the one in the book ‘Introduction To Logic’ by Harry Gensler. There is also a set of translation tools and testing tools for quickly building and testing different logical arguments. The random argument generator is written in lisp the prover and translator itself are written in C++. The prover can receive input in three modes but the most efficient is from the translator tool which generate a heredoc that runs against the main prover.


exprTestWindows

A port of the above prover to windows.

This is a port of the exprtest prover to windows. The main changes are that instead of generating a heredoc the windows version generates a batch script format.


TTPSim

TTPSim is a simulator for a simple 8 bit architecture that I encountered when I took my first assembly language class.

TTP stands for “Taks Toy Processor” it is a processor design by Tak Auyeung the professor for my Introduction To Assembly Language class. The processor he designed was created in logisim, I wrote this to be able to run a version of his processor on The command line.


TTPSimWin

TTPSimWin is a port of the above ttpsim project to windows.

I mainly created this for two reasons, so I could play around with ttpsim on windows and so other people could do so as well.


TTPAsm

TTPAsm is an assembler for the TTP.

I created the TTPAsm because the original assembler for the TTP was written as a google docs spreadsheet. This works well for the purpose of being cross platform and easily accesible to the class, but it is not the greatest for scripting purposes or for using other general purpose text processing utilities like m4. I was also very interested in writing my own assembler tool for the experience of having written one.


TTPAsmWin

A port of the TTPAsm program to windows.

After completing the TTPSim port to windows I realized I would need an assembler on windows so I created a port of the TTPAsm program to windows.


ArgBuilder

Some scripts for generating random logical formulas.

The output formulas can be plaintext at the command line or as pdfs. The program can be run as a tcl/tk gui or command line program.


exprGraph

A propositional tableau prover.

I created this prover after learning the tableau method from Graham Priests ‘An Introduction to Nonclassical Logic’.


MathMisc

A catchall repo for mathematical experiments.

I created this repository for cataloging various mathematical/programming experiments.


htmlFilters

Some simple html filtering scripts.

The main one is a filter for grabbing and displaying all the youtube links on a website. I use this one for getting all the youtube music links from some websites when I don’t actually care to read the content posted.


TempPlotScripts

Some CPU temperature logging and plotting scripts for linux.

These aren’t really meant to be used by anybody but myself. I wrote them for fun while trouble shooting an old laptop of mine that was constantly overheating and shutting off. I used gnuplot for this one because I was unaware of any better solutions at the time.


IPFilterScripts

Some simple for poking around with tcpdump.

I wrote these for fun to play around and learn more about matplotlib, regexes and tcpdump.


Rexpr

Rexpr is static site for building randomized expressions using a user specified grammar.

Rexpr was written to get some practice with javascript and as a proof of concept for a website that can generate mathematical practice problems, it is essentially an extension of the argbuilder scripts I had previously created.


exprWeb

An experimental web interface to the exprGraph and exprTest provers.

exprWeb was created to allow people to use my provers from the web as well as to scratch an itch to develop a website with python and flask again.


RandSvg

A program which randomly draws an svg image to the current window every five seconds.

This was built on top of engine for rexpr after I realized I could also randomly generate svg tags. The result is actually fairly aesthetically pleasineasing.