This is the first of a series of never-before-seen challenges written to help you become a better programmer. Check back every Tuesday for shiny, new CS Domains! This is part 1 of 3. Here’s Part 2 and Part 3.
We know you’re an awesome programmer. But even the best-of-the-best need to keep challenging themselves to learn new languages or to keep their programming skills sharp. That’s why, the HackerRank team spent several months surveying our community to pinpoint exactly what new types of challenges you’d like to see most in addition to our existing 4 domains:
- Artificial Intelligence
- Linux Shell
- Functional Programming
You asked for it…and we listened! Today marks the release of the 1st set of several new domains of CS challenges that will help you in all areas of programming. For the next 3 weeks, you’ll find new domains every Tuesday. Today we’re excited to introduce C++, Java, Ruby and Python as our new domains, and each of them contains at least 10 new language-specific challenges.
As any HackerRank hacker knows, our platform offers the flexibility of choosing whichever programming language you’d like to use to crack general algorithmic challenges. Today’s new language-specific domains include challenges that are designed to help test and improve your C++, Java, Ruby and Python skills. Each language contains at least 10 new problems to start with, but our awesome content creation team will continue to keep adding more challenges, so check back often! You’ll find the challenges for each language will increase in level of difficulty. We’ll test you on syntax and offer tutorials to help push you further along on your way to becoming an even better developer.
These language-specific, hands-on tutorials are ideal as a supplement for anyone learning programming languages. Crush each challenge and show us what you got! For those of you who might be unfamiliar with any of these languages, here’s a brief overview:
More than 50% of the HackerRank community submits code in C++. It’s one of the most popular languages today. Some of the top competitive coders use C++ as their language of choice, including Mimino, who completed 78 HackerRank challenges in 24 hours!
C++ is also the language that powers up Google, Firefox, Apple OSX and many other awesome software. It’s considered an intermediate-level language with hints of object-oriented programming features. Using C++ you can develop systems, applications, high-performance servers and even video games. C++ is highly popular partly because of its speed, efficiency and its array of C++ libraries.
When you start playing around with the new C++ domain, you can warm up with the basics, like data types, and then go into a little more advanced topics like inheritance.
Java is one of the most popular languages for competitive programming and software development. In Github, Java is the 2nd highest used language. It’s also an in-demand skill from many employers because Java is widely used by companies for business applications.
Some programmers refer to Java as the “WORA” language, short for: Write Once, Run Anywhere. It’s extremely portable in that it can operate similarly on any hardware or operating system. It’s also benefited from continuous improvements, with 8 updates since its launch in 1990. Unlike Python or C++, Java is strictly an object-oriented language. It is a very good choice to learn this programming paradigm. Java is most often the 1st choice for developing Android apps. Over the last few years, the Android OS has been dominating the smartphone market, so demand for Android development is really high.
The new domain will help you learn basic concepts of Java and object-oriented programming. In the first few problems, you’ll tackle loops, strings, arrays, oh my! Then, you’ll groove on over to the real stuff, like exception handling, interfaces, inheritance and more.
Python is another loved language by many programmers. Like Ruby, it’s one of the more easier-to-learn languages. CodeEval said Python was the most popular language of 2014.
Ever wonder why Python is called “Python?” Some say it’s because the creator Guido Van Rossum is a big Monty Python fan. Who knew! Python resembles C++ in syntax, but it requires fewer lines than most other programming languages. It’s also natively object-oriented, but also supports imperative and functional programming or procedural styles. According to Quora, YouTube, Instagram and Google all use Python.
So, what are you waiting for…which language domain are you going to master first?
Powering the Ruby on Rails framework, Ruby is a dynamic, object-oriented developing websites and mobile apps. It’s beloved by many, including HackerRank! Yes, that’s right–HackerRank is powered by Ruby on Rails. It’s also used on GitHub.
Ruby was designed to be simple and easy. It’s a favorite for coding beginners because it’s really intuitive and user-friendly. In fact, its creator Yukihiro Matsumoto was tired of the machine-centric languages that existed before Ruby. So, he created Ruby in 1995 to make writing code a lot more human-friendly. Most of Ruby’s syntax is really easy-to-read. While there was a Ruby chapter on HackerRank before, today you’ll find an entirely new domain dedicated to the Ruby language.
So what are you waiting for? Try a new domain now!