[Rubygems-developers] Design notes for RubyGems 2
curt at curthibbs.us
Tue Jun 8 12:58:11 EDT 2004
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.
More information about the Rubygems-developers