Postmortem - mbohl/microgames GitHub Wiki
What Went Right
Application Vision/Metaphor
As described on the wiki home page, the initial concept of a turn-based board game engine was easy enough to understand by both team members. Based of the simple premise, it was easy to add additional features that would be useful to the players without creating too much bloat.
Lots of games to pick from
There were many games to pick inspiration, from the extremely complex "Shining" (more on that below) to the very simple TicTakToe.
What Went Wrong
Scope
While an interesting challenge, "The Shining" proved to be much more complex than expected. Not only could the Torrence family win, but so could the Overlook Hotel, or, both could loose. For example, if Danny dies, the Overlook wins, if Danny escapes with Hallorann, the family wins, however, if the furnace blows up, both sides loose. In addition to game mechanics, the addition of email and chat based notifications, while attractive, were also not core to the games themselves.
Skilset and Team Size
While two people can make a great team, it may not make the best experience. Neither of the team members have UI skills which kept the interface to be very rough. Additionally, while one of the team members used to code quite a bit, he's no longer as efficient as he once was (you can guess who). That essentially broke the team up into the document writer, and a developer. Having one or two more members to the team would have helped round it out
Lessons Learned
Think Iteratively, Develop Iteratively
Its easy to get excited about possibilities, but its better to start small and work up. Our initial design should have been the one we ended up implementing - sign in, play TicTacToe, sign out. That work should have been done in a spike, and from there, we should have focused on either the features or additional game types. Not only would the application have benefited from more iterations, but so would the game mechanism itself. As implemented, we hardcoded the TicLogic game where we should have spent more time abstracting game types and mechanisms.