Michael T. Smith

My earliest memory of a video game was in the mid 70’s.  There was a pinball arcade in the mall and right out front they had a table top version of Space Wars. As a 9 year old with a short supply of quarters, I only managed to play that game a few times, but I was hooked.  I spent many many hours in arcades in the late 70’s and early 80’s.  Games like Space Duel, Joust, Galaga and others sparked my passion for video games.  And movies like Star Wars and Tron sparked by passion for film.  I wanted to know how video games were made and how films were made.  But my only resource in middle america was the public library.

Michael T. Smith

In 1978 I was 11 years old.  I didn’t own a computer or even have access to one.  It was the brink of the personal computer revolution started by Tandy, Commodore and Atari.  I went to the local public library and checked out a book on The Basic Programming Language.  I actually learned basic by reading that book in a car on the way from Kansas to Missouri.  By High School I was spending every day after school in the computer lab coding on the Apple ][ or the Commodore Pet.  And by 1987 I was at CES showing SCAD, a drafting application that I had developed for Xetec, Inc.

Time Traveler

In 1990 I stepped in to a time machine and traveled forward through time 20 years.  When I stepped out it was 2010.  While the world raced forward it seemed like only a moment for me.

I’m a C coder at heart.  In the late 80’s I was a coder.  I went right from graduating High School to working as a software developer.  But in 1990 I decided to follow a different passion: Film.  For about 20 years I worked on that passion.  I had a successful career in Film and Television, mostly as an Editor, but also as a Visual Effects Supervisor, and Producer.  Then in 2010 I decided to pursue my passion for coding and video games.  The problem was however, that I sort of missed 20 years of advancements in software development.  I still knew C like it was 1987, but I didn’t know anything about Object Oriented code, MVC patterns, or polymorphism.  And I have to admit that with every fiber in my being I resist against those ideas.  I’m very old school.  After stepping out of the time machine I learned OpenGL in a weekend.  But Objective-C?  That took a little longer to grasp.

Still, in January 2010 Apple announced the iPad and on April 3 when it was released, so was my game Big Bad Sudoku Book.  It was written in Objective-C and OpenGL ES 1.0.  By April 23rd it hit #1 on the iPad charts as the top downloaded app.  We had about 10,000 (free) downloads that day.  And on April 30th we hit $433 in daily revenue.  Today Sudoku Book has been downloaded over a million times.

Rough Waters

I’m simply not one of those over the top app success stories.  In 2010 I quit my day job in television to focus on my app business full time.  We did pretty good that year.  2011 wasn’t bad either.  Apple featured my apps almost constantly in 2011.  2012 was a little rougher.  When Sudoku Book version 3 was released things started getting harder.  It wasn’t received very well and revenue dropped considerably.  In 2013 we brought in about half of what we did in 2012.  And in 2014 we did about half of what we did in 2013.  I’ve made a lot of mistakes, but somehow I stay hopeful about the future.  I also have several projects in development.

The app business isn’t what it used to be.  It feels strange saying that about an industry that’s only a few years old.  But it’s true.  It’s extremely competitive, with millions of apps in the app store.  It’s very difficult to get any traction or exposure on apps these days.  There’s just too much noise.  But I do have an ace in my sleeve: Big Bad Sudoku Book continues to bring in consistent revenue.  Not outstanding numbers, but it keeps me alive.  There’s something magical about the app id of an app who’s held the number one spot.  Not many apps have that legacy.  But still it won’t last and it can’t sustain me.

Solo Indie Dev, Game Engines, and Why the Blog

Being a solo indie developer isn’t easy.  There’s a lot of pressure to make something happen, and a lot of distractions to keep me from making things happen. I also suffer from a lack of peers.  I’m solo.  When I’m trying to figure out how to do some complex vector matrix math thing my only friend is Stack Overflow, and sometimes he’s a crappy friend.  I’ve spent the last few years learning OpenGL ES 2 and writing my own game engine.  And I think I’ve accomplished some pretty cool things for a mobile platform.  But it’s taking too long to get product out there.  Not to mention that I need to expand and create apps for other platforms.  So first of January (2015) I decided to try something different.  I started learning Unity and porting over my (in progress) Big Bad Sudoku Book version 4.  Of course then at GDC Unreal became a possibility as well so I’m looking at that.

So why this blog?  I’ve had blogs before and often eventually found them to be a total waste of time.  Who am I writing to? and who am I trying to impress?  One approach has been to write just for me and not care about who does or doesn’t read it.  And I think that’s actually a positive way to blog.  So you won’t find page counters on my blog.  I probably won’t even install analytics.  And I’ll probably disable comments.  If you want to comment use twitter.

The main reason I started this blog was to try something new.  My goal here will be to be transparent.  To put myself out there warts and all.  To share the struggle and hopefully some victories.  To share techniques, and even code.  Another reason is that I think there’s a hole.  When I google “Unity vs Unreal” or “Unity vs UE4 for iOS” or “for mobile” I get sales rhetoric.  There might be a hundred thousand how to videos for Unity, but yet somehow the stuff I want to do is super hard to find.  So when I do find it I’ll stick it here.