I just helped in putting together a proposal for an advanced web dev course for a university, and it involved: semantics, offline/storage, graphics/3d, device access, multimedia, performance, cross-browser debugging/optimizing, user experience (web apps/mobile), SEO, and analytics. That course is frontend-focused and presumes previous experience with basic web dev technologies (HTML/CSS/JS).
Also, if you need HTML/CSS teaching materials, I've put some here: http://www.teaching-materials.org/htmlcss/ (JavaScript materials coming soon)
1. Static website dev - modern HTML(5) & CSS http://www.http://htmldog.com/
2. Scripting HTML and CSS - Javascript (use standards based browsers only - avoid JQuery/libraries at first) http://javascript.crockford.com/
3. Intro Server side programming to template HTML pages - PHP (easy to grok for beginners - combine previous lessons with some simple dynamic data) http://php.net/manual/en/introduction.php
4. Intro to SQL - MySQL (give them the basic CRUD commands and show them how to hook those up with PHP) http://code.google.com/edu/tools101/mysql.html
5. Cross browser Javascript with the help of JS Libraries - JQuery http://docs.jquery.com/Tutorials
6. Using XML/JSON Web Services - Last.FM API (its a simple REST interface - avoid OAuth complexity) http://www.last.fm/api
If you covered all that in a semester, you would have some semi-competent (there's always more to learn) web developers. Good luck!
I would start with registering a domain name, setting up hosting and DNS, creating and modifying the index.html file. Then add a css file and run through the basics of html and css standard practices. Limit the design to basic colors and fonts at first. Just when they start to get the hang out it, bust out a crash course in web design with Adobe Illustrator and make those sites pretty. After that, utilize something like Paypal's webmaster tools to set up an extremely simple shopping cart. If time allows, dedicate a session to Jquery UI to spice up the sites even more. In the end, there will be some really polished final products with plenty of new skills and lots of invaluable experience.
That's what I'd do. Good luck!
One of the main reasons is that it's a quickly moving target. Any technology you learn today has to be questioned in a year. It may still be around, but it'll probably be used at least a slightly differently.
So to learn web development, you need to learn to be flexible from the start.
For example, I recently put together a 10 week course (1 hour per week) to introduce HTML and CSS to the marketing/sales/editorial staff in my department. I work for a prominent Australian news/media company, and we draw inspiration for new site features and improvements from across the entire department. We (the developers and product team) felt that the rest of the department would feel more confident in suggesting ideas (or making judgements about feasibility) if they knew what work goes into the presentation/interaction side of our websites.
We spent the first 2 weeks introducing the web and giving a bit of back story, and heavily enforcing the most up to date web standards. We then spent the remainder of the course jumping between HTML and CSS, and eventually had the team dreaming up ideas for widgets that we could add to the sites, and being more creative with inline content in our stories (having fun in the HTML mode of the WYSIWYG editor that they never got to see before).
So to wrap this up:
* engage your audience
* find out what they plan to use the skills for
* lay out coursework that works towards them achieving their personal challenges
You'll find them more attentive, more eager, and looking forward to whatever the next semester contains.
Definitely teach about accessibility, standards compliance, and the necessity of bending to the browsers your audience uses.
Development could mean code ignoring the front-end design to the OP.
I would also guide myself by looking at the top languages on Github: https://github.com/languages
Best way to start though is to work on a project on your own using the LAMP stack (Linux, Apache, MySQL, PHP), that'll give you a good overview of all the different pieces involved.
Basic product/project management techniques should also be covered, including a brief intro to agile development.
http://lifehacker.com/5401954/programmer-101-teach-yourself-...
http://dev.opera.com/articles/view/1-introduction-to-the-web...
Also found this monograph -- Teach the Web -- where several experts were interviewed about how to teach web professionals.