Development
I have been programming in various languages for over twelve years. In that time, I've written just about every class of software around. I've developed Web, server, client, embedded, mobile, and desktop applications.
Writing software is my passion. Whether I've been employed in security, system administration, Web design, or even as ski resort worker; I've been making software constantly since I was 15 years old.
Languages
Here is a laundry list of the languages I have learned and used over the years. I currently prefer Python and Java for software, and Powershell for Windows shell scripting, but I still regularly use most of these languages.
Web Languages and Frameworks
Server Side
- Django
- ASP
- PHP
- SQL
Client Side
- HTML/XHTML
- CSS
- JavaScript
- XML
- XSLT
Application Languages
- Python
- Java
- Visual Basic
- Visual Basic .NET
- C and C++
Shell Scripting
- Powershell
- bash/sh
- Windows Scripting Host
Projects
Much more than just language, development is all about the design, requirements gathering, and implementation of projects. These are some projects I've enjoyed working on over the years.
Open Source Projects
- Formunculous [Creator/Maintainer]
- A Python/Django based application for creating and managing Web forms using a simple drag and drop based interface. It also has great form submission review facilities that include CSV exports and graphs of form responses.
- Mac-Ro-Knife [Creator/Maintainer]
- Java based desktop application SSH macro tool. This software is used for running simple command line based macros on multiple hosts running SSH. It provides remote scripting to multiple platforms via SSH (i.e. change your password on 20 systems automatically).
- Nicholas Studt's Django Blog [Contributor]
- This project is a yet another simple blog. I added a remote blog API for use in offline blog editors such as Windows Live Writer.
- AudioM [Creator/Maintainer]
- Java based desktop utility. AudioM takes audio play list formats (M3U,PLS,PLA/PLP) and copies the files to a new location with a play list matching the new location. It also does play list format conversion. Great for managing disk based MP3 players (Especially the Sansa).
- Powershell Framework [Creator/Maintainer]
- The Powershell Framework makes running Powershell scripts simple. It provides a means of interactively or non-interactively running scripts in a simple manner. It provides a form based interface to browse and run scripts, and a clean framework for writing multithreaded GUI runnable scripts.
Closed Source Projects
In addition to public open source software contributions, I have worked as developer on several projects as a contractor and full time employee. Here are some of the highlights:
- E-commerce system for managing event registration fees.
- Major update to a Web application for the planning, approval, and recording of milestones towards getting a graduate degree.
- Custom content management suites, calendars, and product gallery applications for clients.
- Web based Project management application for multi-team time and task tracking.
- Custom e-commerce applications for various clients.
- Human resources Web application for managing applicants, interviews, notes, etc. Primarily targeted at recruiters and head hunters.
- Desktop application for team based logging of current activities by each team member.
- LynxOS embedded software research project for automated content scrubbing for aircraft control systems and classified information handling systems.
- Early Cisco VoIP desk phone application prototyping.
Related Coursework
- C++ Program Design and Algorithms
- Data Structures
- Database Systems
- Computing Languages
- Artificial Intelligence
- Analysis of Algorithms
- Theory of Computation
- Compiler Design and Implementation
- SANS Web Application Security
