I think context is the hardest part of teaching web-application development. You have so many moving pieces that need to be taught before someone can build something tangible that often-times people get stuck or discouraged before they hit this point in the learning process.