The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Use Inherited Resources Views to DRY Your Views
Sometimes just DRY the controllers is not enough, a lot of the resources often share the same views, wouldn’t it be nice to have view files DRY’ed too? You can! Inherited Resources Views is an extremely easy to use plugin to DRY the views associated with your inherited resources controllers. It is library-agnostic (it only depends on Inherited Resources) and it supports generating both erb and haml templates. Source code available at: http://github.com/fredwu/inherited_resources_views
Dalli - memcached for Ruby
I’ve created a brand new pure Ruby memcached client gem, Dalli, which is designed to replace the memcache-client gem. It drops right into Rails 3 and supports Ruby 1.8, 1.9 and managed environments like Heroku.
Simple currency converter gem!
We just launched simple_currency, a tiny but smart currency converter. Ruby 1.8, 1.9 and JRuby compatible. Check out the github repo as well and feel free to contribute!
German Rails 3 book is available.
The first german Rails 3 book is available: Rails 3 book
Rails 3 Upgrade Handbook - $9 Special
Jeremy McAnally has just announced he’s reduced the price of his Rails 3 Upgrade Handbook to $9 (from $12) for the next 3 days in celebration of Rails 3’s release. I read it a while back and.. it’s good - check it out.
jQuery Disqus Plugin
Disqus is a great plug-n-chug commenting system, but it’s lacking a few very useful features: Markdown support, code pretty printing, and callbacks to tell you when a comment has been added or edited. And getting the comment/reaction count for the current page or linked posts is overly complicated and/or not-well-documented. This jQuery Disqus Plugin hopefully simplifies the Disqus installation process while adding several helpful features.
rocking the enterprise with ruby
Sudhindra Rao and Munjal Budhabhatti explain in their “Rocking the Enterprise with Ruby” talk at the RubyKaigi how they are building (and delivering continuously) a system orchestrating Rackspace datacenters
Yet another ObjectMother pattern implementation for rails testing
I just launched Yet another ObjectMother pattern implementation for rails testing - Famili. Diff from factory-girl & machinist is usage plan ruby classes for factories/mothers which can be put in rails/lib and give extensibility and rails dependency management. I did it for using them in front-end testing with complex factories. If u have some ideas contact me.
Objectastic: form_for for data display
I just finished writing a simple (and extensible) helper for displaying data called Objectastic. It’s kinda like form_for but for data display, not data entry or editing. For rails 3, but should work with rails 2.3.x … maybe
DSL: A small library for creating Domain Specific Languages (DSLs)
I’ve just updated dsl, a gem to easily create domain specific languages within blocks, to v0.1.3
after_transactions for irreversible stuff thats not in the db
Sent a mail, added a Resque job, but something failed and you got a rollback ? Do it after the current transaction(s) have finished! after transaction plugin/gem
rendered.should have_selector in rspec-rails view specs
If you’re running into “undefined method `has_selector?' for String” in your view specs after upgrading to RSpec 2 beta 20, this article may help you.
Rails plugin for versioning RESTful APIs
A Rails plugin for making versioning of RESTful APIs easier. Checkout RestfulRouteVersion .
Adding Proc#to_source using Sourcify
Hey, i’ve just released sourcify, which introduces Proc#to_source (& Proc#to_sexp) to any vanilla Proc, cheers !!
How to Run Background Jobs on Heroku for Free
Delayed::Job and Resque are excellent ruby gems, but they require substantial funds and/or time to setup on Heroku or Slicehost. High cost/effort prevents bootstrapped startups from building apps that need background processing, like aggregators. So I’ve hacked together a template Sinatra app that uses GAE to give you free Cron and Task-Queue functionality on Heroku.
Ruby|Web Conference - Snowbird Resort
Ruby|Web Conference is right around the corner! It’s September 9-10 at Snowbird Resort in Utah. You can also hear my interview with conference organizer Mike Moore here.
How to get someone started with Rails
I just wrote a short piece about how to get someone started with Rails. I’m using a simple “do it yourself” 3-part strategy that involves pushing them in head first and seeing if they can swim ;) I’m curious if anyone else has experience with this kind of thing, though. Comments and suggestions are more than welcome!
Rails Best Practices: Optimize Migrations
I wrote another chapter of my journey trough Rails Best Practices: optimize migrations. [more inside]
34 Ruby on Rails 3 resources to get you started
I compiled a list of Rails 3 links and resources to celebrate the upcoming launch of Rails 3 this week.
Ruby Weekly: A once-weekly Ruby e-mail newsletter
I’ve launched Ruby Weekly, a weekly (each Thursday) e-mail newsletter with a roundup of the week’s top Ruby and Rails links. It’s not designed to replace any other site but is aimed at those who would find a weekly e-mail a better way to keep up. Enjoy!
Errbit: an open source Hoptoad API compatible error catcher
I just released an open source self-hosted exception notifier. It is API compatible with Hoptoad so you just have to point hoptoad_notifier at it. Check it out.
Easy "paranoid" with Rails 3
Small blog article about how you can implement a “paranoid” behaviour (soft delete) in your models in a few lines of code.
Exploring CQRS, Event Sourcing and DDD with Ruby
I just started BankSimplistic, a sandbox for exploring concepts like Command-Query Responsibility Segregation, Event Sourcing and Domain-Driven Design with Ruby. I’m using Rails and Redis for this current implementation. Everyone interested in these topics is welcome to participate in this exploration. You can find more info in the project’s Readme. Check it out!