by freeCodeCamp
Our 1,600 Hour JavaScript Coding Curriculum
How do you prepare someone for their first coding job while they’re still working full-time or raising kids? And do it completely in a browser? For free? Well, here’s how we’re doing it:
Waypoints
Our Waypoints are single-sitting coding lessons. We don’t use tutorials or Lynda-style video series. We use fast-paced, fully interactive lessons. They “hold your hand” and help you rapidly establish a baseline proficiency that you’ll expand upon in our practice projects. Rather than create our own lessons, we’ve curated the best lessons from around the web, from providers like Stanford, Codecademy and Node School. You’ll learn all this, in this sequence:
- HTML
- CSS
- Bootstrap
- jQuery
- Computer Science
- JavaScript
- Chrome DevTools
- Angular.js
- Node Package Manager
- Node.js
- Express.js
- MongoDB
- Git
Our waypoints include Codecademy’s new HTML, CSS and Bootstrap primer, as well as their new Angular.js course and also Node School. Setting up a Node.js development environment on your computer is a pain, especially if you’re using Windows or a ChromeBook. It’s impossible to do on a tablet. We’ve figured out ways to quickly get Node School lessons running in Cloud 9's browser-based code editor.
Bonfires
Four months ago, we set out to build an algorithm scripting platform to replace HackerRank and CodeWars. We knew that if we focused, we could build a tool that did one thing better than anyone else did: JavaScript algorithm training. We built Bonfires from the ground up, emphasizing speed and usability. We now have 46 algorithm scripting challenges that take anywhere from 15 to 90 minutes. These take you on a guided tour of data structures, design patterns, and even functional programming. Our campers pass hundreds of Bonfires each day, and we’re on track to have 100 different Bonfire challenges by the end of 2015!
Ziplines
Before you dive into full stack JavaScript, you’ll get more practice with front end development. Ziplines challenge you to build a series of single-page apps using front-end frameworks like Angular.js.
Ziplines also present you with your first foray into interpreting ambiguous goals. Professional developers need to cope with ambiguity. They need to get help effectively by reading documentation, searching Google, and asking experts on IRC and Stack Overflow. So we give you open-ended Agile User Stories, and force you to ask questions, explore your options, and grapple directly with ambiguity. All of our Ziplines are built in CodePen, a powerful browser-based editor for building static JavaScript apps. Like GitHub projects, CodePen projects can be shared and forked.
CodePen doubles as front end development portfolio. It’s another way to get discovered. When your app gets featured on the front page of CodePen, thousands of developers, and potential employers, will see it.
Congrats to camper Geoff Storbeck (pictured below in the Basejumps section) for making it onto the front page of @CodePen! http://t.co/zZAxbJSBm6 #LearToCode pic.twitter.com/C7UUiNdstG — Free Code Camp (@FreeCodeCamp) April 25, 2015
Basejumps
Basejumps give you the full stack JavaScript practice you need to eventually build solutions for nonprofits. You’ll build CRUD (Create Read Update Delete) interfaces, RESTful APIs, and even Real-time Communication apps.
Our goal is to simulate the experience of sitting down in front of a blank page. Basejumps crank up the ambiguity even further, forcing you to make an array of implementation and design decisions. Thanks to tools like Github, Heroku and Cloud 9, you can build these apps and deploy them to the internet from literally any device with a browser.
Nonprofit Projects
By this point, you will have:
- 200 hours of core curriculum in full stack JavaScript development
- 200 hours of algorithm scripting practice, and your own solutions to a hundred of the most common “white board” job interview questions
- 200 hours of front end development practice, and more than a dozen single-page apps on CodePen
- 200 hours of full-stack JavaScript development practice, and several dynamic web apps deployed to the internet
And this is just the half-way point!
Next, you’ll get paired up with another camper and work with Agile Project Managers to build full stack JavaScript solutions for nonprofits. Many of our campers have already done this.
Don’t let anyone tell you learning to code is easy. Learning to code takes time and hard work. But with our rigorous curriculum — and our supportive community — you can get good enough at coding to land your first coding job in about 1,600 hours. You don’t need to quit your job or pay some school a bunch of money. You just need to sit down and do the work.
Originally published at blog.freecodecamp.com on April 25, 2015.