RubyFlow : The Ruby Community Blog

Home   Submit   Sign Up   Log In   leaders   Twitter   RSS Feed  
October 22, 2014
For anybody using Cloud 66 and/or Codeship: The two services now integrate and it only takes one line of code to set everything up.

You can read more here.
Maybe you’ve learned the “what” of Rails, but don’t understand the “why” and the “how.” Maybe you're about to give up on Rails because you just can’t put the pieces together. If you feel like running away when you stare at your newly-generated Rails app, I wrote a book for you.
I just released a utility for finding suboptimal Ruby class API usage. It uses runtime code analysis to find problems.
Just because your dependency doesn't contain Ruby or Objective-C doesn't mean you can't use Rubygems or Cocoapods to manage shared code.
There’s a lot confusion surrounding Ruby’s multithreading capabilities. Especially, with regards to all the changes between 1.8 and 1.9. So, let’s be absolutely clear: MRI Ruby does in fact support OS-level threads.
October 21, 2014
I released an open source Rails engine named Payola that you can drop into any application to have robust, reliable self-hosted Stripe payments up and running with just a little bit of fuss.
Taking a tag-based approach to content categorization gives your users much more flexibility in terms of quickly finding desired information, products, and blog entries. In this article I'll show you how to incorporate tagging and tag clouds into your Rails application using the powerful Acts As Taggable On gem. Read the article
So, you’re working on a new app, and Rails just generated a test for you. You uncomment it, come up with a name, and you’re ready to write your test, right? But then what? What do you write first? What should your test code look like? If you follow a simple pattern, you’ll turn those stubbed out lines of code into clear, well-structured test cases.
Rails Rumble is a 48-hour app-building competition. Requirements are easy: Rack framework, host on Heroku, nothing production-ready created prior to the start and no pushes after close. It occurred past weekend. Join discussion and sharing on reddit/r/rails.
October 20, 2014
I uploaded a new version of pumog 1.0.1. Pumog stands for **PuppetModuleGenerator** and can be used to generate a basic structure for new puppet module with or without documentation.
Polymorphic associations can be confusing to people who are new to Rails. We wrote a tutorial and used some examples to explain it.

Polymorphic Associations in Rails
When building a custom background processing system, at one point, you need to worry about how you spin up and manage multiple worker processes. This is where most people reinvent the the wheel, and write custom code. Don't reinvent the wheel, and use Einhorn instead.
Green Ruby News #89
Green Ruby News #89 is out. Fresh links for your Monday.
October 19, 2014
Hello Rubyflow, we're the authors of Raptor, a new Ruby web server that's up to 4x faster than Unicorn, and up to 2x faster than Puma/Torquebox. It has taken us a lot of blood, sweat and tears to write, and we're wrapping up for a release in the near future. You can learn more at
If you need to work with Cucumber or Turnip and read data from outside of your script, you can use this little metaprogramming trick.
I just relaunched my book Mastering Modern Payments. It's a concise, comprehensive guide that helps you go from blank Rails app to robust, reliable Stripe payments in as little time as possible. The second edition includes a large number of edits, updates, and revisions, including a brand new chapter about subscriptions.
October 18, 2014
It was a while ago, but when I read "Metaprogramming Ruby," I followed along by writing brief summaries of the explanations in the first half of the book along with example snippets. Annotations were produced with xmpfilter.
Mike Mazur talks about Page Objects over at the Neo blog.
October 17, 2014 CTO Yan Pritzker shows how to apply domain driven concepts to create "write once, don't modify" code in Ruby on Rails. The video of the talk is up and slides are here.
October 16, 2014
If you're upgrading to Mac OS X Yosemite, now's the time to update your Rails development environment as well. Here's my article on Installing Ruby on Rails on Mac OS X Yosemite.
The decent_exposure gem can go a long way towards cleaning up your RESTful Rails controllers, resulting in significantly less boilerplate code you'll have to write to implement conventional RESTful actions. This tutorial introduces you to this great gem, and offer several examples demonstrating just how much code decent_exposure can eliminate.
I released version v1.0.2 of search_cop as a bug fix release. search_cop adds search engine like query features as well as fulltext index capabilities to ActiveRecord. Go ahead and try it out.
8 steps to move Rails view to Marionette with a lot of code snippets + additional resources list.
October 14, 2014
We wrote a tutorial on how to integrate Facebook OAuth with Rails apps with the Omniauth-facebook and koala gems.
Rails & memory leaks
Rails & rescue from memory leak.
Check out our brand new app 'Reward Them' Reward Them is a recognition and reward system which primary role is to strengthen relationship between co-workers. Experience and time showed that it also perfectly works as a motivational tool.

Because sometimes it is much easier to tune in a radio than your own team.
How does Rails handle gems?
If you're not sure how Bundler works, the way gems get pulled into Rails might seem a little too magical. How does adding a line to a Gemfile get code into your app? How do Bundler, Rails, and RubyGems work together to make handling dependencies easy?
Here's a preview of a new feature for Intercity. We just launched easy one-click Rails integration for your Digital Ocean Droplets.
We created Metaslug, a gem to let you easily manage your metas informations (title, description, opengraph…)
pg_morph is a gem created by Hania Seweryn from Lunar Logic. It makes it possible to add foreign key constraints for each polymorphic relation type with ActiveRecord and postgreSQL. Hania wrote the "Polymorphic relations and DB consistency with ease? From now – yes!" post about it. Have a nice reading!
October 13, 2014
I just wrote a post on evaluating reverse polish notation using a stack in Ruby.
Hello, using the beer.db - open public domain brewery, brewpub and beer data - and - of course - Ruby let's you make your own beer map thanks to GeoJSON. See an example beer map for Austria (~200 breweries n brewpubs). The build script geo.rb - still early and rough - but working is just a couple of lines. Cheers. Prost. Kampai.
I have a new series I'm working on called RubyMotion for Rails Developers. The intro video and the first episode ("Hello RubyMotion") are up and free to watch to get an intro into using RubyMotion. There will be a new episode released each week. Subscribe for only $9/month to get access to the other 11 as their released.
Green Ruby News #88
Green Ruby News #88 is out, fresh links from last week for fullstack ruby devs.
Route Globbing in Rails
A blog post about route globbing in Ruby on Rails
October 12, 2014
A blog post about a patch on the Dalli Memcached adapter for Rails that is really a discussion about a gem called Watchdog that makes monkeypatching less dangerous.
I've released pastel to allow for non intrusive styling of terminal output. Please give it a go and provide feedback!
October 11, 2014
A little brief about memoization in Ruby, Javascript and Python.
Check it out here!.
October 10, 2014
I just released queue_classic 3.0.2. I you are using it. Please see the upgrade instructions in the README.

I am also working on getting queue_classic to 3.1, with more support for Active Job. It works right now, it could just be a bit better :)

Things like scheduling that had to be done with a gem should be in core soon-ish (there is a PR), ActiveRecord's DB connection will be detected and used by default (can be turned off).

If you would like to help, let me know!

More on all that in this issue:
I found this great blog by Noah Gibbs, to something I've been wording about for a while. Quite often some of my forms get really into the nesting by name="name[1][key1][key2][]", this blog post provides information on how to test it out with IRB so I know exactly what I'm generating.
I just released version 0.2.0 of kibana-rack, a Rack middleware library that embeds Kibana in a Rack application and creates a proxy to Elasticsearch.

This version upgrades Kibana to the latest version (3.1.1).
Slides & list of resources for Ruby/Rails for beginners (originally made for a lecture for students of Gdańsk University of Technology but well, why not to share it further).
Rebuild a Gem: Rack
A post on building out a micro version of Rack. Check it out.
We've just released a Rails template to make creating new projects easier for us and for anyone who wants to use it. Check it out!
I wrote a gem to manage business hours in ruby.
October 09, 2014
I just published ClassyCancan. It's a tiny little gem that helps to create some cleaner ability definitions for Cancan and Cancancan.
We've recently discovered that MRI implements Tail Call Optimisation (TCO). Check out our blog post for a short summary of what we found about the TCO in MRI.
October 08, 2014
After couple of last months of slower development, I decided to take the job of solving all the open issues. While doing that I also rewrote the internals, bringing up some new features, reduced memory usage, robust command-line execution and many bug fixes. You can see the complete changelog here.

The new version brings lots of nice stuff, so I urge you to try it out, and be sure to check out the renewed readme.
I just released Inch 0.5.2 and wrote a blog post about it.

Also, this release includes basic Elixir support, which I am trying to start a discussion about.
Wisper is a micro library providing Ruby objects with Publish-Subscribe capabilities for use in Hexagonal and Domain Driven style architectures.

Wiki: How to Handle events asynchronously