start-game: select for each of x, o: name variety: human computer-random computer-straightforward computer-strong "play until someone wins" option (default off) generate random cookie "fast mode option" (default off) submit button go to empty board empty-board: save names+varieties+emptyboard+emptyevents under cookie using HttpResponse.set_cookie immediate go to make-move make-move: get cookie via HttpRequest.COOKIES present board with moves so far get coordinates of next move, either from UI or computer player add the move to the board save new board state display new board state display a start-(new-)game link if someone has won, go to game-over if was computer player, and in fast mode, immediately go to make-move autosubmit like http://stackoverflow.com/questions/1452212/django-dropdown-auto-submit game-over: get cookie via HttpRequest.COOKIES display board state display who won this game display x-win, x-loss, cat counts (for this pairing on this IP) display a start-(new-)game link archive game in a log file if in "play until someone wins" if not in "fast "mode" wait a few seconds go to empty board (if someone wants to stop the loop, they can close the tab) summary: get all log file entries show summary, possibly allow drilling down into greater detail refresh every 30 seconds could conceivably make this server-side - IE, not in a browser, since it's mainly for debugging