Grayscale to Transparency with Photoshop
Five years ago, David Chess wrote a blog post that blew my December 13, 2010 mind. It is titled: ...
Core Data Migrations and Cave Monsters
Migrating the core data schema on an iOS app is like a monster in a cave. When I walk by, the mons...
FloMoJo - Convert Text to Flowchart
Yesterday I created a proof of concept site that converts text to a flow chart. See it at http://...
Understanding Generations Video
Understanding Generations is a video I made for MTM . The video is part of a much longer presenta...
Migrating an LLBLGen Project from 2.X to 3.X
Migrating a project from V2 to V3 LLBLGen project was a huge pain. Since I work in 30+ projects tha...
iOS Auto Renewing Subscriptions
Auto-renewing subscriptions in iOS are confusing. These are my notes on how the process works and ...
Setting up a Lets Encrypt Certificate on Heroku
Update (April 2017)
Heroku now has first-class support for Let's Encrypt so installing it ...
Outside Connections With Cassini (VS2010)
Cassini is the little baby version of IIS that is built into Visual Studio. It makes debugging won...
Draft Night - Draft Board Software
What is Draft Night?
Draft Night is fantasy football draft board software that allows people t...
Remote Connections with VS2010
From time to time, I find myself needing to connect to a debugging VS website from another mach...
Lenstoss Contact Lens iPhone App
See Lenstoss in the App Store
Lenstoss is another app I developed for an eye doctor. It reminds...
Objective-C String Formatting
String formatting isn't especially a strength in Objective-C. Actually, it's just plain bar...
Connecting to SQL Express Remotely
Setting up remote connections for SQL Express is brutal. Especially for a dope like me.
But I ...
Tiny Troops iPhone Game
At MTM we spend our Fridays working on creative projects that plunge us into new technologies. I...
Bendy Tree iOS Library
With a year of iOS development under my belt, I've got a decent code base that I copy from proj...
On - The New jQuery Event Handler
jQuery has a new method of wiring up events. It's called 'on'.
Superbowl Party Game iPad App
Three years ago, I built a website for a Superbowl watch party at my house. We invited about a doze...
Two days ago, Maria hits me with the old "Your website doesn't work on my computer" s...
HazardScout Safety Management
In 2014, I joined two friends to start a company called HazardScout . HazardScout is a safety m...
StringSmash - Compress JS Strings
you embed so...
Get Buzzam Radio, Free On The App Store
Download Buzzam Radio for free from the iTunes App Store
We finally went live on the App Store,...
Getting an iPhone UDID from Mobile Safari
Getting your app into beta tester's hands is a pain. Even with new services like Test F...
My blog gets a redesign every 18 months. There's no schedule, but that's about how long it ...
I've been working to automate Photoshop quite a bit lately. In September I wrote Automate Pho...
Sending & Receiving Email in CSharp
When I develop in C#, there are a lot of seemingly simple tasks that are incredibly hard to figure ...
Laser Tag!!! iPhone Game
See Laser Tag in the iPhone App Store
Play Laser Tag using your iPhone as the gun!
HOW IT WOR...
Why You Want It
Let's say a client wants to list your iphone apps on their webpage. Ye...
Inland Hills Church
The Inland Hills website was for a new church in California. It included multiple blogs, photo gal...
Weather Nerd for iPhone and iPad
I needed to touch up on iOS dev, so over the last year I've spent s...
Reading and Writing Text Files from Photoshop Scripts
My latest posted discussed showing a UI that had textareas, buttons, and more so users could i...
Automating Photoshop With C#
I recently dumped PhotoImpact and took the Photoshop learning curve plung... special thanks to the ...
Today's Weather for iPhone
See Today's Weather in the iPhone App Store
When you look at the weather forecast, what are...
Setup A GoDaddy SSL Certificate on Heroku
I'm using AppHarbor to host an ASP.NET site I built a few years ago. This year I s...
Photoshop Scripting - User Interface
Memorize Anything for iPhone & iPad
UPDATE (3/21/2012): Having issues with crashing? Version 1.3 released today & fixes crashes on...
Fantasy Footbal Draft Board for iPad
I've been through enough Fantasy Football drafts to know how painful the drafting process is. ...
Who's ready to have their mind blown? I wasn't, so when I saw Adobe's Photoshop A...
The Evolution of (My) Code
Ironically, only one of these does not actually work. But the tests pass...
Delayed Car Locks
How about a 30 second delay when you press lock?
Anonymous Types in Ruby
Anonymous Types in C#
Anonymous types are new in C# 3.5 and while they are easily abused, ...
Memory Card iPhone Game
My wife's sister has 4 kids that really enjoy iPhone games. Just for fun, we decided to make a...
Boss of Toss iPhone Game
Rejected from the App Store! :)
Boss of Toss is the latest, greatest new form of iPhone competit...
Wright's Family Market
Wright's Family Market is my grandfather's small grocery store chain in Norman, OK. Afte...
Recipes For Life: React Native
Shhhhh.... don't tell my mom, but I've built an iPhone / iPad app for her birthday.
OKDate - Dates for Objective-C
OKDate is an open source date library I just released for objective-c. If you've ever worked...
Native Regex vs. UIWebView Regex
My latest project has me doing A LOT of string manipulation which is a huge pain in objective-c. T...
Cocoa Bird Cocoa to Twitter API
Today I open sourced my Objective-c/Cocoa to Twitter open-source library under the title CocoaBird...
Weather Dashboard for iPad
Weather Dashboard tells you the weather exactly how you want it... by comparing yesterday to today....
Pocket Potato iPhone Game
Play while your phone is IN YOUR POCKET!
See Pocket Potato in the iPhone App Store
How To Setup NodeJS With Dokku on Digital Ocean
This is a walkthrough of setting up a NodeJS website on digital ocean droplet by Dokku 0.4.2. If y...
2016 Christmas Card
I think our Christmas Card was a little too subtle this year. See if you get it...
Christmas Card 2012
We got a golden-doodle this year named Sunny, so of course she's featured on our 2012 Christmas...
When I drive to Dallas, I wish that this existed. Maybe someday.
Buzzam Boulder Video
Buzzam is in continuous development while we do everything we can to get into TechStars Boulder. W...
Buzzam is a personalized radio station that combines your music and interests to build a custom, ac...
Chemical Alarm Clock
Waking up is hard to do. Someone should add an 8 hour coating to an energy pill.
Christmas Card 2011
Here's our 2011 Christmas Card. We went through a lot of versions, (some slightly inappropriat...
Core Data - Simplified
Every time I make an iOS app, I shy away from Core Data and end up storing data in a plist or sq...
MemorEYES for iPhone
See MemorEYES in the App Store
MemorEYES is an app I developed for an eye doctor. While you pla...
Commercial Brick is a website designed to display samples of brick for distributors and other cus...
Pocket Tap iPhone Game
Play while your phone is IN YOUR POCKET!
See Pocket Tap in the iPhone App Store
No one will ...
Christmas Card 2009
Here's our 2009 Christmas Card. Merry Christmas!
Love Tap iPhone app
See Love Tap in the iPhone App Store
Discover your love compatibility with someone in a tap!
LISP Game of Life
Conway's Game of Life is a zero-player game where you setup an initial configuration and...
Christmas Card 2008
Here's our 2008 Christmas Card. Merry Christmas!
The Kibera Project
The Kibera Project website was for a group from Canada who raise money for micro-loans for people i...
This realtor website included a calendar of weekly house showings, searchable MLS listings, a mortg...
Whack a Champ iPhone Game
For Christmas I made my nephews a game featuring them and our whole family. We all call my dad ...
What Can MTM Create For You Video
From time to time, I get to make a video for MTM . We make a lot of really impressive trophies, i...
Rounded Corners With CSS
The Old Way
Apparently I've been doing rounded corners like a three-year-old from 1993. L...
GeeVee - Google Voice iPhone App
Rejected from the App Store! :)
GeeVee Phone Lite is the fastest, easiest way to place a call ...
I took my wife skydiving yesterday (Feb 24) for Valentine's day. Here are some pics and ...
MTM Awards lets you completely customize all kinds of different awards. As you upload your logos...
At MTM we have an innovative process for encouraging communication throughout the company and it&...
MTM ECards is a website I built that makes it super easy to recognize your fellow co-worker (or a...
Hopper for House
Hopper for House is a political website for David Hopper. David ran for the Oklahoma House Distric...
Recipes for Life
Recipes for Life is a website for a college girl's bible study where they spend part of the t...
I have about 200 DVDs and about 40 seasons of TV shows. And I never watch any of t...
Sign Up Sheet for iPad
See Sign Up Sheet in the iPad App Store
At MTM , we needed a good way to sign people up for in...
Kindle Notes & Apps
When I got my Kindle, I immediately signed up to be a Kindle developer but wasn't accepted. Si...
Heads Up Dashboards
To keep a high level view of how manufacturing processes are going at MTM , we designed these head...