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

From: Andy Buckley <andy.buckley_at_durham.ac.uk>
Date: Thu, 29 Jun 2006 12:44:21 +0100


Antonio Sidoti wrote:
> Hi everybody,
> I don't want to waste rooters time and don't want to annoy the roottalk
> forum with useless philological and metaphysical discussions on OO
> software. These sounds to me mental masturbations and unfortunately I
> see this kind of discussions growing in the HEP software
> world.

This is clearly a matter of opinion: I don't regard (attempted) discussions on the design of an API to be useless or metaphysical, especially not when the intention is for that interface to be used for the next 20 (?) years on some of the most complex and important data ever gathered.

Of course, if the discussion doesn't interest you, feel free to ignore it!

> Root package can of course can be improved. One of the major
> defaults for me, for example, is the lack of capability while running
> interactively (PAW was better for this aspect). However I think that
> root does well what it is intended to do: fast and high performance data
> analysis oriented to HEP world.

I admit that my arguments are primarily about user interface and OO design issues rather than speed: this just reflects that I did my data reduction elsewhere and used ROOT on relatively small data sets. I don't think this is insignificant, though: if it takes you weeks to get to grips with a perverse interface, then the critical path may be the code authoring rather than the number crunching.

However, on the direct issue of processing speed, using HippoDraw with the Python numarray interface gives a speed-up of x25 compared to ROOT with CINT. The same can be said for raw SciPy/numarray, of course, but you don't get quite as friendly an interface that way.

> To conclude, let root developers work on root development, the users
> work on their data analysis and let OO criticism to whom has time to
> waste with PippoDraw, AIDA, TRAVIATA etc....

This is a common argument: the "we physicists are so busy that we don't have time for software engineering or software experimentation" line. My *opinion* is that I've benefited more by trying lots of different systems than by painfully working around all the bits of one system that don't work as they should. It was certainly more fun.

Anyway, I can't quite understand why you seem to consider that "OO criticism" and "ROOT development" need to be entirely. As a prominent and important C++ application, OO design should be a central issue in its development.

Andy Received on Thu Jun 29 2006 - 13:44:39 MEST

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