Ruby is a programming language. It was created 20 years ago by Yukihiro "Matz" Matsumoto. According to most measures of popularity of the programming language, Ruby is in the top ten, although it is generally the tenth (more or less) in popularity, and largely due to Rails' popularity. Like Java or the C language, Ruby is a general purpose programming language, although it is best known for its use in web programming.
Rails is a software library that extends the Ruby programming language. David Heinemeier Hansson is its creator. He named it "Ruby on Rails", even though it is often simply called "Rails". It is a software code added to the Ruby programming language. Technically, it is a package library (specifically, a Ruby Gem), which is installed using the command line interface of the operating system.Rails is a framework for building websites. As such, Rails establishes conventions to facilitate collaboration and maintenance.
Rails, in a deep sense, is more than a software library & an API. Rails is the central project of a wide "community" that produces software libraries that simplify the task of building complex websites. The members of this Rails community share many fundamental values, they often use the same tools and support each other with an informal network. That means they do it just for love to the development. The community is something informal, but that does not detract it from professionalism. It forms an economic network that includes: jobs, recruiters, consulting firms, conferences and companies that create websites with Rails and investors that finance new companies.
Rails is popular among web startups, significantly by the set of "libraries" or open source software libraries (RubyGems or "gems") that make possible to build complex sites quickly (although without much style ... please don't kill me ) that work perfectly.Do you need to study Ruby to learn Rails?Your most difficult challenge will be to learn (or understand) the names of the structures where you see code examples. This is why it is useful to follow a brief introduction to Ruby. You should be able to recognize when you are seeing a matrix or a hash. You must recognize when you are looking at an iterator or the syntax of a block with Ruby. Eventually, you will recognize more exotic Ruby formulations such as lambda. It's fine if you can't write a lambda function or even know when to use it; Many Rails developers start working before learning Ruby in depth.