[AstroPy] Proliferating py-astro-libs

Perry Greenfield perry at stsci.edu
Sat Jun 11 10:54:27 EDT 2011

On Jun 11, 2011, at 2:03 AM, Joe Harrington wrote:

> Responding quickly to Perry...
> I like the matplotlib approach to the IDL problem: Implement it right
> first.  Then write compatibility wrappers that look like IDL.  These
> keep old code alive without requiring maintenance of two full
> codebases.
Ideally, yes. But the simple fact is that it is much simpler to do a  
literal translation. When the 'right' solution doesn't appear quickly  
enough there are many who are willing to do the easy thing (and may  
not have time or the expertise to do the right thing). Are we to say  
"no, you must wait for the right approach"? And I do mean that it is  
much easier. Doing it right means understanding most of the uses of  
the objects involved in order to figure out how best to do the design  
and even then a few iterations may be needed to get a good design. So  
I can see where the literal approach can solve some people's problem  
in the meantime.

It's easy to point to matplotlib to say that was the right way to do  
it. It misses the fact that there were several years of failed  
approaches before it appeared. And even in matplotlib, if you were to  
ask John Hunter, would have done some things differently now (and it  
has had some significant refactorings besides).

> I dislike the SAGE approach.  It installs too much, and not enough,
> both at the same time!  Base classes, small and independent packages,
> meta-packages that have dependencies on a selection of real packages
> and thus look like monolithic systems you can easily extend, all done
> at the package-manager level.  Tests.  Docs.  A small start but with a
> big and straightforward design.  This is the way to go.
Well, note I said Sage-like, not Sage. Sage itself I think is  
essentially monolithic. We aren't talking about anything like its  
size. We would like to use some of its tools and approaches. And we  
intend for it to allow upgrades and additions. They have had good  
success with installation though. Am I 100% certain this is the right  
approach? No, but it's what we are going to try given our resources.

As I've said before, this is a notoriously hard problem. If it wasn't  
it would have been solved already by many other in many other fields.  
There will be no perfect solution (I feel confident in this  
prediction). No one is stopping others from trying approaches they  
feel are superior.


More information about the AstroPy mailing list