Fill out the form to get more information about the Fullstack Academy bootcamp of your choice.
Is the Programming Language Taught at a Coding Bootcamp Important?
By David Yang
There are a few important factors to consider when deciding on the right coding school to attend—one of the most important is the curriculum. People often ask if the programming language and curriculum focus are important for a coding school. The answer is both yes and no.
In terms of learning the basics of programming, the actual language you focus on is not that important. There are a lot of common concepts among languages, especially the higher level ones taught at coding schools (Ruby, JavaScript, Python, etc). So you’ll be able to learn solid fundamentals regardless of the language.
Why It Matters
But most people attend coding immersive programs to do more than learn programming fundamentals. It’s usually with the end goal of securing a job as a software developer. And for that, the specific language can make a big difference. In particular, JavaScript has some strong advantages over other languages like Ruby, which is why we chose to make it the focus at Fullstack Academy.
These advantages can be broken down into two areas: Educational and Professional.
Educational Differences
1. Language Syntax & Level of Abstraction
Each programming language has its own unique syntax and format. Ruby was actually designed to make a programmer’s life easier and more productive. JavaScript was designed for flexibility. If you were to compare Ruby and JS code side by side, you’d see that Ruby reads a lot more like English, making it easier to learn (and also easier to teach). JavaScript doesn’t look as friendly.
From a programming productivity standpoint, this often gives Ruby the advantage. But from a learning standpoint, however, it can be a disadvantage. Ruby often abstracts lower-level operations out of what’s going on. Take the code below, for example, written in both Ruby and JavaScript. Each function takes an array of numbers and outputs an array of all the possible combinations of pairs of numbers:
----Ruby---- def combos(arr) print arr.combination(2).to_a end
----JavaScript---- var combos = function(arr) { var combinations = []; for (var i = 0; i<arr.length-1; i++) { for (var j = i+1; j<arr.length; j++) { combinations.push([arr[i],arr[j]]); } } console.log(combinations); };
The Ruby code is obviously shorter and prettier. But that ease of use can also mean that a programming student won’t understand what’s going on. The JavaScript code is, for lack of a better word, uglier. But to write it, the programmer clearly has to have a deeper understanding of how arrays and loops work. This forced in-depth understanding becomes even more important when thinking about how to optimize or modify code.
2. Curriculum Focus: Single Language vs. Multi Language
All schools that teach Ruby actually also teach JavaScript. That’s because JS is the only programming language that runs in the front-end (client side, in your web browser). Since Ruby schools are teaching web development, they usually dedicate some time (~1–2 weeks) to JavaScript so that students can implement basic front-ends. Given JavaScript’s complexity, most of that short time is spent learning its syntax and basics.
The problem is, most coding schools are ~12 weeks long. That means that 1–2 weeks are spent learning a new syntax (not very high value), leaving less time for the rest of the curriculum.
In contrast, schools that only teach JavaScript can keep the focus on one language. Since JavaScript can run on the back-end (server side, via Node.js) and on the front-end, it’s a true “fullstack” language. That’s a huge advantage because it frees up those extra ~2 weeks that would normally be spent learning new syntax. At the immersive at Fullstack (17 weeks long), we use that extra time to dive deeper into programming itself, covering things like computer science fundamentals, industry best practices, and design patterns.
Professional Differences
What’s the most popular language?
Per Stack Overflow’s most recent annual survey, the 3 most popular imperative programming language are:
- JavaScript, 71.5%
- Java, 45.3%
- Python, 38.8%
But what about actual use of languages and demand in the job market? Here’s the popularity of programming languages based on use in Github Repositories:
Job Market Competition
You’ve probably noticed the imbalance between the programming language trends at coding schools and in the job market. While the total demand for all software developers is very high (that’s the main driver for the entire coding bootcamp industry), Ruby school graduates are in higher supply than Fullstack JS developers. Having a skill that’s more in demand and lower in supply is never a bad thing in the job search. We attribute a lot of Fulllstack’s high-quality hiring outcomes to this.
Bonus: What are Fullstack students building with JavaScript?
Check out the capstone projects built at Fullstack to see what you can develop once you’ve mastered the right tech stack: Fullstack Student Projects