[MMTK] Re: [PyMOL] improving interoperability between python moleculetoolkits (fwd)

Konrad Hinsen hinsen@cnrs-orleans.fr
Mon, 16 Dec 2002 11:00:00 +0100

> Yes, CORBA is complex and has some overhead. I have also read that
> Microsoft's DCOM/OLE is very complex. I don't think either of
> these is a good way to go, though there are some very cool applications
> I have seen. A lab I know at LBL uses CORBA as a device interface. 

You can do nice things with CORBA, but you should be aware that using
CORBA means turning your project into a full-time software development

> Even XML is very verbose for molecular data, but I haven't seen any
> better way to write general objects to disk.

Being verbose is not really a problem nowadays, it just means bigger
files. But XML is manageable, the rules are simple, which wasn't
the case for SGML.

> options. The mode of operation I have seen for years is that a
> research group hands down mostly undocumented scripts to future
> members, passing on the knowlege of how to use them by one-on-one

Sounds familiar...

> what they want. I agree with Allen Holhub in his book on C/C++
> coding rules: "Don't solve problems that don't exist" and "Solve the
> specific problem not the general case". Too much code is over

Unless you know you will need the general case a month later anyway.
It is a difficult tradeoff that requires much experience.

But this is where high-level languages like Python are a big help.
They reduce the implementation time significantly, so you can afford
to write code for the special case, learn from your mistakes, and then
start from scratch for implementing the general case if and when you
need it.

This is a point that is not well enough appreciated, in my opinion.
Reduced development time means not only getting the job done earlier,
but also reduces the value (expressed in invested time) of code
relative to ideas, algorithms, results, etc. Which is good news for
scientists, for whom implementation is not the main job.

> What can I say? Nobody likes to have to adhere to standards, and it

I do. If there are standards, and they work well, then I am happy
to use them instead of starting from scratch.

> is very hard work to get people to agree on them. Ultimately,

That is the real problem. Especially when adhering to standards means
modifying existing and working code, which is, on a short time scale,

But my criticism about OMG-style design-by-committee is not standards,
it the institutionalization of the process that restricts
participation to big players. This is not a good model for scientific
programming, in which most innovation as well as most code comes from
small research groups who do programming as a side job next to their

Konrad Hinsen                            | E-Mail: hinsen@cnrs-orleans.fr
Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-
Rue Charles Sadron                       | Fax:  +33-
45071 Orleans Cedex 2                    | Deutsch/Esperanto/English/
France                                   | Nederlands/Francais