Edward McCaughan is one of our fantastic mentors for the CareerFoundry Web Development course. Born in Northern Ireland but now based in the startup hotspot of Berlin, here he tells us about the open source web application framework Ruby on Rails (or RoR) and how it is utilised by leading brands, medium sized businesses and startups alike to produce amazing looking websites.
He also explains why Ruby on Rails is such a great programming language to learn for beginners and how the flexibility of the framework allows you to build sophisticated websites quickly and with ease. This article is written by him.
Introduction To Ruby On Rails
So what is Ruby on Rails and why is it a good choice for building a website? Well, first off, Ruby is a programming language, which can be used to build anything at all, not just websites.
Rails is a web framework, which means it’s a collection of tools written in the Ruby language that you can use to write websites. Rails was developed by 37Signals as the foundation of their Basecamp.com project management tool. They originally only intended to use it in their own company products, but in 2004 they generously released it as an open source tool for anyone to use and with the help of the Ruby community they have been improving it ever since.
Who Uses Ruby On Rails?
Ruby on Rails is used on a broad range of websites, from some of the largest sites on the internet, to the smallest weekend projects. It is such a versatile framework that it performs well for both. In between, Ruby on Rails has found a hugely popular niche in the medium-sized startup. Here are a few examples of companies that started their Rails website with just a small team and took it all the way to success:
Kickstarter.com is the biggest online crowdfunding platform for creative projects. They started in 2009 and recently pushed past $1 billion in pledges for everything from new games consoles to music albums and movies.
Airbnb.com is changing the travel industry by enabling regular people to rent out lodging to travellers, including everything from spare rooms to private islands. It currently has over 500,000 listings in 33,000 cities and 192 countries.
Shopify.com is a commerce platform that allows anyone to create their own online store through an easy to use interface and handles all the complicated parts of running a store such as payment systems. Shopify started in 2006 and currently powers over 60,000 retailers. ## Why Did They Choose Rails?
There are many different programming languages and web frameworks to choose from, each with their own strengths and weaknesses depending on what kind of application they’re used for. While Java is better for big applications and C and C++ make blindly fast programs, there are few frameworks as good as Ruby on Rails at building sophisticated websites really quickly, but without cutting corners on quality or reliability.
It’s quite common for a small team to take their idea from paper to a working prototype in a weekend, on to launching a finished application in a few months and having the same application handling a million of users on the same application a year later. Ruby on Rails is great for these fast-growing, young companies. Even once they’re up and running, Rails lets them implement whatever new ideas for features they have, or quickly pivot existing features based on user feedback. The most recent Rails site I built alone, donatify.me , took me just 2 days work at a Berlin hackday to go from brainstorming to having a functioning prototype ready for real users. It only needed another week to have all the features I needed to complete the site.
This speed of development means startups only need a small team to run a site that a decade ago would have needed dozens of developers, which means less costs to start up in the first place and a quick turnaround from committing to an idea to having it in the hands of real customers. At the last company I worked for, www.betterplace.org, our dev team was only 5 programmers strong, yet we pushed out new features to the site on a regular two week cycle and could have bugs fixed and deployed within hours of them being reported.
What Makes Ruby On Rails Different?
The reason why each language and framework has different strengths and weaknesses is because they’re built according to a philosophy chosen by the people that created it. Both Ruby and Rails are lucky enough to have some very smart people working on them, so they use Ruby, the language, to focus on being very simple, yet very expressive. The team that built Rails, the web framework, focused on hiding the complexity of the web and common patterns of web development behind an easy to use interface.
The other advantage Rails has is that because it’s an open source project, anyone can submit improvements to the Rails codebase. So far over 3,100 contributors over the last 9 years have fixed bugs, added features and rewritten the code behind the scenes to be faster and easier to use.
And lastly, Ruby on Rails has a very passionate and talented community supporting it. Countless developers write plugins, tutorials, answer questions when developers have problems, run workshops and enthusiastically share their knowledge with other developers. Even by myself, I’ve noticed that just by being constantly surrounded by the high quality code and high standards of the Ruby community has greatly improved the code that I write since I switched from other languages.
Should You Use Ruby on Rails?
Like I said, there are many different ways to make a website, but if you’re building your own personal site, or want to get your own startup website off the ground, you won’t regret picking up Ruby on Rails. Part of the joy of Rails is that once you’ve learned how to use it and you have an idea for a new site, within a couple of days you can have enough of a prototype built that you know whether it’s going to work out or not. And even if you never use Rails to build a website, I guarantee the lessons you’ll pick up from learning Rails will serve you well in whatever language you do choose.
If you are interested in learning more about Web Development, our mentors or how Ruby on Rails could transform your startup idea into a reality, come and see more about what we do at CareerFoundry.com. And for more information about Edward, please find his details below: