Learning Ruby on Rails: An Overview
Before I start jumping in deep water, I would like to give some background regarding my experience. I have always love to teach myself new stuff and ways of doing things, and that is how I got into programming in general. At the beginning it was more like a hobby, I had a management position in a company and to be honest I have never really liked the way they keep track of their data.
So, I thought to myself, - “why wouldn’t I build my own app? that would help me keep a better management of the company and be more efficient at work, I mean. . . how hard it can be? Right?” and that was how my journey really started, and looking back now I can tell, it’s an amazing experience creating new things.
I started teaching myself some C++ since at that moment I thought It would probably be the best way of implementing my code, and after a few months I noticed from a bunch of googling that what I want to do could be achieve easier by using C# instead.
So, I went back to square one, and started developing my C# application. After a few more weeks immerse on my code I realized that that’s what I want to do from now on. And yes, it took me 27 years to finally understand what I truly want to do with my life. I wanted to be a professional programmer.
But I mean, in order to achieve that I need to have a degree or at least a certification of something that would let me jump in this world of creations but I didn’t have any certificated background experience regarding computer science.
Just before I gave up and decided it might be too late to start all over, I found this add on Facebook, the enrollment advertise of Microverse that actually opened my doors for new adventures.
After enrolling into Microverse is started learning from the most basic, and to be honest at the beginning it was very boring because most of the concepts that they started explaining at the beginning I already knew them. We started learning a bunch of HTML and CSS for a whole month. And to be honest now I understand why.
Getting Started with Ruby
After my first month in Microverse, learning with different type of people I hit this gigantic wall, that was a completely new programming language that have very little documentation. And to be honest, at the beginning it looked very silly but I couldn’t let that stop me from learning it. At the end of the day it is just another syntax for solving the same logical problems.
And I remember that on one of our first projects we basically had to redo a bunch of predefined functions of the Enumerator Module of ruby.
And at the beginning it was very frustrating to get all of them to behave the same way and that was because I haven’t yet understood the basic, and how they really work.
When I managed to complete that project, me and my coding partner started to do our first milestone in Microverse. Which was a very simple tic tact toe project, but it actually gave us the opportunity to learn a bit about gems and that is when I understood the power of gems.
Gems are amazing in matters of helping you address issue that would probably take you a lot of time to develop by yourself, and to give a better description of what they can do I would like to compare them to chrome extensions, and to try to keep it simple, is basically a program that would help you fulfill a task and for what I see so far, there is almost a gem for every situation like; Linters Gems, Validations Gems, etc.
After finishing with the ruby section that it was far from being a piece of cake, I was thrown into this deep pool of rails and in order to understand rails we need to understand what it does.
What is Ruby on Rails?
Ruby on Rails or also known as RoR, is an open source framework of web development written in Ruby language, which follows the paradigm of the MVC pattern, and if you don’t know what a framework or MVC is, before keep reading you should step back and make a little bit of googling about. Otherwise, addressing these concepts here would make this a very long article.
By now you are probably asking yourself – “ok, but what is it good for?”. Well the short answer is everything regarding back-end development of any web application, from data analyses to media queries, in fact thanks to the power of gems you can deploy a basic app in matter of minutes.
Yes, you read it right. You can create a blog with rails in under 20 minutes of programming since there are a lot of pre-built gems that contribute to that processes and the best part is that all of them are open source so you can basically modify and rewrite them the way it suits best your needs.
What are its advantages?
So why Ruby on Rails? We find Ruby provides us with a combination of the best tools, better quality libraries and a more pragmatic approach to software. Plus, the Ruby community tends to have a higher caliber of engineer, who favor responsive development. Rails provides fantastic tools that helps you deliver more features in less time. It provides a standardize structure for web apps, where all the common patterns are already being taken care of. As I said before rails have Gems for everything and the Ruby community is big in to testing and test automatization. Which I believe is incredibly valuable in helping to deliver good quality software
Also, Ruby is an eloquent and succinct language, which when combined with the plethora of 3rd party libraries (Gems), enables you to develop features incredibly fast. I could say it's one of the most productive programming languages around.
Who’s learning Ruby?
Ruby on Rails seems to be the language of choice for several popular online code schools, such as Microverse, Makers Academy, Steer and CodeCademy. This should mean an increase in talented programmers joining the Ruby community over the coming years.
I really hope you liked this article, if so don’t forget to leave a like over here. Special Thanks to Microverse, and all my coding partners that help me achieve mastery in my RoR capstone project and help me reach so far
Subscribe to get your daily round-up of top tech stories!