Project #1: RELEASE

Who Goes First?

“Before starting any game, you need to answer the burning question: who goes first? Use this app to cut through the bickering, the bribery, and the brouhaha. It doesn’t care who is youngest, who shouts loudest, or who won last. Turn it on, touch the screen, and leave the hard decisions to us.”
Who Goes First?
Save yourself the trouble of deciding who goes first, and leave that determination to the experts.

(touch screen highly recommended)

Windows 8 Store

Google Play


Direct downloads (.ZIP files):
OSX (untested)
Linux 64-bit, Linux 32-bit (both untested)

(Thanks and appreciation to Matthew Moore for the mechanic design, wordsmithing the descriptions, and constant invaluable support.)

Project #1: Complete! Mostly!

Who Goes First is complete! On-time, all major features are in, I feel there’s a pretty good end-to-end story to at least publish to the website here. After showing it to the Principle Quality Analyst (i.e. wife), I should improve the info text explaining how to dumb thing works and some of the other texts before publishing it out to any marketplaces.

In the coming week I’ll run through a post-mortem on Project #1 before diving into Project #2. For now, and not that this is particularly interesting, but for posterity here is what the time log, task list, and future work lists ended up looking like:

Time Log

Who Goes First Time Log

Task Lists

Who Goes First Task List

Who Goes First Future Work


Project #1: Eighty-Twenty

The last 20% of a project takes 80% of the effort. In the case of project #1, I have completed 19 hours with 5 hours remaining leaving me at the last potential 20%. The effort necessary here is not technical or even availability driven, it simply hard to prioritize and just do. It is an 80% of a spiritual effort that must be conquered in order to get past what marathon runners call “The Wall.”

Twenty-four hours is hardly a marathon. Who Goes First has shown me that, no matter how small the project, the spiritual wall is there. It is the design.

Do we shelve the git repo and put it on proverbial shelf? NO! Do we start something new and come back to it…”later”. NO! We take our laptop to the motorcycle rally and after 400 miles a day of iron-butt riding we pile up back-support pillows on the hotel bed, open the IDE, and finish the damn thing by the end of the week. I write this here and now as a promise forged in electrons to myself and to belief in a world where sanity may prevail.


(7/28/2014) UPDATE: Success!

Project #1: Who Goes First? 12 Hour Update

The Who Goes First? project hit 12.5 hours a few days ago which means it is time for a status report! The primary mechanics and flow are all completed and I have even had a few chances to try it out on some board gaming friends of mine. They had some minor feedback but all-in-all it looks to be something that isn’t insulting to the world at large.

It might look a little strange on an upright monitor since it is designed to be flat on a table with people sitting all around it, but you get the gist. The two major items left are a start screen (at least abstractly speaking) and audio. After that, the whole thing feels aesthetic flat so I’ll move on to trying to add some depth with the background and possible the foreground’s visual assets.

Construct2, by the way, is great! I feel like I have only scratched the surface on how to properly work within the tool. I’m sure I’m not doing state management in a reasonable way, but I must doing it partially alright since I’m not hating life this far into using it.

Who Goes First Construct2 Screenshot

Lastly, I spent a little time exporting the project to HTML5, Window 8, and Windows Phone 8 without much trouble. The next stop will be Android, Amazon, and…iOS, which I only preface with ellipsis because there are a bazillion (okay, four) different ways to get a Construct2 project onto Apple products. Also, not having an Apple product makes evaluating them difficult.

Next update should (hopefully) be a release!

Project #1: Who Goes First?

I have spent the last couple weeks on the first Hello, Program project and thought it was time for a status update. In preparing to implement a project, I currently go through five steps in planning:

  • Definition – Document what is my application trying to accomplish and, equally important, what is it not trying to accomplish.
  • Previous work – Someone has already done what you are trying to do. Consider contributing to an existing project if something already comes close.
  • Design & mockups – Choose a theme, both visually and functionally, then open up a paint program to get an idea of what the thing might look like.
  • Implementation tasks – My task list is less about understanding what needs to be done and more about managing my time. Being able to visualize how much work is left does wonders for keeping me from spending an hour doing something that probably doesn’t really matter in the end.
  • Future work – This is my parking lot for what to extend and possible next-steps. This lets me write these types of things down and get back to what I’m supposed to be focusing on.

Here they are for project #1: Who Goes First?.


The first project idea comes straight from my close friend and talented game designer, Matthew Moore. The pitch is to put a touch device (tablet/phone) in the middle of a table before a board game. Everyone touches the tablet and the application does some fancy randomization animation and picks who goes first. That’s it!


Previous Work

For this project I did searches for “who goes first”, “pick player”, and “random select”. I searched the web, Google Play, Windows Stores, and the iOS marketplaces and found five or six applications that try to accomplish the same thing, all of them ranging from tolerable to terrible. No where to go but up!

Designs and Mockups

For games and the entertainment applications, I find it insanely useful to define a theme and make sure everything you do can be related back to that theme. For Who Goes First, I chose a game show theme. I put together a few mockups to see if what I was thinking would translate to the screen.

Who Goes First prompt mockup

Who Goes First selection screen

Who Goes First reset screen

I also include explicitly deciding on the tools and platforms as part of design to keep myself from jumping around in toolsets just because its fun to play with those things. For this project, I decided to use Construct2 for development and target HTML5, Windows 8, and whatever else I can convince it to export to (i.e. iOS, Android, …Blackberry? Really?).


Taking a page from agile development practices, I don’t go too far beyond a list in notepad or OneNote.  Here is what my Who Goes First task list looks like today:

Future Work

I have always found keeping the future work list invaluable. Again, I can write it down somewhere and then get back to what I should be doing.


You can see from the task list that I’m almost halfway through my implementation and each one seems to be taking an average of 1-2 hours. I should be able to have a usable something soon and I’ll see if I can figure out how to post HTML5 here.