comp.lang.idl-pvwave archive - RDF feed
type: channel
description: Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado
items: Top 10 for old farts
items: Re: Top 10 for old farts

Top 10 for old farts
type: item
description: In article <MPG.13e947d0f2a8c1bf989b70@news.frii.com>, davidf@dfanning.com (David Fanning) wrote: Joseph B. Gurman (gurman@gsfc.nasa.gov) writes: > And I'm very serious about the point above. I may be stuck knowing > a > bunch of old farts (not, actually), but maybe one person in twenty here > actually uses the object capabilities when given a choice. Oh, I don't doubt your figures at all. I just think it is a shame, given how easy objects are to use (and I am *not* talking about object graphics now) and how significantly they could change the way your write programs. But I'm old enough to remember how we had to bring all you old farts, uh, excuse me, scientific programmers, along with widgets, too, so I still hold out hope. :-) Cheers, David David - I guess you've seen the responses from Mark Hadfield and Luis Alonso on the overhead involved in using objects. A colleague at another instituion e-mailed me to say: I think your views represent those of many of us older folks trying to use IDL. I've messed with objects in IDL enough to realize they will probably destroy what little productivity I seem to have left as a scientist. Just give me the data arrays--hopefully processed into a scientifically useful form--and let me get on with the science part. (I believe this "older folk" is about 49, or 137 in programmer years.) The real beauty of IDL for scientists is _not_ its ability to do everything in the most elegant way possible, but in its capability to do 90% of what we want _very fast_ and to do more elegant things on a time-invested basis (e.g. really pretty plots; 3D shaded, rotating surfaces; the ability to save such projections as objects). For most scientists, at least astronomers, the three things they spend most of their time on are: 1. writing proposals 2. writing proposals 3. writing proposals Doing research and writing appears sadly comes in fourth; dealing with silly bureaucracies fifth; and exploring the programming capabilities of IDL, perl, tcl, .... …
creator: Joseph B. Gurman
date: 2000-07-28T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Joseph B. Gurman in a flash of brilliance said: > The real beauty of IDL for scientists is _not_ its ability to do > everything in the most elegant way possible, but in its capability to do > 90% of what we want _very fast_ and to do more elegant things on a > time-invested basis (e.g. really pretty plots; 3D shaded, rotating > surfaces; the ability to save such projections as objects). Joe: I agree 101%. But, I think the larger picture here though is that RSI missed the "object" boat. When "Tek" terminals were in vogue, direct graphics were perfectly adequate. But since the early 90's, graphics packages that *really* use object concepts have performed basic graphing tasks much better than anything in IDL. I'm constantly amazed by the number of Mac users (scientists) still propagating their copy of Kaleidagraph to their next powermac. I can't blame them though; Insight doesn't come close to mimicking the capabilities of a > 10 year old program. RSI is struggling with the object paradigm shift. I believe it was a mistake to introduce the object graphics so early and, at the same time, maintain the direct graphics. Why not replace all the direct graphics calls with object equivalents? You should be able to say: PLOT, findgen(10) and you get an object window (maybe plus the print, modify,etc...options that are in insight). There should have been a transparent migration to object graphics. I can appreciate that there are technical difficulties. But as an end user, they shouldn't affect ME. -Pete Riley
creator: Pete Riley
date: 2000-07-29T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Mark Hadfield (m.hadfield@niwa.cri.nz) writes: > Objects were a necessary development in IDL and are certainly a good thing > IMHO. Well, OK some of the design decisions were debatable. > > Object graphics were also a necessary development but are less obviously a > good thing. The main problem with them is that producing a simple plot using > IDL's standard object graphics facilities is ridiculously difficult. It's > possible to finish RSI's job by writing a set of smarter, higher-level > graphics classes & routines but it's a lot of work. Hence my comment about > productivity. Amen to this. But I would like to reiterate (for what, the fourth time? I've got to give up on this horse) that they are not so difficult that *someone* (not RSI, apparently) wouldn't be willing to go to the trouble if there was some indication they would be compensated for the effort. And I mean by "compensated", rewarded in some other way than by the eternal gratitude of the IDL newsgroup community, with all the resultant adulation and prestige (which doesn't count for much with the bank manager) such acknowledgement implies. :-) Cheers, David P.S. I've already got Joe's order written down. Anyone else ready to anti-up for some decent (direct or object) graphics programs, written as objects? In the meantime I'm going to get on with my life. You will hear no more from me on this subject. (Unless someone provokes me, of course.) -- David Fanning, Ph.D. Fanning Software Consulting Phone: 970-221-0438 E-Mail: davidf@dfanning.com Coyote's Guide to IDL Programming: http://www.dfanning.com/ Toll-Free IDL Book Orders: 1-888-461-0155
creator: davidf
date: 2000-07-30T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Since I enjoy (as Brian Jackel puts it) a "pointless, but interesting discussion" almost as much as I do writing IDL object programs, let me just weigh in with one more response. Pete Riley (uk2@linuxfan.com) writes: > Why not replace all the direct graphics calls with object > equivalents? You should be able to say: > > PLOT, findgen(10) > > and you get an object window (maybe plus the print, modify,etc...options > that are in insight). There should have been a transparent migration to > object graphics. This was exactly RSI's original intention. But, alas, things don't always go the way we plan. And with object graphics the vagaries of programming projects were even more pronounced than usual. It was almost as if Coyote himself were put in charge of it. Let me recount the story as I remember it. (Which is to say, this may not be how it *really* happened. But it is the way I tell the story.) Some four or five years ago now RSI realized that their graphic system was out of date. It was wonderful for the early 1980's, but these were the 90's and the millennium was fast approaching. And in particular, their 2.5D way of rendering surfaces (the Z axis must always be vertical) was hopelessly out of date. Three orthogonal axes should be completely rotatable. The decision was made to completely overhaul the entire graphic system and bring it up to date. One of the best 3D graphic guys in the country (I forget his name) was hired to design the system and the RSI programmers set to work. A year was set aside for the effort, during which time there would be no work done on bug fixes etc., as everyone was tied up in building this new thing. Customers would get jumpy about paying maintenance dollars during this time, but the new system would be so much better than the old that this problem was judged worth the risk. To make a long and painful story short, it took a LOT longer than one year to do the work. In fact, it was nearly two years by the time IDL 5.0 left the barn. Custo…
creator: davidf
date: 2000-07-30T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: In article <MPG.13eb4d1b4b64e350989b77@news.frii.com>, davidf@dfanning.com (David Fanning) wrote: [snip] > In fact, I haven't written a program for a client in the > past year that hasn't included at least one object, > and sometimes it's easier to write the whole thing as > an object. PSCONFIG, a program on my web page that is > widely downloaded and praised by people who use it, is > an object program, although I would guess 95% of the > people who use it don't know that. Certainly most of > the programs I add to my library in the future will > be object programs, although I'm not fool enough to > tell anyone that, since just the word itself is enough > to send shivers up the backs of many IDL users. :-) I believe, I believe, I believe. I just have no need (yet) to write object code myself. > > I've frankly pretty much given up the idea of writing > an object book because (1) it is so damn hard to write > a book, and (2) after going to all that trouble I thought > only about a dozen people would buy it. (And I will hear > from all 12 today, probably, pleading with me to reconsider, > so desperate is the need for decent documentation.) Well, you might sell a 13th, just because you've piqued my interest, but I would put it in the "programming to learn" pile, right under the 10%-finished Perl book, and the 0% finished Palm OS book. Frankly, I think I'd rather learn to write Palm OS apps (so I can analyze data anywhere), but that's another story. > > The lack of good instruction is probably what is holding > the adoption of objects back. I know you say you don't > need them. The people in my course last week were adamant > that they didn't need to know any widget programming, too. > But in the end all they cared about was widget programming > and increased interactivity with their data. I submit that > objects have the same ability to transform how we work > with our data. Careful what you say, Dave, because the truth can hurt. I _use_ widget apps every day --- that I…
creator: Joseph B. Gurman
date: 2000-07-30T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: In article <3981E962.9AA8D07B@cmdl.noaa.gov>, promashkin@cmdl.noaa.gov wrote: > "Joseph B. Gurman" wrote: >> For most scientists, at least astronomers, the three things they >> spend most of their time on are: >> >> 1. writing proposals >> >> 2. writing proposals >> >> 3. writing proposals > > If so, then a good word processor is all that is actually needed :-) > > Cheers, > Pavel Got that, too, and it's a lot cheaper than IDL. On a dollar return basis, I guess it's better software. ;-) Fortunately, there are other discriminators than money. Joe
creator: Joseph B. Gurman
date: 2000-07-30T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Paul van Delst (pvandelst@ncep.noaa.gov) writes: > P.S. Who's this Coyote? Coyote is well known to astronomers. When the Old People were carefully placing the stars into the sky in these beautiful constellations, Coyote stumbled into the teepee from a night out carousing and knocked the sack of stars everywhere. That's why it's such a jumble up there now. Cheers, David P.S. Let's just say Coyote is inordinately fond of hanging out with IDL programmers. :-( -- David Fanning, Ph.D. Fanning Software Consulting Phone: 970-221-0438 E-Mail: davidf@dfanning.com Coyote's Guide to IDL Programming: http://www.dfanning.com/ Toll-Free IDL Book Orders: 1-888-461-0155
creator: davidf
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Michael Cugley (mjcugley@tigger.medschool.dundee.ac.uk) writes: > As a newbie to IDL, but with some graphics and OOP experience, what > kind of programs are needed? Basically, any kind of graphics program that can draw itself both to the display and to a PostScript file. A bit of interactivity is nice (update axis range, change the color of symbols, etc.), but is not as important as getting the darn thing into a PostScript file in more or less the same way it is displayed on the screen. Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting Phone: 970-221-0438 E-Mail: davidf@dfanning.com Coyote's Guide to IDL Programming: http://www.dfanning.com/ Toll-Free IDL Book Orders: 1-888-461-0155
creator: davidf
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Pavel Romashkin wrote: > > Paul van Delst wrote: > >> Ahhhhh. When IDL v5 was released, the first thing I did was convert some >> of my code to use OG. My god was it slow. Also, when I started up >> Insight I figured that it had to be the showcase of what IDL OG had to >> offer. That all pretty much turned me off OG - and thus IDL objects - in >> general. The latter was a bad decision I know, but my "to-do" list kept >> getting bigger during the 2-week period I spent playing with IDL OG. > > I am not arguing about IDLgr* speed with Paul, or, God forbid, David, > but I find that with today's computers even object graphics is not that > slow. I don't use multitudes of graphic objects, but rendering a few > line plots with zoom, point selection, deletion, calculation, adding and > removing temporary grPlots, etc. - I notice so little difference > compared with direct graphics that it is not detrimental to the > application. I think that once faster machines become more widespread, > 3D object graphics will find more use. On a Pentium 60 w/o OpenGL, I > agree, it is intolerable. Maybe for 99% of cases you're right and I fall in the remaining 1%? :o) The test I applied was to plot what I usually plotted day-to-day with DG and OG. What I usually plot are high resolution atmospheric radiance and/or transmittance spectra - sometimes 100,000's points per spectrum, with, oh, about 40-100 spectra per atmospheric profile. Plotting this with DG took a long time (seconds) but plotting in OG - well I could go and answer the call of nature, return and it would still be in the process. I'm sure part of it is due to the way I put the plotting code together - remember this was my learning experience - but after a couple of days I started thinking that one of the main reasons I bought IDL was so I could type: PLOT, x, y and, shazaam! there was my data on screen. With all the programming required to get a plot with OG - onscreen or on paper - I may as well buy a F90 graphics library for…
creator: Paul van Delst
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Pavel Romashkin (promashkin@cmdl.noaa.gov) writes: > I am not arguing about IDLgr* speed with Paul, or, God forbid, David, > but I find that with today's computers even object graphics is not that > slow. I don't use multitudes of graphic objects, but rendering a few > line plots with zoom, point selection, deletion, calculation, adding and > removing temporary grPlots, etc. - I notice so little difference > compared with direct graphics that it is not detrimental to the > application. I think that once faster machines become more widespread, > 3D object graphics will find more use. On a Pentium 60 w/o OpenGL, I > agree, it is intolerable. Surely even NOAA can afford to buy Paul a better machine than that! :-) My personal opinion is probably close to Pavel's. I don't think speed has held up the acceptance of object graphics. The speed is surely acceptable. It has been the hours it takes to put together a simple plot from the ground up, and then the lack of printing capability once you got there. Vector printing capability has fixed part of the problem, but we are still faced with too few higher-level programs. Cheers, David P.S. I suppose a case can be made that having Insight as the flagship example of object graphics programming has set the cause back 5-10 years, but I'm going to stay out of it. :-) -- David Fanning, Ph.D. Fanning Software Consulting Phone: 970-221-0438 E-Mail: davidf@dfanning.com Coyote's Guide to IDL Programming: http://www.dfanning.com/ Toll-Free IDL Book Orders: 1-888-461-0155
creator: davidf
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Paul van Delst wrote: > Throwing > money and people at a problem when things get tight - sheesh. Is this > still an accepted mode of operation at software houses I wish I could join Paul in sighing about inacceptability of this policy, but here on Earth this is how it is done (if the result is needed), not only in software companies. Well, not at NOAA of course, but by other establishments that have money :-( > Ahhhhh. When IDL v5 was released, the first thing I did was convert some > of my code to use OG. My god was it slow. Also, when I started up > Insight I figured that it had to be the showcase of what IDL OG had to > offer. That all pretty much turned me off OG - and thus IDL objects - in > general. The latter was a bad decision I know, but my "to-do" list kept > getting bigger during the 2-week period I spent playing with IDL OG. I am not arguing about IDLgr* speed with Paul, or, God forbid, David, but I find that with today's computers even object graphics is not that slow. I don't use multitudes of graphic objects, but rendering a few line plots with zoom, point selection, deletion, calculation, adding and removing temporary grPlots, etc. - I notice so little difference compared with direct graphics that it is not detrimental to the application. I think that once faster machines become more widespread, 3D object graphics will find more use. On a Pentium 60 w/o OpenGL, I agree, it is intolerable. Cheers, Pavel
creator: promashkin
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: David Fanning wrote: > > Pete Riley (uk2@linuxfan.com) writes: > >> Why not replace all the direct graphics calls with object >> equivalents? You should be able to say: >> >> PLOT, findgen(10) >> >> and you get an object window (maybe plus the print, modify,etc...options >> that are in insight). There should have been a transparent migration to >> object graphics. > > This was exactly RSI's original intention. But, alas, things > don't always go the way we plan. And with object graphics the > vagaries of programming projects were even more pronounced > than usual. It was almost as if Coyote himself were put in > charge of it. > > Let me recount the story as I remember it. (Which is to > say, this may not be how it *really* happened. But it is > the way I tell the story.) > [snip...] > To make a long and painful story short, it took a LOT > longer than one year to do the work. In fact, it was > nearly two years by the time IDL 5.0 left the barn. > Customers were screaming, maintenance revenue was > dwindling, new license sales were off as customers > were waiting for the big new release that was right > around the corner. And expenses were up sharply as > more programmers were hired to keep up with the > larger and larger work load. I think everyone in the > building was putting in 60+ hour weeks. In short, it > was one of those really tense, trying times that > all businesses go though occasionally. This reads like the classic "bad planning from the start" case study one finds in books about software project management, i.e. how *not* to do it (read ch8 of Steve Maguire's book "Debugging the Development Process". The chapter is titled "That Sinking Feeling" :o). Throwing money and people at a problem when things get tight - sheesh. Is this still an accepted mode of operation at software houses (anyone see the PBS special on Netscape just before they went open source? My god, wot a zoo.) ?? I realise that there are other pressures on a business but seeing that this t…
creator: Paul van Delst
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: David Fanning wrote: > ....let me just weigh in with one more response.... > Good Morning, That is infomative and thought provoking. Thanks for shedding some light on this history. Ben -- Ben Tupper Bigelow Laboratory for Ocean Science West Boothbay Harbor, Maine btupper@bigelow.org note: email address new as of 25JULY2000
creator: Ben Tupper
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: David Fanning wrote: > > Joseph B. Gurman (gurman@gsfc.nasa.gov) writes: > > >> Seriously (once again), it would be nice to be able to pay for a >> base license, and add on, at extra cost: >> >> 1. objects >> >> 2. QuickTime support (per codec) >> >> 3. other features requiring RSI to pay license fees (GIF?) > > I suppose it is inevitable, as IDL grows ever larger, that > we begin to pay for add-ons. RSI has already taken this > course with DataMiner and the Wavelet Toolkit. But I am > dead set against this proposal, Joe. > > I submit that > objects have the same ability to transform how we work > with our data. > > > > Cheers, > > David I strongly agree with David here! Although I must admit that I have not yet developed one really functional object application (just too much "Need this yesterday!" stuff), the availability of objects surely changed my perception of data analysis and allows for a much better strategic planning of data analysis software - even if in the end it is written as a "classical" program. At least in my case, there is still a gap between my mind and my fingers: I am thinking objects now, but I am still typing a lot of non-object programs. Yet I hope that my fingers will catch up within the next year or so ... I also would like to direct your attention to the evolvement of FORTRAN which in some ways can be percepted to be the most conservative programming language one can think of (tons of legacy code, no one really learns it these days, so people learn it from looking at - yes! - legacy code ;-) So far, all global atmospheric model sources that I have seen have their origin in FORTRAN77 code (or even earlier). But, I also see many groups reworking their code to FORTRAN90, and progressively using modules. This could really be seen as a big step towards object oriented programming, because modules are designed to provide some of the major object features: (1) reusability, (2) encapsulation, (3) grouping of things that belong together. Now, try …
creator: Martin Schultz
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: davidf@dfanning.com (David Fanning) writes: > P.S. I've already got Joe's order written down. Anyone > else ready to anti-up for some decent (direct or object) > graphics programs, written as objects? As a newbie to IDL, but with some graphics and OOP experience, what kind of programs are needed? -- Michael Cugley (mjcugley@medphys.dundee.ac.uk)
creator: Michael Cugley
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: "Joseph B. Gurman" <gurman@gsfc.nasa.gov> wrote in message news:gurman-FF65F5.09515928072000@news.gsfc.nasa.gov... > I guess you've seen the responses from Mark Hadfield and Luis Alonso > on the overhead involved in using objects. Speaking only for myself (not Luis) I should elaborate. As David has already pointed out so well elsewhere in this thread "OBJECTS" does not equal "OBJECT GRAPHICS" Objects were a necessary development in IDL and are certainly a good thing IMHO. Well, OK some of the design decisions were debatable. Object graphics were also a necessary development but are less obviously a good thing. The main problem with them is that producing a simple plot using IDL's standard object graphics facilities is ridiculously difficult. It's possible to finish RSI's job by writing a set of smarter, higher-level graphics classes & routines but it's a lot of work. Hence my comment about productivity. --- Mark Hadfield m.hadfield@niwa.cri.nz http://katipo.niwa.cri.nz/~hadfield/ National Institute for Water and Atmospheric Research PO Box 14-901, Wellington, New Zealand
creator: Mark Hadfield
date: 2000-07-31T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Pete Riley wrote: > > Joseph B. Gurman in a flash of brilliance said: > >> The real beauty of IDL for scientists is _not_ its ability to do >> everything in the most elegant way possible, but in its capability to do >> 90% of what we want _very fast_ and to do more elegant things on a >> time-invested basis (e.g. really pretty plots; 3D shaded, rotating >> surfaces; the ability to save such projections as objects). > > Joe: > I agree 101%. But, I think the larger picture here though is that RSI missed > the "object" boat. When "Tek" terminals were in vogue, direct graphics were > perfectly adequate. But since the early 90's, graphics packages that > *really* use object concepts have performed basic graphing tasks much better > than anything in IDL. I'm constantly amazed by the number of Mac users > (scientists) still propagating their copy of Kaleidagraph to their next > powermac. I can't blame them though; Insight doesn't come close to mimicking > the capabilities of a > 10 year old program. RSI is struggling with the > object paradigm shift. I believe it was a mistake to introduce the object > graphics so early and, at the same time, maintain the direct graphics. Why > not replace all the direct graphics calls with object equivalents? You > should be able to say: > > PLOT, findgen(10) > > and you get an object window (maybe plus the print, modify,etc...options > that are in insight). There should have been a transparent migration to > object graphics. I can appreciate that there are technical difficulties. But > as an end user, they shouldn't affect ME. > > -Pete Riley If you want this functionality you could use MATLAB... ;) But I think the important thing is that we need the /choice/. I have some (limited) experience of this problem with MATLAB. I was involved in a software development project and one of the modules was a visualisation tool for scientific data. For various reasons MATLAB was the chosen platform. Some way along with the development it became appa…
creator: Nigel Wade
date: 2000-08-01T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Luis Alonso (luis.alonso@uv.es) writes: > PD: is that the right expression 'good night and don't let the bed bugs bite > you'? My english's expressions are not in shape... i keep on shuffling the > words :\ Close enough. And not bad for closing in on midnight. :-) Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting Phone: 970-221-0438 E-Mail: davidf@dfanning.com Coyote's Guide to IDL Programming: http://www.dfanning.com/ Toll-Free IDL Book Orders: 1-888-461-0155
creator: davidf
date: 2000-08-02T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: "Mark Hadfield" <m.hadfield@niwa.cri.nz> wrote in message news:964994988.21151@clam-ext... > "Joseph B. Gurman" <gurman@gsfc.nasa.gov> wrote in message > news:gurman-FF65F5.09515928072000@news.gsfc.nasa.gov... >> I guess you've seen the responses from Mark Hadfield and Luis Alonso >> on the overhead involved in using objects. > > Speaking only for myself (not Luis) I should elaborate. Hi, now is my turn to express myself (after digesting the huge amount of submissions to the newsgroup). I think after all this discussion it's pretty much clear that objects (and not only O.G.) are a must in IDL, in the same way that the most classical way of programing (included direct graphics). As I said previosly, i've playing around with object graphics, but not been able to do much by myself, so i kept using D.G. for those 'i need them for yesterday' plots, but for interactivity O.G. were a must, you know the kind of 'spin me this 5000 facets 3D modell around while zooming in and out, and change the colours cause those don't look the way i like' stuff. Today i've spent a whole afternoon (from 3pm to 21:30pm, -yes, i'm a late nite thinker not as David-) just to build a widget to select n-choices from a list... geez, that IDL handbook is cryptic indeed (japanese if far easier to understand), and although it works i'm pretty sure it could be far easier implemented. And at the very end it shows that it wasn't that much difficult, but it was a pain trying to figure out the way widgets work from the lousy examples... (no use trying to read the text: nowhere is explained what 'pro widget2_event, ev' is and even less what that ev structure is and means. The example shows how to build a list, but is never shown how to retrieve the values chosen from that list -that's what took me most of the time-). And to call it a day, a college just happend to ask me to give her a quick and dirty explanation of what an object is... All of this just says one thing: Objects are easy to use once you know …
creator: Luis Alonso
date: 2000-08-02T07:00:00-00:00

Re: Top 10 for old farts
type: item
description: Martin Schultz <martin.schultz@dkrz.de> writes: > Hmm, you could probably have saved at least four hours had you gone > through David's widget examples instead of reading the manuals. At > least, this is how I learned to deal with these things (admittedly, I > had to look twice before I understood anything at all). Personally I found widget programming, with assistance from HyperHelp to be fairly easy. But then maybe that's because I've programmed in Visual Basic and X before... -- Michael Cugley (mjcugley@medphys.dundee.ac.uk)
creator: Michael Cugley
date: 2000-08-03T07:00:00-00:00