Me: so, funny story; I just got sick of the name orderofpegasus.sdes. drafted an email to your team for a DNS request for order.sdes instead. on a hunch, I pinged it first and it resolved. realized I had asked for it like a year ago and forgot about it. So thank you, insightful me of yesteryear
Matt: as you can see, we clean up DNS requests regularly
- Type: Website
- Language: PHP
- Framework: None
- Authentication: Integrated
- Data Source: SQL Database
Purpose
This project was largely self-initiated. As with many problems at UCF, my task arose from a former student assistant’s bad and incomplete code. Rather than tip-toe around it and poke and prod as necessary, I decided to take up a sprint to rewrite the database front-end and accompanying student-facing site.
Method
As we had yet to adopt a PHP framework, the CRUD for each table was developed by hand, with a few helper functions that matched httpPost values with SQL table columns for create and edit pushes.
Highlights
For the public event submission form, I was able to discover an API to UCF’s campus map, consume it as JSON, parse out the list of buildings, and make that a required choice for the event. Once the event was approved and posted, public users could then discover the location of the event through a link to the campus map.
As each event was displayable as both a master event and a single session of a master event, I was able to integrate each with a “Post to Facebook” and “Post to Twitter” button, allowing a social layer of connection to the program’s social networking presences.
Finally, we developed some icons that allowed event categories to be associated with a color, allowing users to quickly determine differences.
Takeaway
Sometimes, throwing away the remnants of a bad idea and starting fresh is the best way to go, despite the time commitment. The resulting application has survived with no changes for years now–a testament to the customer’s satisfaction with the user experience.
How I Roll At Work
SUBJECT
GAP RSVP from Why is this website still on the internetBODY
Name: Why is this website still on the internet
Title: it hasn’t been updated in like a year
Dept: please someone let IT know if they can remove it
Office Phone: thank
Cell Phone: you
Email: gilbert.thudpucker@ucf.edu
Alexander Springs, March 1961

Alexander Springs, 1961 on Flickr. Given to me by my grandma.
IB Yearbook (2004)
A compilation of the video segments from my last IB Yearbook (2004). Refactored the senior segment a little, but otherwise untouched. Figured I’d upload it before I lost the assets to do this in the future.
Foreign Key Jungle

(Taken with instagram)
Ice Slide!
The sad part is that I was the only one from my team to slide =(
SDES IT: Training Application

- Type: Website
- Language: C#
- Framework: MVC 2
- Authentication: Integrated
- Data Source: SQL Database
Purpose
Our training situation at SDES IT developed into a full-time training position. Once hired, this trainer requested a way to have users discover classes, sign up for said classes, and be sent reminders for said classes.
Method
For this application, I wanted to dip my toes in .NET MVC (then at version 2). The resulting app absorbed the existing PHP site (including videos, text copies, and links) and introduced a Windows-Auth-protected section that allowed users to sign up for available classes and fill out a profile (which would be pulled up on subsequent visits). After each submission, an iCal-formatted ICS file would be dispatched to their email address, allowing them to track their own class signups.
Highlights
The delineation of access levels is so painless in MVC, as each controller can easily be filtered to a certain Active Directory user or role/group. This allowed the app to cover public users, domain users, and administrators in one project with ease. Also, building an ICS file from scratch was exciting and highly effective.
Takeaway
While we were not quite prepared for the volatility the trainer position would exhibit over the next few years, the application ran into very few problems during its tenure as a class-signup solution. It is currently on hold for a redesign to match future needs.
DJ Mix: Petrichor
Download Set
petrichor (PET-ri-kuhr): The pleasant smell that accompanies the first rain after a dry spell.
Tracklist
- Martin Solveig & Dragonette – Hello (Mikro Housebrothers VIP Mix)
- Rihanna – S&M (Tony Sanger Mix)
- Lady Gaga – Born This Way (Bimbo Jones Club Mix)
- Kelis – Acapella (David Guetta Extended Mix)
- Example – Changed the Way You Kiss Me
- Ian Carey – Last Night (Extended Mix)
- Britney Spears – I Wanna Go (Oliver Extended Mix)
- David Guetta feat. Rihanna – Who’s that Chick (Fuck Me I’m Famous Mix)
- Jean Claude Ades – I Begin to Wonder 2008 (Felguk Remix)
- Benny Benassi – Cinema (Andrea DJ Mazza Mazzali Club Mix)
- Maroon 5 – Moves Like Jagger (Alex Becker Remix)
- Spencer & Hill & Nadia Ali – Believe It (Original Mix)
- Eric Prydz – 2Night (Johnny Muse Remix)
- Kaskade & Adam K feat. Sunsun – Raining (Extended Mix)
- Phonat – Ghetto Burnin’ (Mohito Remix)
- DJs from Mars – California Jump
- David Guetta feat. Taio Cruz & Ludacris – Little Bad Girl (Extended Mix)
- Calvin Harris – Feel So Close (Nero Remix)
FormProcessor Class (PHP)
- Type: Class
- Language: PHP
- Framework: None
Purpose
As I tackled more and more UCF sites during my tenure, I discovered that each individual “webmaster” had developed their own server-side implementation for sending emails of basic web form data. Rather than continue to work around their own code, I developed a PHP implementation that generically wrapped httpPost data into a simple email.
Method
The first implementation of FormProcessor was a simple PHP class that had public properties (e.g., to, cc, and subject), some private methods to check for dangerous code (like email header injection), and a public method to send the email. Over time, the public methods have become private in favor of mutator methods, new helper methods have been added (including file attachments, filestream attachments, a development mode, etc.), and any specific stored information has been migrated to a config.ini file.
Highlights of Implementation
As complicated as it was to implement an email attachment method without a standard library, it is exceedingly satisfying to use that method in seconds now. Also, finally working with PHP in an object-oriented manner is a breath of fresh air.
Takeaway
At this point, I kind of wish I’d known about the PEAR Mail package, but I’m fairly proud of the implementation; it’s made it effortless for our web content updaters and designers to implement fairly powerful email operations without needing to know much (if anything) about PHP. It continues to make PHP development and deployment speedy and predictable, and it has been integrated into the Template Engine I built to standardize our layouts.


