I started programming in QBASIC around age 13, and started learning HTML, Java, C and Visual Basic in high school. At home I taught myself the Win32 API and Flash (version 3 at the time). While in the military I learned ColdFusion and SQL, and then taught myself PHP and ASP. It's not easy staying on top of all the latest languages and technologies, but that's also part of what makes programming fun and challenging. I've programmed mobile applications for iPhone and Blackberry, and developed Flash for websites, touchscreens, multi-touch interfaces, museum exhibits, online games, eLearning courses and many other projects. I've also incorporated hardware such as relays, RFID readers, fingerprint scanners, light sensors and more.
Each year IDEAS puts together a new birthday card for all of their clients. For 2010, I had already been playing around with a physics engine called box2d, so I suggested a game which made use of that. Within a few days after some brainstorming, Gift Stacker was up and running. The goal is to stack your presents as high as possible, without letting them tip over. At the end of each game, the player sees a line which marks the highest they've stacked so far (along with a bar for the all-time top score), which makes the game very addicting. This was created in Actionscript 3 for Flash Player 10 using FlashDevelop and the Flash IDE.
While I was attending Full Sail University in Winter Park, FL between 2005 and 2006, I re-learned lots of Flash, and made my first game using Actionscript 2 called Fish Killah. It features multiple levels, various goals (kill 10 fish, find the exit, kill 3 frogs, etc.) and lots of different weapons like machine-guns, spread fire, homing missiles and lasers. It also features flash blending modes, which were brand new at the time (when Flash 8 came out). All artwork, programming and even music were created by me.
When Flash 9 and ActionScript3 came out, I was scrambling to learn as much as possible. I took part in (and won) an online competition on Adobe Flash Evangelist Lee Brimelow's site The Flash Blog, to see who could make the coolest example. It was humbling, and a great learning experience. read more...
For 2009, IDEAS created their first game-based Holiday Card. We knew it had to be addictive, and easy to play without a lot of instruction. Our art director, Millo Aldea, designed all of the artwork and I programmed the gameplay. The finished game was called "Snow Cannon," and featured a high-score list and even cheat codes (which disqualified you from saving a high score if you used any). The card was a huge hit, and a lot of fun to make. I used the Flash IDE and FlashDevelop to create this in Actionscript 3.
HipHopProduction.com is a personal website that I have been running since 2003. It originally started out as a place to host music and lyrics for online competitions. Since then, thanks to constant updates and smart use of SEO, it has evolved into a top search engine result on google, yahoo, bing and other engines, aside from being a valuable resource for a large community of music producers. The site runs off a highly customized WordPress theme, which I also integrated into a custom Simple Machines Forum theme. I commissioned my good friends Hope Krokidas and Andy Koconis of Main Sail Design to come up with the artwork, while I got to play the role of creative director and programmer. After a few months of hard work, revisions and long nights of coding in php, mysql, html and css, I'm very pleased with the result - which is a seamless integration of wordpress and a third-party forum, which loads in all major browsers.
Another project for a client at IDEAS, this is an interactive children's game on KidsGetAPlan.com, which teaches them what types of things to pack in case of an emergency. They must pack a total of 15 acceptable items, and 5 of those items must be required, denoted by a star. The player finds items by clicking on cabinets and dragging items into their supply kit box. After the box is full, their time is submitted to a high-score list and a page is created with all of their items to print out. The artwork was designed by Millo Aldea and Sergio Mendez, and I programmed it in Actionscript 3 using the Flash IDE and FlashDevelop.
Originally created as a personal tool for finding new music to sample, I eventually wrapped my code in some nice graphics and posted it for public use. Dubbed "SampleDig," this is a flash app that searches online music blogs and RSS feeds for links to files (mp3s, zips, etc.) and presents them in an easy format. It was created with Actionscript 2 using the Flash IDE.
One of my favorite projects to work on at IDEAS was for the National Museum of Crime & Punishment. In total, I created around 10 different interactive exhibits made with Flash for touchscreen interfaces. The exhibits ranged from action games like "Bomb Squad" (pictured above), trivia games, interactive videos, simulators, and even one exhibit created using a combination of Flash and Director which made use of a fingerprint scanner.
There were multiple trivia games created for the museum, and among them my favorite was called "What's My Crime?" The user is presented with an image of a well-known celebrity, along with the options like DUI, Assault and Battery, Drugs and Lewd Conduct. It runs off of an external XML file which holds all of the trivia questions, answers and images so that it can be easily updated to include recent events.
Hacker: When Silent Criminals Attack is a guided simulator, which explains various methods of cyber criminals like brute-force attacks, keylogging and phishing.
Illuminopoly is a board game inspired by a Finnish board game called "Afrikan tähti (the star of Africa). It's currently a work in progress, as creating the actual concept for a fun board game is a large undertaking. However, all of the artwork and most of the complex programming is already done. It was originally made with Actionscript 2, but has since been ported to Actionscript 3, along with a custom pathfinding class using Dijkstra's algorithm. In fact, the custom class I wrote for pathfinding can be used for just about any type of board game, since it runs off an XML file. All graphics were made with Photoshop, Illustrator and within the Flash IDE, which was also used for programming along with FlashDevelop.
One of the most ambitious, and important jobs I've had the pleasure of developing at IDEAS, FloridaEvacuates.com is Florida residents one source of evacuation shelter information on the web at home and on the phone. The purpose of the website is to inform residents of nearby shelter openings as they become available in the event of an emergency along with basic shelter preparation information along with links to numerous other resources.
I worked closely with the Florida Department of Emergency Management and Red Cross, and integrated a long list of government requirements and standards. The final result were two websites - one with a dynamic map and another website made just for mobile phones. I also designed and programmed mobile applications for both the iPhone and Blackberry. For the websites, I programmed everything in PHP, HTML, CSS, Javascript and mySQL. The map technology used included Microsoft MapPoint (Bing Maps), MapQuest, Yahoo Maps and Google Maps.
I have been bouncing between wordpress, joomla and expression engine for the past couple years trying to figure out a decent way to integrate a streaming audio player into my forums, without altering the database, or intruding on SMF at all.
Anyways, long story short, I ditched all the “bridges” and just made a non-intrusive package (well, started to make it at least) that feeds data into flash using a series of php functions, that connect directly to the smf database.
I’ve put together a practical example of using this class here:
It will load a given topic (in this case, each drop-down item is associated with a topic that has lots of replies with attachments), search that topic for mp3 attachments, and add them to the list. Then by clicking on any of the names in the list, that user’s mp3 will begin to stream.
The functions that I’ve got working so far are getNews, getMembers, getMemberGroups, getPollEntries, getPoll, getBoards, getBoardCategories, getBoardModerators, getMemberInfo, validateMember, and getTopicAttachments.
Read on for the source code and a functional example. read more...
The very first eCard I made for IDEAS, and also one of my all-time favorites. It featured 31 different people (almost everyone at IDEAS at the time) singing 8 different lines from "Jingle Bells." The receiver of the card could then place heads on a timeline to hear almost endless variations. It was created with with Actionscript 2 using the Flash IDE.
At IDEAS, we created a series of children's books for the Florida Department of Emergency Management. After huge demand for the printed books, our solution was to recreate all of the books into a digital format using Adobe Flash, and posted on a public website for anyone to download and enjoy for free. I was in charge of organizing all of the data on the website, along with the full website architecture and all programming (HTML, PHP, CSS, Javascript, mySQL, Flash).
Another project at IDEAS, where my art director worked with me to create a design which could be easily updated by the client. This took lots of preproduction and creative planning in both the design and programming stages. After the artwork was created, I edited all of the image assets and content, so that HTML and CSS templates could be created. The final website was created using WordPress to manage content, along with custom HTML, CSS, Javascript, PHP and Flash (Actionscript) assets.
In addition to my coworkers at IDEAS producing an animation broadast on 60 Minutes, I implemented a new website design along with additional media elements to help Energetics Technologies tell their story to the world. The design and content of the website was provided for me, and I took the role of organizing the information into meaningful categories and producing the entire site using WordPress and lots of custom HTML, PHP, CSS, Javascript and mySQL queries.
The Head Chefs are a revolutionary new line of children’s cooking utensils by Fiesta Products. At IDEAS, the client asked us to create a suite of tools to be used at their tradeshow that would assist them with buyer relations, media relations, and brand support for their upcoming product launch. I was in charge of developing and creating the website, along with a store locator, flash games, and custom tracking software. The art was provided to me by my art director and then implemented using HTML, CSS, Javascript, PHP, Flash and mySQL.
Another IDEAS client, C-iT was conceived by a physician with a fascination for cartooning and direct personal experience of the effectiveness of key-word association tools as an aid to learning scientific concepts. The website artwork and overall layout was created by my art director, with the programming and implementation left up to me. I created the website using HTML, CSS, Javascript, PHP, mySQL and Flash.