Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jan 2002 09:36:51 +0100
From:      "Anthony Atkielski" <anthony@freebie.atkielski.com>
To:        "Mike Meyer" <mwm-dated-1011663772.53227b@mired.org>
Cc:        "FreeBSD Questions" <freebsd-questions@freebsd.org>
Subject:   Re: USB CF reader (SanDisk) epilog
Message-ID:  <015701c19f32$1d330a70$0a00000a@atkielski.com>
References:  <15428.34332.870130.2946@guru.mired.org><00cc01c19e06$8dafddf0$0a00000a@atkielski.com><15428.38970.224790.33804@guru.mired.org><00ee01c19e0d$4c518960$0a00000a@atkielski.com><15428.53337.168408.720031@guru.mired.org><01b301c19e55$f11330a0$0a00000a@atkielski.com><15429.45776.491932.646543@guru.mired.org><007201c19ed4$e98bc070$0a00000a@atkielski.com> <15430.11292.89340.470262@guru.mired.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Mike writes:

> All the information on how the software works
> is contained in the code.

All the information on how to cure cancer is contained in a strand of DNA,
but looking at DNA thus far has not provided a cure for cancer, and it is
probably not the most efficient way to go about finding one, even though it
is guaranteed to provide a solution at least in theory.

Similarly, a core dump of the software will tell you exactly how it works,
too, but here again, it is not practical to try to learn how a program works
by reading machine language in a core dump, despite the theoretical (and
actual) 100% completeness of what the dump contains.

> As to writing readable code, there are two
> approaches that have proven successful.

The only approach I've seen that works is hiring highly competent
programmers.  Object-oriented programming (and structured programming, and
all the other fads that have passed through the software engineering
community over the history of computing) never really accomplish what they
promise, unless they are practiced by skilled programmers--but then again,
skilled programmers always produce readable code, anyway, even if it is in
assembly language.

> The web is not the code.

The Web is more cost-effective than an examination of tens of thousands of
lines of code, and the code will not tell me everything I'd need to know
(such as how the USB standard works).

> cd /usr/src/sys; find . -name '*.[ch]' | xargs
> grep -l <OPTION> | xargs more

I tried this; all I get is a listing of the umass.c module, which I had
already looked at.  No documentation.

> You'll get lots of kernel output describing
> what those parts of the USB subsystem are doing.

Messages, you mean?  How will seeing what the subsystem _does_ help me to
know what it _should_ be doing?


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?015701c19f32$1d330a70$0a00000a>