a summary of the "blame" thread

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

a summary of the "blame" thread

Dale Henrichs-3

The recent "blame" thread seems to have touched on a sore point for some folks and the discussion has devolved into a melee of clashing  (s)words -- which in general is pretty counter-productive.

I read through each of the messages in the thread and tried to pick out the concrete questions/issues that were brought up. I ignored the many meta arguments that went on and I may have missed some subthreads of importance, but I was surprised at the number of issues that were raised in the course of two days:):

the lost author/timestamps  subthread
the exchange code between dialects subthread
the what is collaboration subthread
the git is not smalltalk subthread
the central server vs distributed server subthread
the git support is important to new business subthread
the iceberg has bugs, therefore it is wrong to use git subthread
the Monticello is perfect so it isn't necessary to use git subthread
the it works for me there it will work for everyone subthread
the multi-platform support subthread
the we at y think git is cool, but disagree with the approach taken by z subthread
Each of these points/issues/arguments for the most part is important, some not so important and some already addressed, but amazingly the vast majority of the topic never got a reply as some of these threads were buried in a message that also contained meta arguments.

In re-reading the list it is clear to me that my personal bias crept into the short summary, but frankly when I reread those messages I wasn't able to summarize the actual point, because it was not necessarily clear what the real point was --- not enough detail ---  I included it with my funky interpretation because it is probably worth discussing at some level, but the discussion deserves more substance.

I seems to me that each of the dialects in play: Cuis, Pharo, Squeak, and GemStone has consistent answers to each of the subthreads, but perhaps it is the cross-platform nature of of the issues that is at the core of the arguments ...

Pharo has taken the bull by the horns and committed to using git/github for the Pharo kernel source code and thereby committed to making it easy to use git (and presumably other disk-based SCMs ... eventually) from within the Pharo7.0 image ... the decision has been made and the conversion pains are being felt (which is not unexpected).

Clearly this move by Pharo does have an (eventual?/varying) impact on the other Smalltalk dialects.

For GemStone we are moving pretty much in the same direction as Pharo is moving and for many of the same reasons ... I have been grumpy about the unilateral move to Tonel, but

We are expecting to introduce git/package/Metacello support in the base in the next release of GemStone (just a simple matter or resources:).

We are using Tonel and git in our internal product development process in a limited way.

Besides the obvious reasons, Metacello support is there so that our customers who are not using GsDevKit can have the option of loading/contributing to open source Smalltalk projects hosted on github. We do not plan to support .mcz files in the kernel.

We will most likely base our kernel  git tools support on bash command line git (a feature that has been in tODE for about 5 years). Our server product is not supported on Windows, so we can get away with that.. Windows clients are supported, but not Windows servers.

With regards to central vs. distributed server, we lean towards distributed servers. We have a number of customers whose production systems are behind firewalls that make it very difficult if not impossible for the Smalltalk developers to access network-based Monticello web-sites let alone CVS-style centralized servers. So making it possible for those developers to use local git clones "transparently" is a seen as a real advantage ...

Finally our open source GsDevKit project has a Pharo compatibility layer, so being able to share source code with Pharo is a priority and Metacello is a key component in that support. Monticello .mcz files will continue supported in GsDevKit as long as the critical projects for customers continue to be hosted in  Monticello .mcz repositories ... eventually I expect .mcz support to become an optional component in GsDevKit, but I won't put a date on it since I do expect to support Monticello for some definition of forever:)

Dale