Re: [Numpy-discussion] Deprecation of financial routines
[snip] On 08/19/2013 05:06 PM, Joe Harrington wrote: A reorg that would bring us to a very heirarchical structure would be disruptive to existing code. Yet, there are maintenance and startup speed arguments in favor of a heirarchy. However we resolve it, I don't know that singling out the financial routines is the right short-term approach, and it wouldn't make much of a dent. So, I'd suggest we take it as two issues to solve separately 1) keeping or tossing the fin routines and 2) moving toward a heirarchy of routines or not. Talking about existing code, honestly I don't think we should worry about that much. I made a not-so-shallow search on GitHub and Google and I saw zero mention of numpy.financial in the NumPy User Guide, zero in the SciPy Cookbook, no mention on GitHub (people are pushing their virtualenvs to their repos, so NumPy source code is replicated a thousand times on the internets ;) including financial_test.py), and, well, I didn't go through all the o's of Google but you get the picture. Making people used to IDL and MATLAB use namespaces is an issue completely unrelated to this in my opinion, or better put, much more general, because it affects the whole scientific Python ecosystem. Josef mentioned matplotlib.finance: https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/finance.py#L5 This module is deprecated in 1.4 and will be moved to `mpl_toolkits`or it's own project in the future.. They might be in a similar situation than NumPy. I don't have an opinion on the usefulness of financial functions on NumPy and I have zero knowledge on finance myself, but if this discussion makes someone write a nice tutorial on using them (being on a subpackage or not) and attract people to actually use them (I would bet very few are doing so as of now), then great! My proposal is moving them to a separate subpackage as a first step to their disappearance. Maybe when someone sees the move and/or the deprecation note on the release notes that tutorial will be written :) Juan Luis Cano ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On Mon, Aug 19, 2013 at 3:47 PM, Skipper Seabold jsseab...@gmail.com wrote: +1 on scipy.finance / scipy.financial (or even numpy.finance / numpy.financial) Are there no external libraries that deal with these things? If they exist, we can deprecate with two releases pointing to that external source. Factoring the code out to a package only makes sense if someone is willing to take ownership, otherwise we're essentially deprecating it out to die. Stéfan ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
[Numpy-discussion] Deprecation of financial routines
As now master is open for 1.9, following the discussion opened here https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy, because they pollute the main namespace and some are unimplemented. We could put them in a separate package, in case it doesn't exist yet. Nathaniel Smith and Ralf Gommers already gave +1, and Charles Harris suggested bringing this up in the mailing list. Thoughts? ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
I am +1 as well, I don't think they should have been included in the first place. The deprecation should happen after a separate package has been made available, in case some people depend on it. On Mon, Aug 19, 2013 at 7:37 AM, Juan Luis Cano juanlu...@gmail.com wrote: As now master is open for 1.9, following the discussion opened here https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy, because they pollute the main namespace and some are unimplemented. We could put them in a separate package, in case it doesn't exist yet. Nathaniel Smith and Ralf Gommers already gave +1, and Charles Harris suggested bringing this up in the mailing list. Thoughts? ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On 8/19/2013 2:37 AM, Juan Luis Cano wrote: https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy It seems that this summary is a bit one-sided. There was also a suggestion to move these into numpy.financial, which is much less disruptive. I'm not arguing for either of those choices, but it seems to me that the right way to bring this forward to to recall the original motivation for having them and ask if that motivation has fallen apart. I believe that the original motivation for providing the financial functions was to complete the sense that Python users could turn to NumPy whenever they might turn to a calculator: http://mail.scipy.org/pipermail/numpy-discussion/2008-April/032422.html Behind this, I believe, was a desire to draw new users to NumPy. The request for simple financial functions does arise, and people do get pointed to NumPy for this. This seems to me to be a benefit to the NumPy community, although a small one. I'm getting the feeling that some of the opposition to the financial functions is purely aesthetic. (What are *these* doing here??) It seems to me that a request for comments would be more useful if it tried to lay out the perceived costs and benefits to this change. One cost that has been clearly stated is namespace pollution. That seems pretty small to me, but in any case would be fully addressed by making these available as numpy.financial. Alan Isaac ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
[clip] On 08/19/2013 01:34 PM, Alan G Isaac wrote: On 8/19/2013 2:37 AM, Juan Luis Cano wrote: https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy It seems that this summary is a bit one-sided. There was also a suggestion to move these into numpy.financial, which is much less disruptive. Sorry for that, it's true that the summary was one-sided. I wanted to be brief, and ended supressing some information. I was not aware of the original motivation for having those functions there, and I see those points are valid too. Nevertheless my motivations for bringing this up on the mailing list go no further than raising discussion and help closing and old issue, so apart from getting them out from the main namespace (either numpy.financial or complete removal, and yes, for aesthetic reasons) I am +-0 on either proposal. Juan Luis Cano ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On Mon, Aug 19, 2013 at 2:37 AM, Juan Luis Cano juanlu...@gmail.com wrote: As now master is open for 1.9, following the discussion opened here https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy, because they pollute the main namespace and some are unimplemented. We could put them in a separate package, in case it doesn't exist yet. Nathaniel Smith and Ralf Gommers already gave +1, and Charles Harris suggested bringing this up in the mailing list. When I was initially working with the docs it galled me to find documented, but unimplemented financial functions. I spent the time to implement all of the unimplemented functions. As an example see https://github.com/numpy/numpy/pull/190. I just glanced through the code and all functions are there, implemented and documented, so I don't know where that comment came from in https://github.com/numpy/numpy/issues/2880. Definitely in 1.7. About whether they should stay or go, I vote 0. I see financial functions as an absolute requirement in engineering (though often engineers allow financial optimization and decisions to default to others, IMO a big mistake). Financial analysis in science? Probably not so much, which is my guess as to why the discussion was brought up. Since I wrote a couple of the financial functions, you would think I might vote -1 to deprecation, but the reason I wrote the functions was to remove the NotImplemented errors. They really bothered me. I thought that if the functions were already included in numpy, they must be useful to someone. For me, typically I do any financial work in a spreadsheet - that is why I vote 0. Kindest regards, Tim ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On Mon, Aug 19, 2013 at 9:38 AM, Cera, Tim t...@cerazone.net wrote: On Mon, Aug 19, 2013 at 2:37 AM, Juan Luis Cano juanlu...@gmail.com wrote: As now master is open for 1.9, following the discussion opened here https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy, because they pollute the main namespace and some are unimplemented. We could put them in a separate package, in case it doesn't exist yet. Nathaniel Smith and Ralf Gommers already gave +1, and Charles Harris suggested bringing this up in the mailing list. +1 on scipy.finance / scipy.financial (or even numpy.finance / numpy.financial) Skipper ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On Mon, Aug 19, 2013 at 9:47 AM, Skipper Seabold jsseab...@gmail.com wrote: On Mon, Aug 19, 2013 at 9:38 AM, Cera, Tim t...@cerazone.net wrote: On Mon, Aug 19, 2013 at 2:37 AM, Juan Luis Cano juanlu...@gmail.com wrote: As now master is open for 1.9, following the discussion opened here https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy, because they pollute the main namespace and some are unimplemented. We could put them in a separate package, in case it doesn't exist yet. Nathaniel Smith and Ralf Gommers already gave +1, and Charles Harris suggested bringing this up in the mailing list. +1 on scipy.finance / scipy.financial (or even numpy.finance / numpy.financial) I think now scipy.finance is overkill. There isn't enough to warrant a subpackage. And for serious code, users should use other packages (like pandas, ...). numpy.financial like matplotlib.finance just to satisfy some basic spread sheet use cases http://stackoverflow.com/questions/2259379/basic-financial-library-for-python If the python standard lib can get statistics, then numpy can keep some basic financial calculations. +0.5 on numpy.finance / numpy.financial with explicit import (?) (proposal for new function `numpy.spreadsheet_calculation` :) Josef Skipper ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Re: [Numpy-discussion] Deprecation of financial routines
On 8/19/2013 2:37 AM, Juan Luis Cano wrote: https://github.com/numpy/numpy/issues/2880 it was suggested that we deprecate and eventually remove the financial functions in NumPy IDL has financial functions. Matlab has financial functions. Financial functions are something that a subset of potential customers of numerical packages look for. There is a strong tradition of people going from math/science/engineering into the finanical world, and people start on that route by playing with strategies and seeing what they can do relative to the market. To see how well they do, they need to calculate an internal rate of return, and so forth. The fin routines are tiny and don't require much maintenance once written. If we made an effort (putting up pages with examples of common financial calculations and collecting those under a topical web page, then linking to that page from various places and talking it up), I would think they could attract users looking for a free way to play with financial scenarios. Python is a perfect language for newbies to programming, which many who want to play with finances are. So, I would say we keep them. If ours are not the best, we should bring them up to snuff. I think we can endlessly debate namespace pollution. Developers hate it, but most normal users just don't mind a large number of routines in the top level, and many actively dislike the code litter of lots of long, dotted routine names. I've had a hard time getting my colleagues not to from numpy import *. Some of the good ones even teach that in their seminars to convert IDL and IRAF users, and they chew me out when I suggest to them that it's a bad habit! A reorg that would bring us to a very heirarchical structure would be disruptive to existing code. Yet, there are maintenance and startup speed arguments in favor of a heirarchy. However we resolve it, I don't know that singling out the financial routines is the right short-term approach, and it wouldn't make much of a dent. So, I'd suggest we take it as two issues to solve separately 1) keeping or tossing the fin routines and 2) moving toward a heirarchy of routines or not. I'm -1 for deprecating the routines. I'll hold off on the second question until someone makes a clear proposal that resolves namespace pollution, and we discuss it. --jh-- ___ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion