Learn to Code!
Learn Angular, Learn Node, Learn Javascript, Learn CSS, Learn HTML (and more)!
See cloning.md
The "4 Hour Coder" (yes, we love Tim Ferriss and the 80/20 rule)
This uses generator-mean-seed to teach people to code, specifically on MEAN stack - AngularJS and node.js. It covers HTML, CSS and Javascript as well as more advanced topics (testing, code quality and everything an expert coder will need to build a high quality website/app) but aims to be between free basic "learn to code" solutions such as Codecademy and intensive, expensive coding boot camps such as Hack Reactor. These are just 2 examples of many "learn to code" programs but we'll use them as examples.
- Codecademy
- Pros: free, online, self-paced
- Cons: too basic, doesn't guarantee results. Great starting point but you can't really code something that will be used in "real life" afterward. Also teaches things you'll rarely use.
- Hack Reactor
- Pros: works - 98% graduation rate, average $90k salary placement.
- Cons: consuming: 9 to 12+ weeks of 80-100 hour weeks, costs $10k+. Great for people who are sure they want to get a full time coding job afterward and have no current job / availability to take 2-3 months completely off) and $10,000 or more available to spend.
Learn MEAN (aka 4 Hour Coder) is closer to Codecademy (free, self-paced) with some key differences:
- Focus only on the 20% you'll actually use
- Borrowing from Tim Ferriss and the 4 Hour Chef, as well as 7+ years of coding experience - there are LOTS of HTML tags and things you CAN learn but in reality you'll be using the same 10% to 20% over and over. We eliminate the rarely used ones to focus exclusively on the stuff you'll be using all the time. This makes MUCH LESS to learn. We filter the important stuff for you.
- Top-down rather than bottom-up (results from day one)
- Instead of starting you with the building blocks of HTML, CSS, and Javascript (which you'll rarely use by themselves when coding since higher level tools and frameworks are used on top of them - i.e. Javascript MVC Frameworks, CSS Pre-processors), we dive right in to AngularJS and LESS from the start. So on day ONE, you can build something that a "real life" coder would accept and actually USE as high quality code. Yes, in the beginning you won't understand how to modify this high level tool, but we'll teach this with time - diving deeper and deeper down IF and WHEN necessary - so you'll still get the basics, but the ORDER here makes a huge difference. We won't ASSUME you'll need all the building blocks up front and spend weeks teaching the basics such that you'll forget them before you actually put them into use - at which point you'll only use a fraction of it!
- Built USING the MEAN-seed itself and the tool set and workflow you'll actually USE
- Online "learn to code" courses are great at teaching you the pieces in isolation - but the workflow and coding tools and just getting "set up" is often the hardest part. Knowing Javascript, HTML, and CSS is useless if you can't put them together onto a live site. Learn MEAN uses generator-mean-seed (which you can actually use in production / on a project) such that WHILE you're learning how to code you're SIMULTANEOUSLY learning the workflow of a coder and mean-seed specifically.
- Again this goes along with the idea of having NOTHING extra. ALL of your learning is focused on 100% of things you'll ACTUALLY USE. You'll clone Learn MEAN seed from Github and take lessons locally on your computer, JUST AS YOU'LL DEVELOP real code.
We've toyed with the idea of having online Google Hangout office hours each day open to anyone to ask questions if they get stuck. With the end goal of having people who have completed Learn MEAN host office hours as well such that eventually we have someone online 24/7 and a community of people helping each other (everyone is both a mentor and a mentee) learn to code. Coding is becoming the most popular language to speak and useful for ANY field - our vision is to make learning coding accessible to anyone and be able to teach anyone to code FOR FREE, in as short a time as possible (weeks or months).
Short answer: It's all javascript (full-stack javascript) making just ONE language to learn.
A sequence of decisions led to MEAN:
- Frontend is easier to start with since you can SEE results
- Javascript is THE (only) frontend language
- AngularJS is one of the top MVC Javascript Frameworks
- Node.js is javascript for the backend - and again we're all about being minimal - don't learn anything extra you don't need to. So if we're using javascript on the frontend, we want to use javascript on the backend (full stack javascript).
- MongoDB is just Javascript Objects (again ONLY Javascript to learn)
Plus MEAN is gaining popularity and while it's by no means the "only right answer" to every project, it's a great place to start.
Addy Osmani (co-creator of Yeoman) MEAN blog post
Why generator-mean-seed?
TODO: blog post coming!
http://jackrabbitsgroup.blogspot.com/2013/12/learning-philosophy-4-hour-coder-part-1.html http://jackrabbitsgroup.blogspot.com/2013/12/learning-philosophy-4-hour-coder-part-2.html