(Part 2) Best products from r/rails

We found 24 comments on r/rails discussing the most recommended products. We ran sentiment analysis on each of these comments to determine how redditors feel about different products. We found 49 products and ranked them based on the amount of positive reactions they received. Here are the products ranked 21-40. You can also go back to the previous section.

Top comments mentioning products on r/rails:

u/purephase · 3 pointsr/rails

I don't think you need it explained from a Rails point of view. Ruby is an OO language, and Rails simply exploits that.

You need to learn proper design patterns in Ruby (which apply to most OO languages). Sandi Metz's Practical Object-Oriented Design in Ruby is pretty much the gold standard for Ruby and very readable.

It's based heavily off of Martin's Agile Software Development, Principles, Patterns, and Practices.

After that, you can look into SOLID but, in Ruby-land, I think the single responsibility principal coupled with the rules laid out in Metz's book (summarized here) is a good place to start.

Also, it's worth noting that if you have good test coverage it makes re-factoring much, much easier.

Good luck!

u/LegionSB · 2 pointsr/rails

The best thing for you are old books from that time. And they're cheap.

You're just looking for books that are in the Rails 2.x range, as it'll be hard to be specific to 2.1, but Rails release notes will help you bridge the gap between specific point releases.

The third edition of Agile Web Development With Rails and the first edition of The Rails Way are both Rails 2.x books.

Here's also an old online Rails 2.1 tutorial to help you in the meantime, but don't try to just get by on the few old web tutorials that are still online. Order books today. They're much deeper and broader than a web tutorial and they'll be invaluable if you're going to be working on this project for any real period of time.

EDIT: Michael Hartl's fantastic railstutorial.org has the "pre-1st edition" version of his book, which covers Rails 2.3, still available for free PDF download. Definitely grab that.

u/CdmaJedi · 3 pointsr/rails

I learned binary trees, linked list, and hash tables as a sophomore in high school. It was rare back then, but we had a pretty awesome CS department. I would check this book out. It has a lot of zany, non real world problems that may come up in an interview. Plus, it's kind of fun (imo). I don't do rails, but I think the logic is applicable in any language.

http://www.amazon.com/Cracking-Coding-Interview-6th-Edition/dp/0984782850

Edit: I just read the preview on amazon. It has been a while since I read this book. Buy it. It covers a good amount of data structures, algorithmic run-time complexities, bit manipulation, and all kinds of good stuff.

I'm on my phone, but when I get home I'll link some more stuff for you

u/materialdesigner · 2 pointsr/rails

Honestly, not really. I've got copies of both The Cucumber Book and The Rspec Book and both are alright, but both are more than likely pretty much out of date. If you're looking for syntax, I'd just suggest reading the documentation for the relevant libraries.

I've heard okay/good things about Rails Test Prescriptions but haven't personally read it.

I have a few blog posts that I enjoy:

u/in0pinatus · 4 pointsr/rails

Despite the title, this isn't the Design Patterns[1] State Pattern.

In the State pattern, a context object (such as an order) changes its behaviour by delegating all state-specific methods to another object that implements the behaviours for that state. When the state is changed, the context object switches to using another state object - which will have the same interface, but the implementation is state specific.

So, taking the example in this article, an Order object chooses between state objects of Order::State::Cart, Order::State::Cancelled etc. It then delegates business methods like "add item", "refund", or "ship it" to the state objects.

This takes care of the expectation that an order still in the shopping cart state behaves differently to a cancelled order, but without having Order fattening itself with all the knowledge required.

So as a refactoring this is helpful in opening up a context object for extension without bloat, by localizing and partitioning that state-specific behaviour; there are other benefits besides[1].

What the State Pattern isn't: a nice DSL to describe your state machine's states and transitions and callbacks. That's definitely a utility offered by state machine gems, but labelling it the State Pattern is off in the weeds and missing out on the real OO refactoring.

[1] Design Patterns; Gamma/Helm/Johnson/Vlissides, 1995. pp305-313

u/saucykavan · 5 pointsr/rails

Where do you live? Check if there is a Ruby User group nearby, if there is that would be a good a place to start as any.

Also, have you tried to learn by yourself using the internet or a book as guidance? Agile Web Development with Rails is pretty darn good, and is currently priced at less than what an hour long private lesson would be.

u/kcmidtown · 2 pointsr/rails

Beginner/Junior Dev here very new to rails (2 months experience, 1 app in production) just jumping on the Rails/testing bandwagon. I've been working through Rails 4 In Action and it's great in that it approaches everything TDD / BDD using RSPec and Capybara. It's been a huge help so far in showing what to test and how to test first and develop to the test.

https://www.amazon.com/Rails-Action-Revised/dp/1617291099/ref=sr_1_1?ie=UTF8&qid=1494530818&sr=8-1&keywords=rails+4+in+action

u/jryan727 · 1 pointr/rails

This is fantastic advice. While it's frustrating to not be able to frame a debate around what you care about/what you find important, if you think about it, you really always have to frame your argument around what the person you are trying to persuade cares about and what they find important. In this specific instance, they're different for The Executive and The Engineer. But in all cases, it never really matters what you care about - you need to appeal to the concerns of the person you're persuading.

​

If any of this interests anyone else, I strongly recommend reading Dale Carnegie's How to Win Friends & Influence People. Now I know you're thinking, but jryan727, how can a book written in 1936 possibly apply to a debate over tech stacks?! And you'd be right to be skeptical - but it turns out, people haven't changed much over the past 83 years, we just talk about different things. If you want to learn how to control the world around you with words, then you should read this. It truly is the missing instruction manual to human beings.

u/SaxPax · 2 pointsr/rails

This is a great, informative post. The only thing I can add is that if you choose Angular.js and want a book on it, I found O'Reilly's "AngularJS" book very helpful in understanding how it works

http://www.amazon.com/AngularJS-Brad-Green/dp/1449344852/

u/personal_opinions · 1 pointr/rails

+1 for devops. Anyone looking for a reference manual for Linux should check out Mark Sobell's books. Really useful and doesn't become obsolete after a year (or even 10 years!). Just got his 3rd edition Linux manual for Christmas and I'm ecstatic.

u/RecoverPasswordBot · 1 pointr/rails

Thanks for the advice. I don't really think Google is in my reach as a non-CS degree student, and I feel like I'd enjoy working in a startup/smaller company environment regardless. I'm thinking about going through Sedgewick's Algorithms 4th ed. book. It gives a high-level overview but also provides Java code as examples of implementation. I'll then try to adapt said Java into Ruby and tackle the exercise problems in Ruby as well. Does that sound like a solid plan to you?

u/menge101work · 1 pointr/rails

If you are interested in a book on the subject, check out A Friendly Introduction to Software Testing

This book is about testing software agnostic of language.

u/miah_ · 2 pointsr/rails

You do not need to run nginx. Yes you can run haproxy -> unicorn directly.

Split your static content up and have it served by a pool of nginx servers. Then push all your app requests directly your your nginx servers.

The problem with haproxy -> nginx -> unicorn is queues.

Imagine you have a single load balancer that is managing incoming traffic to a pool (3 nodes) of nginx+unicorn. When a user session ends up in the connection queue of a nginx server not much can be done. That user session is going to sit there until the unicorn server behind it can process it.

Now, imagine that you had a single haproxy, sending {.gif,.jpg,.css} to your nginx pool. Also imagine that you have a api like '/api'. Now you can configure haproxy to do URI based routing and send traffic to a system that will process it fast. If a session sits on a unicorn server too long, it can be sent to a different server by haproxy (of course, it depends on your application supporting such actions).

John Allspaw wrote about this in The Art of Capacity Planning

u/stupidandroid · 1 pointr/rails

As someone currently reading up on Object Oriented Design practices this post is a huge help! I was thinking how some of the OOD lessons would apply to Rails since it's a framework and already provides ways to separate concerns in your code.

u/Hazz3r · 2 pointsr/rails

My company uses RSpec. I was introduced using Chelimsky's The RSpec Book. It touches not only on RSpec but Cucumber and Behaviour Driven Development. It's a solid technical document and would probably serve you well!

u/benjamin_dwight · 2 pointsr/rails

Try Metaprogramming Ruby 2 -- tons of advanced technique with real-world examples from current gems. It will expand the way you think about Ruby and give you design ideas for your Rails projects: https://www.amazon.com/Metaprogramming-Ruby-Program-Like-Facets/dp/1941222129/ref=dp_ob_title_bk

u/WashingtonTenant · 2 pointsr/rails

Would Rails run more smoothly on a Chromebook like this https://www.amazon.com/HP-Chromebook-14-q029wm-14-Inch-processor/dp/B00G4TF1O6
Or a first generation Surface Pro? Or I mean, which would you rather run Rails on?

u/saeglopur · 1 pointr/rails

I felt the same way coming from a C++/Java background where I started with a blank text file and just started writing my program. Rails felt too magical and I wanted to know how it works! Well the answer is you need to get Agile Web Development or [The Rails 4 Way] (http://www.amazon.com/Rails-Edition-Addison-Wesley-Professional-Series/dp/0321944275) and just start reading. They explain how every single line of every single default file in a Rails project works.

u/piratebroadcast · 0 pointsr/rails

You should pick up a used copy of The Rails 3 Way. It provides more in depth details about what certain things are. Sessions, etc. I keep a copy at my desk.

http://www.amazon.com/gp/offer-listing/0321944275/ref=dp_olp_used?ie=UTF8&condition=used

u/anamis · 2 pointsr/rails

Two books that helped me get to another level were:

u/james05345 · 4 pointsr/rails

I'm reading a book: metaprogramming in ruby. Learning a lot about how ruby and rails works. Take a look.

http://www.amazon.ca/Metaprogramming-Ruby-Program-Like-Pros/dp/1941222129/ref=dp_ob_title_bk

Also ruby under a microscope: https://www.nostarch.com/rum