To reviewer: my project submission is a little different from most. I set myself some challenges over and above what was required, so you will see a lot of stuff like generator functions and bit masking that isn't required by the project, but that I wanted to try out or apply to the problem. Instead of card elements embedded in the HTML, I decided to generate them on the fly while the page loaded. I wanted to reduce the number of globals, so I use a local storage object to store values used in the program. In a couple of cases, I use generator functions to implement static variables. I wanted to investigate the use of base64 images embedded in the JS, and also in the html. I wanted to learn about canvas by taking a single large image and breaking it up into the card fronts. I wanted to see if I could create a simple test harness to simulate clicks. I put in the beginnings of accessibility support, but it is far from complete, though I do have an audio context that would be used for feedbak to visually impaired. I added a test mode triggered by clicking on the Udacity icon. I played around with animation using CSS and I implemented a bit masked truth table to keep track of faceup cards. Finally, I implemented a very simple state machine using a dispatch key to index into a map where each key corresponds to processing code.
It's not finished. I could spend another week cleaning up spaces, applying the programming format standards and condensing and rewriting code, but I have run out of time. If I don't turn this in now, I will be so far behind that I never finish. I'm on quarter break from school for two more weeks and my ability to work on the projects will be severely hampered.
Thanks, Alan