Where to Find the Best Ruby Libraries

I’ve been looking to update my full Ruby development stack and see what all the cool kids are using. I love when Rails Rumble wraps up and they break down what everyone used, it’s one of those dog food moments for the community. While it’s a great yearly pulse, it’s not a full look into the community offering to figure out what the best ruby libraries are. Ruby Rumble is a 48 hour competition, a MVP race if you will. Chances are there are many facets of development that go untouched in an MVP so their associated libraries go unaccounted for. At this point, people are interested in the fastest development library, not necessarily the best long term decision. So where can you go to see what’s hot, popular, or the most active? I know of two such places.

Active Support - So Hot Right Now

Active Support – So Hot Right Now

Awesome Ruby

A high level list, grouped by categories that link to the project’s home page. Simple and to the point, no fluff.

The Ruby Toolbox

A more complete communal approach to the concept, including related / alternative plugins ranked against each other. There is a comments area, announcements, basically everything you would expect in a community discussion about a topic.

What Did I Find?

I came across a few gems that looked pretty interesting. I might not have an immediate need for them or they might not be the most popular, but they’ll definitely be in the back of my mind if they solve a problem I’m looking at.

Draper
Decorators/View-Models for Rails Applications.
Abracadabra
The gem that swaps out text with a fully-compliant Rails form in one click.
Crêpe
The thin API stack.

Turntable.fm replacement plug.dj looks great

I was really upset when turntable.fm went offline, it was something I ended up using regularly. Before that site, I really didn’t understand what a “DJ” was, I thought it was just some guy that hit the play button. But the more I used the site, the more I started to understand a good DJ can feel out the vibe in a room and decide where to take it through music. It was quite the epiphany when I put that together. When that went offline, I thought that experience was gone. Then I find plug.djRead On…

Unplanned Look at the Product Pounce Landing Page Design

I’d rather be building out features, but it looks like I need to revisit the Product Pounce landing page design sooner than later. This wasn’t completely unexpected since I’ve been adding more features to the site and want to showcase them right off the bat. The current homepage is barebones at best; it is designed to say what we do and how simply how it works. As of right now, some of that content is out of date. Read On…

Setting Access-Control-Allow-Origin for a rails application

I was experimenting with AngularJS and using Rails as a backend and needed to enable Access-Control-Allow-Origin for $http. Here is a simple snippet I created that does the trick. If you were doing this in production, I would assume Apache or Nginx would be the appropriate place for this code. However, this is just a POC.

# application_controller.rb
after_filter :local_access_control_headers

def local_access_control_headers 
  headers['Access-Control-Allow-Origin'] = 'http://localhost:8000' 
  headers['Access-Control-Request-Method'] = '*' 
end

Well planned and executed marketing by Wegmans

Wegmans isn’t just a super market around here, it’s a destination. Going the store is less about “getting food” and more about shopping. My local store is huge, but it feels comfortable. The selection is massive, but I can always find what I came for. I can also find things that I didn’t come for and didn’t know I wanted until I saw them. So how can Wegmans accomplish this? How can they have a massive store, but yet have items that catch my attention that I wasn’t specifically looking for. The answer: The Wegmans Magazine Read On…

Being agile or using Scrum does not mean sitting in the same room

I had a troubling conversation about Agile with project manager that is transitioning into a “Scrum master” role. I used the noun version of agile since I live in the corporate world and if we cannot fit it into a box, it’s not enterprise ready. What made me pause was his immediate reaction to impose his understanding and view of Agile on an existing and copasetic team.

Read On…

Capistrano, SSH Keys, and multiple Git repos

I hate monolithic software. It causes so many problems when trying to be fast and agile when refactoring or rolling out new features. Just like the single responsibility principle in SOLID,  I like clean separation of project concerns too. This leads me down a path of having multiple Git repositories, which in itself isn’t an issue, but it does tend to get a little tricky when using a service like GitHub or Bitbucket that requires SSH keys for deployment. So, how do I handle this? Read On…