Project 3: Classic Arcade Game Clone
Oject Oriented JavaScript
This was a nice course from a real expert but it was also an ad. I wish Udacity had made their own course. This type teaching breeds a sense of familiarity only, not understanding. It needs exercises and testing. Get the Intro to Github team on this instead!
On the plus side, he really knows his stuff and I learned a lot. It did have to watch the course 3 times, appropriately spaced. Once making notes, once typing notes and once following along with the code. Thankfully I could do this slowly and at my own pace.
I did have to work that bit harder by devising my own set of questions and answers for learning, and I would feel very let down by this if I was paying for a course with Hack Reactor and they didn't devise tests, considering the prices they charge.
HTML 5 Canvas
HTML 5 Canvas Typealong This includes the working meme-generator and the comments contain more thoughts and details.
This course really lacked exercises. There were some mini-challenges and on watching the course second-time round after a couple of weeks it seemed much better.
Submission: Frogger Clone
Mockup of submission, and submitted repository.
This project was intimidating at first, but taking a long slow look at the code and taking the time try and understand it before beginning was time very well spent. I remembered the advice from LPTHW: go through the code and add comments above every line to try and figure out what is going on. This really worked and helped defeat the fear factor.
I started off with a list of features and functions added as pseudocode where I thought I'd need them, and later added a 'milestones' block of comment to keep myself on track. Both of these proved valuable.
Things that I really got from this project:
- Practice at pseudoclassical patterned classes
- Lots of time in the Chrome Developer Console debugging
- Further exposure to more JavaScript
I did a few optional extras for 'Udaciousness', admittedly only a few of those suggested, but I reached the point of diminishing returns in terms of features and went way past in terms of fiddling with the code.
Resources
Here's a list of resources with comments and live code examples, and there is a stripped down version with just the links as part of the submission package in the submission repository.
Online Presence
What are the steps to completion?
Reflect on the code review you just completed. What did you learn?
I really surprise with how well it came together. Sometimes I got stuck into coding and forgot to test or save and was really pleasantly surprised that it almost always worked first time, with each new feature. I think this is down to working with Object oriented code. It keeps everything well organized and simple to follow. Although, it has all grown quite unwieldy now, and I do think if I was revisiting it in a year that it would take me a couple of hours to get back up to speed. I think it would be better if classes were in separate files, game functions in another. All in all there would be a lot of organizational and name related improvements could be made.
What are you going to do differently on the next project?
Plan, plan, plan. I'd draw out the logic and file structure on paper first. Pseudocode everywhere. Object oriented everything, as it really seems to lend itself to self-documentation so well.
Record these reflections in a blog or personal journal for later review. This type of question is very common in the beginning stages of an interview.
Waaaay ahead of you :)
Send Udacity feedback as you see fit.
Hi Udacity! You're welcome to come and get your fill of feedback right here, as you see fit!