Learn how to program

Hi! My name's Michael. I teach at Epicodus, a four month, forty hour per week, in person class on programming. LearnHowToProgram.com is a step-by-step guide to take you from zero to web programmer, and it's the entire curriculum and course content for Epicodus. The first chapters are prep materials for class, and the later chapters are the course curriculum. You're also welcome to go through the entire site on your own if you wish.

Before we get started, I want to give you a quick outline of the course. We'll start by learning HTML, the language that displays information on a web page, and CSS, the language that styles web pages. Then, we'll learn a little bit of JavaScript, the language for changing web pages, and jQuery, a JavaScript library that makes it easy to make your web pages interactive. With jQuery under our belt, we'll dive deeper into JavaScript, writing our first real programs. Next, we'll turn to the server side, and learn a language called Ruby that powers many web sites. Once we have a good grasp on Ruby, we'll pick up a framework called Rails that makes it easy to write web application, and we'll tie back in our HTML and CSS skills. We'll throw JavaScript and jQuery back into the mix when we add AJAX to our Rails applications, and we'll end by learning how to write JavaScript applications with Ember.js that interact with a backend service built with Rails.

If all this sounds a bit overwhelming, don't worry! I've broken this down so that each step along the way is small and manageable. All you need to do is follow along and do the exercises. That's important: if you don't do the exercises, all of this is pointless. You can't learn to program by watching somebody else. You have to actually do it yourself.

If you already know some of these concepts, feel free to click Table of Contents at the bottom of the screen and skip ahead a bit. But keep in mind that these lessons are meant to be completed in order, so if you're good at HTML and CSS but a bit shaky on jQuery, don't be tempted to skip over it - get it down before moving on.

Feel free to email me at [email protected] if you have any questions about anything at all.

Okay, let's get going!

I'll include a short summary of important concepts here in the following lessons.