The students came from a wide range of backgrounds - some with more or less development experience, but the range of topics we were covering on was huge:
- OO concepts
- Database access
- Visual Studio IDE (a course in itself!)
... and we're not even talking about particularly complex sites.
If you are talking about complex enterprise applications, then you're into services (of varying kinds), AJAX, async messaging, enterprise integration, design patterns, various competing Microsoft and Java/J2EE technologies, etc, etc
I've picked this up over many years in the industry - these students are faced with a bewildering array of information to absorb at the outset. Unfortunately, all too often, potential employers want to see the "finished" article - but it doesn't happen overnight.
I wish them well on their chosen career path - if they appreciate that being in IT means being willing to look at new ideas and continue learning, then they're a good part of the way there to appreciating what IT is as a profession.