[LRUG] Gems: A Homework Exercise

Murray Steele murray.steele at gmail.com
Tue May 13 02:24:47 PDT 2008


Hi all,

I was talking with Nick Ludlam last night about his own pet project and the
topic of gems came up.  The gist of our chat was that although there are
loads of tools out there to help you publish your gem (Hoe:
http://seattlerb.rubyforge.org/hoe/, Echoe:
http://blog.evanweaver.com/files/doc/fauna/echoe/, Newgem:
http://newgem.rubyforge.org/ to name a few obvious candidates) there seemed
to be a lack of any kind of best practice documentation out there for what
you should do *before* you are ready to actually gem it up.  For example,
how best to layout the code?, should you namespace your code?, use modules
or classes? etc... (I'm sure there were other things that we mentioned, but
I can't remember them, Nick do you want to chip in?)  Nick also said that in
trying to build his own gems he looked at a bunch of other gems for
inspiration and pretty much every other gem did things differently and no
obvious best practice similarities jumped out at him.

Ok, that's one guy's story via a conversation in a pub, however there are
two things happening in the ruby/rails world that mean best practice gem
development is something we should all care about:

1. Rails is finally moving towards a gems as plugins model, so we'll
probably all want to have our rails plugins be made available as gems as
well as just providing access to our code repositories for script/plugin
install.  See
http://ryandaigle.com/articles/2008/4/1/what-s-new-in-edge-rails-gem-dependenciesfor
more info.

2. Github, where all the cool kids are hanging out, makes it super easy to
produce a gem; just drop a .gemspec in your repository and boom! there's a
gem hosted for you.  See http://gems.github.com/ for more info.

It's obvious therefore that we're all going to be writing gems whether we
want to or not.  Also Tom's talk last night will have inspired everyone to
actually finish off their own pet projects and unleash a torrent of gems on
the world.

My somewhat meandering point is this: would someone like to go lock
themselves up in a shack in the woods for a month or so to research all this
gem best practice stuff and then present their findings back to the group?
Possibly for the June meeting, but most likely for the July meeting.

Cheers,

Muz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lrug.org/pipermail/chat-lrug.org/attachments/20080513/e3db4e21/attachment.html>


More information about the Chat mailing list