Following James Shore's Let's Code JavaScript.