- 2 reviews
- 2 completed
I'm almost done with this course and I'm quite happy with it. I just started web development so I'm not certain if its missing anything but it seems to cover most of the building blocks of a web application: * HTML / CSS * Templating engine (jinja2) * HTTP requests * Basic web framework (webapp2) * Deploying using Google App Engine I like that it has a good mixture of theory and practical advice. Steve Huffman pulls out a lot of anecdotes from Reddit to help illustrate common problems with scaling and building a web app. Overall I'm pretty happy - I have been able to ramp up on web apps without any web background. However, the technologies used (GAE / wepapp2) are probably not want what you want to use to deploy your own web app. It'd be nice if he taught more commonly used frameworks (Flask, Django) and deployment options (AWS, Heroku) but that probably would not work for an intro course. Note that those coming from CS101 on Udacity with no prior programming background will have some issues. Specifically, you write your code in your environment, there is less hand holding (you have to pick up a few libraries on your own and have to Google), and also he uses classes which aren't explained in 101. I'd advise working on a mini-project or two in Python before you jump into CS253.
I took this course to help "re-learn" programming - I hadn't coded since undergrad about 6 years ago. Overall, I found the Udacity format to be awesome - I like that lectures are given in 2-3 minute spurts followed by quizzes that quickly test if you understand the concept. Overall this is a great intro to Python and programming, and I like how there is a project that you build across the whole course. I think this course is one of the best options to learn how to code for those who need a classroom-like environment. Some cons: * Coding in the browser isn't that fun. You miss some of the key features of an editor (easy indentation, color coding, tabbed completion, etc.). While it was nice that there was no requirement to install anything in the course (making it way easier for beginners) - I think an intro class should train students to use editors (and learn how to install a language). * Code quizzes and problems sets were too simple - Almost every solution to a quiz was less than 20 lines of code. While this was good in the beginning, the course should start preparing people to write larger code bases with multiple functions. * Few key concepts overlooked - No discussion of classes/OOP, debugging, intro algorithms like sorting