Re: Your experience with other scientific languages? [message #86469 is a reply to message #86453] |
Tue, 12 November 2013 06:50   |
lecacheux.alain
Messages: 325 Registered: January 2008
|
Senior Member |
|
|
Le lundi 11 novembre 2013 18:11:22 UTC+1, Fabien a écrit :
> IDLers,
>
>
>
> It is not my intention to start a troll-like discussion here. I am
>
> reading this newsgroup since a couple of years now and I really
>
> appreciate the friendly tone of this group (I followed some other groups
>
> where arrogant people argued with other arrogant people... awful).
>
> Having said this, I am wondering why we are never talking about other
>
> languages. Is it to avoid trolls like me, or because EXELIS people also
>
> read this group? (did I emphasize already how much I appreciate the
>
> reactivity of Mark and Chris on this group? ;-))
>
>
>
> To my point: I am starting a career in academia and my future employer
>
> and colleagues don't use IDL. I could argue with my future boss and make
>
> him pay for an IDL license. But I am seriously wondering if I want to do
>
> this during my whole career (taking the risk to always be the only one
>
> using IDL), and I am thinking about leaning Python. I've been searching
>
> a bit for pro and cons, and since I am in the atmospheric sciences I
>
> came to this website for example:
>
> http://pyaos.johnny-lin.com/?p=544
>
>
>
> Such a topical argument can last for ever, starting with the pros and
>
> cons of open-source VS commercial softwares. So I will try to limit the
>
> discussion to a couple of points:
>
>
>
> - Map Projections: pyproj relies on the state-of-the art proj.4, and can
>
> do Datum shifts (it seems). IDL's system is quite old and can't do datum
>
> shifts.
>
> - Graphics: I read in a VISualize presentation that IDL's objective was
>
> to be "better than Python" in plotting (can't find the PDF anymore).
>
> Does that mean that Python is really good at plotting?
>
> - Statistics: my feelings says that Python probably has many more tools
>
> "out-of-the-box" due to the larger community.
>
> - Easiness of use: I am a Linux user so I am not afraid of installing
>
> some packages, but I'm told that python is quite complicated in this
>
> respect.
>
>
>
> My question: did some of you have experience with python or similar
>
> languages and if yes, what was your impressions *from the IDL user
>
> perspective*? Any thoughts are appreciated!
>
>
>
> Thanks,
>
>
>
> Fabien
I am using IDL since many years (since IDL V2.0 ...) for multiple purposes in astronomy like instrumentation handling, data processing, or theoretical modeling. In rare situations, the coupling with a lower level (C like) language was needed, but always easy to perform through IDL facilities as bridges, external calling or DLM writing. Efficiency of most of the kernel functions (like FFT or HISTOGRAM) is amazing. Compactness and elegance of the IDL language (directly linked to program developing efficiency) is great.
I was also occasionally looking at other similar tools, like MATLAB, Python or R, but I never found any scientific or technical rationale for finally not using IDL in those cases. The only reason for avoiding IDL might have been its licensing cost, but this kind of reasoning cannot be considered as fully satisfying from a scientific point of view (and is not relevant for MATLAB which is as much expensive as IDL).
That is said in general. Regarding the topics you pointed out:
- mapping: I have not enough experience in it.
- graphics: the so called NG graphics functions are now very usable and full of possibilities (thanks to their object programming scheme). In spite of a somewhat frustrating and erratic introduction during the last 3 years, they offer now the abilities to easily produce plots of publishable quality and to efficiently build GUI for VM executables, without dealing with the whole widget programming subtlety.
- statistics: what are you actually missing ? Maybe some functions for second order statistics. Otherwise, I think that most of the fundamental bricks for doing efficient statistical analysis are already here. You also can get some third party free libraries.
- easiness of use: see above.
Returning to the general question: is the costing IDL a good choice versus the free Python ? The answer depends on the way you define the scientific cost of your work. Are you using software for "small" interactive calculations of for developing "large" processing pipelines ? are you developing alone or within a collaborative team ? etc...
Finally, I would say (at least it was my impression in reading many posts from this group) that a number of IDL users were disappointed in the last few years by some "IDL instabilities" (unknown in old IDL versions up to 6.4), due to several important changes, namely the introduction of Workbench and New Graphics, which took time to be made really working by EXELIS. Whence most of the questioning about "leaving IDL for Python".
In addition, the present VM scheme for IDL executable distribution seems to me a bit outdated, and might no longer be appealing enough to incite users to do not use unnecessary developer licenses. But EXELIS must also sale enough licenses to maintain IDL at the good level. The economical compromise is maybe not so easy to find...
alain.
|
|
|