Re: [Fwd: Re: Wikipedia criticism about root]

From: Julius Hrivnac <Julius.Hrivnac_at_cern.ch>
Date: Fri, 30 Jun 2006 11:58:55 +0200


Hi Federico,

             yes, it is true that Root has been for long time formally forbidden in CERN and LHC++ alternatives offered by CERN IT (Objectivity, Iris Explorer, ...) were unusable. And it is also true that Root team (very small at the beginning) has reused a heroic job in writing a very usable alternative Framework - Root - and has provided an excellent User Support (I see that as the most important source in the Root success).

             When the disaster of LHC++ has been officially recognized, if was just the product which has changed (Root has replaced LHC++), but not the policy (as before, no alternatives are allowed). Root is certainly infinitely better tool that its LHC++ predecessors. [I'm really impressed (I'm serious) what Root team has reused to implement using completely inappropriate implementation language.]

             However, most of Root functionality is just a simplified re-implementation of things which exists elsewhere (most often in a Java world, but not only). Just to name the most obvious examples: - Reflection exists in all languages except C/C++. - Persistency is available elsewhere going from simple Java serialisation,

   through sophisticated Object-Relational tools to efficient file    formats like HDF5.
- 3D graphics is much better done in OpenInventore (which is used by

   three out for four LHC experiments, but not supported by LCG-Root)    or Java3D.
- SQL has its standard API - JDBC, which is written in Java but can

   be used transparently from C++.
- etc.etc.etc.

And users have to use limited re-implementation instead of the more functional original for two reasons: 1) Technical: Root architecture makes it very difficult to replace

               one its component with a third-party alternative.
               We may discuss to which extent it is the fault (or intent)
               of the Root team and how far it is just the direct
               consequence of the C++ limitations.
2) Political: LCG/AA doesn't allow to (even talk about) any alternatives
               which would be in competition with Root. Examples ?:
               - At the beginning of LCG/AA, it has been scheduled to
                 set up a RTAG group to study a potential Java role.
                 The name of the RTAG has been then change from "Java" to
                 "future language" and later silently canceled.
               - Proposals to present FreeHEP/JAS software in LCG have been
                 refused.
               - AIDA has been supported only with incomplete (Anaphe)
                 implementation, its API has been modified (so it has
                 become incompatible with other AIDA implementations),
                 the LCG/AA/AIDA team has been reduced to a fraction
                 of one person. All other implementations of AIDA
                 have been refused.
               - etc.etc.etc.

                      Julius

Federico Carminati wrote:
> Thanks Bertrand for this,
> I wanted to stay out of this argument. We had a lot of this inside
> CERN, and, as you correctly point out, its main feature was sterility.
> There is one thing however that I would like to correct. From some of
> the postings, particularly the one you replied to, it seems that ROOT
> has been "imposed" by the establishment and that all dissent and
> opposition is now silenced. This is a funny revision of history. Perhaps
> not many people outside CERN know this, but at some point ROOT
> development and adoption was forbidden by CERN management with a very
> formal document. ROOT authors have shown an exceptional endurance and
> motivation to continue develop their product in the face of an official
> and formal ban from the establishment, personal attacks and more (much
> more that I am not going to write into an email)!. ROOT came into the
> game as an underdog, its development unsupported and its adoption
> discouraged.
> It is perhaps the best tribute to ROOT that it has become THE
> reference application for HEP worldwide. Is it perfect? Look around you
> and tell me how many perfect software products you see. But it does the
> job jolly well and the ROOT team has maintained all its enthusiasm and
> dedication to work with ROOT users to meet their requirements.
> It is perhaps the best tribute to CERN management that ROOT is now
> fully supported and it has become the mainstay of LCG software. Could it
> have been done better? I would be surprised if the answer were no, of
> course it could have been. But to all those who say "my solution was
> better, but it was not retained", I would like to point out that they
> have only two alternative explanations to the present situation. Either
> they are more clever than us all, but so much more that we did not even
> understand what they were saying, or they have been silenced. The second
> explanation may be reassuring for them, but is false, and the ROOT story
> shows it. A good solution, even confronted with the strongest
> establishment opposition, at the end prevails. The first answer may well
> be true, but, as all scientific facts, it needs to be proven, and
> hitherto it has not been.
> Best,
>
> Federico Carminati
> CERN-PH
> 1211 Geneva 23
> Switzerland
> Tel: +41 22 76 74959
> Fax: +41 22 76 79480
> Mobile: +41 76 487 4843
>
> On 30 Jun 2006, at 08:59, Bertrand Bellenot wrote:
>

>> Hi,
>>
>> Interesting to see that some people have quite some time to go into this
>> kind of endless discussion.
>> It is like the war between Fortran, C/C++, C#, Java... or between Linux,
>> Windows, and MacOS.
>> Everyone has its own taste, its own point of view. So what ?
>> Coming from industry, I can tell that you should be happy to be able
>> (more or less) to do your job (I mean physics) with software designed
>> for it. By experience, I can say that it is not always (well, almost
>> never) the case...
>> I spent quite a few years fighting to justify software implementation
>> choices with people who don't know the difference between Visual Basic
>> and C++, and I'm quite disappointed to see this kind of sterile polemic
>> here :-(
>> Just my humble (and personal) opinion.
>>
>> Cheers,
>> Bertrand.
>>
>> P.S. I will not enter this discussion, but I really had to comment on
>> it.
>>
>>
>> -----Original Message-----
>> From: owner-roottalk_at_pcroot.cern.ch
>> [mailto:owner-roottalk_at_pcroot.cern.ch] On Behalf Of Andy Buckley
>> Sent: Thursday, June 29, 2006 11:58 PM
>> To: Julius Hrivnac
>> Cc: cstrato; roottalk (Mailing list discussing all aspects of the ROOT
>> system)
>> Subject: Re: [Fwd: Re: [ROOT] Wikipedia criticism about root]
>>
>> Julius Hrivnac wrote:
>>
>>>> PS. Myself and cstrato seem to have assumed the twin roles of Chief
>>>> Arguer here. I think it would be of benefit if others --- including
>>>> some of those who've mailed me personally with supportive messages
>>>> and the main ROOT developers, who presumably (I hope!) have opinions
>>>> on these issues --- can add to the debate. Otherwise this whole
>>>> affair is a waste of words... a fact which I suspect is not lost on
>>>> the more prominent silent parties ;-)
>>>
>>> Many people have spend already a lot of time in arguments about Root
>>> problems. I certainly did, Guy Barrand did, FreeHEP team did,...
>>> People working in LHC experiments (as I do) are very well aware of
>>> serious Root problems, but:
>>> - don't have time to discuss them because they have to fix them
>>> - are discouraged by the fact that no serious discussion about Root
>>>   alternatives is allowed in LCG/AA (CERN official LHC software
>>> project)
>>
>> Thanks for the comments. This explanation is entirely in keeping with my
>> understanding of the situation. Does anyone else have any comments on
>> this?
>>
>> I'm glad that bug fixes are being fed back into ROOT rather than fixed
>> "locally" on a per-user or per-experiment basis. At least I hope that's
>> what's happening! :) There are certain "bugs", however, like the class
>> design, UI etc. that cannot be fixed by outside parties: those will
>> require a design and development effort, at least by the core team who
>> (by definition) do have the time to work on it.
>>
>> Andy
>>
>>

>
>
-- 
There is a point in your life when you realize that you have written enough destructors,
and have spent enough time tracking down a memory leak,
and you have spend enough time tracking down memory corruption,
and you have spent enough time using low-level insecure functions,
and you have implemented way too many linked lists
...
########################################################################
Are they serious ? - <a href="http://hrivnac.free.fr/Islam">
########################################################################
# E-mail: Julius.Hrivnac_at_cern.ch                                       #
# WWW:    http://home.cern.ch/~hrivnac/                                #
# S-mail: LAL, BP 34, F - 91898 Orsay cedex, France                    #
# phone: (F)-(0)1-64-46-82-51; private: (F)-(0)8-71-19-31-70           #
# mobil: (F)-622-741-151; (CZ)-607-918-415                             #
# ICQ: 10804323                                                        #
# AIM: jhrivnac                                                        #
########################################################################
Received on Fri Jun 30 2006 - 11:59:04 MEST

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:31:59 MET