Archive for the ‘ruby’ Category

Exciting New Data Structures in Ruby 3

Update: The following lies were posted on April Fools’ Day. Here’s a sneak peek at two new data structures that are being proposed for Ruby 3. Arrayish An arrayish is just like a Ruby array except that you cannot modify its contents and its elements must be literals. At first glance this seems like just […]

Babies vs. Zombies

I’ve put the slides online for my Boston Ruby Group talk “Babies vs. Zombies”. In the talk I mentioned the excellent paper Big Ball of Mud and the fascinating study “How Many Variables Can Humans Process?”.

The $100,000 Career Mistake Rubyists Make

Are you a good Ruby on Rails developer that loves to code? Have you published a high-quality, successful gem? If not, you may be making a mistake that could cost you as much as $100,000. If this surprises you, there are three things you should realize: Fact #1: If you can create a high-quality, successful […]

Don’t Play Football with a Basketball

The Wicked Good Ruby Conf got off to a great start today with a powerful singing performance by Liana Leahy and a wonderfully inspiring and sobering keynote by Sandi Metz. After the keynote, I attended the talk Wicked Bad Ruby by Matt Aimonetti and it really struck a chord with me. The discussion afterwards with […]

From Ruby to JavaScript

Last Tuesday I spoke at the Boston Ruby Group about strengthening your JavaScript skills. I’ve put the slides online. Enjoy!

Sanely Updating Your Gems

If you followed my advice in the previous post, your Gemfile would look something like this:

source :rubygems
gem 'rails', '3.0.3'
gem 'devise', '1.1.5'
gem 'redgreen', '1.2.2'
gem 'capybara', '0.4.0'

There’s nothing wrong with this except that if you wanted to keep your gems up to date frequently it would be tedious to manually change all of these versions. Fortunately, we don’t always have to be this exact with the version numbers.

The No-Nonsense Guide to Managing Gem Versions

If the Ruby code you write never leaves your computer, then this article is not for you. But if you find yourself sharing Ruby code with others, or deploying your Ruby code to a web server, then you have a problem. And that problem is gem versions. Sooner or later, the version of a gem on your computer will not match the version of that gem on your production web server, and your cute little disruptive social media web app will fail in a steaming pile of 500 errors.

Introducing Tabulous: Tabs in Rails

If you’re like me, most of the Rails applications you’ve written use tabbed navigation. And if you’re like me, you find that writing the code to handle tabs becomes increasingly more boring with each new application. So I wrote tabulous. Tabulous aims to solve this problem once and for all with a quick and easy way to set up and manage your tabs.

Rack::Plastic Helps You Write Rack Middleware

Back in November I participated in the CodeRack Rack middleware contest. Besides submitting entries that were stupid and downright dangerous I actually managed to create some middleware of value.

Using Capybara in Rails 3

Capybara makes it easier to write integration tests. Its syntax is very similar to Webrat’s. The main difference between Capybara and Webrat is that Capybara has more architectural flexibility. It works with a variety of JavaScript-enabled browser simulators and–because it’s based on Rack–it works with any Rack-compatible web application or framework. Another advantage is that Capybara is compatible with Rails 3, but Webrat isn’t. Because Capybara is basically a more flexible Webrat, Capybara and Webrat are likely to merge.