From: Marin David Condic <nobody@noplace.com>
Subject: Re: Standard Library Interest? (The Big Player ACT)
Date: Sun, 02 Nov 2003 19:25:45 GMT
Date: 2003-11-02T19:25:45+00:00 [thread overview]
Message-ID: <3FA55A2E.2050400@noplace.com> (raw)
In-Reply-To: bo3c48$ki8$1@a1-hrz.uni-duisburg.de
Georg Bauhaus wrote:
>
> I think it is, but you cannot see it :-)
> Point is, you cannot make good use of the library if you haven't
> understood how it works. No hypertext can help here.
There's nothing wrong with an "Overview" document - or even a textbook
on the guiding principles or any other huge bulk of prose anyone cares
to write. Did it come with the .ZIP file? Did it install somewhere plain
and obvious when installing the software? If the answer is "No" then all
that documentation sitting on someone else's shelf didn't help me one
little bit. And having a hyperlink from the IDE that eventually reaches
the "Overview" cannot possibly hurt, can it?
> No short "contextfree" subprogram description, no example
> introducing more context than you had asked for.
> Worse, you can waste even more time trying to find answers
> for basic usage questions, as Stephane has explained.
> But, you rarely *need* to dive into the detailed annotation
> hypertext once you have understood how the (container) library works.
Maybe so. I could probably take *any* library of *any* type with even
poorly organized, inconsistent structure and, so long as it was, say,
under a dozen-or-so packages or a 100_000 lines of code overall, I could
probably *memorize* the whole thing. I'd never need to refer to the
document at all. So what? I'm talking about having a *VERY* large
library - possibly something built on top of an existing container
package such as Charles. There's *no* way that someone is going to keep
every detail in their head. They're going to need easily accessible,
high quality documentation to do that. Standing around saying "Well if
you understood the philosophy of this massive library, you wouldn't need
such a thing" is probably not going to be very convincing to the uninitiate.
> That is because it is organised in a predictable way, around
> a few principles, for a well specified purpose. (Not for a massive
> collection of everything.)
>
Yeah, but see above. I don't need documentation for a couple-of-dozen
packages (although it would be nice) if I can read every bit of it,
understand it and use it regularly. I'll end up memorizing everything I
need to know. But I'm talking about something substantially larger than
that. You could drop something like that in someone's lap and tell them
that "Any *competent* programmer" could figure it out..." Or you could
give them every possible bit of help imaginable and hope this encourages
them to eventually use it. Which is more likely to be successful from a
marketing standpoint?
> Would it make sense to try to explain the underlying fundamentals
> in descriptions of what is built upon the fundamentals, so to speak?
> Or should the fundamentals be explained elsewhere?
There's nothing wrong with a "Fundamentals of the Conventional Ada
Library" book being written. Or even a "Conventional Ada Library for
Smart People (Because The Dummies Are Using C++)" book. There can be as
many books as you like. The more, the merrier. However: A) That doesn't
eliminate the need for something that gets you detailed instructions on
a specific package, class, subroutine, type, etc. as you're busy
programming, B) Hyperlinking that documentation and getting there via
the IDE is not A Bad Thing, and C) Whatever documents you have ought to
come with the distro and install somewhere useful (Gnat does a pretty
good job - its right there in my Start menu...)
> Another example:
> One could argue that SUN's Java libraries have extensive hypertext
> documentation, and that Eclipse pops up relevant doc parts next to
> a name denoting an item from the library. That's useful if the
> library isn't that well organised, and you have forgotten some
> specifics. But still, given typical usage of the hypertext, how
> do people learn that there are "container classes" with methods,
> and "static functions" to work with containers, in a "parallel"
> set of classes? If they ever learn this at all.
>
I never said that a hyperlinked reference manual was all there is to
documentation. I said it was an essential part of what developers these
days consider "Professional" and its part of what they pay money to get.
They also buy books on the subject, so that's a good idea as well. But
producing all this stuff for something substantially bigger than a
container library is *difficult* and *expensive* so don't expect it is
going to get done properly by an all-volunteer crew.
>
> Some similar situations:
> How do you learn how to write a GUI using GTKAda, or NextSTEP,
> or ...? Hypertext describing relevant subprograms seems useless to me
> without prior learning, e.g. from an n-days tutorial. After that,
And the last time I looked at GtkAda, it didn't have a really good
overview document sitting around in the distro either. I agree - staring
at the subroutines and whatever related documentation might have been
there (even if hyperlinked) is not an effective way to learn something
like GtkAda. When I observed that there wasn't a good "Getting Started"
or "Walk Through" example text or a really thorough manual, I'd get
pointed to the underlying C/C++ product - Gtk - and told I should study
some of the on-line documents for that. (And then explain to me why I
want to bother using Ada if everything is there for the C++ version and
Ada is always trailing behind?) Or I was told I could go struggle
through the process of learning it and then I could volunteer to write a
document and give it away free of charge. Guess what? I didn't labor
away freely for the benefit of someone else's product.
This is a real problem with the freebie sort of software. If the future
of Ada depends on people laboring away for free to produce something
that will somehow overtake and exceed the capabilities we see with
languages that have commercial backing, then Ada is in sad shape.
Real-world developers with real-world problems to solve can't wait
around for "One Day, Its Going To Be Great - Just You Wait And See...."
They need something *NOW* that satisfies all those needs they find
fulfilled in commercially backed products with lots of industry support.
> if you know what subprogram to use, a quick lookup table is most
> helpful, and hypertext will guide you to parameter details etc.
> But no earlier than after the tutorial, and only if the library
> is a mess whose organisation cannot be kept in anyone's head :-)
> (It appears that container libraries such as Charles or Booch's
> need not be messy, but can be made consistent in your comprehension.)
>
Again - something relatively small like a container library can survive
without much documentation. Something relatively large - like the MFC,
for example - needs something a *LOT* better. If Charles or Booch expect
to grow into a bigger creature good quality documentation is a must.
>
> You would have to prove how it is possible to be head-and-shoulders
> above the *principles* of STL. C++ or Ada is not that relevant here,
> I think, except that Matthew Heaney writes that Charles is an
> Ada library, using Ada features, not C++.
>
I don't know how something is going to be made head-and-shoulders above
the principles of the STL. What I *do* know, is that if you don't do
something *better* than the STL in *some* respect, nobody has much
incentive to move from a major, world-wide, accepted, dominant,
huge-market-share language like C++ to an obscure, withering,
niche-market language like Ada. I like Ada, but by any realistic
assessment of the marketplace, it has only a small share and that has
major disadvantages when someone is confronting the choice of selecting
a language for their project. You'd better offer them something
*WAY-MORE* than what they get elsewhere if you hope to win them over.
>
> In the case of standard container library,
> should Ada vendors follow strategies from the MS marketing labs,
> in that they try to impress programmers with linked descriptions
> that turn out to be no more useful than Stephane has
> explained?
Only if they hope to win market share. All the intellectual arguments
that say "Microsoft documentation sucks" can be right and true and good
and noble - and completely ignored by the marketplace. Do you want to be
right? Or do you want to win?
What I can say about Microsoft is this: They may not be perfect, but
with some of the things they have supplied WRT programming languages in
terms of well-integrated tools and documentation - I have yet to see it
equaled by anything for Ada. GPS is really nice and a step in the right
direction. However, it *DID* learn a lot about what an IDE should look
like from MSVC++ - so give credit where it is due. In many respects GPS
*EXCEEDS* what I have seen in MSVC++ and does things *better* than
MSVC++. But it still isn't as fully featured, is it? Hence, it has to
keep slogging away trying to get better and better so that it can offer
the developer something he can't get with MSVC++ and create an incentive
to switch. A really large library with integrated documentation, etc.,
would be a good move in that direction.
Does this documentation hay stack searching trigger good software
> engineering in case good software engineering implies good use of
> a container library in the learned ways it has been designed to be
> used?
Does it matter? The *goal* ought to be to figure out what it is that
programmers want to buy and give them what they want - or they're going
somewhere else to get it. Hell. They already have! Do you want to get
them back? Or get them for the first time? You've got to give them
something they want or they will continue to stay away by the millions.
> Hypertext is just a formal aspect of text structure. It does not by itself
> guarantee that the links are good. Imagine an admonition link next
> to every occurrence of an Iterator,
>
Never said that simply because it is hyperlinked it is ipso facto
"Good". What I *said* was good documentation is difficult and time
consuming to get right, that all-volunteer projects tend to lack much in
the way of good documentation, that MSVC++ provided some really useful
stuff in the way of documentation and that MSVC++ had this useful stuff
hyperlinked via their IDE - and I found that to be useful and cool.
MDC
--
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm
Send Replies To: m o d c @ a m o g
c n i c . r
"So if I understand 'The Matrix Reloaded' correctly, the Matrix is
basically a Microsoft operating system - it runs for a while and
then crashes and reboots. By design, no less. Neo is just a
memory leak that's too hard to fix, so they left him in... The
users don't complain because they're packed in slush and kept
sedated"
-- Marin D. Condic
======================================================================
next prev parent reply other threads:[~2003-11-02 19:25 UTC|newest]
Thread overview: 281+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-05 0:09 Standard Library Interest? chris
2003-10-05 1:38 ` Robert I. Eachus
2003-10-05 11:44 ` chris
2003-10-05 15:16 ` Marin David Condic
2003-10-05 16:40 ` Robert I. Eachus
2003-10-05 19:22 ` Martin Dowie
2003-10-06 13:12 ` Marin David Condic
2003-10-06 17:09 ` Martin Dowie
2003-10-06 23:34 ` Marin David Condic
2003-10-07 0:23 ` Stephane Richard
2003-10-07 12:42 ` Marin David Condic
2003-10-07 13:17 ` Stephane Richard
2003-10-07 17:17 ` Marin David Condic
2003-10-07 17:42 ` Larry Hazel
2003-10-07 19:36 ` Stephane Richard
2003-10-07 20:31 ` Stephen Leake
2003-10-07 21:56 ` Stephane Richard
2003-10-08 1:11 ` Marin David Condic
2003-10-08 16:07 ` Martin Krischik
2003-10-10 4:38 ` Marin David Condic
2003-10-10 14:37 ` Stephen Leake
2003-10-10 16:24 ` Martin Dowie
2003-10-11 14:16 ` Marin David Condic
2003-10-12 1:30 ` Martin Dowie
2003-10-12 2:46 ` Marin David Condic
2003-10-11 14:07 ` Marin David Condic
2003-10-14 14:20 ` Stephen Leake
2003-10-14 19:14 ` Marin David Condic
2003-10-14 19:27 ` Stephen Leake
2003-10-15 12:27 ` Marin David Condic
2003-10-15 12:42 ` Marin David Condic
2003-10-10 16:46 ` Martin Krischik
2003-10-10 18:00 ` Stephane Richard
2003-10-12 11:19 ` Martin Krischik
2003-10-12 14:48 ` Stephane Richard
2003-10-11 14:22 ` Marin David Condic
2003-10-09 10:50 ` Ching Bon Lam
2003-10-09 12:11 ` Marin David Condic
2003-10-09 17:16 ` Warren W. Gay VE3WWG
2003-10-09 18:30 ` tmoran
2003-10-10 1:29 ` Frank
2003-10-10 8:19 ` chris
2003-10-10 2:53 ` Robert I. Eachus
2003-10-08 15:55 ` Stephen Leake
2003-10-08 16:49 ` Stephane Richard
2003-10-08 17:18 ` Marin David Condic
2003-10-10 2:59 ` Hyman Rosen
2003-10-08 19:54 ` Robert I. Eachus
2003-10-08 21:40 ` Stephen Leake
2003-10-09 12:28 ` Marin David Condic
2003-10-09 15:18 ` Stefan Lucks
2003-10-09 16:10 ` Stephen Leake
2003-10-09 16:57 ` Stephane Richard
2003-10-10 4:58 ` Marin David Condic
2003-10-10 9:28 ` Stefan Lucks
2003-10-10 14:59 ` Stephen Leake
2003-10-10 16:48 ` Ed Falis
2003-10-10 16:29 ` Warren W. Gay VE3WWG
2003-10-11 7:01 ` Simon Wright
2003-10-10 15:51 ` Robert I. Eachus
2003-10-10 17:04 ` Stephen Leake
2003-10-10 3:02 ` Robert I. Eachus
2003-10-10 5:17 ` Marin David Condic
2003-10-10 16:38 ` Warren W. Gay VE3WWG
2003-10-11 14:35 ` Marin David Condic
2003-10-15 16:24 ` Warren W. Gay VE3WWG
2003-10-15 17:57 ` Ed Falis
2003-10-15 20:45 ` Warren W. Gay VE3WWG
2003-10-15 20:44 ` Mark A. Biggar
2003-10-16 12:55 ` Marin David Condic
2003-10-16 16:52 ` Warren W. Gay VE3WWG
2003-10-16 17:53 ` Marin David Condic
2003-10-17 13:25 ` Warren W. Gay VE3WWG
2003-10-18 13:50 ` Marin David Condic
2003-10-21 17:14 ` Warren W. Gay VE3WWG
2003-10-22 13:04 ` Marin David Condic
2003-10-22 16:46 ` Warren W. Gay VE3WWG
2003-10-22 17:13 ` Ed Falis
2003-10-23 5:23 ` Marin David Condic
2003-10-23 13:55 ` Ed Falis
2003-10-23 5:21 ` Marin David Condic
2003-10-27 17:37 ` Warren W. Gay VE3WWG
2003-10-28 1:53 ` Marin David Condic
2003-10-16 12:38 ` Marin David Condic
2003-10-16 17:16 ` Warren W. Gay VE3WWG
2003-10-16 18:02 ` Stephane Richard
2003-10-16 18:23 ` Stephane Richard
2003-10-17 0:36 ` Robert I. Eachus
2003-10-17 1:24 ` Stephane Richard
2003-10-17 1:40 ` Marin David Condic
2003-10-17 2:34 ` Stephane Richard
2003-10-17 12:45 ` Marin David Condic
2003-10-16 18:04 ` Marin David Condic
2003-10-17 20:09 ` Jacob Sparre Andersen
2003-10-20 17:40 ` Robert I. Eachus
2003-10-21 20:55 ` Warren W. Gay VE3WWG
2003-10-21 22:46 ` Stephane Richard
2003-10-21 21:02 ` Warren W. Gay VE3WWG
2003-10-10 18:44 ` Robert I. Eachus
2003-10-11 14:42 ` Marin David Condic
2003-10-11 15:10 ` Stephane Richard
2003-10-11 17:58 ` Robert I. Eachus
2003-10-12 1:01 ` Marin David Condic
2003-10-12 0:51 ` Marin David Condic
2003-10-12 1:17 ` Stephane Richard
2003-10-12 2:10 ` Marin David Condic
2003-10-12 5:14 ` Robert I. Eachus
2003-10-12 13:39 ` Marin David Condic
2003-10-12 1:20 ` Stephane Richard
2003-10-12 2:32 ` Marin David Condic
2003-10-12 11:14 ` Stephane Richard
2003-10-16 13:18 ` aleistad
2003-10-07 22:12 ` tmoran
2003-10-07 22:37 ` Alexandre E. Kopilovitch
2003-10-08 16:03 ` Martin Krischik
2003-10-09 13:28 ` Jacob Sparre Andersen
2003-10-28 11:25 ` Marius Amado Alves
2003-10-28 12:52 ` Marin David Condic
2003-10-28 13:28 ` Marius Amado Alves
2003-10-28 23:20 ` Marin David Condic
2003-10-28 13:21 ` Stephane Richard
2003-10-28 16:21 ` Standard Library Interest? (The Big Player ACT) Stephane Richard
2003-10-28 23:37 ` Marin David Condic
2003-10-29 1:12 ` Stephane Richard
2003-10-29 14:35 ` Marc A. Criley
2003-10-29 23:10 ` tmoran
2003-10-29 23:34 ` Marin David Condic
2003-10-31 14:42 ` Georg Bauhaus
2003-11-01 3:05 ` Marin David Condic
2003-11-01 3:50 ` Stephane Richard
2003-11-01 13:20 ` Marin David Condic
2003-11-02 16:41 ` Georg Bauhaus
2003-11-02 19:25 ` Marin David Condic [this message]
2003-11-01 7:20 ` Simon Wright
2003-11-02 17:04 ` Georg Bauhaus
2003-11-02 15:09 ` Standard Library Interest? (The Big Player IRVINE) Stephane Richard
2003-11-02 16:18 ` Marius Amado Alves
2003-11-02 16:35 ` Stephane Richard
2003-11-02 22:41 ` Marin David Condic
2003-11-03 1:07 ` Standard Library Interest? Robert I. Eachus
2003-11-03 1:27 ` Stephane Richard
2003-11-03 12:52 ` Marin David Condic
2003-11-03 3:58 ` Alexandre E. Kopilovitch
2003-11-03 6:28 ` Robert I. Eachus
2003-11-03 12:11 ` Jeff C,
2003-11-03 17:07 ` Robert I. Eachus
2003-11-04 18:07 ` Alexandre E. Kopilovitch
2003-11-03 7:54 ` Mark A. Biggar
2003-11-03 21:02 ` Alexandre E. Kopilovitch
2003-11-04 1:50 ` Robert I. Eachus
2003-11-04 18:16 ` Jeffrey Carter
2003-11-06 2:07 ` Alexandre E. Kopilovitch
2003-11-03 15:14 ` Robert Spooner
2003-11-03 15:38 ` Dmitry A. Kazakov
2003-11-03 16:52 ` Alexandre E. Kopilovitch
2003-11-03 12:36 ` Marin David Condic
[not found] ` <1067340353.3441.18.camel@localhost.localdomain>
2003-10-28 11:30 ` Marius Amado Alves
2003-10-08 1:07 ` Marin David Condic
2003-10-08 1:15 ` Stephane Richard
2003-10-08 1:32 ` Marin David Condic
2003-10-08 15:58 ` Stephen Leake
2003-10-08 17:24 ` Marin David Condic
2003-10-07 18:19 ` Martin Dowie
2003-10-07 19:29 ` Stephane Richard
2003-10-07 20:30 ` Martin Dowie
2003-10-08 1:15 ` Marin David Condic
2003-10-08 21:56 ` Stephane Richard
2003-10-08 23:56 ` Robert I. Eachus
2003-10-09 0:29 ` Stephane Richard
2003-10-10 16:47 ` POSIX File Structure Conventions for Ada (Was: Standard Library Interest?) Warren W. Gay VE3WWG
2003-10-10 17:17 ` Ludovic Brenta
2003-10-11 16:25 ` Warren W. Gay VE3WWG
2003-10-09 12:42 ` Standard Library Interest? Marin David Condic
2003-10-09 13:07 ` Stephane Richard
2003-10-10 3:15 ` Robert I. Eachus
2003-10-10 8:10 ` Stephane Richard
2003-10-10 12:49 ` Marin David Condic
2003-10-10 13:20 ` Jeff C,
2003-10-11 14:48 ` Marin David Condic
2003-10-11 15:09 ` Stephane Richard
2003-10-10 19:22 ` Robert I. Eachus
2003-10-11 11:30 ` Stephane Richard
2003-10-11 12:36 ` Stephane Richard
2003-10-11 17:41 ` sk
2003-10-11 17:43 ` Stephane Richard
2003-10-11 18:08 ` Robert I. Eachus
2003-10-11 18:11 ` Stephane Richard
2003-10-12 1:33 ` Marin David Condic
2003-10-12 5:16 ` Robert I. Eachus
2003-10-15 16:42 ` Warren W. Gay VE3WWG
2003-10-15 16:35 ` Warren W. Gay VE3WWG
2003-10-16 12:59 ` Marin David Condic
2003-10-17 19:54 ` Warren W. Gay VE3WWG
[not found] ` <8d6b51-0u3.ln1@beastie.ix.netcom.com>
2003-10-07 23:58 ` Stephane Richard
[not found] ` <f8nc51-gv2.ln1@beastie.ix.netcom.com>
2003-10-08 12:45 ` Marin David Condic
2003-10-08 16:00 ` Stephen Leake
2003-10-08 17:37 ` Stephane Richard
[not found] ` <hdbf51-523.ln1@beastie.ix.netcom.com>
2003-10-09 14:24 ` Hyman Rosen
2003-10-10 12:06 ` Stephane Richard
2003-10-10 15:03 ` Stephen Leake
2003-10-05 17:41 ` Georg Bauhaus
2003-10-05 17:48 ` chris
2003-10-05 23:57 ` Robert I. Eachus
2003-10-07 1:44 ` Georg Bauhaus
2003-10-08 20:44 ` Robert I. Eachus
2003-10-09 2:05 ` Alexandre E. Kopilovitch
2003-10-09 5:39 ` Robert I. Eachus
2003-10-09 9:06 ` Dmitry A. Kazakov
2003-10-05 14:49 ` Martin Krischik
2003-10-05 15:25 ` Marin David Condic
2003-10-05 15:51 ` sk
2003-10-05 18:23 ` Marin David Condic
2003-10-05 19:14 ` Stephane Richard
2003-10-06 13:15 ` Marin David Condic
2003-10-05 19:35 ` Jeffrey Carter
2003-10-06 9:46 ` Stephane Richard
2003-10-06 13:16 ` Marin David Condic
2003-10-06 14:44 ` Stephane Richard
2003-10-06 16:51 ` Martin Krischik
2003-10-06 16:48 ` Martin Krischik
2003-10-06 23:38 ` Marin David Condic
2003-10-06 16:42 ` Martin Krischik
2003-10-06 23:39 ` Marin David Condic
2003-10-05 15:02 ` Marin David Condic
2003-10-05 16:43 ` Robert I. Eachus
2003-10-05 18:31 ` Marin David Condic
2003-10-07 1:58 ` Robert I. Eachus
2003-10-07 12:48 ` Marin David Condic
2003-10-08 20:49 ` Robert I. Eachus
2003-10-05 17:49 ` Georg Bauhaus
2003-10-05 18:43 ` Marin David Condic
2003-10-05 23:26 ` Georg Bauhaus
2003-10-06 13:27 ` Marin David Condic
2003-10-10 16:58 ` Warren W. Gay VE3WWG
2003-10-11 9:55 ` Martin Dowie
2003-10-15 16:51 ` Warren W. Gay VE3WWG
2003-10-16 12:14 ` Martin Dowie
2003-10-22 16:48 ` Warren W. Gay VE3WWG
2003-10-05 19:27 ` Martin Dowie
2003-10-06 13:33 ` Marin David Condic
2003-10-06 17:16 ` Martin Dowie
2003-10-06 23:45 ` Marin David Condic
2003-10-06 16:47 ` chris
2003-10-06 19:03 ` sk
2003-10-06 20:18 ` chris
2003-10-06 21:13 ` sk
2003-10-20 3:22 ` Dave Thompson
2003-10-20 10:29 ` sk
2003-10-07 0:30 ` Mark Lorenzen
2003-10-07 2:13 ` Robert I. Eachus
2003-10-07 22:49 ` Georg Bauhaus
2003-10-08 20:58 ` Robert I. Eachus
2003-10-09 12:57 ` Marin David Condic
2003-10-10 3:09 ` Robert I. Eachus
2003-10-06 7:02 ` Preben Randhol
2003-10-06 13:37 ` Marin David Condic
2003-10-06 14:34 ` Preben Randhol
2003-10-06 23:50 ` Marin David Condic
2003-10-07 8:55 ` Preben Randhol
2003-10-07 13:05 ` Marin David Condic
2003-10-06 19:37 ` tmoran
2003-10-06 23:57 ` Marin David Condic
2003-10-08 21:46 ` Robert I. Eachus
2003-10-09 8:10 ` Ole-Hjalmar Kristensen
2003-10-10 2:29 ` Robert I. Eachus
2003-10-09 9:20 ` Dmitry A. Kazakov
2003-10-09 13:09 ` Marin David Condic
2003-10-10 14:44 ` Robert I. Eachus
2003-10-11 14:57 ` Marin David Condic
2003-10-11 18:25 ` Robert I. Eachus
2003-10-12 1:49 ` Marin David Condic
2003-10-12 3:52 ` Robert I. Eachus
2003-10-06 13:50 ` (see below)
2003-10-06 15:28 ` Preben Randhol
2003-10-06 19:37 ` tmoran
2003-10-07 8:59 ` Preben Randhol
2003-10-05 23:33 ` Robert C. Leif
2003-10-06 9:02 ` Vadim Godunko
2003-10-07 0:48 ` Matthew Heaney
2003-10-07 8:56 ` Preben Randhol
2003-10-07 13:08 ` Marin David Condic
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox