Graphic Design
IDE's & Software

If you plan on traveling the world, knowing multiple languages will only help in gaining a deeper understanding of the the places and cultures you visit. In the ever-changing tech industry, knowing many programming languages will also help facilitate your journey. That is one key aspect that I keep in mind to motivate me in learning new languages as I move onto new projects or work with new people.

Part of the joy of working on a new kind of project was the thrill of learning a new language. Each language has its quirks and annoyances, but they also have their advantages and signature features that set them apart from the rest. Below are some of my favorite programming languages, among other programs that I have used for various projects. These are in no particular order and are accompanied by a rating to show how familiar, confident, and/or experienced I am with each language.

To thousands of developers, including myself, programming is an art. It can be fun or it can be beautiful depending on what you actually decide to paint. One important aspect of painting that really changes the outcome of the piece is the canvas. The material can completely change the look and feel of the painting, changing how a user would interact or perceive the piece.

IDE's are the canvases of the digital world. In this day and age, developers are expected to understand the in's and out's of their canvas: Capabilities, features, layout, effectiveness, et cetera. Below are several IDE's and other development/publication software that I have used for various projects. These are in no particular order and are accompanied by a rating to show how familiar, confident, and/or experienced I am with each language.


Ore Programming Language

Ore is a loosely-typed, cross-platform, multiparadigm programming language designed around portability, simplicity and flexibility. It is inspired by languages like C#, PHP, Python, Basic, Bash, CoffeeScript, C and F#. Taking aspects of those languages and combines them together, it leaves out all of the unnecessary, headache-inducing fluff.

Programs that are written in Ore can be compiled and natively executed in Ore OS, which is a compact operating system that takes advantage of the large set of features that Ore offers. This operating system can be run within a Runtime Environment on several platforms including Windows machines and Android devices.

For a list of cool features that Ore offers, don't hesitate to check out the features section of the Language page!

Read More: Official Documentation

Skills: System Design System Architecture

Ore Runtime Environment

Ore OS is an operating system that runs Ore code natively. At this time, it is built into a Runtime Environment, but will eventually be ported to a UNIX kernal for a bootable version.

Currently, Ore OS is divided up among 4 modules with 4 more modules that are either planned or already in development, which bring more features. Current features of the operating system include a simple CLI, basic file manipulation, task scheduling, single-user mode with special privileges that are reserved for an elevated user-mode, multiprocessor support, and more.

Windows and Android both have working variations of Ore RE, and will be made available on the Download page as soon as they are publically released. These environments offer the ability to boot into Ore's CLI and use it as though you are running the operating system natively. This allows full use of Ore's modules and functions that you would normally have access to, so long as the system's administrative capabilities are not interfering. Simply type in some commands and go! Additionally, because Ore RE will be wrapped into executables, there will also be intents available, meaning that files can be opened with and sent over to Ore from Windows or Android.

Read More: Official Documentation

Skills: Operating Systems System Design Software Architecture System Architecture C# Windows Visual Studio Java Android Android Studio

Arduboy Manager PC - 2.25

The Arduboy Manager is a simple program created by Jonathan Holmes (crait) that allows you to quickly download and install games onto your Arduboy without any programming experience! Just run the program and it will automatically connect to my server and download games for you. Turn your Arduboy on and connect your Arduboy through USB and it should be automatically detected. From there, simply select the game you'd like to install and click Transfer Other features include serial screen mirroring, serial terminal, and alternate repository pulling.

Download: .ZIP

Download: Website

Skills: Serial Communication C# Arduboy Arduino Networking Visual Studio Windows

The Cockpit 2.1

The Cockpit is a retro-style game that pits a lone chicken against raging traffic. The player navigates the busy streets in order to reach the hen on the other side. This game also supports 2-players where the first player to reach the hen 6 times wins- But don't be fooled! This game isn't as easy as Frogger or Crossy Roads! Cars are insanely fast and frustratingly hard to predict. There are explosions all over the place and even cars crashing into each other!

The left player controls their green chicken using the standard arrow keys on the keyboard while the right player controls their orange chicken with WASD.

This game's retro look and playstyle was inspired by older games such as Frogger and Dig Dug. I made this for Windows in GM to perfectly fit my personal arcade machine's asthetics and theme.

Download: .EXE

Skills: Game Mechanics Pixel Art GM Windows

The Cockpit Arcade Machine

The Cockpit is an arcade cabinet created from the shell of an old Golden Tee cab. I created custom decals as well as inserted a converted CRT TV. The control deck was fabricated from scratch with new buttons/joysticks from Tornado Terrys.

The internal components have been replaced with a Windows PC that can emulate other consoles as well as play the custom game I've made of the same name.

So far, The Cockpit has been shown off at Texas Pinball Festival 2016 and has a scheduled appearance at the 2017 event.

Skills: Graphic Design Fabrication

Circuit Dude Arduboy - 2.0

Help Circuit Dude build an awesome invention by leading him through 50 unique levels, completing circuits and plugging in microchips. After all chips are inserted into their sockets, the exit will activate and you can advance to the next puzzle! What kind of secret invention is Circuit Dude building? Complete all of the levels to find out!

Download: .ARDUBOY

Download: .HEX

Source Code: .INO

Skills: C/C++ Arduboy Arduino Pixel Art

Chicken Launcher PS Vita - 1

Chicken Launcher is a fun lil' game I made for the Playstation Vita based off of Kitten Cannon where you shoot a chicken as far as you can. Try to hit springboards and TNT to give you a big boost, but watch out for spikes! Your high score is recorded and saved. If you think you get a big high score, Tweet me a pic!

Download: .ZIP

Skills: C/C++ PS Vita Graphic Design

Chicken Launcher Arduboy - 1.1

Chicken Launcher is a fun lil' game I made for the Playstation Vita and ported to the Arduboy based off of Kitten Cannon. Shoot a chicken as far as you can, trying to hit springboards to give you a boost, but watch out for spikes! Your high score is recorded and saved. If you think you get a big high score, Tweet me a pic!

Download: .HEX

Sketch Code: .INO

Skills: C/C++ Arduboy Arduino Pixel Art

Train Dodge 1.1

Who's brave enough to play chicken with a train? Stand on the track as multiple trains come at you full-speed... The closer they get to you before jumping off the tracks, the more points you'll rack up. (You'll also lose points for jumping off of the track too early.) Dodge as many as you can, but beware! If you don't jump off in time, you'll be hit!

Download: .HEX

Sketch Code: .INO

Skills: C/C++ Arduboy Arduino Pixel Art

Suit Shooter 2.0

Launch suits of cards at falling cards in order to create matches and score points. Watch out, though! Missing cards will hurt you! The cards start out falling slowly, but get faster as you score more points and regain health.

Download: .HEX

Sketch Code: .INO

Skills: C/C++ Arduboy Arduino Pixel Art

Arduboy Assistant 1.1

Arduboy Assistant is a program that allows you to manage an Arduboy's EEPROM as well as test several hardware and software components. You can view raw EEPROM data, back it up through the Arduino IDE's serial monitor, restore EEPROM data the same way, and even clear the entirety of the EEPROM data. Additionally, you can do a button test, LED test, sound test, serial test, and screen test.

Download: .HEX

Sketch Code: .INO

Skills: C/C++ Arduboy Arduino Serial Communication

LimeLight 1.0

LimeLight is a program designed as a Apple's Spotlight clone for Windows. You can set custom shortcuts, search Google, run other processes quickly from any other window.

Download: .ZIP

Skills: C# Windows

Image Regradiater

This is a program that I made in order to test a new image processing and masking technique that I created called regradiation. In order to use this program, you must input both a source image, and mask image. Both images will have all of their pixels sorted, retaining the location data for each pixel. The gradient mask's color data is swapped into the source image's data, and the pixels are sorted back to their original location, leaving very beautiful results. Images with very similarly-shaped curves tend to have the best results.

Regradiation can look very similar to pallet swapping, but it is actually a new technique. Results can vary greatly depending on the difference between two images' curves. If the curves are 1:1, regradiation is pallet swapping, however the more the curves mismatch, the greater the difference in application will be.

Note that when running the program, the images must both have the same amount of pixels. Usually, this means that the resolution of the two images must match exactly.

Download: .EXE

Skills: Image Processing C# Visual Studio Windows

TeleCommand Receiver 1.3.0

TeleCommand Receiver is a program for Windows PC's that will run automated tasks or commands whenever a user on a PS Vita or Android device sends it. The mobile device runs a mobile application, titled TeleCommand, which can send commands securely to the PC over the internet. Using the PC receiver program, you may set up to 50 custom commands and save them, or you can just use the default commands. It also features integrated media player control, such as iTunes and Windows Media Player.

Download: .EXE

Skills: C# TCP/IP Networking Visual Studio Windows

TeleCommand 1.3.0

TeleCommand is the mobile sister program that can be run on Playstation Mobile devices, such as the PS Vita. Commands and arguments can be sent to a user's computer throught the internet once their secret username is input and saved.

Because of the way that Playstation Mobile is developed, downloading and running this program would not be possible without authentication from Sony. Self-authentication is a grey area, so the file will not be publicly uploaded.

Skills: C# TCP/IP Networking PS Vita PSM Development Suite Android

TeleCommand Web Portal

This web portal was created to allow users to send commands to a user's computer running TeleCommand Receiver from anywhere with internet access on any device that can render basic web pages without the need to download the sister application. All TeleCommand features are available through this web portal.

Link: Web Application

Skills: PHP Networking Web

Thumbs Up Discounts WIP

Thumbs Up Discounts is a company that prints and sells discounts cards as fundraising material for schools and other organizations. The cards are good at many locations and expire around a year after purchase. On the back of each card, there is a unique ID number that each card-holder can register online.

I met with the owners to design them an online system to meet several of their needs. This included a front-end website with interactive map and user login all connected through a custom content management system that includes a database manager, and finally, an API that can be used to connect to both an iOS and Android application to pull any kind of information.

On the front-end, there is an interactive map that shows the locations of all of the vendors, a search function, and the ability to register or view a card online.

The database system that Thumbs Up Discounts used was built off of a basic SQL database, but I used this as another opportunity to implement the newest version of my proprietary database system called SealDB. New features such as searching algorithms and large-scale data handleing was implemented. Additionally, SQL-to-SealDB scripts had to be created to convert the existing database.

On the back-end CMS, has the ability to quickly change several settings, create, update, or delete vendor data, manage massive amounts of unique card numbers, generate more numbers to be used when printing new cards, manage vendor categories, upload contracts or logos, and change geolocation data using geocaching that can all be instantly reflected on the website or in-app.

Link: Website (Note that some pages are still having content written for them.)

Skills: PHP SQL Javascript CSS HTML Google Maps Bootstrap SealDB Web System Architecture

Thumbs Up Discounts Android

Thumbs Up Discounts is a company that prints and sells discounts cards as fundraising material for schools and other organizations. The cards are good at many locations and expire around a year after purchase. On the back of each card, there is a unique ID number that each card-holder can register online.

I designed this application to allow quickly search or browse for local discounts that the card offers. This application can be used in place of the discount card at these locations and as such, is locked only to card-holders. The user can unlock this app by registering their card through the app or website. Additionally, users can simply use a free trial option that expires after a given amount of time determined by the administrator's settings in the back-end system.

Download: .APK

Skills: Java PHP Google Maps Web Networking Android

Radio UTD Station Player Android

Radio UTD is UT Dallas's local student-run radio station. Now-a-days, it streams online 24/7. Using this app, you can harness a high-quality stream directly to your Android device.

Other small features include broadcasting metadata for Bluetooth devices and even a listing of Radio UTD's weekly shows.

If you are interested in listening to Radio UTD, I highly suggest checking out their updated website: www.radioutd.com

Download: .APK

Skills: Java GitHub Android Android Studio

PokéFace 2.0

This is a watchface that I created for the Pebble smartwatch using C/C++ with the CloudPebble IDE. It is a recreation of the popular Pokémon Blue/Red title screen for the Game Boy. Like the original title screen, it features monsters being swapped out by sliding out and replacements sliding in. Due to the limitations of the Pebble smartwatch, I had to recreate a lot of sprites in a monochrome format while still retaining their original artstyle. Pokémon featured in this watchface are: Arbok, Arcanine, Blastoise, Bulbasaur, Charizard, Charmander, Gyarados, Hitmonlee, Kedabra, MewTwo, Nidoqueen, Squirtle, and Venasaur.

Download: .PBW

Skills: C/C++ Pebble Pixel Art CloudPebble IDE

SocketClient Web Browser

Another project for a class, SocketClient is a text-based web browser. It's built in Java, but does not realy on HttpUrlConnection. Instead, it relies solely on socket communication, directly with the website. This means that several modern webservers may see the connection as outdated and reject the request, so when using this, keep that in mind.

To access a URL with this class in a commandline interface, use: java SocketClient [url] where the [url] parameter is the URL that you would like to view. This URL may be formatted in to include ports, subdomains, authority, and an extended path.

When viewing a page, the <p> tags are extracted and formatted for viewing, as are linebreaks. Images are noted on their own line while their contents are saved locally into the current working directory.

Download: .CLASS

Skills: Java Networking

Pebble Transporter Android

This is a simple Android application that opens the camera on a device and actively searches for a QR code. (The user can optionally upload an image they have on their phone.) The program takes the QR code, downloads the Pebble application or watchface from the internet, and passes the file directly to the Pebble Android application.

This application was designed for developers who use the CloudPebble IDE to compile their code. It cuts out the steps of having to compile the application locally, connect their device through USB, use a compatible Android file browser to find the specific file, then launch with the Pebble application intent.

Download: .APK

Skills: MIT App Inventor 2 Pebble CloudPebble IDE Image Processing Networking Android

Colliding Universes Card Creator

Another project that I have had in development is a card game called Colliding Universes. Instead of being designed to be very serious and realy mostly on strategy and high-level meta-play, this game is based around fun and quirky mechanics. As a whole, colliding Universes is very close to being finished.

To keep a record of the 600 unique cards, I created a file system that holds information for each card, including metadata, image data, stats, and other specifics. This program takes all of that data and generates mock-ups of what the cards would look like, then generates high-quality PNG images that can be printed and played with.

This program will not be publically released, until after Colliding Universes is released from development.

Skills: C# File Architecture Metadata Visual Studio

Colliding Universes

The Colliding Universes project is nearly complete with 600 unique cards as well as a website that offers plenty of features to play the game: A listing of all of the cards that can be searched, an online deck builder, the rules, and an online breakdown of card statistics.

The project is very near completion and is set for a 2017 deployment and potentially a limited-run publishing.

Website: View All Cards

Skills: PHP jQuery Bootstrap JavaScript Web Development Visual Studio

Korean Portal & Quiz

I created this project to help keep notes when studying the Korean language. It can be difficult to learn for many people who do not practice every day. I decided to make a web application that I could use to keep my notes and to study daily. As I progressed and learned more, I wanted a way to easily add more sections and more words to study in a fun quiz/game section.

This site was created from scratch, only being built off of Bootstrap for theming purposes. In order to store words and data online, I created a prototype to a unique database system called SealDB that I eventually developed into using on a larger-scale system for a few clients, including Thumbs Up Discounts. This prototype database system still works, but writing permissions has been disabled so the public can't write data to it.

Link: Web Application

Skills: jQuery Javascript Bootstrap SealDB Web

Personal Portfolio

If you're on my website, looking at my portfolio, then odds are, you don't really need to read this entry. If you're interested in what it took to make this page, then go on ahead!

This page is a single page, based off of Bootstrap 3.3.6 for responsive theming, and uses jQuery and Javascript to handle delivering different sections and data. There's a lot of basic custom work put into this. Go ahead and look at the source code to see for yourself!

Skills: Javascript jQuery Bootstrap CSS HTML Web

FanMate 1.0

FanMate is a remake of a popular program for the ol' Palm Pilot, originally created by PalmMate, with the same name. The software is a quirky joke program that is described as "an application to keep you virtually cool... as the hot days of summer approach..." My recreation for the Playstation Portable is virtually identical.

This program has almost no functionality, but it's one of the first applications I created, so it deserves a special little place in my heart.

If you have a Sony PSP on 3.XX custom firmware, you should be able to download this .PBP and run it. (Extract the contents of the .ZIP file into X:/PSP/GAME/) If you are using a newer version, you'll have to pick up a self-signer. Have fun and stay cool!

Download: .ZIP

Skills: C/C++ Pixel Art PSP

The Curse of Konacotl

"You are one of the few survivors of a plane crash in the middle of a mysterious jungle. While searching for safety, you stumble upon a forgotten temple containing an ancient idol. Unbeknownst to you, the idol is protected by a curse that drives you and your party to madness and jealousy. To win this game, be the last to succumb to the dangers of the jungle and the attacks of your crazed companions."

This board game was developed by myself and a few friends for a class. We designed the gameplay mechanics, running through countless iterations creating different prototypes in order to find the perfect balance in gameplay. We created digital assets for the board, spinner, cards, and character pieces, then fabricated each part. The result is a fun and exciting game to play with a group of friends. (2-4 Players)

Rules: .PDF

Skills: Graphic Design Game Mechanics Physical Prototyping Fabrication

Royal Tee

Royal Tee is a game where 2 or 4 players compete in a 12x12 board in order to claim the most amount of spaces on the board. The game ends when all spaces have been claimed. Mechanically, the game could be discribed as a mix between Tron and Dots, with multiple players.

This board game was developed by myself and a few friends for a class. While designing the gameplay mechanics, I programmed several different quick prototypes. This was especially helpful since the game could have used a large, uncertain quantity of playing pieces. Once the mechanics were balanced and finalized, I created digital assets for the board and helped frabicate the rest of the game. The result is a quick, yet strategic, game to play with a group of friends. (2/4 Players)

Rules: .PDF

Skills: C# Graphic Design Game Mechanics Rapid/Digital Prototyping Physical Prototyping Fabrication

Midnight Stash

Midnight Stash is a game designed for 3 to 5 players, where one player controls a number of bullies while the other players control their own trickortreater. The trickortreaters move around the neighborhood collecting as much candy as they can before all of the lights go out; all the while bullies attempt to take away their hardearned sweets. This game consists of 24 rounds, which are represented by each quarter-hour until midnight.

This board game was developed by myself and a few friends for a class. Because this game had so many variables that needed to be kept in consideration, I programmed a few iterations of digital prototypes. Once the mechanics were balanced and finalized, I created digital assets for the board, including creating the skeuomorphic design, then helped frabicate the rest of the game. The result is a quick, yet strategic, game to play with a group of friends. (2/4 Players)

Rules: .PDF

Skills: C# Graphic Design Game Mechanics Rapid/Digital Prototyping Physical Prototyping Fabrication

● ● ● ● ● C#

● ● ● ● ○ C/C++

● ● ● ● ○ Java

● ● ● ● ● Python

● ● ● ● ○ Swift

● ● ● ● ● PHP

● ● ● ● ● Javascript

● ● ● ● ● jQuery

● ● ● ○ ○ Angular

● ● ● ● ● CSS

● ● ● ● ● HTML

● ● ● ○ ○ CoffeeScript

● ● ○ ○ ○ Ext JS

● ● ● ○ ○ SQL

● ● ● ○ ○ Actionscript

● ● ● ● ○ MATLAB

● ● ● ● ○ LUA

● ● ● ○ ○ GM

● ● ● ○ ○ HB++

● ● ● ● ● Ore

● ● ● ● ● Visual Studio

● ● ● ● ● Adobe Photoshop

● ● ● Adobe Flash

● ● ● ● PyCharm

● ● ● ● Android Studio/IntelliJ

● ● ● ● ○ Eclipse

● ● ○ ○ ○ Tableau

● ● ● ○ ○ Xcode

● ● ● ● ○ Arduino IDE

● ● ● ○ ○ MATLAB

● ● ● ● ● Microsoft Word

● ● ● ● ● Microsoft Excel

● ● ● ● ● Microsoft PowerPoint

● ● ● ● ● Sublime Text

● ● ● ● ● Notepad++

● ● ● ● ○ Playstation Mobile Suite

● ● ● ○ ○ Unity

● ● ● ● ○ Adobe Experience Manager (AEM)

● ● ● ○ ○ Google Sketch-Up

● ● ● ● ● GameMaker: Studio

● ● ● ● ○ MIT App Inventor 2

● ● ● ● ● Audacity

● ● ● ● ● Bootstrap

● ● ● ○ ○ GitHub

● ● ● ● ● Wordpress

● ● ● ● ● phpBB

● ● ● ● ○ Google Maps API

● ● ● ● ○ Yellow Pages API

● ● ● ● ○ Yahoo Locals API

● ● ● ● ○ Yelp API

● ● ● ● ● CloudPebble IDE