| Hmm, are you advertising that this is a series on web development? Do these students have prior development education? I fear that you're agenda is bloated. * Vim deserves a class of its own. My personal experience is that it takes months of using Vim before it starts paying off. Your students will struggle with and be distracted by Vim. * Git is an invaluable, industry-standard tool for collaboration. Still, is it helpful for learning to code or is it also a distraction? Pastebin/Dropbox/etc. are sufficient for collaborative efforts when your students are writing no more than 100 lines of code a day. * Angular/Backbone/Knockout are all opinionated and assuming. jQuery is also too much "magic" for someone who just learned what a variable is a few weeks prior. These are just getting in the way. * Yeoman/Grunt/Bower are cool. But there is something much more intuitive about just manually linking in a .js file to learn about dependencies. * Gulp/Coggle/Balsamiq are similarly unnecessary. In general, I think you're trying to teach opinionated tools that will frustrate, distract, and mislead your students. There will be a lot of "wait, which one's Bower, again?" I hope I haven't been discouraging and unnecessarily critical... my doubts would certainly need to be revised if these students indeed had prior experience. My idea of a schedule for starting web dev: * Very short overview of how a web browser and a server communicate. * HTML: creating interactive elements for humans with textual markup. * Node.js/Sinatra/etc. (students might benefit from using Node.js here as to not be overwhelmed with languages later): code a simple server to respond to a POST. * CSS: modifying the visual representation of HTML elements for a better user experience. * JS: react to HTML element events. * Expand your Node.js server to respond with JSON instead of HTML, and rig your JS to asynchronously communicate with the server. * Throw in a simple JSON/SQLite database. Flat file databases are great. Make the tried and true to-do app. * Teach deployment (real-world servers). Git should probably be fit in here! * Bonus: a whole class on how to solve problems using Google. If your students are intermediate/advanced, ignore me completely. |
I thought maybe the agenda was kinda bloated too especially since this is just the Front End Development. If you add Back end development you would probably be looking at 2 years to complete. Luckily my bootcamp is free and you can take all the time you need and only move on to the next topic when you feel comfortable with the current topic.
Vim - Here is what I have for vim and surprisingly enough is just enough to be proficient in vim.
3. Learn vim a. Do vimtutor b. Read Learning the vi and Vim Editors, Seventh Edition c. Up and Running with vi d. Venture Into Vim e. OReilly - Mastering Vim f. Vim for Advanced Users g. Learning vim plugins
Git - I use two video tutorials that will make anyone an intermediate person within 2 weeks.
HTML - We do about 12 websites CSS - We learn almost everything about CSS. It does take about a month just to do the videos and books. Javascript - We learn it in depth with three of the top books and several videos. This is where most of the time is spent. We do not move on to JQuery until we are proficient in javascript so we do not use JQuery as a crutch.
Bonus - We have the students sign up for HN, Reddit, and StackOverflow to teach them how to troubleshoot problems.
Im running out of room here but thank you so much for your input.