IMHO this is a good idea that can encourage code refactoring and reuse, but it should be done with the understanding that the experimental code will still be supported and will "eventually" become production code, otherwise it might not achieve the desired effect.<br>
<br>Cheers,<br>yc<br><br><div class="gmail_quote">On Fri, Nov 6, 2009 at 9:34 PM, Ryan Culpepper <span dir="ltr"><<a href="mailto:ryanc@ccs.neu.edu">ryanc@ccs.neu.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Eli Barzilay wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">
On Nov 6, Carl Eastlund wrote:<br></div>
[...]<div class="im"><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I see, mostly, the reduction in stuff that needs to be tidied up and<br>
removed, because there are more eyes on this code, more people<br>
picking it up and using it, more people who might keep it in good<br>
shape. Any that stays in bad shape, well, would have anyway.<br>
</blockquote>
<br>
Why does it have to be this way? This is like claiming that most of<br>
the tree is closed source. What's preventing you from going over<br>
other people's code and fixing things? Or pointing out things that<br>
should be shared? Or telling them that something is so useful that if<br>
they just generalize that one bit and put it in a more general<br>
library, you'll volunteer to document, write tests, and maintain it?<br>
This lack of shared workload is something that exist now, and<br>
`unstable' is just putting a new label on it.<br>
<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
The fact of the matter is, we each currently treat our internal code<br>
as our personal code. And this is not realistic.<br>
</blockquote>
<br>
Yes -- fix that! And it can be fixed regardless of a new toplevel<br>
label and a new kind of a "not really organized collection of code"<br>
tool.<br>
</div></blockquote>
<br>
The fact is, we tend not to interfere in other people's collections much. I've been talking about this phenomenon with various people around the Northeastern lab for years. After many discussions, I still don't have a good idea of how to fix it. So I'm attacking a related problem with a different approach.<br>
<br>
Rather than encouraging developers to wander around in other people's territory, I'm encouraging them to put more of their work into a common space. Why should you go hunting through my code for useful bits when I have a much better idea of what is generally useful and what is specific to my particular needs? And a collection is a very useful label to hang on the common space, one that interacts well with other needs such as documentation.<br>
<br>
(Infamous Ryan-Analogy: There are two ways to increase social interaction. Encourage people to barge into others' personal spaces, or encourage everyone to spend more time in public spaces. I'm going for the latter.)<br>
<br>
If you want to fix the other problem, go for it. But shouting "Be it so!" doesn't seem to work.<div class="im"><br>
<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Nov 6, Ryan Culpepper wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Eli Barzilay wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
(Leaving beind an unstable library that I'm using, and nobody<br>
owns. A major point that I failed to make initially is that such<br>
code should never, IMO, become permanent.)<br>
</blockquote>
If you're using an unstable library and nobody owns it... you own<br>
it. Unless you can foist it off on someone else. If no one else<br>
owns it you can, of course, start assimilating the parts you want<br>
and junking the rest.<br>
</blockquote>
<br>
See above. What needs fixing is for people to start looking beyond<br>
their collections -- regardless of a new collection. (And you can<br>
summarize my above concern as: if this is not fixed, then we haven't<br>
done anything besides shuffle some code around -- so now people still<br>
don't care, and the code is messier.)<br>
</blockquote>
<br></div>
Shuffling code around, when done carefully, is called *organizing*. I think people are more likely to care once the code becomes better organized.<br>
<br>
I'll volunteer to watch over the unstable collection to make sure it doesn't degenerate into long-term chaos. (I make no promises about short-term chaos.)<div class="im"><br>
<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
If no one depends on it and no one owns it or wants to, it can be<br>
junked immediately. And yes, we should periodically review the<br>
unstable collection and eliminate dead libraries. We should probably<br>
do the same for all collections, but there's a higher risk of<br>
breaking code in planet or in some other project when we do that.<br>
</blockquote>
<br>
So why not do that?? Everyone's jumping up and down about adding new<br>
stuff, but when it comes to improving existing code then we get these<br>
"should probably"s.<br>
</blockquote>
<br></div>
Just because there's work to be done in maintaining existing collections doesn't mean that it isn't worth adding another one. The movement of code might even indirectly help the existing collections.<br><font color="#888888">
<br>
Ryan</font><div><div></div><div class="h5"><br>
<br>
_________________________________________________<br>
For list-related administrative tasks:<br>
<a href="http://list.cs.brown.edu/mailman/listinfo/plt-dev" target="_blank">http://list.cs.brown.edu/mailman/listinfo/plt-dev</a><br>
</div></div></blockquote></div><br>