One of the main advantages in Ruby on Rails is as I mentioned in my earlier blog post, is not re inventing the wheel. For example for the authentication in a web app, you can use devise gem and have the full functionality of it in a few seconds. So what is the use of doing authentication from the scratch?
If you are a new developer to Ruby on Rails, I highly suggest that coding the authentication from the scratch. RailsCast have a very good tutorial on this. By doing this you can have a full understanding of how ruby on rails works. If you are a seasoned developer and know enough you can use devise which also has lots of features.
In my project for Learn IT, Girl I first did the authentication part with devise. Then I got that I don’t really get a full understanding and then I followed the above tutorial and learned to make it from the scratch. It gives me the flexibility to change the system as I wish and most of all given me a good understanding on how Ruby on Rails works.
For about a month now I am learning Ruby on Rails and doing a web application as a part of the Learn IT, Girl mentoring program. When I tell this to my friends almost everyone asked why ruby? Even it has been considered a cool geeky programming language and web development framework in the world in general, it has not been a great hit in Sri Lanka. (I wonder why? But may be because none of the major software companies in Sri Lanka is using Ruby or Rails as far as I know.)
Rails is a web application development framework which follows MVC (Model, View, Controller) architecture. The thing I love most about RoR is that you don’t have to reinvent the wheel. RoR is a full stack framework that covers both front end and back end design while taking care of the boring stuff you have to do with every app like user authentication. In RoR you can simple use devise gem and have an up and running user authentication system for your application in few minutes.
When considering the statistics Ruby developers have high demand and high salaries. Most popular applications like Amazon, BBC, Scribd are built with or have some component of Ruby along with it. So if you have a free time or willing to learn a new language or framework, select RoR. It will be useful in the future.
For the Learn IT, Girl project “Expense Splitter” I am learning Ruby. I must sat that its getting addicted day by day. I have a fair knowledge of java and earlier I preferred every other language to java. But learning Ruby makes that choice questionable. 🙂
So far I’m learning ruby in Codecademy. It requires 9 hours course work to finish learning Ruby and I have finished 42% up to now. So far the experience has been fantastic. I think with my pre programming knowledge I will be able to finish it in less time and move to rails part in ruby which will be more challenge able.
Learn IT, Girl is an international mentor-ship program where women all over the world get chance to learn a new language through a project and with the support with the mentor.
The official website : https://sites.google.com/site/learnitgirl
I am a mentee this round. My mentor is Kesha Shah. We are developing an expense splitter to handle shared expenses with Ruby.
I will be continuously blogging about the progress of the project. So keep in touch!!