Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- From: spinoza1111 <spinoza1111@xxxxxxxxx>
- Date: Tue, 16 Mar 2010 20:15:24 -0700 (PDT)
On Mar 17, 2:56 am, Chad <cdal...@xxxxxxxxx> wrote:
On Mar 16, 11:13 am, John Bode <jfbode1...@xxxxxxxxx> wrote:
On Mar 16, 11:59 am,spinoza1111<spinoza1...@xxxxxxxxx> wrote:
On Mar 16, 10:28 pm, John Bode <jfbode1...@xxxxxxxxx> wrote:
On Mar 14, 12:38 am,spinoza1111<spinoza1...@xxxxxxxxx> wrote:
[snippage]
No, he pissed me off by criticizing Schildt without standing and
didn't apologize.
"Without standing"?
The errors that Seebach points out are real; some are nit-picky, some
are serious. Schildt's example code has real bugs. He offers
explanations that are, to put it kindly, at variance with the language
definition.
At the time the first edition was written, there were multiple
versions of C, because it was an adolescent prank and not a
programming language.
So, in order to defend Schildt, you're going to attack Ritchie's
abilities as a language designer? Is that your plan? Schildt didn't
describe the language incorrectly, it was Ritchie who designed the
language incorrectly?
I remember the bad old days before C89, but the kinds of errors
Schildt made weren't due to the fact that implementations varied.
Code like
Page 53:
/* Write 6 integers to a disk file. */
void put_rec(int rec[6], FILE *fp)
{
int len;
len = fwrite(rec, sizeof rec, 1, fp);
if (len != 1) printf("write error");
}
wasn't going to work correctly *anywhere*.
Seebach and Richard Heathfield have BOTH admitted that their own books
contain numerous errors. Therefore, where do they get the right to
target Schildt and his family (by making a foul word of his patronym)?
An error is an error, regardless of who points it out. Everybody
makes mistakes. The problem with C:TCR is that it had *so many*
errors in one volume coupled with its wide popularity. It had a
negative affect on the educations of a *lot* of programmers. It's
taken the better part of 20 years and 3 more editions to get it to
where it's (apparently) passable. That's not a good record to stand
on.
And I don't think either Seebach or Heathfield coined the term
"Bullschildt" (earliest references I see in the archives are from
Chris Engebretson and Jens Schweikhardt); I wouldn't be surprised if
there were multiple independent sources for it. I'm not sure I didn't
hear the term from one of my professors in '88 or '89.
Seebach has no standing since he doesn't appear to be a real
programmer.
He can read the language standard. He can compare what the language
standard says with what Schildt says. He can point out where they
differ. He can look at the snippet posted above and based on the text
of the standard reason that it's not going to behave as described.
That's all the standing he (or anyone else) needs. And FWIW, I *am* a
"real programmer" (as in, I have a CS degree, I'm a professional
software developer, it's what I've been doing for 20 years now in a
variety of fields), and while I'll be the first to admit that I'm more
hack than hacker, I *am* qualified to judge Schildt's book on merit.
From the perspective of someone who *is* a professional programmer and
*does* know the C language pretty well, Seebach's criticisms of
Schildt's book are valid.
His code examples here have mostly been buggy, and have
been of the script kiddie's "let's get this done and worry about bugs
later" variety.
God knows I don't put the same kind of effort into writing examples
here that I put into writing code at work; I don't expect that of
anyone else. There shouldn't be *obvious* bugs, but I'm not going to
spend hours and hours getting that snippet *just* right.
Whereas Schildt has genuine programming experience,
enough to know that if a specific C compiler permits a variant return
from main that it DOESN'T MATTER unless the code is ported, and enough
to have a grownup's perspective on what it takes to get a job done.
IIRC, he never mentioned portability wrt main's return type; not
surprising, since the book assumed that all the world was DOS. The
VMS C compiler didn't seem to care much either, but that doesn't make
the statement any less wrong. The C runtime owns the interface to
main, not the programmer. main should return whatever the runtime
environment expects it to return.
He also has considerable more academic qualifications than Seebach:
Schildt has a BS and MS in computer science: Seebach has taken no
courses at all in computer science.
A degree in CS is not a degree in programming; one can be a skilled
programmer without having taken a single hour of CS classes. And, to
flog the equine carcass again, some more, most of us in this newsgroup
who share Seebach's criticisms of C:TCR *do* have CS degrees and *do*
write code professionally.
The person that wrote the early *nix versions of Netscape, XEmacs,
XScreensavers, and Mozilla only had a high school diploma. His "email
algorithm" is used in alot of the modern email clients. In an old
interview, he told the person interviewing him that he almost
considered dropping out of high school in the 11th grade because
school just wasn't working out for him.
(Sigh) But Peter Seebach hasn't contributed any such code to this
newsgroup or anywhere else, to my knowledge. Most recently:
* He contributed, out of the blue and quite proud of it, a poorly
formatted piece of script kiddiedom which was supposed to replace %s
by a value but in fact replaced % anything and probably would fail if
there was a percent at the end of the master string.
* He tried to show us how to write strlen in one line, having failed
to answer the challenge to write a replace() without using string.h.
His one line of code had an off by one bug.
It is true that:
* People who complete, as Schildt completed, the MS and BS in
computer science can be highly effective
* People who complete the course work but who don't take the degree
can be highly effective
* People who drop out of high school but who read a lot of computer
books can be highly effective
However, one characteristic of the third class is their love of books,
which usually manifests itself as enthusiasm for a good book, not
hatred for a bad book. Book lovers, of the sort that can actually
teach themselves a subject from a book (as Abraham Lincoln taught
himself law), are like dog lovers: they say, no bad books and are
uniquely charitable about errors in books, joyfully and collegially
corresponding with the author directly, not snidely posting web pages
like little weasels.
I was offered a job teaching at university without a graduate degree
because I knew Logic and could teach. Certification only helps us
presort. But in Peter Seebach's case, he's done nothing that I know of
to allow me to say that it doesn't matter that he hasn't studied CS.
In particular, he made an idiot out of himself in CTCN by claiming
that it's wrong to mention the stack in explaining the C runtime, and
that the "heap" is an MS-DOS term. He also thinks that properly
spelled identifiers are hard to understand.
He's not the autodidact Abraham Lincoln of this newsgroup: people who
self-study effectively are marked in special ways by humility and
charity.
Instead he's the Sarah Palin of this newsgroup, an uneducated person
who gets what he wants by stabbing people in the back while being
completely ignorant of the basics of his trade.
.
- References:
- Letter sent to Apress with concerns about Peter Seebach's online behavior
- From: spinoza1111
- Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- From: Seebs
- Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- From: Dann Corbit
- Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- From: Chad
- Letter sent to Apress with concerns about Peter Seebach's online behavior
- Prev by Date: My Insecurities That Ruin Chrissy’s Life [from the Christina Fusco Prayer Diary]
- Next by Date: Re: [semi-OT] a hunk of not-very-portable code I've been working on
- Previous by thread: Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- Next by thread: Re: Letter sent to Apress with concerns about Peter Seebach's online behavior
- Index(es):
Relevant Pages
|