Path: news.mathworks.com!not-for-mail
From: "John D'Errico" <woodchips@rochester.rr.com>
Newsgroups: comp.soft-sys.matlab
Subject: Re: idea for file exchange
Date: Sat, 14 Jul 2007 11:29:15 +0000 (UTC)
Organization: John D'Errico (1-3LEW5R)
Lines: 51
Message-ID: <f7ac2b$9t1$1@fred.mathworks.com>
References: <ef5b4bd.-1@webcrossing.raydaftYaTP> <ef5b4bd.2@webcrossing.raydaftYaTP> <ef5b4bd.4@webcrossing.raydaftYaTP> <f76o2k$dt1$1@fred.mathworks.com>
Reply-To: "John D'Errico" <woodchips@rochester.rr.com>
NNTP-Posting-Host: webapp-00-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1184412555 10145 172.30.248.35 (14 Jul 2007 11:29:15 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Sat, 14 Jul 2007 11:29:15 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader eê64(-¸†
Xref: news.mathworks.com comp.soft-sys.matlab:419065


Duane wrote:
<snip>
p.s., I assume that's why there are so many homework solutions
currently in the FEX. For example, why do we need Gaussian
elimination with pivoting or the fft as M-files in the FEX?
</snip>

David wrote:
> I guess this conversation was over a month ago, but I want to throw my $.02 in anyway. What's wrong with high quality solutions to things that are homework problems? From my perspective, FEX submissions in that line are very helpful for people getting into Matlab. All the fancy, optimized (and consequently obfuscated in many cases) code is pretty dense stuff for new users. I don't think it's so hard to believe there are a fair number of enthusiastic students that are trying to learn because they are interested.
<Snip>

Because things that students think are high quality
often are not. Yes, they got a good grade for a highly
looped matrix inverse, written as script file, complete
with clear statements at the beginning. It solved their
homework assignment, which was to write a matrix
inverse solution, so the grade refelected that fact.
A teacher grading a homework assignment will
expect to see deeply nested loops.

These are poor things to be teaching others to use
in the real world. The fact is, many people use inv
because they find some formula in a book. They
use the normal equations to solve a least squares
problem BECAUSE THEY FOUND IT IN A BOOK. Sadly,
the author of that book did not know any better, 
and included it in their text.

Students tend not to use good programming practices.
They tend to use scripts, not functions. They use clear
statements at the beginning of those scripts, even at
the start of their functions. Little documentation is
provided.

Suppose the linear algebra area in the file exchange
ends up with 200 useful tools, plus 2000 versions of
matrix inverse, unpivoted gaussian eliminations, 
etc. Of course, other students see this bounty of poor
work, and since they don't know any better, replicate
it themselves. They see crappy code that is no better
than their own code, so they assume this is the norm.
Its on the file exchange, so this is how to write good
code. Plus, they probably give is a good review, since
they don't know any better. Crap promotes more crap.
Eventually, nobody can find the useful tools, completely
hidden, overwhelmed by the noise.

The file exchange is a place to put high quality code
that extends Matlab beyond where TMW can take it.

John