<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: IDL vs. Python</title>
	<atom:link href="http://www.astrobetter.com/idl-vs-python/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.astrobetter.com/idl-vs-python/</link>
	<description>Tips and Tricks for Professional Astronomers</description>
	<lastBuildDate>Fri, 30 Jul 2010 02:17:53 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Kelle</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-1618</link>
		<dc:creator>Kelle</dc:creator>
		<pubDate>Thu, 28 Jan 2010 14:23:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-1618</guid>
		<description>I&#039;m closing the comments. Please continue this conversation on the wiki page instead: http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python</description>
		<content:encoded><![CDATA[<p>I&#8217;m closing the comments. Please continue this conversation on the wiki page instead: <a href="http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python" rel="nofollow">http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jessica</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-1613</link>
		<dc:creator>Jessica</dc:creator>
		<pubDate>Thu, 28 Jan 2010 04:48:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-1613</guid>
		<description>@Josh

Now we have a version of the Pros/Cons list on the wiki. The wiki version is meant to be updated. I modified to reflect your comment about Mayavi2.

http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python</description>
		<content:encoded><![CDATA[<p>@Josh</p>
<p>Now we have a version of the Pros/Cons list on the wiki. The wiki version is meant to be updated. I modified to reflect your comment about Mayavi2.</p>
<p><a href="http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python" rel="nofollow">http://www.astrobetter.com/wiki/tiki-index.php?page=idl_vs_python</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: python .gt. IDL</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-1559</link>
		<dc:creator>python .gt. IDL</dc:creator>
		<pubDate>Tue, 26 Jan 2010 05:21:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-1559</guid>
		<description>python + numpy/scipy + matplotlib + pyfits + pymc is far and away a better choice for new astronomers than IDL. It is true that python still doesn&#039;t natively do all of the niceties that IDL does for astronomers (by the way, the Greenfield document is quite old in python years), but just because IDL does something should not imply that IDL does it &lt;i&gt;well&lt;/i&gt;. Interpolation is an easy example.

Support for sparse matrices and a thorough wrapping of linalg packages (e.g. lapack), robust &lt;i&gt;and flexible&lt;/i&gt; spline interpolation, automagic MCMC, a huge assortment of filtering options, pickle, shelve, matplotlib (which makes &lt;i&gt;much&lt;/i&gt; nicer plots than IDL), clean syntax, simple OO interfacing, many optimization routines (MPFIT has been ported, but that&#039;s really just levenberg-marquardt, which has been in scipy for a long time -- check out openopt for a great deal of optimizers!), huge community, and it is free. And this last point really &lt;i&gt;is&lt;/i&gt; important because it attracts even more (perhaps non-astronomer) users to help build the codebase. Python is worth it just for pymc -- perhaps this will finally motivate astronomers to treat their data and models properly!</description>
		<content:encoded><![CDATA[<p>python + numpy/scipy + matplotlib + pyfits + pymc is far and away a better choice for new astronomers than IDL. It is true that python still doesn&#8217;t natively do all of the niceties that IDL does for astronomers (by the way, the Greenfield document is quite old in python years), but just because IDL does something should not imply that IDL does it <i>well</i>. Interpolation is an easy example.</p>
<p>Support for sparse matrices and a thorough wrapping of linalg packages (e.g. lapack), robust <i>and flexible</i> spline interpolation, automagic MCMC, a huge assortment of filtering options, pickle, shelve, matplotlib (which makes <i>much</i> nicer plots than IDL), clean syntax, simple OO interfacing, many optimization routines (MPFIT has been ported, but that&#8217;s really just levenberg-marquardt, which has been in scipy for a long time &#8212; check out openopt for a great deal of optimizers!), huge community, and it is free. And this last point really <i>is</i> important because it attracts even more (perhaps non-astronomer) users to help build the codebase. Python is worth it just for pymc &#8212; perhaps this will finally motivate astronomers to treat their data and models properly!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joshua Bloom</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-1018</link>
		<dc:creator>Joshua Bloom</dc:creator>
		<pubDate>Thu, 24 Dec 2009 18:42:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-1018</guid>
		<description>The pro/con list seems a bit outdated. For instance, there is now surface plots in matplotlib. Check out the 
 &lt;a href=&quot;http://matplotlib.sourceforge.net/examples/mplot3d/surface3d_demo.html&quot; rel=&quot;nofollow&quot;&gt;surface demo&lt;/a&gt;. Your readers might be interested in seeing &lt;a href=&quot;http://matplotlib.sourceforge.net/gallery.html&quot; rel=&quot;nofollow&quot;&gt;a bunch of matplotlib figures&lt;/a&gt;. Rendering figures is starting to get as powerful in python as it is in IDL. For truly cool 3d stuff, check out &lt;a href=&quot;http://code.enthought.com/projects/mayavi/docs/development/html/mayavi/mlab.html#a-demo&quot; rel=&quot;nofollow&quot;&gt;Mayavi2&lt;/a&gt;, which is part of the Enthought Distribution.</description>
		<content:encoded><![CDATA[<p>The pro/con list seems a bit outdated. For instance, there is now surface plots in matplotlib. Check out the<br />
 <a href="http://matplotlib.sourceforge.net/examples/mplot3d/surface3d_demo.html" rel="nofollow">surface demo</a>. Your readers might be interested in seeing <a href="http://matplotlib.sourceforge.net/gallery.html" rel="nofollow">a bunch of matplotlib figures</a>. Rendering figures is starting to get as powerful in python as it is in IDL. For truly cool 3d stuff, check out <a href="http://code.enthought.com/projects/mayavi/docs/development/html/mayavi/mlab.html#a-demo" rel="nofollow">Mayavi2</a>, which is part of the Enthought Distribution.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-678</link>
		<dc:creator>Tom</dc:creator>
		<pubDate>Wed, 25 Nov 2009 04:31:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-678</guid>
		<description>Marshall already answered most of your questions, but just wanted to add a few things. First, about the ‘core’ package. The short answer is that if you don&#039;t mind not having the absolute latest and greatest versions of every python module, you can use something like the &lt;a href=&quot;http://www.enthought.com/products/epd.php&quot; rel=&quot;nofollow&quot;&gt;Enthought Python Distribution&lt;/a&gt; which includes &lt;a href=&quot;http://www.enthought.com/products/epdlibraries.php&quot; rel=&quot;nofollow&quot;&gt;many&lt;/a&gt; pre-installed libraries (including numpy, scipy, matplotlib, and the MySQL-python Marshall was mentioning). This provides a very complete set of (non-astronomy) python modules. Most astronomy packages are fairly simple and will install on top of EPD without much problem. EPD is available for Mac/Linux/Windows if I am not mistaken, and is free for Academics.

As to the question about C compilers, quite a few python modules include C code (e.g. numpy) that is compiled on the fly when the package is installed, using whatever C compilers are available on the host machine. Some packages also include Fortran code that is compiler using whatever Fortran compiler is available. Finally, it is actually possible to write C code inside python code using the scipy.weave package, and this code is compiled at runtime.

Array library: &lt;a href=&quot;http://numpy.scipy.org&quot; rel=&quot;nofollow&quot;&gt;NumPy&lt;/a&gt; and &lt;a href=&quot;http://www.scipy.org&quot; rel=&quot;nofollow&quot;&gt;Scipy&lt;/a&gt; have tons of array manipulation routines.

Polygon clipping: I think &lt;a href=&quot;http://code.google.com/p/sympy/&quot; rel=&quot;nofollow&quot;&gt;SymPy&lt;/a&gt; has a good geometry package to do that kind of thing

Map projection: Not sure if you mean WCS (&lt;a href=&quot;https://www.stsci.edu/trac/ssb/astrolib/&quot; rel=&quot;nofollow&quot;&gt;pywcs&lt;/a&gt;) or something like &lt;a href=&quot;http://www.scipy.org/Cookbook/Matplotlib/Maps&quot; rel=&quot;nofollow&quot;&gt;basemap&lt;/a&gt;.

On a side note, I see the diversity of Python modules as a good thing, even if it means spending a little more time installing things, because it allows anyone to contribute small easily installable modules to do a specific thing well. I do think Astronomy modules in general need more coordination, but the fact that there are multiple FITS or WCS modules out there is good, as this drives competition and ultimately improves the quality of the packages.

I hope this helps!</description>
		<content:encoded><![CDATA[<p>Marshall already answered most of your questions, but just wanted to add a few things. First, about the ‘core’ package. The short answer is that if you don&#8217;t mind not having the absolute latest and greatest versions of every python module, you can use something like the <a href="http://www.enthought.com/products/epd.php" rel="nofollow">Enthought Python Distribution</a> which includes <a href="http://www.enthought.com/products/epdlibraries.php" rel="nofollow">many</a> pre-installed libraries (including numpy, scipy, matplotlib, and the MySQL-python Marshall was mentioning). This provides a very complete set of (non-astronomy) python modules. Most astronomy packages are fairly simple and will install on top of EPD without much problem. EPD is available for Mac/Linux/Windows if I am not mistaken, and is free for Academics.</p>
<p>As to the question about C compilers, quite a few python modules include C code (e.g. numpy) that is compiled on the fly when the package is installed, using whatever C compilers are available on the host machine. Some packages also include Fortran code that is compiler using whatever Fortran compiler is available. Finally, it is actually possible to write C code inside python code using the scipy.weave package, and this code is compiled at runtime.</p>
<p>Array library: <a href="http://numpy.scipy.org" rel="nofollow">NumPy</a> and <a href="http://www.scipy.org" rel="nofollow">Scipy</a> have tons of array manipulation routines.</p>
<p>Polygon clipping: I think <a href="http://code.google.com/p/sympy/" rel="nofollow">SymPy</a> has a good geometry package to do that kind of thing</p>
<p>Map projection: Not sure if you mean WCS (<a href="https://www.stsci.edu/trac/ssb/astrolib/" rel="nofollow">pywcs</a>) or something like <a href="http://www.scipy.org/Cookbook/Matplotlib/Maps" rel="nofollow">basemap</a>.</p>
<p>On a side note, I see the diversity of Python modules as a good thing, even if it means spending a little more time installing things, because it allows anyone to contribute small easily installable modules to do a specific thing well. I do think Astronomy modules in general need more coordination, but the fact that there are multiple FITS or WCS modules out there is good, as this drives competition and ultimately improves the quality of the packages.</p>
<p>I hope this helps!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marshall</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-677</link>
		<dc:creator>Marshall</dc:creator>
		<pubDate>Wed, 25 Nov 2009 01:25:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-677</guid>
		<description>There is not yet any equivalent to &quot;use NASA lib &amp; MPFIT&quot; for Python. A reasonably starting point would be &quot;use Numpy+Scipy+Matplotlib&quot;, but there is as yet no standardized set of astronomy specific packages equivalent to Goddard. It&#039;s early, things are in flux and there are still multiple competing alternatives (for instance the several implementations of WCS). Which is in some ways good, and in other ways bad. Establishing a common set of starting packages for beginners is definitely an area which could use some improvement. (And the ease of install of packages varies wildly. Many are as simple as typing &#039;easy_install packagename&#039; but others require wrestling with compilers. I still can&#039;t get the MySQL interface to build properly on Snow Leopard for some reason.)  

My impression is that the Matplotlib plotting framework is very solid and consistent. The ability to hit &#039;save&#039; and produce a PDF file that looks pretty much exactly like any given window is a huge plus. But I&#039;ve not tried specifically to predict the size of display strings like you asked. And live resizable windows! It&#039;s like a breath of fresh air.

Don&#039;t get me wrong, I still spend more time in IDL than in Python right now, particularly given the three humongous applications I&#039;m working on that I &lt;i&gt;really&lt;/i&gt; don&#039;t want to port. And there are some things each language feels more smooth at. But I consider myself a relative neophyte in Python in a lot of ways (maybe green belt level, hopefully on my way up to a black belt eventually to match my ones in taekwondo and IDL. :-)  and I&#039;m trying to produce more new code there right now.</description>
		<content:encoded><![CDATA[<p>There is not yet any equivalent to &#8220;use NASA lib &amp; MPFIT&#8221; for Python. A reasonably starting point would be &#8220;use Numpy+Scipy+Matplotlib&#8221;, but there is as yet no standardized set of astronomy specific packages equivalent to Goddard. It&#8217;s early, things are in flux and there are still multiple competing alternatives (for instance the several implementations of WCS). Which is in some ways good, and in other ways bad. Establishing a common set of starting packages for beginners is definitely an area which could use some improvement. (And the ease of install of packages varies wildly. Many are as simple as typing &#8216;easy_install packagename&#8217; but others require wrestling with compilers. I still can&#8217;t get the MySQL interface to build properly on Snow Leopard for some reason.)  </p>
<p>My impression is that the Matplotlib plotting framework is very solid and consistent. The ability to hit &#8217;save&#8217; and produce a PDF file that looks pretty much exactly like any given window is a huge plus. But I&#8217;ve not tried specifically to predict the size of display strings like you asked. And live resizable windows! It&#8217;s like a breath of fresh air.</p>
<p>Don&#8217;t get me wrong, I still spend more time in IDL than in Python right now, particularly given the three humongous applications I&#8217;m working on that I <i>really</i> don&#8217;t want to port. And there are some things each language feels more smooth at. But I consider myself a relative neophyte in Python in a lot of ways (maybe green belt level, hopefully on my way up to a black belt eventually to match my ones in taekwondo and IDL. <img src='http://www.astrobetter.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />   and I&#8217;m trying to produce more new code there right now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JDS</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-675</link>
		<dc:creator>JDS</dc:creator>
		<pubDate>Tue, 24 Nov 2009 22:43:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-675</guid>
		<description>I wonder if those ex-IDLers now using Python (+ associated scientific computing packages, hereafter for convenience called &quot;Iython&quot;) can comment on the following:

- How easy is it for end users to install the various packages needed for a &quot;core&quot; Iython install, including plotting, data handling, widgets, etc., for Win/Linux/Mac?  And a related question...

- A basic set of instructions for an end user of distributed IDL routines/packages might be &quot;use IDL &gt; X.X; NASA Lib, MPFIT on IDL search path,&quot; with a very high chance the code will run out of the box if those minimal dependencies are satisfied.  How short or long would the equivalent install instructions for an Iython package of comparable complexity be?

- Does Iython come with its own C compiler, so that you can distribute platform agnostic C code and have it auto-compiled?  If not, what advantages does Python offer in plugging in C or other code, compared to, say, MAKE_DLM?

- Is there a preferred editor which understands the operator constructs in NumPy, etc.?

- Does Iython offer interfaces to array libraries, polygon clipping libraries, map projection libraries, etc.

- Does Iython&#039;s plotting framework use a consistent set of fonts for display/vector output/hardcopy?  Can you predict in advance the size (horizontal and vertical) of displayed strings for precise positioning?

Thanks.</description>
		<content:encoded><![CDATA[<p>I wonder if those ex-IDLers now using Python (+ associated scientific computing packages, hereafter for convenience called &#8220;Iython&#8221;) can comment on the following:</p>
<p>- How easy is it for end users to install the various packages needed for a &#8220;core&#8221; Iython install, including plotting, data handling, widgets, etc., for Win/Linux/Mac?  And a related question&#8230;</p>
<p>- A basic set of instructions for an end user of distributed IDL routines/packages might be &#8220;use IDL &gt; X.X; NASA Lib, MPFIT on IDL search path,&#8221; with a very high chance the code will run out of the box if those minimal dependencies are satisfied.  How short or long would the equivalent install instructions for an Iython package of comparable complexity be?</p>
<p>- Does Iython come with its own C compiler, so that you can distribute platform agnostic C code and have it auto-compiled?  If not, what advantages does Python offer in plugging in C or other code, compared to, say, MAKE_DLM?</p>
<p>- Is there a preferred editor which understands the operator constructs in NumPy, etc.?</p>
<p>- Does Iython offer interfaces to array libraries, polygon clipping libraries, map projection libraries, etc.</p>
<p>- Does Iython&#8217;s plotting framework use a consistent set of fonts for display/vector output/hardcopy?  Can you predict in advance the size (horizontal and vertical) of displayed strings for precise positioning?</p>
<p>Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eli</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-573</link>
		<dc:creator>Eli</dc:creator>
		<pubDate>Thu, 29 Oct 2009 23:13:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-573</guid>
		<description>WesTF and Adam are both onto something. I wrote a program earlier this year that replicates the IDL save/load capability. The program looks through all of your global environment variables in a Python session and selects the numpy arrays automatically when you choose to save. After seeing the comments on this topic and a push from several colleagues I&#039;ll clean up the code and post it for download so others can use it.</description>
		<content:encoded><![CDATA[<p>WesTF and Adam are both onto something. I wrote a program earlier this year that replicates the IDL save/load capability. The program looks through all of your global environment variables in a Python session and selects the numpy arrays automatically when you choose to save. After seeing the comments on this topic and a push from several colleagues I&#8217;ll clean up the code and post it for download so others can use it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WesTF</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-570</link>
		<dc:creator>WesTF</dc:creator>
		<pubDate>Thu, 29 Oct 2009 22:22:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-570</guid>
		<description>If saving is really a concern to python users, they could always adopt the pickle library. It can do most of what idl save does, but is more specific.</description>
		<content:encoded><![CDATA[<p>If saving is really a concern to python users, they could always adopt the pickle library. It can do most of what idl save does, but is more specific.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam Ginsburg</title>
		<link>http://www.astrobetter.com/idl-vs-python/comment-page-1/#comment-543</link>
		<dc:creator>Adam Ginsburg</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:54:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.astrobetter.com/?p=212#comment-543</guid>
		<description>Tom Robitaille and the AstroPython/APLpy group released &lt;a href=&quot;http://idlsave.sourceforge.net/&quot; rel=&quot;nofollow&quot;&gt; IDLsave &lt;/a&gt; about two weeks ago.  That should alleviate some of the concerns about saving, especially if they come up with a &#039;write&#039; package to match.</description>
		<content:encoded><![CDATA[<p>Tom Robitaille and the AstroPython/APLpy group released <a href="http://idlsave.sourceforge.net/" rel="nofollow"> IDLsave </a> about two weeks ago.  That should alleviate some of the concerns about saving, especially if they come up with a &#8216;write&#8217; package to match.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
