Where to Start Becoming a Software Developer

I’ve been teaching people to code for 5 years. Here is what you can do to start learning today for free.


Download SublimeText 3 (5 min) — (free text editor) You’ll need this to look at and edit code.

Code Academy — Command Line (2 hours) — As a developer you’ll usually use the command line interface to interact with your computer. This tutorial gets you started.

Try Git (2 hours) — Git is a process used by Github.com to track and manage code as you update it, and it facilitates many developers working together in open source projects. It is a fundamental skill of any aspiring developer.

Code Academy — Git — Another Git tutorial!

Mobile (iPhone)

Make School — Online Academy (5–40 hours)— Everything you need to know from zero to hero on mobile Swift iPhone development. Free! (They also have an immersive 2 month summer program and a 2 year college)

Front End (How Websites Look and Work)

General Assembly’s Dash Tutorial — HTML/CSS/JavaScript (10 hours) — Awesome and easy HTML/CSS/JS tutorial.

Code Academy — HTML/CSS (15 hours)— another awesome one

Code Academy — JavaScript (10 hours) — Super awesome deaper dive into JS.

Code Academy — jQuery (10 hours)— jQuery is the most popular JS library out there. Learn it!

My AngularJS 1.4 Tutorial Screen Casts (10 hours) — Angular 1.4 is the most popular front end framework. These screencasts take you from literally an empty HTML file to a full Angular front end.

LearnCode.academy — ReactJS (10 hours)— Great ReactJS tutorial

LearnCode.academy — ReactJS & Redux (1o hours) — Once you do the ReactJS tutorial, keep going by learning Redux.

Back End (How Data is Saved and Served Up)

Large Framework (Rails)

Try Ruby(2 hours) — Learn the basics of the Ruby langauge

Rails for Zombies (10 hours) — Learn the MVC pattern

My Screencasts on Beginning Rails 4 (10 hours) — Build a basic Rails app

Rails Tutorial Book (200 hours) — Build a sophistocated big rails app (100 hours of work!)

Micro Frameworks

ExpressJS (JavaScript) (5 hours) — Follow the getting started docs to learn this extremely popular JS web server.

My Screencasts on Beginning ExpressJS (10 hours)— Follow my screencasts to keep learning express.

Flask (Python) (10 hours) — Learn some Flask (like ExpressJS but in Python)

Get a Project

Now you need a project! Build something!