Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.arch.embedded > #12781
| From | Don Y <this@isnotme.com> |
|---|---|
| Newsgroups | comp.arch.embedded |
| Subject | Re: Resource revocation |
| Date | 2013-07-27 16:18 -0700 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <kt1kfc$p5k$1@speranza.aioe.org> (permalink) |
| References | (16 earlier) <P0MIt.27653$Ma6.4004@fx27.am4> <kt0sgo$rj2$1@speranza.aioe.org> <jjTIt.17124$GQ5.12141@fx22.am4> <kt186a$r4p$1@speranza.aioe.org> <6nXIt.5183$et4.2314@fx09.am4> |
Hi Tom,
On 7/27/2013 2:57 PM, Tom Gardner wrote:
[much elided]
>>> Problems arise when the system has been designed and/or
>>> implemented by multiple companies/teams/people.
>>
>> *** AND POORLY DOCUMENTED! ***
>
> I've seen many systems which were "well documented"
> but the documentation omitted to discuss key attributes,
> probably because the architects didn't realise
> there were underlying pitfalls!
Yup. Unfortunately, trying to merge documentation into
the source "product" just doesn't work. Forget LP and the
various nods to this effort (doxygen, etc.)
I've taken a more fundamental approach. I accompany my code
with "tutorials", of a sort. I.e., papers that present key
issues in a more conversational manner replete with illustrations,
etc. (currently trying to put interactive demos into them as
well!).
So, I don't have to explain *why* am am doing something in the code.
Just state *what* a particular piece of code is doing and leave
it to the reader to figure out "why this will work" by reading
the supporting tutorials.
A document that I always find "missing" is a roadmap (no, not
a description of the file hierarchy!): something that says
how the code moves from RESET through RUNTIME.
Finally, showing strong structure *in* the code so folks can
mimic this to cover all (most of) the bases when implementing
something similar (e.g., design of a multithreaded service).
Of course, people will *still* ignore all the above and complain
that "its a piece of crap". But, they'll only find agreement among
other "sloths". :>
>> Three of the big (huge!) problems I see with many FOSS projects
>> are:
>> - no "ownership" (no one takes responsibility for ensuring
>> the quality and consistency of the "product")
>
> There's no improvement with proprietary systems. Every
> study fails to show a consistent advantage to either
> proprietary or FOSS products.
I don't claim one camp is better than another. Rather, I am
commenting on what I see missing in SO MANY FOSS projects.
(i.e., people spend time on new features because they are
"more fun"... getting the *old* features to work properly
is boring! As will be getting the NEW features to work completely
NEXT WEEK!)
>> - no formal testing (where's the regression suite? Do you
>> expect every developer who touches the codebase to implement
>> his/her own test suite? Replicating the work of others?
>> Or, do *none* of them take on this task?? "Leave it to the
>> users to find the bugs!")
>
> Old engineering maxim: "you can't test quality into a product".
> Hopefully you can design it in.
You need a formal design and then a formal test plan to verify that
the implementation meets the design.
"Wow, Bill! What a great looking boat you built!"
"Um, I started out to build a doghouse..."
>> - no formal documentation (what is the product *supposed* to do?
>> Does anyone know? Or, is it "self-documenting": it does what
>> it does!)
>>
>> PostgreSQL has been a refreshing defiance of these problems! :>
>
> There are many examples of good and bad proprietary
> and FOSS systems.
Pgsql has been one of the few bright spots, for me. It
actually *feels* like someone is driving the process
instead of letting it wander off into featureland.
>>> Look at
>>> the problems inherent with using libraries in C++!
>>> (If C++ is the answer, I want to know what the question
>>> was!)
>>
>> C++ was good for pushing the OOP paradigm into mainstream
>> thought.
>
> No, it was a disaster.
You don't think C++ brought the idea of OOP into the mainstream?
Previously, folks were all writing procedural based implementations
and you had OOP left to languages like Smalltalk to propose.
[I'm not claiming it was a GOOD way for folks to embrace the
paradigm. Rather, that it brought it to the attention of a
generation of "programmers". E.g., after C++, I started
being far more consistent in how I structured my code
(regardless of implementation language) moving further
from the "A then B then C" approach to one where operations
and attributes were tied to "objects" (regardless of how I
implemented those objects)]
> Even the designers didn't know what they had created.
> Classic case is that they were amazed when somebody
> produced a valid C++ program that caused the compiler
> to emit the sequence of prime numbers *during compilation*.
>
>> But, it tends to be too heavy-handed in how much
>> it does for (to?) you -- all the while claiming it is
>> making your life easier!
>
> Agreed.
What I *liked* about C++ was how nicely I could combine
different types of numeric objects with infix notation
(and let the compiler sort out which casts to apply).
It gets tedious having to implement, e.g., a Rational
data type and do all operations as:
ratC = add(ratA, ratB);
ratG = mul(ratC, ratD);
ratF = exp(ratG, ratE);
double foo = realize(ratF);
E.g., I currently use a Q10.13 format in this project and
"expressions" using objects of this type don't lend themselves
freely to infix notation (other than addition of like types).
>> OTOH, it has made it much easier for folks examining my
>> (C) codebase to get used to the structure that I embed in
>> my data, "objects", etc. ("Why all these damn structs
>> all over the place???")
>
> Have a look at Nick MacLaren's "Objects Diatribe", and weep.
> MacLaren has been on the sharp end of errant implementations
> and the standardisation process for decades. He knows where
> skeletons are buried.
Historically, I'd been naive thinking standards were logically
reasoned. As I get older, I find it harder NOT to see the
"politics" (and economics) involved in many of these processes.
I'll search for a MacLaren reference...
>> (there are loads of things that I *don't* like in Limbo
>> so I revel in the few that I *do* like! :> )
>
> I don't know limbo, but if it is based on C then I
> would need to be convinced that it has avoided C's
> problems - and my remaining life is too short for
> me to bother to look!
It tries to clamp down on a lot of the freedom C affords
developers. With attempts to keep you from running with
scissors. (e.g., pointers are gone -- much to my dismay!)
As a general purpose language for general purpose problems,
I wouldn't recommend it. OTOH, as a scripting language
it seems to be expressive enough to address the sorts of
things that I want to be able to code (in this system).
Unfortunately, much of the implementation is devoid of
commentary. Its as if the developers feared their fingertips
would fall off after some fixed number of keystrokes and
tried to conserve them for "important stuff" :-(
And, of course, the documentation hasn't been updated since
the initial public offering.
<shrug> I suspect the principles are busy trying to keep
bread on their tables...
--don
Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Resource revocation Don Y <this@isnotme.com> - 2013-07-25 12:23 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-25 12:51 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-25 15:00 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-25 19:38 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-25 22:12 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-25 23:37 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 01:13 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-26 02:48 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 04:19 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-26 09:46 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 10:21 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 19:30 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 11:56 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 20:08 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 13:11 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-26 12:31 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 11:08 -0700
Re: Resource revocation Rob Gaddi <rgaddi@technologyhighland.invalid> - 2013-07-29 09:16 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-29 10:22 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 11:22 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 08:56 -0700
Re: Resource revocation Hans-Bernhard Bröker <HBBroeker@t-online.de> - 2013-07-26 19:25 +0200
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-26 10:51 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 19:21 +0100
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-26 11:50 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 19:42 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 12:43 -0700
Does the Buddha have a real time nature? ;) (was Resource revocation) Roberto Waltman <usenet@rwaltman.com> - 2013-07-26 17:06 -0400
Re: Does the Buddha have a real time nature? ;) (was Resource revocation) Don Y <this@isnotme.com> - 2013-07-26 17:12 -0700
Re: Does the Buddha have a real time nature? ;) (was Resource revocation) Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 09:44 +0100
Re: Does the Buddha have a real time nature? ;) (was Resource revocation) Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 09:45 +0100
Re: Does the Buddha have a real time nature? ;) (was Resource revocation) Don Y <this@isnotme.com> - 2013-07-27 12:28 -0700
Re: Does the Buddha have a real time nature? ;) (was Resource revocation) Hans-Bernhard Bröker <HBBroeker@t-online.de> - 2013-07-27 14:11 +0200
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 12:40 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 21:29 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 13:52 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-26 22:55 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 17:22 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 10:02 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 09:29 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 18:20 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 12:48 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 22:57 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 16:18 -0700
Re: Resource revocation Roberto Waltman <usenet@rwaltman.com> - 2013-07-31 16:33 -0400
Re: Resource revocation upsidedown@downunder.com - 2013-07-27 22:53 +0300
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 22:42 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 16:41 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-27 16:49 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-28 08:39 +0300
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 23:11 -0700
Re: Resource revocation Roberto Waltman <usenet@rwaltman.com> - 2013-07-31 16:15 -0400
Re: Resource revocation upsidedown@downunder.com - 2013-08-01 00:13 +0300
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 15:16 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 23:05 +0100
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 15:37 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 23:38 +0100
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 16:08 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-28 01:16 +0100
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 18:43 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-28 09:01 +0300
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-27 15:21 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-27 23:07 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-26 12:00 -0700
Re: Resource revocation stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-27 16:49 +0000
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-07-28 18:31 -0400
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-28 15:51 -0700
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-07-28 20:12 -0400
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-28 18:35 -0700
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-07-29 00:10 -0400
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 00:23 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-29 01:05 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 12:07 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-30 01:11 +0300
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 15:20 -0700
Re: Resource revocation Rob Gaddi <rgaddi@technologyhighland.invalid> - 2013-07-29 15:42 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 16:41 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-30 08:51 +0300
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-30 09:09 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 01:30 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-30 10:04 +0100
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-30 02:55 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 07:12 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-30 16:59 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 13:17 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-30 10:12 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-30 18:48 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 20:18 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-31 09:27 +0300
Re: Resource revocation [long] Don Y <this@isnotme.com> - 2013-07-31 00:47 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-30 02:50 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-30 13:22 +0300
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 07:24 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 01:17 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-29 19:28 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-07-29 11:40 +0300
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 11:44 -0700
Re: Resource revocation Tom Gardner <spamjunk@blueyonder.co.uk> - 2013-07-29 20:56 +0100
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 13:16 -0700
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-07-30 00:08 -0400
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-30 23:41 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-31 00:58 -0700
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-31 10:18 -0700
Re: Resource revocation George Neuner <gneuner2@comcast.net> - 2013-08-02 06:19 -0400
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-08-03 02:26 -0400
Re: Resource revocation Paul Rubin <no.email@nospam.invalid> - 2013-07-28 19:31 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-29 00:44 -0700
Re: Resource revocation Richard Damon <Richard@Damon-Family.org> - 2013-07-25 22:42 -0400
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-25 22:12 -0700
Re: Resource revocation "Boudewijn Dijkstra" <sp4mtr4p.boudewijn@indes.com> - 2013-07-31 13:41 +0200
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-31 07:51 -0700
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-31 08:07 -0700
Re: Resource revocation Anders.Montonen@kapsi.spam.stop.fi.invalid - 2013-07-31 15:55 +0000
Re: Resource revocation Don Y <this@isnotme.com> - 2013-07-31 10:18 -0700
Re: Resource revocation "Boudewijn Dijkstra" <sp4mtr4p.boudewijn@indes.com> - 2013-08-01 14:42 +0200
Re: Resource revocation Don Y <this@isnotme.com> - 2013-08-01 14:34 -0700
Re: Resource revocation upsidedown@downunder.com - 2013-08-02 09:08 +0300
Re: Resource revocation Don Y <this@isnotme.com> - 2013-08-02 07:26 -0700
csiph-web