Portfolio
Geographic Information Systems
Date: Fall 2013
I had the urge one Sunday morning to make a sample GIS app.
Initial Hackathon: GIS Demo
PHP Javascript CSS MySQL jQuery Bootstrap SQL Knockout Leaflet
Google Code Jam
Date: Spring 2013
Inspired by a post on the CprE Facebook group, I joined a few of my classmates in competing in the 2013 Google Code Jam. You can see my source below... check out the C++ closures if you're interested in crazy language syntax.
C C++ Git GitHub Lambda Functions/Closures in C++ (C++11) Google Code Jam
Chaddington Website
Date: Fall 2012
Do you like the site you see? The designer in me made it! Most everything, from the gentle rolling hills, to the favicon (I drew an ink sketch in statistics class my sophomore year), to the input validation on the contact page. Feel free to look through the list of websites I've created entirely on my own:
- District Website
- Ames TubaChristmas
- Midwest Notes
- Chapter Website
- Sample Photo Comparison
- SecureTracs
- Chaddington.com
PHP Javascript HTML CSS jQuery Bootstrap
Bingo Spreadsheet
Date: During Lunch - Fall 2012
In less than 20 minutes at the lunch room table with some of my band friends, I created a VBA script that would create a large number of BINGO cards. I've posted the spreadsheet here in case anyone out there wants to use it, for free! Enter any number of words, phrases, or just regular numbers on the first sheet. Then press Alt+F8 and run the script. It'll create a lot of new BINGO cards using the template sheet. Then just print the whole workbook in a few clicks.
Download the Microsoft Excel Spreadsheet (Macros must be enabled)
VBA Microsoft Office
MEMOCODE 2012 - Shepard: A Fast Exact Match Short Read Aligner
Date: Spring 2012
The 2012 design competition for the Methods and Models of CoDesign (MEMOCODE) conference was to align short read sequences of DNA with a reference genome as fast as possible. I designed and developed the 1st place solution, Shepard, with a team of other students as a part of my CprE 584 course. Shepard is on the order of hundreds of thousands of times faster than current software implementations such as SOAP2 or Bowtie, and about 60 times faster than GPU implementations such as SOAP3. In short, Shepard was designed as a hardware pipeline that would perform hash table lookups very quickly, on the order of 600 million lookups per second.
Slides from MEMOCODE 2012 Presentation
SVN Repositories:
http://svn.chaddington.com/jones
http://svn.chaddington.com/hc1
C. Nelson, K. Townsend, B S. Rao, P. Jones and J. Zambreno, "Shepard: A Fast Exact Match Short Read Aligner", Proceedings of the International Conference on Formal Methods and Models for Codesign (MEMOCODE), July, 2012.
C C++ Verilog Subversion Convey HC-1 Illustrator
SecureTracs - Refillable Chemical Tank Tracking Web App
Date: Winter Break 2011
In order to comply with new EPA regulations, chemical refillers must meet bookkeeping requirements for the inspection, filling, and movement of their refillable tanks. I worked with a client to develop a webapp.
Check out the demo site: Demo Site
PHP Javascript HTML CSS MySQL Subversion CakePHP jQuery DataTables Tablesorter Bootstrap Sublime Text Dreamweaver Browser Stack JSFiddle modern.ie
Band Banquet Slideshow - Video Editing
Date: Fall 2011, Fall 2010
As chair of my chapter's Publications Committee (~12 people), I was tasked to create a 30 minute slideshow consisting of pictures of the ISU marching band, senior photos, and 11 minutes of humorous skits. Special Effects included a mock Warner Brothers intro, day to night conversion, using motion tracking and the warp stabilizer, and auto tuning vocals with Celemony's Melodyne software.
Here's an example of a skit I edited that was a part of the 2010 Slideshow: Dinkle Spice - YouTube
Premiere Celemony's Melodyne After Effects Audition iMovie
Word Grid Cheats
Date: Fall 2011
I developed an iPhone app that quickly finds every possible word play in a game of Scrabble, Lexulous, or Words With Friends. I also wrote a DAWG (directed acyclic word graph) generator in Objective-C. I licensed the source code under NDA and helped support another developer with integration of the code into his App. Some customer feedback I received included: "Chad you're awesome! :)", "Your code looks very organized."
Check it out on the App Store.
Objective-C iOS Subversion Xcode Interface Builder OCunit Xcode
3D Snake
Date: Fall 2010
As a final project for CprE 557 (Computer Graphics), I created a game of 3D Snake. The game's levels are configurable using bitmap image files.
Download the C++ Source Code
C++ Subversion OpenGL GLUT
Facemash Knockoff
Date: Fall 2010
Inspired by the movie The Social Network, I set out to create a website that compares photos and uses a chess rating algorithm to rank the pictures. I succeeded, finished well within a day, and even had time to animate the images using javascript.
Check it out: Demo Website
PHP HTML CSS MySQL jQuery
Mobile Development
Date: Summer-Fall 2010
Aside from developing an entire course for iPhone development, I also practiced what I taught. I have a series of small applications on the AppStore and Android Marketplace operated under my own LLC.
Objective-C Java iOS Android Git Subversion
Farm World
Date: Summer 2010
Curious about Facebook's API, I decided to start creating an agriculture simulation game. Although not complete, the Flash game displays a marked improvement in my AS3 skills and was a creative outlet for my inner artist.
Visit the game here or on Facebook.
PHP AS3 MySQL Subversion Illustrator Flash SQL FlashDevelop
Senior Design (iPhone)
Date: Fall 2009 - Spring 2010
Our Senior Design project was to develop a new lab component to the Embedded Systems II curriculum at ISU. Our group taught ourselves Objective C, developed five sample applications, based a series of lab projects around these applications, and taught a group of 24 sample students the labs in March to assess the feasibility and gather feedback. The experimental lab session was very positive, and the lab component will be a 1 credit addition to the Embedded Systems II course (CprE 388) starting in the Fall of 2010.
My major area of responsibility is a sample application called FindMe. I taught myself how to use Apple's various frameworks (CoreLocation, MapKit, Push Notification), developed a working application, and wrote documentation and a lab write up. As a graduate student in the 2010-2011 school year, I was the Teaching Assistant for the course.
The course website for CprE 388 can be located here: http://class.ece.iastate.edu/cpre388/
Website
Design Report
Project Plan
Objective-C iOS
Computational Geometry
Date: Spring 2010
I took a graduate level course in Computational Geometry my senior year. I thought it would be useful to create some educational tools to visualize some of the algorithms we learned in class.
SVN source code repository: http://svn.chaddington.com/geometry
Visit the Computational Geometry Page
PHP AS3 Subversion FlashDevelop
DTMF Project
Date: Spring 2010
As part of my class in Advanced C/C++ Programming (ComS 229), we were required to implement a project that could create, splice, and modify DTMF tones (those sounds you here when you press buttons on the old land line phones).
SVN source code repository: http://svn.chaddington.com/dtmf
C C++ Subversion make
Zombie Apocalypse
Date: Fall 2009
Zombie Apocalypse was a semester long group project for ComS 309 in the fall of 2009. The multi-player game is written in ActionScript 3 and utilizes a Java chat server with an SQLite database connection (this server is offline, so the multiplayer and high scores features of the game are disabled). Our team consisted of myself, Tas Fox, Cole Anagnost, and Tim Flannigan.
SVN source code repository: http://www.chaddington.com/svn/zombie
Java SQLite Subversion Tweenlite Amazon S3 SQL
Real-Time Systems Simulator
Date: Fall 2009
This was my final project for my Real Time Systems class in the fall of 2009. I used FlashDevelop for the project and now host the project on Google Code.
SVN source code repository: https://energy-aware-scheduling-simulator.googlecode.com/svn/trunk/
AS3 Subversion FlashDevelop
Token Ring
Date: Spring 2009
I created a simulation of a Token Ring was a lab final for a networking class. The ring is composed of a number of computers (nodes) that use C socket connections to pass messages around in a circle.
Download the Source Code
C make
Scrabble & Sudoku Solver
Date: Fall 2007, Fall 2008
During my sophomore year, my honors friends and I would play "Scrabulous": an online version of Scrabble that eventually changed its name to Lexulous for naming rights reasons. I was bored during dead week, so in one sitting I wrote a VBA script that listed all possible word plays for the game. Needless to say, this was very beneficial when used against my friends in online Scrabble. A year later, I converted the app into a C# Windows Form app after I had taught myself C# at work.
C# Scrabble Solver
VBA Scrabble Solver
VBA Sudoku Solver
C# VBA Microsoft Office
Ruskie Raiders
Date: Fall 2008
What better way to learn a new language than to create a game in the console? Become captain of a US warship and lob ASCII bombs at USSR warboats, German submaries, and old-fashioned French ships of the line in a politically incorrect war game. I wrote the game after I had just learned C# and used the console as a graphics engine.
Download the C# Source Code
C# irrKlang
Pipelined Processor
Date: Spring 2008
My sophomore year, I created a 5 stage MIPS processor as a lab final for an assembly level programming and design class.
VHDL
Embedded Programming
Date: Fall 2007
A group lab final for an embedded systems course. Our robot used sonar to navigate through a series of pins, approached a target (to within a few centimeters), then spun in circles and 'danced' to some Rick Astley music on a piezoelectric speaker. The processor used was an Atmel ATmega128.
Years later, as a graduate student, I was a lab TA and eventually wound up lecturing and teaching the entire summer session two years in a row.
C Atmel ATmega128 AVR Studio