Bi-Weekly Learning Update (42!)

I’ve been plugging away at a Ruby on Rails project for the past few weeks. I’ve been given a small, relatively simple seeming task to do, and it’s given me something to really focus my learning on. Because I haven’t used rails in such a long time, I had a lot of questions!

Why Rails??

Rails is a web framework, built on top of the Ruby programming language. It allows us to create web apps much more quickly- allowing you to get your app up and running significantly faster than by using Ruby alone.

Ruby itself is supposed to be fairly beginner-friendly, but admittedly, I haven’t done much with it- usually, as a beginner, you get introduced to it through Rails [a lot like how often you will be introduced to jQuery before JavaScript]. Ruby was designed to be very readable, and unlike some languages, which can be very rigid, and only have one way to do something, Ruby allows us to accomplish something many different ways. This can be a good thing, but can also be confusing for beginners.

Ruby on Rails is often suggested as a language for beginners [despite technically being a framework- see jQuery/JavaScript example above] because it carries these characteristics of Ruby, in addition to providing Model View Controller architecture. Due to the fact it creates a standard way of creating a web app, Rails lends itself really well to projects that are being worked on by a team that may be a little looser [either in terms of changing team members, or team members working with less explicit direction from above]. Because Rails apps are written in a standardised way, it makes it much easier for someone joining the project to understand it- you just have to understand how Rails projects are written in general.

Model View Controller (MVC) is a concept that you really need to have a decent grasp on in order to make an app that’s going to be more easily maintainable [don’t be “that person”- do it for future you, and future colleagues who might have to work on your app!] I’ve included a couple links below to explain the MVC pattern, in lieu of me prattling on about it!

 

Some nifty things I’m glad I read:

Echo 5’s blog post on RoR vs Node.js

Codeburst article on Nodejs vs RoR [this site is a rabbit hole. Jump in.]

Tuts+ article: MVC for Noobs [also a rabbit hole. Make time.]

freeCodeCamp explaining MVC with food

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s