Learning Full Stack JavaScript

The Fundamentals of Becoming a Professional JS Programmer in 1-2 Months

While there are many different coding languages that someone can learn, the following focuses on learning Full-Stack JavaScript. Full-Stack JavaScript is the hottest technology a web developer can learn right now; as the saying goes, “anything that can be built in JavaScript will be built in JavaScript”. Because of its popularity, it is very easy for Full Stack JavaScript developers to find information and answers to their problems. Also, other stacks such as Ruby on Rails, or ones that use PHP or Python, are becoming quickly outdated.


Preliminaries/Setup:

Pro Tip:

The first step anyone can take in learning to code is not signing up for a coding bootcamp or even heavily researching them, but actually trying to code. Coding is a mentally stimulating and both economically and experientially rewarding vocation. However, it is not for everyone. I don't mean that in the sense that not everyone can code; I believe anyone can learn to code. I mean that in the sense that you should enjoy your job, and so you should see whether you like coding.

While there are many different coding languages that someone can learn, the following focuses on learning Full-Stack JavaScript. Full-Stack JavaScript is the hottest technology a web developer can learn right now; as the saying goes, “anything that can be built in JavaScript will be built in JavaScript”. Because of its popularity, it is very easy for Full Stack JavaScript developers to find information and answers to their problems. Also, other stacks such as Ruby on Rails, or ones that use PHP or Python, are becoming quickly outdated.

Pro Tip:

In learning to code you are making a dramatic shift from using computers as a consumer to using computers as a developer. The difference is that consumers expect computers to work, developers expect computers to break. I can promise you that your code will break, and break often. That's what coding is. You are building and fixing things. Although a car might work when you drive it off the lot, it took years of engineering and know-how to get the car to a point where it could do that. Also, cars need occasional check-ups and repairs. It is the same with code. It won't work, then it will work a bit, then it will work completely, and then it will break and you will need to fix it.

Below is a guide to learning to become a web developer.

  1. Learn the command line: Visit Code Academy's "Learn the Command Line", which can help someone to learn how to work with the computer that they are using. Has a focus on Linux based commands, which are more useful over the long run and more widely used than windows commands. Expect to spend at least 3 hours learning this.

Pro Tip:

A web developer builds the web as we see it today. There are lots of different ways to build the web, but regardless of what “stack” a website is built with, the site will still need the absolute fundamentals of HTML and CSS. These two technologies help the web to appear pretty and styled, colorful and exciting.

  1. Learn web development basics: Finish Codecademy's web development course,which focuses on HTML and CSS, which will allow someone to understand how things come to appear on a website. Expect to spend at least 7 hours learning this.

Pro Tip:

JavaScript is another fundamental of the web. Although it is possible to build a functional website without JavaScript, JavaScript allows for a user to do things like send information when the click a button on a form, or make a simple animation, such as a drop-down menu.

  1. Learn JavaScript: Finish Codecademy's JavaScript Course, which focuses on learning to program with JavaScript, a basic building block for coding. Expect to spend at least 10 hours learning.
  2. Learn jQuery: Finish Codecademy's jQuery Course. If you were to only learn one JavaScript library, I think this would be the one. It allows you to select and interact with HTML elements very easily, and comes with a lot of built in functions and animations. Expect to spend at least 3 hours learning.

Pro Tip:

The transition from learning what you've just learned, which is basically the “Front-End”, to “Full-Stack” is a dramatic shift! While what you have learned previously will help and tie in with what you are about to learn, Front-End is essentially the niceties of coding, the aesthetics. Full Stack development, where you are handling everything on the “server side, is getting into a lot of logic and can be quite challenging at times.

  1. Learn Git: Complete Codecademy's Git Course. This technology will allow you to save projects that you are working on online, access them from different computers, and (eventually) collaborate with other developers. It is essential to becoming a professional coder, and will take around 3 hours to learn.
  2. Learn Full Stack JavaScript: The most important things to learn, I think, are node.js, express.js, mongodb and Angular.js. Having used both CodeSchool and Treehouse, I would recommend either Treehouse's Full Stack JavaScript course or Code School's Full Stack JavaScript course. However, my personal preference is for the Treehouse module. Expect to spend about 35 hours learning.

Pro Tip:

At this point in your coding experience, you are able to understand the difference between client-side and server-side and now you can build a fully custom website on a JavaScript framework of your choosing! You have entered project-phase, where a great deal of what you learn will come from actually building projects. Do you have an idea? Why not start building it! You can check out https://github.com/sahat/hackathon-starter, and use git to clone the repository. It has extensive setup instructions if you get stuck, and is a great starting point for building a website.

  1. Try Building Something: Using the Meteor.js simple tutorial, available here, try creating-an-app. Expect to spend at least 6 hours learning.