Monday, August 25

On Second Thought: Interfaces

Continuing my reexamination of past opinions...

Five years ago, and about one month, I wrote that interfaces in Java were essentially useless, mainly because I almost always have a modicum of generic logic I want to have associated with the classes that implement the interface, so I always end up using an abstract class instead. Over the years, however, my tune has changed on that topic, primarily due to my work with Ruby. I've seen the light of duck-typing and mixins and the closest you can get to that in Java is via interfaces rather than inheritance.

So, on second though, interfaces are good.

Thursday, August 14

Top 3 ways I stay on top of Rails

Rails has been an off-hours hobby of mine for the last three years (and one month, to be exact). Since I get so precious little time to work with it each day, I need my Rails juice in quick and concentrated doses, and here's how I get it:

#3 What's New in Edge Rails over at Ryan's Scraps. When the fancy new features get added, Ryan gives you the straight dope, no fluff.

#2 Railscasts by Ryan Bates. Nothing gets the point across better than seeing somebody actually do it. Ryan serves up quick little screencast hors d’oeuvres demonstrating The Right Way to handle a multitude of Rails-related tasks, from development to deployment to testing to documentation.

#1 Reading Jack Danger's commit diffs on GitHub. I have the distinct pleasure of overseeing a (private, sorry, no links) project on which Jack is the lead developer. Jack's commits are always clean and concise bite-size chunks of refactorings or new functionality and his commit messages are always descriptive and explanatory, none of this "fixed stuff" or "made changes" crap that drives me bonkers. Reading his commits are like paging through a book entitled "Step by Step Rails Development, The Right Way, By Example." By far, watching the code of another more-seasoned developer evolve over time has taught me the most about good Rails coding.