[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: gEDA just hit SlashDotOrg
On Monday 03 August 2009, John Doty wrote:
>On Aug 2, 2009, at 5:20 PM, Bill Gatliff wrote:
>> One of the ways that the gdb guys cracked this nut was to push a
>> lot of
>> their functionality into libraries, and create an HID-centric API for
>> them. They include a command-line-interface implementation by
>> default,
>> but then others can take those same libraries and build their own GUIs
>> around them. And drag in libraries from other places to add
>> functionality that gdb doesn't itself provide. So now Eclipse, DDD,
>> Insight, and many other frontends can all use the same gdb backend
>> rather than inventing their own. Everybody wins.
>
>For one of my space missions, we had a company write much of the
>software. They were really big on IDE's with interactive debugging.
>But there was part of the system that was buried in a way that made
>it inaccessible to the interactive debugger. They complained bitterly
>about this, but there was no practical alternative.
>
>But when it came to do the work, the guy who had to suffer without
>the interactive debugger was consistently ahead of schedule, and
>produced software that was nearly bug free. The other programmers
>were chronically behind, and their software was infested with serious
>bugs.
>
>I visited their shop, and what I saw was disturbing: programmers
>stepping through buggy code hour after hour. But the guy who couldn't
>do that had a much higher productivity flow: unit tests, defensive
>coding, etc. took more thought up front, but they saved time in the end.
>
>The term "fritterware" comes to mind. Fritterware is easy to get
>started with, comfortable, addictive, and ineffective at doing the
>job (although not ineffective enough that its users notice). It sells
>well, and its users believe its bad characteristics to be essential.
>
>Interactive debuggers like gdb are fritterware. In ordinary
>environments, gdb's only genuinely useful command is "bt". In
>embedded environments there are a few more. But all the massive
>complexity of stepping, breakpoints, etc. is pure fritter,
>suppressing thought and wasting time.
>
>Putting a GUI atop something that's already fritterware is harmless.
>Putting a GUI atop a graphical application is a good thing. Putting a
>GUI atop a complex, poorly factored (or intrinsically unfactorable)
>tool can help the user navigate the mess. But one should strive for
>an effective, cleanly factored toolkit that doesn't need a GUI except
>where real time interaction with the user is unavoidable.
>
>John Doty Noqsi Aerospace, Ltd.
>http://www.noqsi.com/
>jpd@xxxxxxxxx
Pay attention to John, he _does_ know what he is talking about, I too have
been that 'crippled' programmer. The only debugging tool worth anything on
that platform was a register dumper that you could put a call to anyplace in
your code. I was working on a swiss army knife sort of a file utility for
that os, and when I was finished, and those calls removed and the code re-
assembled, I posted the final version about an hour later. A decade plus
later, that code is still being shipped. The only bug possible is PEBKAC &
even that is difficult to do. In that same decade & change, I have yet to
have anyone contact me about it not doing what it was supposed to do.
--
Cheers, Gene
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
The NRA is offering FREE Associate memberships to anyone who wants them.
<https://www.nrahq.org/nrabonus/accept-membership.asp>
The end of the human race will be that it will eventually die of civilization.
-- Ralph Waldo Emerson
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user