Code
This page of my web site is a repository for all the programming that I have done for school and in personal projects. Programming students please be aware that many instructors use turnitin.com to ensure students are submitting their own work and penalties for academic misconduct can be severe, so please do your own work. I will not be held responsible for your plagiarism, so don't do it.
A note of thanks!
I would like to extend an extra warm thank you to Dr. Chung - Chih Li, Assistant Professor, and Dr. Thomas Portegys, former Assistant Professor at Illinois State University, and Vic Broquard and Katherine Salch, CompSci Instructors at Illinois Central College. Dr Portegys and Mr. Broquard are simply the most incredible programming instructors I have ever had lecture me and I hope some day to be as good at teaching programming as they are. Dr. Chung - Chih Li, taught me how to think about problems differently by force feeding me SML. No he didn't really force feed us but it probably seemed like it at the time with all the complaining and whining we did. I learned that imperative languages are not always the best approach. Katherine taught me the power of the C++ Standard Template Library and how to create my own template classes. I am sure this was not an easy undertaking as I rebelled at the very thought of templates, but thanks to her I have discovered that I simply cannot live without them now!
Java Code
The following code is all written in Java
SecureMe - A secure password manager program using Swing and the JCE. SecureMe uses 3DES symmetric key encryption to store your logon and password information securely. This zip archive contains the executable Jar file as well as all the source code.
C++ Code
The following code is all written in C++.
UberList - A generic doubly linked list template class. It is absolutely beautiful! This class allows you to create doubly linked lists of integers, doubles, strings, uberfractions or whatever you want! You name it and you don't have to change the code a bit! Amazing!
UberQueue - A generic queue template class. It is derived from UberList! How kewl is that? A queue is a FIFO, aka a first-in-first-out buffer, think of it like a checkout line at the grocery store. This class allows you to create queues of any type you want. It will blow you away!
UberStack - A generic stack template class. Also derived from Uberlist! Can you believe it? OMG! Stacks pwn you and this stack is the kewlest of all because I wrote it. A stack is a LIFO, aka a last-in-first-out buffer, think of it like a bag where the last thing you put in it is the first thing to come out. This class allows you to create any type of stack that you desire.
UberArray - A generic growable array template class. Now you can create arrays of anything and you can add and remove items to your arrays quickly and easily without having to worry about overflowing your array. Array size is only limited by the amount of memory in the computer.
OpenGL Wireframe Robot - This archive contains the code to create a wireframe robot under OpenGL that can be controlled using the keyboard. The space bar switches between the head, torso, upper arms, lower arms, thighs and calves. Use arrow keys to transform and translate the active body part. The active body part is shown in red. Press ESC to end the program. This program requires that OpenGL and GLUT be installed prior to compilation. This code will compile and run under both Windows 2000/XP/Vista and Linux. *Compiler not included* Click here to download the precompiled Wireframe Robot program for Windows.
OpenGL Rosette - This archive contains the code to create an odd sided Rosette under OpenGL. This program takes a single command line argument being the number of sides the Rosette should have. This number should be odd and greater than 1. This program requires that both OpenGL and GLUT be installed prior to compilation. This code will compile and run under both Windows 2000/XP/Vista and Linux. *Compiler not included* Rosette is a command line program. Once you have extracted it into a directory you need to open a command prompt and navigate to the directory where Rosette was extracted and then type Rosette <n> where <n> is an odd number greater than 1. Once you have done that press enter and see the <n> sided Rosette. For best results <n> should be between 15 and 39. Click here to download the precompiled Rosette program for Windows.
OpenGL Snowglobe - This archive contains the code to create a virtual interactive 3D snowglobe with swirling and twirling snowflakes around a snowman. All this happens while "Frosty the Snowman" plays in the background. Press the spacebar to "shake" the globe, Press m to mute the song, Press v to change the view, and Press q to quit the program. This program requires that OpenGL and GLUT be installed prior to compilation. The FMOD sound system files required for the song to play are included in the archive. This code will compile and run under both Windows 2000/XP/Vista and Linux. *Compiler not included* Click here to download the precompiled SnowGlobe program for Windows.
