December 2009
1 post
No returns →
Chris Wanstrath makes a good point about an ugly way to initialize a variable, but I don’t agree that an explicit return is the best style to use. The original ugly: def logger unless @logger...
November 2009
1 post
RubyConf 2009 Lightning Talks →
Last night it was my great pleasure to host the Lightning Talks session at RubyConf 2009. We had an amazing series of 20 talks that took just over 2 hours. The tech gremlins seemed to be off…
September 2009
2 posts
Pair programming isn't right for all projects →
My hat’s off to Obie Fernandez for his recent article 10 Reasons Pair Programming Is Not For the Masses. I don’t actually agree that only the elite are cut out for pair programming, but I do think…
Circle of death →
July 2009
1 post
Discipline and creativity →
I was chatting with a friend over dinner this weekend about the impact of work environment on one’s ability to excel as a software developer. We’ve both worked for companies where we’ve had to work…
June 2009
1 post
It's a wrap! →
We’re finally getting all our after-conference activities completed. The most exciting thing is that we just got our conference media online. We have video and audio recordings of the Golden Gate…
April 2009
3 posts
Not the post →
This is not the post I wanted to write. The post that I wanted to write, that I in fact have mostly written and would have posted days ago if not for this distraction, was about what a great success…
The Week Of →
Here we are, the week of Golden Gate Ruby Conference 2009. Everything is in good shape, and we’re looking forward to having an awesome time. So here is some last-minute information about the…
The Week Of →
Here we are, the week of Golden Gate Ruby Conference 2009. Everything is in good shape, and we’re looking forward to having an awesome time. So here is some last-minute information about the…
February 2009
1 post
The tyranny of choice: It's our turn now →
Rails used to be about simplicity. I just started a new project in Rails 2.3. Here’s all the choices I’m now faced with:
Database: MySQL, PostgreSQL
Testing: Test/Unit, RSpec, Shoulda,…
January 2009
1 post
Announcing Golden Gate Ruby Conference →
This has been a long time coming, and I’m very happy to finally be able to announce the first ever Golden Gate Ruby Conference, here in San Francisco on April 17 and 18. There’s so much interest…
December 2008
2 posts
Agile git and the story branch pattern →
I’ve been using git for source code management for over a year now and I’m totally hooked. I won’t rave about all the usual reasons WhyGitIsBetterThanX since it’s been done already. Instead, I’m…
Saying Goodbye to New York, Speaking at nyc.rb →
As my extended silence here has probably indicated, New York has been keeping me busy. It’s been a crazy, hectic, and wonderful couple of months. I learned a lot, met some great people, and ate way…
September 2008
1 post
Hello, New York →
By way of the obligatory sorry-I-haven’t-blogged-much-lately apologette, I should say that life has been busy this summer. The second biggest deal for me was, get this, moving to New York City. Yes,…
August 2008
1 post
Sorting things out →
I recently packed up everything I own and moved. I’d lived in my old place for about nine years and I have the packrat gene on both sides of the family tree, so I had a lot of crap to sort through…
July 2008
1 post
Microsoft to Aquire Powerset →
June 2008
4 posts
Extra geeky: the recursive lambda →
I’m not sure where I first heard that you could do a recursive lamdba in Ruby, but it’s been simmering on the back burner of my brain for a while. I’ve just never had a reason to use one, until…
An extra special case →
A couple of months ago I ran into a weird issue in my current Rails project that made no sense at all. All we did was add a lock_version field to a model to enable optimistic locking and suddenly…
me me me! →
I’m finally recovered from RailsConf. Wish I could say the same thing for my car, which seems to have gone into a major funk from being ignored so much. Anyway, it’s been cool reading all the…
The Great Test Framework Dance-off →
Got my RailsConf talk done yesterday. Seems to have gone over well, though my slides didn’t show color well in the brightly lit room so they turned the lights down all the way to see them better and…
May 2008
4 posts
Quick RailsConf Update →
Quick RailsConf Update DrNic complained about the lack of blogging from RailsConf, so here’s a quick little update with some highlights. It’s still early here and I have to get to breakfast…
See you at RailsConf →
Seems like only last week that I was in Portland for RailsConf, but it was a whole year ago. That means it’s time to do it again. I’m looking forward to the conference and getting to soak in all the…
Holy God, Powerset Launches →
A simple alternative to namespaced models →
A project I’m working on now is up to 57 model classes and is still growing. That’s a lot of classes - welcome to domain modeling. In my opinion, the number of classes is a fair tradeoff that keeps…
April 2008
5 posts
TechCrunch's Twitter Article Translated from... →
Symbols are not pretty strings →
Symbols are one of the basic features of Ruby that give it that certain charm we all love. They aren’t unique to Ruby (look at Smalltalk or Lisp), but they are a fundamental piece of the language….
GitHubba-hubba →
If you hadn’t heard, GitHub had their public launch today. Congratulations to Chris, Tom and PJ on such an awesome product. I’m sure there’s a bright future there. I keep getting surprised by how…
Really Simple Git Deployment with Vlad →
simple pages →
Simple things should be simple, complex things should be possible. — Alan Kay
Here’s a tiny little tip for handling those boiler-plate pages that aren’t part of your app’s functionality but you…
March 2008
1 post
Migration Concordance →
If you are a solo developer, Rails’ migrations are the neatest thing since sliced bread. If you work on a team, you know that often it can be a real pain dealing with migrations. Someone on your…
February 2008
1 post
count vs length vs size →
In Ruby, #length and #size are synonyms and both do the same thing: they tell you how many elements are in an array or hash. Technically #length is the method and #size is an alias to it. In…
January 2008
2 posts
Segregated page cache storage →
Page-caching is one of the highest leverage features in Rails. It doesn’t take much to set up, and the payoff is huge. When building Teldra I knew from the start that page caching would be part of my production deployment, as it should be for any site with pages where content changes infrequently relative to number of views. The only thing I find annoying about using the page caching feature...
Feed readers are lame and URLs are forever →
When I changed my blog software from Typo to Mephisto, my article and feed URLs all changed. I didn’t want to break all those old URLs, so I put a lot of effort into writing a ton of Apache mod_rewrite rules to redirect the old URLs to the new ones. I set them up as 301 permanent redirects to indicate that the old URL was defunct and to use the new one from then on. That means that the feed...
December 2007
4 posts
postgresql gem on Leopard stock gem system →
Book Review: The Rails Way →
Here’s another entry in my ongoing Rails book review series. Title: The Rails Way
Author: Obie Fernandez
Publisher: Addison-Wesley The latest entry in Addison-Wesley’s Professional Ruby Series is The Rails Way, by Obie Fernandez. The name is a nod to Hal Fulton’s noble classic The Ruby Way, and it’s clear this book aims to be as significant a feature in the Rails...
Rubinius Runs Mongrel →
Secret Incantations →
November 2007
4 posts
Depth First Search →
step, step, pivot, step →
Wow, RubyConf was awesome. I’m sure by now you’ve read all the various blog reports on the sessions and the werewolf attacks. Aside from some stupid, amazingly loud all-night construction across the street from my hotel room, the conference was great and I had a superb time. It was very cool to see how far alternate Ruby VMs have come, and I expect the next year to be very interesting...
This is too entertaining not to share →
13 New SD Ruby Podcasts Up →
October 2007
7 posts
Self-referential has_many :through associations →
This article updates a previous version for the Rails 2.0 way of things. Since there’s not much difference, I decided to fix up the example code to be more understandable. After all, not everyone is a discrete math geek.
This example updates the one from the previous article. The only significant difference is that you don’t need to specify the :foreign_key when using the...
RubyConf and QCon →
RubyConf 2007 is just a few days away. I’ll be there in Charlotte, basking in the Ruby love. If you’re there, do say hi. I always like meeting my readers.
Also, I’ll be at QCon in San Francisco next week. On Friday afternoon I’ll be speaking on James Cox’s panel: When is Rails an Appropriate Choice?
ForwardsToEnumerable →
Book Review: Pro Active Record →
I’ve been wanting to start doing some book reviews for a while, so here goes. The folks at Apress have been kind enough to send me review copies of a couple books, so I’m going to start with one of them. First up, Pro Active Record. Title: Pro Active Record: Databases with Ruby and Rails
Authors: Kevin Marshall, Chad Pytel, Jon Yurek
Publisher: Apress My first thought at seeing...
MicroPlace: invest wisely, end poverty →
And now for something completely different… I’m talking about the launch today of MicroPlace, a new website which was written in Rails. I don’t usually call out such sites, but this time is different for a few reasons. Firstly, I helped build the site, so I have a personal involvement in it. Secondly, it’s a good cause that’s worth talking about. And lastly, the...
Simpler than dirt: RESTful Dynamic CSS →
Way back when, I wrote about how to do Dirt Simple RCSS in Rails. Now that Rails 2.0 is upon us, it’s time to get even simpler. With all the restful magic in Rails 2.0, you can get even simpler than dirt. Let’s assume you have a restful User resource. You’ve got your “map.resources” in routes.rb, a typical User model, and a Users controller with standard views like...
Everything old is new again →
As you’ve likely seen in your feed reader about 50 times already, Rails is turning 2.0. The Preview Release has just been announced, which means that 2.0 final is just a few release candidates away. So much has changed over the last year or so that a lot of the older material on this blog is out of date and needs updating for the reality of 2.0. Seems like now is a good time to get going...
September 2007
6 posts
RPM Version Comparison Revisited →
<3 rpm version comparison →