The latest version of this résumé can be viewed online at: http://www.mzzt.net/resume.html
NOTE: I am not currently seeking employment. This résumé will be updated and this notice removed if and when I start looking for employment opportunities again.

Contact Information:

Dan Bugglin

407 Third St.

Hainesport, NJ, 08036

Home: (609) 261-3870

Cell: (609) 367-4877

E-mail: bugglind@mzzt.net

Website: http://www.mzzt.net/

Objectives:

Previous Employment:

Education:

Computer Proficiency:

Code Portfolio:

Please view my résumé online to download these samples.

Name Language OS / Requirements Installer? Source Code? Download
AppCompactor VB.NET .NET Framework 2.0 (Windows) Self-Extracting EXE On Request Download
I made this tool to automate the kind of things I do when I prepare a program for my USB thumb drive. This tool uses the 7-zip and UPX programs to recompress archives and compress binary files. I chose to use the console programs rather than try to implement libraries as I had had trouble trying to learn how to use the 7-zip library in the past... and the existing upx library only wrapped the core algorithms and not the full upx functionality I needed.
  • A wizard structure fits the program nicely and is easy to use.
  • Provides tweaking options for 7-zip and UPX. Defaults are based on my own personal experience and balance compression ratios with speed.
  • Implements third-party code designed to allow access to shell objects from .NET. This allows me to display files and folders as Windows Explorer would without needing to use the built-in browsing dialogs.
  • Backs up the program files and gives users an opportunity to test them, as well as restore backups if the program no longer works (some programs do not react well to being compressed).
  • Displays before/after program sizes so you can see how much space you will save on your thumb drive.
Calc C Windows/Linux No Yes Download
My final project for one of my CS classes. Type in simple equations and they will be parsed and calculated. Code compiles on both Windows and Linux (gcc -lmath), Windows binary included.
  • Use of stacks and linked list structures.
  • Parses strings for numbers and operators. Groups operation order based on parenthesis and standard mathematical order of operations.
  • Code is clean and well commented.
Clipboard Catcher VB.NET .NET Framework 2.0 (Windows) No On Request Download
Clipboard monitor program which stores everything that ends up on the clipboard, allowing you to preview text and thumbnails of images. Also allows you to directly modify several common types of clipboard content, and even mix content types in ways not usually done in Windows.
  • Custom rendering of listbox items.
  • Creating thumbnails of images.
  • Using third-party code to hook into the clipboard chain.
  • Viewing, modifying, inserting, and deleting clipboard data types.
  • Storing user preferences in the registry.
  • Frameless window that spawns a frame on mouseover for sizing and moving.
ComicFlex PHP/MySQL/HTML5/CSS/JavaScript Apache 2.2.x/PHP 5.2.0/MySQL No On Request View Sample Site
A PHP script that uses a MySQL database backend to power a webcomic management system. Supports multiple user accounts with some simple permissions, flexible comic data, posting news/comics in the future (IE delayed posting), flexible template support, and it is secure against SQL injection.
  • Uses and creates PHP classes.
  • Uses JavaScript, AJAX, and "fake" JavaScript classes.
  • Supports the most recent versions all major browsers, with the same consistent appearance and behavior.
  • Utilizes MySQL prepare statements to protect against SQL injection.
  • Validates as HTML5 and CSS 2.1
  • Template front end more-or-less separate from backend, makes code maintenance easier and makes user changes to the template much easier.
  • AJAX-powered admin interface makes it easy to manage content.
  • AJAX interface requires authentication for every server request or action to prevent misuse by unauthorized users. This is handled transparently through JavaScript.
  • Quick-and-dirty search implemented using MySQL FULLTEXT boolean search.
  • Optional use of Apache's mod_rewrite to show end-user "pretty" urls (ex: /archive/ instead of /?page=archive).
  • Includes an installer script to set up the database and config file.
  • Supports tags on strips and news, full search support, and optional annonymous tagging support.
  • Password hashes use SHA1 with static and dynamic salts.
ControlTest C++ Windows No Yes Download
A C++ DLL for mIRC, an IRC client with a scripting language. Its functionality can be expanded upon with DLLs. Mine tries to wrap a subset of the Win32 API relating to windows and dialog boxes and provide it to mIRC scripts. Please note this project was never finished. To test a build, run mIRC\mirc.exe and on the command line type "/test test" to run a test script which uses the built DLL. There is a bug which causes it to only work once per mIRC session.
  • DLL Exporting
  • Using the FreeImage libraries to transparently add support for many image formats.
  • Using C++ classes which mimic the .NET API layout to wrap parts of the C Win32 API.
  • Since mIRC scripts can only call functions in DLLs, these classes are then wrapped with function calls to make it possible for mIRC scripts to use them.
EasyScreenshot.NET VB.NET .NET Framework 2.0 (Windows) No On Request Download
There are a number of free screenshot programs available, however I wanted to make something customized specifically for me, although have it flexible enough so many people could find it useful.
  • Common interface is as simple as possible for ease-of-use.
  • One double-click desktop capture and FTP upload when configured properly.
  • Saves images to the clipboard, hard disk, and/or FTP site.
  • Captures the desktop, or a single window with a click, or the user can draw a rectangle to specify the capture area.
  • Has a delay timer feature.
  • Saves in the most common web file formats, and it can also be set to use JPEG or PNG based on which produces the smallest file.
  • Portable. Keeps configuration in an XML file, program works off of a flash drive.
  • Uses the Windows API to allow this .NET program to interact with non-.NET windows.
Game-topia C++ Windows No Yes Download
A game I was making at one point, but I never really coded much of the game part. What IS here is a pseudo-80x25 text-mode interface, and a more-or-less complete GUI system for it.
  • Using the Allegro libraries to handle DirectX transparently, while also supporting non-Windows platforms.
  • A 80x25 text-mode emulator which uses custom palettes and character sets.
  • A fully-functional GUI system with a wide variety of implemented controls, including tabs, buttons, comboboxes, checkboxes, groups, etc.
  • Console (CTRL+`) which logs error messages and misc. info.
Generic Game Launcher VB.NET .NET Framework 2.0 (Windows) Self-Extracting EXE On Request Download
A program designed around a plugin architecture allowing it to potentially be used as a launching point for any game or game modification with a plugin written for it.
  • Parsing RSS feeds off of the Internet using System.NET and System.XML.
  • Registry storage allowing user preferences and overriding of game titles/descriptions/etc.
  • Multi-threading allowing UI to be responsive even while loading data.
  • Flexible plugin system which allows plugins to be enabled or disabled at runtime, custom UI tab pages to be defined for specific game or game modification properties, and custom actions to be taken to download and possible automatically install game modifications.
Google Chrome Portable NSIS Windows Yes Yes Website
I constructed a launcher for Google Chrome which aims to allow the program to be run off of a flash drive while leaving no trace on the local system, allowing for it to be run on any computer from the flash drive.
  • Is an official PortableApps.com application.
  • The installer does not bundle Google Chrome, but will dynamically download, extract, and compress it at runtime.
  • The launcher can copy the user's profile onto a local disk for increased performance, and copy it back to the flash drive when the browser is closed. Since this operation is slow, the launcher can detect when a shutdown is in progress so the user cannot re-launch the browser in a half-broken state.
  • It reads, manipulates, and backs up the registry in order for Google Chrome Portable to "just work" as well as to keep a locally installed Google Chrome from breaking. In some cases both a local and portable Chrome can be run at the same time.
LZ77/Huffman C Windows/Linux No Yes Download
Implementation of both the LZ77 and Huffman compression algorithms in C, which can be used to compress/decompress individual files.
  • Manipulating data on a bit level (bit.c).
  • Guessing, based on file extension, which compression algorithm will be better.
  • Code is clean and well commented.
PathEnv VB.NET .NET Framework 2.0 (Windows) No On Request Download
A simple dialog which allows for easy manipulation of the PATH environment variable.
  • Allows for both global and user-specific paths.
  • Paths can be typed in or selected from a convenient tree in the same dialog.
  • When applying, all newly-run apps will use the new paths, no need to reboot!
Résumé XHTML/CSS/JavaScript Platform Independent No Yes View Source
This résumé is itself a code sample.
  • Renders almost identically in all the major browsers.
  • Special CSS rules are used to turn the web-version into a print-friendly version when printed.
  • Sample JavaScript-enhanced table organizes and hides data until it is shown with a click.
  • JavaScript enhances the browsing experience but it is not required; when JavaScript is disabled the page falls back to a static view which removes JavaScript-only links and functionality but still allows access to the same content.
  • This document validates as XHTML 1.1.
  • This document validates as CSS3.
SoundSchemeManager VB.NET .NET Framework 2.0 (Windows) No On Request Download
Allows for management of system sounds, sound schemes, and even allows for exporting of sound schemes into .REG files.
  • Loads and plays sound effects from the file browser for quick previewing.
  • Paths can be typed in or selected from a convenient tree in the same dialog.
  • The entire configuration can be easily backed up.
  • Emulates Windows' Sound dialog in showing the apps and their events.
Start - Extra VB.NET .NET Framework 2.0 (Windows) No On Request Download
Automates the process of filling in a blank entry in the right pane of XP's start menu.
  • Manipulating the registry entries required by the menu entry.
  • Using P/Invoke to load all the icons from a file.
  • Using System.VisualStyles to render an XP VisualStyle Start Menu element.
StreamCipherClient VB.NET .NET Framework 2.0 (Windows) No Yes Download
A simple implementation of symmetric encryption which works on standard .NET Streams. Sample UI allows testing on files and encrypted text files online.
  • Using Streams, and encryption on streams.
  • Harnessing the power of Streams to work with different data sources in the same way.