Talk:Numerical Recipes

message: Hi,
I think that it would me useful to add a link to the voice about the Colt library for Java.
I say this because in the past I actually found myself looking for something similar to Numerical Recipes for Java, and it wasn't straightforward to find it.
I actually don't know of a Java version of the LEDA library, so if anyone knows one, it would be nice to add a link in the LEDA voice as well.
Thanks,
155.198.157.29 (talk) 14:28, 12 July 2010 (UTC)
thread_title: Link to Colt for Java

message: I deleted the following section from the article:
:Negative criticism of the books, almost without exception, has one or more of the following characteristics:
:* It refers to the first edition
:* It is nonspecific
:* It is anonymous
:* It is unsupported by citations or reference to "better" techniques
:* Assertions of "efficiency" are not quantitative
:* It cites numerous "bugs" that have long since been corrected
:* It claims something like "serious scholars have long since derided <some NR algorithm that is not explicitly named> and now "modern techniques" are in use, all without specific citations
:* It claims something like "the book seems OK at first glance but serious analysis of 'my specialist area' shows that at least this part of the book is deficient"
:As such, much of the negative criticism of the book has much in common with urban myth or pseudoscience.
In my opinion, this is not a fair reflection of the complaints which have been mentioned in reviews about the books. I replaced the above fragment with a summary of the main critisms. -- Jitse Niesen 18:24, 5 May 2004 (UTC)
replies: text: Wikipedia articles are not the place to give your opinions on neither the book nor the criticisms of it. Both its criticism and "criticism about the criticism" have to be properly sourced. 190.188.180.148 (talk) 23:52, 10 March 2009 (UTC)
thread_title: Deleted section

message: Can anyone point out where in Whaley it says that "LAPACK with a highly optimized BLAS library can be an order of magnitude faster than textbook linear-algebra routines such as the Gaussian elimination or LU decomposition code in Numerical Recipes"? I tried to locate this statement, or anything like it, in the paper, but couldn't. --Robert.Baruch (talk) 19:04, 14 July 2010 (UTC)
replies: text: In the beginning of part III of the paper, they point out that level-3 BLAS operations (which are what is used in LAPACK for things like LU decomposition) "can display orders of magnitude speedups" compared to unoptimized code (e.g. the textbook-style triply nested loops are specifically mentioned), and they back this up by comparing benchmarks (fig. 4) to the reference BLAS, which is basically the textbook 3-loop implementation.  (As far as I can tell, there is nothing controversial about this statement; the order-of-magnitude speedups from rearranging algorithms for locality is the whole reason behind the restructuring of the old LINPACK+EISPACK into LAPACK+BLAS.  But I haven't seen anyone who bothered to publish a benchmark specifically against Numerical Recipes; everyone who does numerical linear algebra seriously already knows that NR is an order of magnitude slower precisely because it copies the old pre-LAPACK style.)  — Steven G. Johnson (talk) 22:48, 14 July 2010 (UTC)
replies: text:  Thanks. Not that I disagree with the statement, but I just think the positioning of the phrase "such as the ... code in Numerical Recipes" is somewhat misleading, putting the phrase in the mouths of the authors. Perhaps a tiny rewrite? --Robert.Baruch (talk) 22:36, 19 July 2010 (UTC)
replies: text: I agree that it could be more clearly worded.  — Steven G. Johnson (talk) 12:30, 21 July 2010 (UTC)
thread_title:  Criticism 

message: I've done a major rewrite of this article to try to restore it to a neutral viewpoint.  It is without doubt that the Numerical Recipes books are an important set of works that have had a significant influence over more than a generation of scientific programmers.  On the other hand, there are some valid criticisms of the books that must be aired.
I've tried to get across the "spirit" of the books that has indeed made them best-sellers over the years, but not to minimize their limitations -- and also to identify the communities that the criticism has come from.
I think the "debate" about errors in the code is 20 years out of date and not worth wasting wiki-space on.  You can go to the Numerical Recipes web site to see their list of bugs found in the last few years.  They are down to very few, and very minor, per year, indicating a mature code base.
I've pruned the "rant" external references down to a minimum.  I'm not sure I've included the right ones, so welcome discussion here as to which (if any) should be restored, or which included ones should be deleted.  As for me, I'd delete them all, but I want to accommodate other views if they really still exist out there (not just as old fossils).
SciCompTeacher (talk) 03:48, 18 August 2011 (UTC)
thread_title: Major Rewrite Answering Some Issues Above

message: The First Edition of Numerical Recipes was first published in 1989, even though it has a copyright date of 1986.  The code therein was all ANSI-standard FORTRAN-77.  Other languages, such as BASIC, were later handled in supplements that were somewhat thinner than the main book, since they contained mostly program listings with very little discussion.  I own a copy of the First Edition, Second Printing, with the yellow dust jacket.  This edition isn't shown on the Numerical Recipes site anymore. — QuicksilverT @ 18:00, 8 October 2013 (UTC)
thread_title:  Date of First Edition 

message: I've no dog in this race: I've never seen or heard of this book until today. But this section was really awful.
Rationale for each but deleted is given: please consider a counter-rationale before replacing. I've kept what I could, but it wasn't much.
"An early reviewer wrote, "The phrase 'numerical recipes' is bound to send the shudders down every honest numerical mathematician's spine."Iserles, Arieh; Mathematical Gazette, vol. 73, no. 464 (June 1989) He also praised, however, the authors' readiness to "go out on a limb and present their own opinions"."
* Assuming good faith, I think this is intended to be balanced, but just comes across as an insult, followed by a backhanded insult.
* Calls the authors (and anyone who uses the book) a dishonest mathematician; then calling the authors opinionated.
* Review by "an early reviewer" is likely to be for 1st ed, so is arguing against a strawman anyway. A review for a version of a software program that's 25 years old would not be considered worth mentioning, so why is this factless, opinionated spite, a quarter of a century old, considered relevant here?
"Given the editorial style of the books, it is not surprising that they were (and to some extent remain) controversial within the numerical analysis community."
I was going to just slap a  here, but... OR premises (the books are editorial; they are controversial in that community) and unfounded OR conclusion (premise A comes from premise B) suggest it's best to just delete.
"Early criticism centered on the books' assumed unreliability (the First Edition indeed contained some mistakes), the exclusion of some algorithms, and the authors' implication, not always correct, that their programs were as efficient and reliable as "black-box" libraries, for example the NAG Numerical Libraries."
* "Early criticism" - is criticism of 1st ed notable in some way?
* The "authors' implication" - without a cite, a quote, or even a claim that they directly claimed that, ever? Sounds like someone misread/misinterpreted the book. 
Passage can't stand as is, but could be reintroduced with references of this being a specific criticism leveled against this book, since it does feel like it might almost be notable. I've replaced it with a small placeholder and a cite tag, rather than delete it outright.
"Although not mentioning Numerical Recipes by name, Whaley et al.Whaley, R. Clint; Petitet, Antoine; and Dongarra, Jack J.; "Automated empirical optimization of software and the ATLAS project," Parallel Computing 27, 3–35 (2001). demonstrate that LAPACK with a highly optimized BLAS library can be an order of magnitude faster (or more) than textbook-style triply nested-loop linear-algebra routines similar to the code in Numerical Recipes. As another example, Frigo and JohnsonJohnson, Steven G.; and Frigo, Matteo; "Implementing FFTs in practice in Fast Fourier Transforms (Burrus, C. Sidney; ed.), ch. 11, Rice University, Houston TX: Connexions, September 2008. point out that the fast Fourier transform (FFT) code in highly optimized programs on modern computer architectures is 5–40 times faster than the example in Numerical Recipes."
* That's really cool, but... not at all relevant to this page. This is a page about a book.
* Unless the book explicitly claims to give maximally-optimized code-snippets (and it doesn't; covered above), the fact that there are faster versions of the algorithms described therein should come as no surprise to anyone, anywhere. Info on the current-fastest algorithms may be relevant under Linear Algebra and fast Fourier transform, though.
* Given that math and computing are fields where development is common, it's normal to expect faster algorithms to be found.
* Given that both examples postdate the first edition by well over a decade, you can't claim as a "criticism" of the work that someone found a faster way to do stuff using massive parallelism.
* Given that both examples described predate the current edition, it's even unsafe to claim that the book does not already mention them.
* Given that the refs for these faster implementations do not even mention this book, they cannot be counted as criticisms of the book, so don't deserve mention in this section.
* The book is cited 3k times a year according to an earlier paragraph... and yet, the "criticisms" cited here are neither critical, nor cites.
"A second line of criticism centers on the fact that, although printed in the books, the code is copyright by the Numerical Recipes authors, and thus not freely available for use under a GNU General Public License or similar open license. Indeed, one early motivation for the GNU Scientific Library was that a free library was needed as a substitute for Numerical Recipes. The Numerical Recipes authors have been unapologetic to this criticism. They derive income from selling individual and corporate licenses to the code, and clearly consider the Numerical Recipes enterprise as a business.Numerical Recipes Web site, Numerical Recipes Code"
This had some (unreferenced) facts that might actually be worth including, but was quite laced with bias:
* "although printed in the books" - printing doesn't relieve stuff of copyright.
* "and thus not GNU" - Copyright doesn't preclude open licensing, it depends on it. GNU is not Public Domain.
* "have been unapologetic" - Sounds like OR, plus, why should they apologize for doing no wrong?
* "clearly consider the NR enterprise a business" - authors counting their book as a business?! The shame! Except... that's what authors DO. It's their JOB.
70.114.130.6 (talk) 03:22, 24 August 2014 (UTC)
thread_title:  Deleting inappropriate criticism.