J?rg Barfurth wrote: > James Carlson schrieb: >> The "Architecture Creating Council" is two doors down on the left. ;-} >> > > I agree that multiple-supported-versions is not the only or always best > solution for the problem of incompatibly evolving software. And that the > problem does not depend on whether that software is FOSS of external > origin or not. > > But I also agree with John, that there should be some documented best > practices to solve this recurring software engineering problem in > repeating situations. The ARCs review all the solutions that are brought > to them, can develop a deeper understanding of the architectural impact > and preferred solutions for OpenSolaris and are in the best position to > distill that into a document to provide guidance for project teams. The > FOSS project teams may not be involved with ARC on an ongoing basis, and > so are faced with a choice between reading up on ARC discussion of > similar cases of the past N months [N tbd] (you wish!), reinventing the > whee^W^Wa solution or taking the easy way out ("Ah, External is now > called 'Volatile'!").
I agree that something like what John is suggesting may well be helpful, but I don't think it's wise to have the ARC _creating_ new architecture (and new domain-specific tools, such as packaging extensions) on its own to solve those problems. ARC members interested in that should participate in the relevant communities instead. This may be the right forum for describing the problem, but not for casting solutions. As for the current best practices (in the absence of substantial support for multiple-concurrent-versions), what we have now is exactly that -- a fairly clear interface and release taxonomy, along with a non-trivial case history of handling these sorts of projects. Project teams are on the hook for determining what interfaces exist and what the _right_ attributes are for them. They can't assume that someone else will do this work for them, or will somehow be more expert in it. There's just no good excuse I can see for "taking the easy way out." What I think is going on here is really an abdication of architecture. Some of the folks contributing here seem to think that the existing and external software architectural work (of whatever nature) done by contributors to those other communities is sufficient in itself, and that no extra consideration needs to be made for how such projects integrate into OpenSolaris. Thus "FOSS is special." They seem to feel that what the ARC is doing is either "make-work" or perhaps "double jeopardy" for projects that are merely porting in known-good (and known-complete) works -- in other words, the ARC (and perhaps Sun) shouldn't be standing in judgment of third party work. (Maybe because it has no authority to do so, or just because it cannot issue any meaningful "management advice." The depth of the argument's reliance on Sun's internal org chart is unclear to me.) But if that really is the case, then why is it that Sun projects need to be reviewed in this way? Clearly, Sun has some of the best software engineers on the planet, and Sun invented Solaris. They should be able to make their projects fit at least as well with OpenSolaris as any third party could possibly do, and almost certainly better. They start out on better footing within OpenSolaris than FOSS. Why does their work need to be reviewed at all? That, to me, is the central problem with the argument. If you're saying that this "external" software doesn't need to be reviewed when it integrates into OpenSolaris, then you're really saying that _no_ software needs the sort of review the ARC provides. (And, in fact, if there is no substantial ARC review for "external" software, then Sun folks can easily exempt themselves from ARC review by contributing directly to sourceforge or other such sites first, and then importing as FOSS. They probably _should_ do this.) That sounds fine to me as a policy change, but I think we should be up front about it, rather than sneaking such a change in on the back of "FOSS is special." To my mind, it's not. The first three letters are political attributes, not technical. The third letter is "software," and it's just like any other. -- James Carlson 42.703N 71.076W <carlsonj at workingcode.com>