Hi! I'm Avdi Grimm, and this is my software development blog. More...
Books and Screencasts
Small plates of gourmet Ruby code.
32 Patterns for joyful coding.
The Making of Cowsays.com
Watch me build an app in Sinatra and Rails
Objects on Rails
A developer notebook on applying classic Object-Oriented principles to Ruby on Rails projects.
The definitive guide to exceptions and failure handling in Ruby.
- Emacs Reboot
- RubyTapas Samples
- Smalltalk Best Practice Patterns
- Study Notes
- Stuff Worth Buying
- Stupid Ruby Tricks
Tag Archives: practices
How often have you heard and/or told this story? Right before the project started I’d seen some blog posts about Tool X and I really wanted to give it a try. So I talked the other developers into using Tool … Continue reading
A common client objection to pair programming is that the project isn’t big enough for two people. The assumption being that more programmers means more work accomplished (at greater cost). It occurred to me today that perhaps the best response … Continue reading
I just read Why I love everything you hate about Java. You should too. There are some very good points about modularity in there. Unfortunately they are all mixed up with some unnecessarily combative us-vs-them rhetoric. Apparently in Nick Kallen’s … Continue reading
Here’s a pattern I see a lot in discussions of development practices: Skeptic: I’ve tried practice X, and it doesn’t work Believer: What do you mean it doesn’t work? It works for me and everyone I know. You must be … Continue reading
Zed’s post on mastery is great, as usual. I have only this to add: that while mastery transcends rules, no one achieves mastery without first acquiring discipline. The masters, who eschew wrote practices to cut straight to the heart of … Continue reading
When I first heard about the RMM I thought it was a joke. Then I thought it was a terrible idea. Then Obie assured us all that it wasn’t about certification, and I thought about it for a while, and … Continue reading
A frustrating couple days of coding has crystalized a new rule for me: If you can’t demonstrate your new feature in three lines of code, you’re not done. But it works from the client UI? Great. And it’s fully tested? … Continue reading
The first technique we’ll look at in this series is something so basic it may not even seem worth spelling out. But sometimes old-school techniques are overlooked in the excitement of a young language. Let’s use as our example a … Continue reading
The one objection I _haven’t_ heard yet to my monkey patching rant is: you’re a “hypocrite”:[http://utilitybelt.rubyforge.org/svn/lib/utility_belt/convertable_to_file.rb]! *Gasp*, yes, I have written code that exploits Ruby’s open classes. It even extends @Object@, the core-est of the core! And then shamelessly contributed … Continue reading