March 28, 2013

Udacity CS253 Web Development

I've never been really interested in "web development" even though I set up the first website in Thailand years and years ago as a joke that got me into heaps of trouble. But I was browing Udacity's course offerings, and the chipmunk looked just friendly enough for me to click in to take a look. The course is taught by Steve Huffman of Reddit fame, so I decided to check it out.

Lesson 1: HTML stands for Hypertext Markup Language! Here's how HTTP works! ...
Problem Set 1: Install Google App Engine and make a basic Hello, Udacity! web app.

?!?!?!?!?!?!?!?!?!?!

Okay, installing Google App Engine wasn't hard for me, but I'm sure there would be thousands of others who would be completely stumped by this. But Python? There's nothing in the course description about using Python and GAE (I had assumed JavaScript), but since I'm learning Python, so I was glad this was another chance to learn Python.

Lesson 2: Here's how to do basic HTML web forms!
Problem Set 2: Make a user signup form using App Engine.

?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!

Okay, this involved some reading of the fantastic manuals, but I was able to figure it out without too much trouble.

Lesson 3: SQL stands for Structured Query Language. Here's how to do some basic SELECT statements.
Problem Set 3: Make a blog.

Wow. I was hooked by Lesson 3 since the lessons have nearly nothing to do with the problem sets and the problem sets really needs a lot of documentation reading and web searching which I'm really good at. No hand holding here and nothing about breaking the problem down into little pieces. I read the outdated forum posts and people seem to be divided into those who were completely lost and those who were saying the course is too simple.

Lesson 4: Cookies.
Problem Set 4: Make the signup form work, including logins and logouts.

Lesson 5: RSS.
Problem Set 5: Make the blog output JSON.

Lesson 6: Caching.
Problem Set 6: Implement caching for the blog.

Final Project: Make a working wiki, including signups / logins / logouts, signed-in users are able to create new wiki entries, as well as edit existing wiki entries.
Bonus Final: Make the wiki display editing history.

Since Udacity's courses are all self-paced, I was able to complete the entire course in about a week. I watched all the videos and did the in-video quizzes, and completed all the problem sets, the final project, and the bonus final, and was able to download my Certificate with Highest Distinction.


I'm now ready to take over the Internet.

No comments: