[Rubygems-developers] Design notes for RubyGems 2

Curt Hibbs curt at curthibbs.us
Tue Jun 8 13:40:53 EDT 2004

Curt Hibbs wrote:
> Gavin Sinclair wrote:
> [snip, snip, snip]
> > The benefits of a well-constructed, well-documented system seems quite
> > advantageous to me.  And since I approach all development with the
> > mentality that the first cut should be thrown away, I see a complete
> > redesign as very much warranted as some point, and my gut feeling is
> > we've reached it.
> >
> > But I know I'm not going to persuade anyone on gut feeling alone, so
> > I'll see if I can find some more specific deficiencies.  To be honest, I
> > looked through the planned feature list on the wiki and didn't see
> > anything jump out at me as impossible or really difficult.  But if the
> > code was well presented and well factored, I'd probably have
> > implemented half of them by now.
> I won't belabor the point by strewing my thoughts amongst all the
> text that
> I snipped, just suffice it to say that I really agree with everything that
> Gavin has said and I think he sums it up very well in the first sentence
> that I kept above.
> Well-defined implementations of simple abstractions are *extremely*
> enabling, both internally in its implementation and externally for client
> applications. It makes the underlying code simple to navigate and
> understand
> which, in turn, makes it easy to modify and add features. The hiding of
> complexity behind simple abstractions allows the code base to grow without
> undermining its understandability.
> Finally, the processes are embedded with the objects that encapsulate the
> relevant data. I can't think of a cleaner representation.

Sorry for responding to myself. I forgot to make it clear that I am not
arguing one way or another for rewrite vs. refactor. I am simply advocating
a clean object-based interface.


More information about the Rubygems-developers mailing list