Programming Languages: Learn JavaScript Ahead of Ruby/Rails


(This article and Quora answer were written by Hack Reactor Co-Founder Shawn Drost

Screen Shot 2013-10-09 at 11.23.23 PM.png

JavaScript: The Most Misunderstood Programming Language in the World


Douglas Crockford is a world famous computer programmer with expertise around the JavaScript language. (He's also known for developing JavaScript tools like JSLint and JSMin.)

His amazing blog features rather amusing takes on what he calls "the most misunderstood programming language in the world," a.k.a, JavaScript.

"Despite its popularity, few know that JavaScript is a very nice dynamic object-oriented general-purpose programming language. How can this be a secret? Why is this language so misunderstood?" writes Crockford.

Misunderstood or not, JavaScript interpretors are enabled on virtually every computer in the world. Many programmers and coders needed to learn JavaScript to create beautiful, interactive software framework. (See 20 amazing examples).

Knowing this, your mind should start making the connection that learning JavaScript is insanely valuable, more applicable to what businesses are looking for - and to be frank - lucrative.


Created by  Yukihiro “Matz” Matsumoto, Ruby is a blend of a variety of different, lesser used languages. “I wanted a scripting language that was more powerful than Perl, and more object-oriented than Python," Yukihiro said. You can read a thorough list of Ruby's features here.

Ruby on Rails provides a wide array of tools that can be used to complete repetitive, automated tasks that would normally consume large amounts of time. These tools make Ruby much more enjoyable and efficient to use, but at this point in your coding education, they're not essential.

What you want to be thinking about right now are the fundamentals, concepts and ideas, not specific tools you that may or may not use on future projects. Focus on the thinking part of coding, and not the little pieces.

Hack Reactor instructor Doug Calhoun explains the basic purposes of Ruby on Rails:

"Ruby on Rails is a fully-featured web framework that comes with a lot of configuration decisions baked in. This allows developers who use it to skip a lot of the setup and boilerplate code that are common to most web applications, and start writing the code specific to their application as quickly as possible. Rails is especially well suited for applications that perform a lot of CRUD actions (create, read, update, destroy) on a collection of items of a single type, as posts for a blog, or tweets for a Twitter stream. "

Learn JavaScript Before Ruby

At the end of the day, having familiarity and a professional ability to code with one of the major programming languages is a great start to your developer career. By mastering one language, you'll have an easier time transitioning to the next.

As Drost explains, "Learning a new language is easy, once you know how to code, so it doesn't turn out to matter all that much.  Your decision should be based on which one offers you more learning resources.  If you have a close friend that knows one or the other, learn that -- you'll have someone to help when you have questions.  If you have a friend that's studying one or the other, do that -- you'll have someone to hack on stuff with."

Read more on the importance of JavaScript here.