Read my new article on Site Point about MySQL Replication (Part I and Part II)
My Contact Details
My Books
My Projects
MySQL Replication
Maze Implementaion in Ruby
This is an implementation of a Maze algorithm to find the path from start to goal in between the walls of a maze.
Read the details here.
Octopus Problem With Rake
This week I have decided to use octopus, a fantastic gem for realizing replication or sharding. I have already implemented MySQL Replication (Master / Slave) and I wanted to have my Ruby on Rails application actually use it!
This is my github project: Octopus Replication Example
Your comments are welcome!
Rails and Test Unit Bug on Counting Passed Tests
During the weekend I have discovered a bug on Rails activesupport gem. The truth is that it has already been reported to Rails. It is the issue https://github.com/rails/rails/pull/2472.
You can see my detailed answer here: http://stackoverflow.com/questions/7706487/rails-tests-showing-0-passed-when-all-pass/7939497#7939497
Use the gist that is referred there until the bug is fixed.
As always, your comments are welcome.
Rails Validator Attachment
I believe that testing is the most important part of the software development lifecycle. Nothing is ready unless it passes successfully all tests.
Meanwhile, I am trying to test as much aspects of my Rails application as possible. One such are the validations that I have on my models. To help my task on testing validations, I have created a gem that helps me out there.
You can find more details here:
Your comments are welcome.
Ruby on Rails Gems I Use
Since I have started developing applications with Ruby on Rails, I have used again and again some very useful gems. Here they are:
- bundler: The gem dependency resolver and manager.
- mysql2: The ActiveRecord adapter for MySQL. MySQL is my personal preference for database server.
- fast_gettext, gettext_i18n_rails, gettext: For I18n.
- routing-filter: I used this one in one of my multilingual applications, when I wanted my paths to include the locale.
- foreigner: Allows me to declare foreign keys in my migrations.
- nilify_blanks: Very useful to convert empty parameter values to nulls and avoid storing empty strings in db where it should be null.
- jquery-rails: For jQuery used in rails.
- settingslogic: For run-time configuration settings.
- dynamic_form: For “error_messages_for” in my views.
- kaminari: For pagination in my index views.
- unicode: For Unicode support which is missing in ruby 1.8 (available in 1.9).
- rmagick, carrierwave: For image uploading and resizing.
- acts_as_list: For lists that I want to be able to easily reposition their items.
- sitemap_generator: Usefull gem to let you generate sitemap files.
Especially for development and testing:
- mongrel: A web server adequate for development and better than Webrick.
- web-app-theme: A layout for quick start of my web fron end.
- ruby-debug, ruby-debug-ide: For debugging from within my IDE (Intellij)
- mocha: For Moching and Stubbing
- single_test: To be able to run a single test from the command line
- cucumber-rails, database_cleaner: For Cucumber tests.