One interesting fact about the Ruby ecosystem is its hyperactive nature. New updates, features, and tutorials spring up almost everyday. This makes the ecosystem interesting and fun, yet it could bring untold harm to new Ruby programmers. It is possible to get lost in the volatile nature of this interesting community without a sense of direction.
This is one article I wished had been written before I ventured into Ruby programming. I am writing this to help new Ruby programmers from encountering the challenges I faced by suggesting books, courses, blogs, and forums which, in my opinion, can be instrumental on their journey.
The community that grows up around a programming language is one of its most important strengths. Ruby has a vibrant and growing community that is friendly towards people of all skill levels. – Ruby-lang.org
This is the book I started with first. It proved that the hard way is the better way! This is a no-nonsense book for new Rubyists. It makes you dedicate your time to really getting you hands dirty with Ruby through the exercises after each chapter. This is a perfect book for someone starting to learn Ruby. In fact, I would give it to someone who is just starting out. This is why it is the first book on my list.
This book, published by David A. Black, has been of great benefit to me in learning Ruby. The Well-Grounded Rubyist starts with the basics of the Ruby language and further explains Ruby objects from the ground up. The author focuses primarily on the core of the Ruby language. I love the fact that he avoided libraries and frameworks here in favor of providing an in-depth look at Ruby.
The book is written with code samples that are very effective in learning. Though it is not a new book, it’s impact cannot be underestimated. The book goes beyond the circle of new Rubyists. As one reader commented:
“The technical depth is just right to not distract beginners, yet detailed enough for more advanced readers.”
If you are looking to really get your hands dirty with pure Ruby, dive into The Well-Grounded Rubyist.
The book covers the following:
Part 1 – Ruby Foundations
- Bootstrapping your Ruby literacy
- Objects, methods, and local variables
- Organizing objects with classes
- Modules and program organization
- The default object (self), scope, and visibility
- Control-flow techniques
Part 2 – Built-in Classes and modules
- Built-in essentials
- Strings, symbols, and other scalar objects
- Collection and container objects
- Collections central: Enumerable and Enumerator
- Regular expressions and regexp-based string operations
- File, I/O, and system operations
Part 3 – Ruby Dynamics
- Object individuation
- Callable and runnable objects
- Callbacks, hooks, and runtime introspection
I added this book to the list for curious new Rubyists who want to try their hands at the scripting powers of Ruby. This is my goto book for system administration using Ruby. It does not introduce Ruby, but focuses on what Ruby can do for you. There are common tasks, a practical look at performance, the power of metaprogramming, how to build files the smart way, object storage and retrieval, how to work with enterprise data, how to network for fun and profit, and network monitoring.
This is a how-to book for system administration.
If you are looking to get started with Ruby by taking a course, I recommend this offering from Learnable. Taught by Darren Jones, it starts from the very basics, bringing you in contact with all that you need to know. The course is neatly laid out with a clear explanation of everything. It is a course with 6 lessons that last for about 3 and a half hours. I know how valuable this course can be for new Rubyists, as I have taken it myself. There is absolutely no way to get bored when participating in this course, as it makes learning Ruby fun.
Team Treehouse excels at providing great courses. This course starts off with Ruby basics and extends further into: Operators and Control Structures, Collections, Ruby Loops, Objects and Classes, Booleans, and Blocks. It ends with a tutorial on how to build an address book using Ruby. Be sure to keep your text editor up as you will be getting your hands really dirty.
The SitePoint blogs are a great resource with vital information about Ruby and other programming languages. SitePoint Ruby has tons of articles covering different subjects, such as security, gems, and deployment. This is the number one Ruby blog I would recommend to a new Rubyist. This is a bit of a shameless plug, but I have truly benefited from the articles on this site.
I recently came across this blog and I must confess that it indeed is worth bookmarking. It is a great blog for new Ruby programmers, as it offers tons of articles thats date back to 2007. I have yet to fully exhaust the information there and I highly recommend it to new Rubyists.
RubyFlow is a community link log on Ruby and Rails where links to Ruby articles are submitted. This list helps me keep up with the new happenings in the Ruby ecosystem. The links posted here spread further to Ruby Weekly, a weekly newsletter on Ruby that gets sent on Thursdays, which I highly suggest you sign up for.
If you have questions or you need clarity on any issue surrounding Ruby, I recommend Stack Overflow. Though it is not an exclusively Ruby community, the value it provides is enormous. As a beginner, it is possible to misunderstand the posting rules, so I recommend you read and understand the rules of asking. Most times when you search for an answer to a question on Google, you will come across links to posts on Stack Overflow. Be sure to search before asking, as there’s great chance the answer is already out there.
The Ruby Reddit is another community you should consider using. With a reading audience of almsot 30,000, you can be sure to get answers to your questions. I started using reddit recently and it has been of great benefit. Just browsing through the topics can bring reveal important information. Aside just asking questions, reddit allows users to submit links to articles, which are then upvoted by the community
With this little guide I trust you, as a new Rubyist, will be able to sail safe in the volatile waters of the Ruby ecosystem. Be sure to try out new things during your journey, as there are tons of resources out there. Have a safe trip!