In 2003, a Danish programmer by the name David Heinemeier Hansson created a web development framework that became known as Ruby On Rails. He extracted it from the work he was doing for 37signals building Basecamp.
Since then this framework has gone on to be used to build world scale applications such as Github, Shopify and Airbnb.
According to the official definition:
Rails is a full-stack framework. It ships with all the tools needed to build amazing web apps on both the front and back end.
Rendering HTML templates, updating databases, sending and receiving emails, maintaining live pages via WebSockets, enqueuing jobs for asynchronous work, storing uploads in the cloud, providing solid security protections for common attacks. Rails does it all and so much more.
This framework solves the problem writing boilerplate code all over again for new projects and with convention over configuration, it introduces conceptual compression, which means that you can focus more on writing code that actually adds value to the business.
ROR has a doctrine, which I highly recommend you read, lays out the values and principles that guide the main decisions that shape ROR:
- Optimize for programmer happiness
- Convention over Configuration
- The menu is omakase
- No one paradigm
- Exalt beautiful code
- Provide sharp knives
- Value integrated systems
- Progress over stability
- Push up a big tent
In this series we will be building an application from scratch to show the features of rails. The goal is for me to dig deeper into rails and become a better programmer. You might learn a thing or two, so let's go on this journey together.
Printshops is an imaginary printing app, where a printing shop can receive document submissions through the app, print them and ship them or have them collected.
In the next article we will have a deep dive into the requirements of this application and we start building it.
Top comments (0)