How Long Does It Take To Learn Ruby? Is There a Better Option?

One of the major appeals of the Ruby programming language is that it lets you write code quickly. But how quickly can you learn to write code in Ruby?

You can learn the basics of Ruby in a few weeks to a month. However, gaining working level proficiency with Ruby, its various libraries, and its frameworks can take close to a year. That said, if you already know coding concepts like object-oriented programming, then you can learn Ruby very quickly.

In this article, I’ve put together a detailed guide to help you estimate how long it’ll take you to pick up Ruby, as well as some popular Ruby frameworks you should consider learning in the process. Following that, I’ve also included a brief section going over some alternatives to Ruby seeing its current decline in popularity.

How Long Will It Take You To Learn Ruby?

The time taken to learn Ruby will vary depending on your knowledge and familiarity with programming languages and associated concepts. 

It can take close to a month or more for complete beginners to learn the basics of Ruby. Those who have a background in programming only need to get the hang of the Ruby syntax before they can start coding with the language.

Here’s a look at some of the main influential factors to help determine how long it’ll take you to learn Ruby:

  • Your knowledge in programming and related concepts
  • The time you invest in learning Ruby
  • Your expectations of how good you want to get at Ruby
  • The type of apps you’re looking to create
  • Your method of learning Ruby

Let’s go over each of these points in more detail to give you a better understanding.

Video: 16-minute crash course on Ruby

Your Knowledge in Programming

Ruby is a high-level programming language that supports multiple programming paradigms like OOPs (Object Oriented Programming), procedural programming, functional programming, etc. 

As such, if you have prior programming experience, especially in OOP languages like Java, Python, or C++, you can pick up Ruby super quickly. You can expect to read and write in Ruby within a week of dedicated practice.

On the flip side, if you plan to make Ruby the first programming language you learn, it can take an average of 1 month to know and understand its core concepts. However, it can take up to 6 months before you’re comfortable coding programs in Ruby.

How Many Hours Should You Invest in Learning Ruby

If you’re a beginner, how long and how often you study Ruby, or any programming language for that matter, will determine how quickly you learn it. 

The more hours of dedicated practice you put in, the more quickly you’ll learn it. Just be careful not to burn yourself out. If your head can’t take in new info, give it a little rest.

That said, let’s say you decide to invest 10 hours learning Ruby, but you binge study every Saturday. That’s suboptimal because a week’s gap is enough to make you either forget or jumble up the things you learned. Ideally, you should invest some time every day to stay in touch with all the new concepts you’re getting introduced to.

I recommend beginners to invest at least 2 hours of daily practice, 5 days a week if you’re serious about learning a programming language.

How Good Do You Want To Be

Why do you want to learn Ruby? What do you wish to accomplish with the skill? Depending on how you answer these questions, the time taken to reach that goal will vary significantly.

For example, do you want just to read and understand code written in Ruby and make a few tweaks here and there? If yes, then as a non-coder, it should take you around a few weeks to a month of dedicated practice.

In contrast, perhaps you want to crack a job as a Ruby developer. In that case, not only must you learn Ruby, but also a bunch of algorithms, how to implement them using Ruby, and many more programming concepts. Beginners can expect close to 6 months to a year of practice to attain hireable proficiency.

Ultimately, if you want to become an expert or master in Ruby, it can take years to achieve this goal.

Video: Ruby Programming Language – Full Course

Your Method of Learning

Whether you go at learning Ruby by yourself or with the guidance of a teacher will also influence the time it takes to learn the language.

If you take the self-taught route, expect a more prolonged time investment to learn Ruby. This is because not only do you have to learn the language and all its concepts, but you also have to find good resources to follow.

However, if you use a guide who provides you with the right learning tools and resources, the process will become easier and quicker. A teacher will also promote speedier learning by clearing your doubts, testing your skills, and helping you to stay accountable to your goals.

If you ask me, the best way to learn Ruby or any programming language is by attending a coding Bootcamp. You’ll get quality training and a proper system to help teach you the language within a dedicated timeframe.

Essential Ruby Frameworks To Know and Learn

If you’re planning on landing a job or even creating software on your own using Ruby, then it’ll help if you also learn a Ruby programming framework

A Ruby framework will give you access to necessary tools as well as an abstract structure to help you quickly build your app/program. 

Also, most companies will mandate that you know a Ruby framework if you’re applying to be a Ruby developer.

With all that said, the most popular Ruby framework is Ruby on Rails, or simply known as Rails. It’s a back-end web development framework with dedicated structures and tools to help you build server-side applications, web services, and even full-fledged websites.

If you can already write apps using Ruby, you can expect to learn Rails in around two weeks.

Apart from Rails, there’re plenty of other Ruby frameworks that you can pick up. Here’s a look at some alternative Ruby frameworks that you can consider learning as well:

  • Sinatra – used for building small and simple web apps.
  • Hanami – a full-stack web development framework with a focus on speed and simplicity.
  • Roda – a modular, scalable, and security-focused framework.
  • Grape – used for creating REST APIs.
  • Sidekiq – a background job framework with a focus on speed.

Is Learning Ruby Worth It? Are There Better Options?

If you’re an absolute beginner, developing a working understanding of Ruby along with a framework can take close to a year. As such, it’s natural to wonder whether or not this huge time investment is worth it.

Learning Ruby is worth it for beginners as it’s easy and covers various programming concepts. Experienced programmers can learn it to land a job as a Ruby developer. That said, Ruby is declining in popularity, and learning other languages, like Python, PHP, or JavaScript, is a better option.

Let’s briefly explain why Ruby is fading in popularity and some alternative languages and frameworks you can consider learning instead.

Why Is the Popularity of Ruby Fading?

To understand why Ruby is losing popularity, you must first understand why it became popular in the first place. 

The popularity of Ruby has been fading since the introduction and adoption of Ruby on Rails. Ironically, Ruby shot to fame with this launch, but as people started to move away from Rails, the popularity of Ruby began to wither. 

But this begs the question, why did people stop using Rails? Well, because there were more advanced technologies on the market that could do everything Rails can, only better.

You need to understand the tech industry changes and evolves rapidly. In its time, Ruby was innovative and extremely useful, which made it so popular. But now, we have better technologies to do the work that’s currently important, and as such, Ruby has slowly started to fade in popularity.

Here’s a YouTube video by the channel “Statistics and Data” on the most popular programming languages – 1965/2020:

It shows how Ruby shot to fame during 2004-2006 (introduction of Rails) but then steadily declined in popularity from 2012-14 as JavaScript, Python, and PHP started to gain traction.

That being said, Ruby is still used for MVP (Minimum Viable Product) development in big companies like Fiverr, Airbnb, Dribbble, Bloomberg, Crunchbase, and many more.

Alternative Languages and Frameworks You Should Consider

If not Ruby, then what? Well, here’s a shortlist of alternative languages and frameworks to Ruby that both beginners and experienced programmers can consider:

  • JavaScript and Express.js: JavaScript is the most popular programming language in web development, with over 97% of websites using it on the front-end. Express.js is a back-end web app framework for Node.js, which in turn, is a back-end runtime environment for JavaScript. Using Express.js, you can quickly build powerful web apps and APIs.
  • PHP and Laravel: It’s a general-purpose scripting language primarily used in web development. Many developers working with Ruby shifted to PHP to develop web solutions. Laravel is a PHP web framework that offers better performance and scalability than Rails.
  • Python and Django: Python is currently the most popular programming language, period! Similar to Ruby, Python also uses very simple syntax, making it beginner-friendly and a popular introductory programming language. Django is a Python web framework used to develop and deploy secure and easy-to-maintain websites.

Python is considered one of the best if not the best beginners language. You can read my detailed guide on how to learn Python for beginners on this link.

Key Takeaways

A month of dedicated practice is enough time to learn the basics of Ruby, but it can take you close to a year to become confident building apps and websites using the programming language.

You can learn Ruby much faster if you have prior programming experience. Joining a coding Bootcamp will also help streamline the learning process.

That said, Ruby is currently not as popular as it used to be. As such, if you want to learn more popular and widely used languages, then Python, PHP, or JavaScript are great options to consider. In fact, I would urge you to learn JavaScript. I am using javaScript for both front-end (React) and back-end (Express.js) at work and also for my freelance projects.