Noel Rappin Writes Here


August 3, 2010: The Most Efficient Cargo Cult Money Can Buy

Passenger, Rails 3, Yehuda, rvmNoel Rappin1 Comment

Book Status

Spent yesterday's book time rearranging the Shoulda chapter so as to be more focused on the general ideas than the specific Shoulda interpretation. Today's job is making sure it all still flows.


So I have something like a half-dozen half-finished blog posts. Until the day some of those become fully finished, here's a few links.

Simone Carletti has list of practices to follow in your Rails 2.3 app to make it more compatible for an eventual upgrade to Rails 3. I literally just used this article yesterday, building a new Rails 2.3 app with Bundler, rails_xss, and a couple of other nifty things.

Yes, that's why I tweeted yesterday about the awesomeness of RVM. It was the first time I needed to keep Rails 3 and Rails 2 on my system, so the first time I created a project specific gemset -- you can find some articles with instructions in previous link posts. Easy to create, easy to share, easy to set up everybody's development environment.

This list from Istvan Hoka of Mac OS X tools for Ruby development is a little quirky, but a good overview of what's available.

I really want to start using Passenger 3. A couple of days ago the Passenger team released another preview post with more cool features. They deliberately bury the lede, though, as they close the post with a strong hint that some of the features will be held for a premium for-pay version. More power to them, I say -- free plus paid extras sounds like a good model for them.

Following up on the gems he released a few days ago, James Golick describes his rollout tool for conditionally adding new features. It uses Redis to determine user status for the purposes of conditionally executing code.

I thought about this tweet from Yehuda Katz for a while:

Am I crazy, or is it too easy to cargo-cult crazy practices from StackOverflow, resulting in compounded problems and error reports?

I see where he's getting this, but I'm not sure that Stack Overflow is all that qualitatively different than picking up advice on the internet in general. It's just a more efficient way to cargo cult, which would make a great slogan.

July 1, 2010: Screencasts and Road Maps

Kent Beck, Passenger, Ruby, autotestNoel RappinComment
A lot fewer links today. Yesterday, by the way, the most clicked on link was the "Don't do this" like to the method_missing nil post.

Book Status

Handed another draft of the Rcov and Style/Test Quality chapters in. Expecting that to be the next beta next week, but we'll see.


Kent Beck has a screencast series on TDD from Pragmatic. I linked to the rough version of this some time back. Haven't gotten the time on this yet, but expect a fuller review later on.

BJ Clark has an essay on whether acceptance tests should be written by developers or by interaction designers. Classic XP is pretty clear that customers should be involved in this process, but that's not often feasible in reality.

Tim Bray proudly announces that he has never learned the precedence rules in any language he's used. I am in complete agreement with this -- the only reason I know the Ruby ones is from writing about them.

Ryan Davis asks about having a special refactoring mode to change Autotest behavior after failing tests pass. My first impression is that this proposal might be too fiddly, but I think there's something in the basic idea.

Two recent posts about large code bases caught my eye. Sandy Walsh, from January, and Michael Feathers, from this week.

Part 2 of the Teach Me To Code Rails 3 screencast is up.

Finally, the Phusion team has another road map article, including a Passenger light that can be used in development from the command line as you use mongrel or thin. And other deployment features, as well. Cool.

June 21, 2010: Double Double Splat Splat

Database, Hudson, JQuery, Less, Matz, Passenger, Rails, Rails 3, rvmNoel Rappin2 Comments
Link post today. Turns out I built up more links than I thought.

Book Status

Somehow I wound up writing and editing the Rcov chapter, which, among other things, is the first time I've had to wrestle with RSpec 2 vs. RSpec 1 behavior, when writing about how RSpec and Rcov get along. Now I need to figure out how to write about that more coherently. Actually, I need to decide if I'm going to acknowledge RSpec 1 at all.

The book is still on sale, of course. I've gotten nice feedback so far, but not much of it, I'd love to hear from you. And if you like the book, and wanted to tell your friends, or the Internet at large, that'd be great, tool. (Oh, look, I'm turning into that guy...)


Rebecca Murphey has written "JQuery Fundamentals" a new Creative Commons book on JQuery. Looks useful, though I'd also love it if an epub version was made available. I bet I'll be referring here a bunch, though.

Looks like there will be a JavaScript native implementation of LessCS. Interesting. I'm still wondering how the Less/Sass thing plays out.

The previous two links are via Larkware's Daily Shots.

Here's a big chunk of code from Brian Cardarella that allows you to do user-selected subdomains using the Rails 3 router.

Via Everyday Rails, here's, which generates a Rails template for you, after you select some parameters. Pretty neat. I'd imagine it'll grow more parameters over time.

I think the lesson of this article by Patrick McKenzie about human names is that no matter how far you go in creating a database schema, there's always somebody who will go farther.

The Phusion team continues to tease about the impending awesomeness of Passenger 3.

Thoughtbot, in the person of Nick Quarantino, has a crazy detailed post on using Hudson for continuous integration with RVM. I'm going to go out on a limb and say this could be made easier.

I don't read the Japanese, but supposedly Matz is blogging about possible Ruby 2.0 features. If I'm interpreting this correctly, it looks like Python-style double-splats are in play, which I'd like. ("Python Style Double Splats" is the name of my new Eric Idle cover band. Sorry.)

June 11, 2010: Get Ready for Whyday

Git, Paperclip, Passenger, Safari, whyNoel RappinComment
Looks like I did get a few links gathered yesterday. I'm also working on a post about PeepOpen, TextMate, and RubyMine, I had an interesting day with all of them yesterday. I also remember working on a book-like thing once upon a time, and the whole point of doing this daily blog was to give me an incentive to work on the book every day.


August 19th is the anniversary of Why The Lucky Stiff's sudden withdrawal from the online Ruby community, and Glenn Vanderburg is organizing Whyday for this Aug 19th, as a day to "put your best practices away" and celebrate Why's unique spirit and contributions by making something great and off the normal path. That sounds like a great idea.

The GitHub team has put up, which is a short and clear reference to commonly used git commands (is it missing rebase, or am I going crazy?)

In the "been there, needed that" category, we have this little snippet from Jim Neath for determining an image's orientation from paperclip.

A couple of Phusion Passenger links: from a couple of days ago, a response to an Igvita article about Rails performance and a preview of performance in the upcoming Passenger 3.

The first Safari extension I might actually use is Instapaper Beyond.