* Re: Is Linux right for Embedded?
2001-10-02 18:00 ` bgeer
@ 2001-10-02 18:40 ` Larry Kilgallen
2001-10-02 18:44 ` Marin David Condic
` (2 subsequent siblings)
3 siblings, 0 replies; 48+ messages in thread
From: Larry Kilgallen @ 2001-10-02 18:40 UTC (permalink / raw)
In article <9pcvbn$r52$1@xmission.xmission.com>, bgeer@xmission.xmission.com (bgeer) writes:
> "Pat Rogers" <progers@classwide.com> writes:
> >His point (if I may be so bold) is that they did it much more
> >economically in Ada. Other have seen these results too.
>
> Man hours, maybe, if you have a team that already has significant Ada
> experience.
>
> Include costs of compiler, language & tool training, development &
> emulation platforms, & future maintenance plus factor in employee
> turnover, may reveal a different economic interpretation.
Absolutely ! Ada is much easier to learn to a satisfactory level
than C++, and also suffers less from the phenomena of people who
used it a little in a class passing themselves off as expert.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-02 18:00 ` bgeer
2001-10-02 18:40 ` Larry Kilgallen
@ 2001-10-02 18:44 ` Marin David Condic
2001-10-02 18:59 ` Pat Rogers
2001-10-02 19:34 ` mike
3 siblings, 0 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-02 18:44 UTC (permalink / raw)
Q: What do you get when you add one plus one?
Mathematician: 2.0
Engineer: 2.0 +/- 0.001
Accountant: What do you want it to be? :-)
The point: If you *want* the answer to be "Program everything in C", you can
probably find a way to stack up a bunch of reasons why it is that "C" is the
right answer. OTOH, if you truly have an open mind and want to investigate
what might be an optimal solution for development of a particluar kind of
system, you might look at some of the studies I cited elsewhere and the
experience attested to by a variety of users and *possibly* come to the
conclusion that it is worth a shot at using Ada (or other languages that
provide more safety) and then think that the one-time transitional overhead
is worth it.
Remember that at one time Java didn't exist, yet a bunch of people didn't
see any big problem in adopting it for a variety of applications. It
required training, investment in compilers, tools, etc. as you pointed out.
But they believed they were going to get something as a result. Not really
different for Ada, would you think?
BTW: As for cost of compilers and tools, depending on your platform the cost
can be as little as $0.00. See: http://www.adapower.org/ for links to free
compilers, free GUI builders, free bindings, free etc.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"bgeer" <bgeer@xmission.xmission.com> wrote in message
news:9pcvbn$r52$1@xmission.xmission.com...
>
> Man hours, maybe, if you have a team that already has significant Ada
> experience.
>
> Include costs of compiler, language & tool training, development &
> emulation platforms, & future maintenance plus factor in employee
> turnover, may reveal a different economic interpretation.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-02 18:00 ` bgeer
2001-10-02 18:40 ` Larry Kilgallen
2001-10-02 18:44 ` Marin David Condic
@ 2001-10-02 18:59 ` Pat Rogers
2001-10-02 19:34 ` mike
3 siblings, 0 replies; 48+ messages in thread
From: Pat Rogers @ 2001-10-02 18:59 UTC (permalink / raw)
"bgeer" <bgeer@xmission.xmission.com> wrote in message
news:9pcvbn$r52$1@xmission.xmission.com...
> "Pat Rogers" <progers@classwide.com> writes:
> >His point (if I may be so bold) is that they did it much more
> >economically in Ada. Other have seen these results too.
>
> Man hours, maybe, if you have a team that already has significant Ada
> experience.
Data for a team with no experience are useless. The interesting cases are
those in which the same people are involved. In one, the people were C
experts, moving slowly to Ada. They had a very large productivity gain over
time, and much lower maintenance costs.
> Include costs of compiler,
Comparable, ranging from free to pricey, as is the case for any language.
Surely you're not thinking of the 1980's, are you? Ancient history.
> language & tool training,
Comparable to any other language.
> development & emulation platforms, &
I use a commercial IDE, personally. Costs $300.
> future maintenance
A big win for Ada, compared to other languages.
> plus factor in employee
> turnover, may reveal a different economic interpretation.
Yup. The Ada people tend to stay longer. That's just my personal
observation.
> --
> <> Robert Geer & Donna Tomky | |||| We sure |||| <>
> <> bgeer@xmission.com | == == find it == == <>
> <> dtomky@xmission.com | == == enchanting == == <>
> <> Albuquerque, NM USA | |||| here! |||| <>
I like the winters, but otherwise...
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-02 18:00 ` bgeer
` (2 preceding siblings ...)
2001-10-02 18:59 ` Pat Rogers
@ 2001-10-02 19:34 ` mike
2001-10-02 21:24 ` Marin David Condic
2001-10-03 16:02 ` bgeer
3 siblings, 2 replies; 48+ messages in thread
From: mike @ 2001-10-02 19:34 UTC (permalink / raw)
In article <9pcvbn$r52$1@xmission.xmission.com>, bgeer@xmission.xmission.com
says...
>
>Include costs of compiler, language
yes, sure. with programmers costing $50/hr and sometimes double that,
I can see that a $200 or so for a compiler is really too much to pay for.
>& tool training,
If you know a programmer who needs more than 2 weeks training to pick up
a new language, let me know, so I make sure I do not hire them.
>future maintenance
Yes, good point. languages such as C and perl are the best language for
future maintenance, they provide years and years of sustained maintenance
for us programmers to live on. That is why I'll fight so hard to keep C alive.
>plus factor in employee
>turnover, may reveal a different economic interpretation.
>
excatly. those dim a dozzen programmers, we do not want to lose them, those
who need years to learn a new language, and get confuded when they see
BEGIN instead of "{". we got to keep those ones.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-02 19:34 ` mike
@ 2001-10-02 21:24 ` Marin David Condic
2001-10-03 16:02 ` bgeer
1 sibling, 0 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-02 21:24 UTC (permalink / raw)
Well, in fairness, let's say this: It will take a descent programmer 2 weeks
to be able to use Ada or any other new language so some tolerable level of
competency. To truly become well versed in a language could take
considerably longer. (True of any language that is non-trivial & used for
"real" work) And given that the benefits of Ada come by understanding "The
Ada Way" of doing business - not simply writing C code in Ada syntax or
resorting to "Adatran" - one would expect that some training would be in
order if one wants to reap the benefits.
However, experience I've had with software engineers who knew their problem
domain is that they can get up to speed and be productive in Ada relatively
quickly. You've got to at minimum buy them a descent Ada book and give them
a couple of weeks to work through it to have them start getting a good feel
for it, so it isn't free. After a few months of working with it, most
engineers begin to really understand it and start "thinking" in Ada - much
like with a natural language. It helps to send them off to a course or a
college-level class, but it isn't strictly necessary.
It helps if they're motivated and don't come at it with an attitude of "I'm
going to *hate* this language no matter what..." As with any educational
experience, it does require an open mind and a willingness to learn to do
things a new way. Its sometimes hard for C programmers to make the
transition because the mindsets of the languages are so different - but if
there is a willingness to make the thought-transition, they get there.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"mike@nospam" <mike_member@newsguy.com> wrote in message
news:9pd4s402bga@drn.newsguy.com...
>
> If you know a programmer who needs more than 2 weeks training to pick up
> a new language, let me know, so I make sure I do not hire them.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-02 19:34 ` mike
2001-10-02 21:24 ` Marin David Condic
@ 2001-10-03 16:02 ` bgeer
2001-10-03 16:19 ` Pat Rogers
` (3 more replies)
1 sibling, 4 replies; 48+ messages in thread
From: bgeer @ 2001-10-03 16:02 UTC (permalink / raw)
mike@nospam <mike_member@newsguy.com> writes:
>>plus factor in employee
>>turnover, may reveal a different economic interpretation.
>>
>excatly. those dim a dozzen programmers, we do not want to lose them, those
>who need years to learn a new language, and get confuded when they see
>BEGIN instead of "{". we got to keep those ones.
Time to learning basic ADA isn't the issue.
Dump several 10s of thousands of lines of code in hundreds of source
source files, all poorly documented of course since ADA is
self-documenting, on any but the best memorizers & you end up with
long delays in productivity.
Add to that time to figure out emulators & debuggers for which manuals
can't be found, long since carted off by a former project member.
Now tell me finding good, quick-to-produce ADA coders, is easier than
finding good C coders.
--
<> Robert Geer & Donna Tomky | |||| We sure |||| <>
<> bgeer@xmission.com | == == find it == == <>
<> dtomky@xmission.com | == == enchanting == == <>
<> Albuquerque, NM USA | |||| here! |||| <>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:02 ` bgeer
@ 2001-10-03 16:19 ` Pat Rogers
2001-10-03 16:45 ` Gary Scott
2001-10-03 16:23 ` Darren New
` (2 subsequent siblings)
3 siblings, 1 reply; 48+ messages in thread
From: Pat Rogers @ 2001-10-03 16:19 UTC (permalink / raw)
"bgeer" <bgeer@xmission.xmission.com> wrote in message
news:9pfcps$p0l$1@xmission.xmission.com...
<snip>
> Now tell me finding good, quick-to-produce ADA coders, is easier than
> finding good C coders.
We aren't trying to tell you that Ada (please note the casing) "coders" are
easier to find than any other language (why anyone would want a "coder" is
another matter). You seem to be ignoring the points being made. What we
are trying to tell you is that there exists proof that development with Ada
can be significantly more productive than development with C.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:19 ` Pat Rogers
@ 2001-10-03 16:45 ` Gary Scott
2001-10-03 17:12 ` Ted Dennison
0 siblings, 1 reply; 48+ messages in thread
From: Gary Scott @ 2001-10-03 16:45 UTC (permalink / raw)
Pat Rogers wrote:
>
> "bgeer" <bgeer@xmission.xmission.com> wrote in message
> news:9pfcps$p0l$1@xmission.xmission.com...
>
> <snip>
>
> > Now tell me finding good, quick-to-produce ADA coders, is easier than
> > finding good C coders.
>
> We aren't trying to tell you that Ada (please note the casing) "coders" are
> easier to find than any other language (why anyone would want a "coder" is
> another matter). You seem to be ignoring the points being made. What we
> are trying to tell you is that there exists proof that development with Ada
> can be significantly more productive than development with C.
Heck,
Development with Fortran 95 is significantly more productive than with
C. We recently had vendors estimate building a small Win32 tool.
Average estimate was 500 mhrs for a C/Win32 Gui tool related to audio
sample manipulation. I wrote the same tool using F95/GINO in somewhere
between 40 and 50 hours and achieved 99.9 % source code compatilibity
across several variants of UNIX, Linux, OpenVMS, and all 32-bit variants
of Windows (well, I didn't check CE).
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:45 ` Gary Scott
@ 2001-10-03 17:12 ` Ted Dennison
2001-10-03 17:39 ` Marin David Condic
2001-10-03 18:10 ` Gary Scott
0 siblings, 2 replies; 48+ messages in thread
From: Ted Dennison @ 2001-10-03 17:12 UTC (permalink / raw)
In article <3BBB409D.26EF7757@lmtas.lmco.com>, Gary Scott says...
>Pat Rogers wrote:
>> another matter). You seem to be ignoring the points being made. What we
>> are trying to tell you is that there exists proof that development with Ada
>> can be significantly more productive than development with C.
>
>Heck,
>Development with Fortran 95 is significantly more productive than with
>C. We recently had vendors estimate building a small Win32 tool.
>Average estimate was 500 mhrs for a C/Win32 Gui tool related to audio
One highly unscientific anectodte does not constitue anything close to "proof"
in my book.
However, if there *were* numbers on C vs. Fortran, I wouldn't be shocked to see
Fortran (even F77) come out on top. C's overeliance on pointers cause a great
deal of its problems. But this is all theoretical. The numbers on Ada and C
actually exist.
---
T.E.D. homepage - http://www.telepath.com/dennison/Ted/TED.html
home email - mailto:dennison@telepath.com
No trees were killed in the sending of this message.
However a large number of electrons were terribly inconvenienced.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 17:12 ` Ted Dennison
@ 2001-10-03 17:39 ` Marin David Condic
2001-10-03 18:10 ` Gary Scott
1 sibling, 0 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-03 17:39 UTC (permalink / raw)
If anecdotes count for anything, I could enumerate a long list of hours
spent in the last few weeks (We're busy trying to test quality into the
system! :-) where I've been tracking down memory leaks, dangling pointers,
illegal memory references, and bad array indexes all because of pointer
usage and/or lack of checks in C which - FWIW - wouldn't happen in Ada
because of the a) limited use of pointers, b) scope rules, c) compile time
checks or d) run time checks.
I recall a Bell Labs study of bugs in one of their big switching
applications in which the report found a whole slew of common bugs which
were classified into types & examples given. Their recommendation was to
institute coding standards and code reviews to check for those specific
problems. The overwhelming bulk of the bug types they identified were
impossible to commit in Ada because of compile or runtime checks and the
rest were highly unlikely because Ada doesn't depend on addresses/pointers
for everything in sight.
Its anectdotal, but it adds a level of experience and reasoning that
explains *why* the studies indicate superior productivity/error rates with
Ada vs C.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"Ted Dennison" <dennison@telepath.com> wrote in message
news:gGHu7.14498$ev2.23688@www.newsranger.com...
>
> However, if there *were* numbers on C vs. Fortran, I wouldn't be shocked
to see
> Fortran (even F77) come out on top. C's overeliance on pointers cause a
great
> deal of its problems. But this is all theoretical. The numbers on Ada and
C
> actually exist.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 17:12 ` Ted Dennison
2001-10-03 17:39 ` Marin David Condic
@ 2001-10-03 18:10 ` Gary Scott
1 sibling, 0 replies; 48+ messages in thread
From: Gary Scott @ 2001-10-03 18:10 UTC (permalink / raw)
Hi, I have 50+ similar anecdotes...as well as experience building
C/Win32 and GINO-based apps. But the comparison has as much to do with
the high-level structure of GINO (vs Win32) as anything.
Ted Dennison wrote:
>
> In article <3BBB409D.26EF7757@lmtas.lmco.com>, Gary Scott says...
> >Pat Rogers wrote:
> >> another matter). You seem to be ignoring the points being made. What we
> >> are trying to tell you is that there exists proof that development with Ada
> >> can be significantly more productive than development with C.
> >
> >Heck,
> >Development with Fortran 95 is significantly more productive than with
> >C. We recently had vendors estimate building a small Win32 tool.
> >Average estimate was 500 mhrs for a C/Win32 Gui tool related to audio
> One highly unscientific anectodte does not constitue anything close to "proof"
> in my book.
>
> However, if there *were* numbers on C vs. Fortran, I wouldn't be shocked to see
> Fortran (even F77) come out on top. C's overeliance on pointers cause a great
> deal of its problems. But this is all theoretical. The numbers on Ada and C
> actually exist.
>
> ---
> T.E.D. homepage - http://www.telepath.com/dennison/Ted/TED.html
> home email - mailto:dennison@telepath.com
> No trees were killed in the sending of this message.
> However a large number of electrons were terribly inconvenienced.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:02 ` bgeer
2001-10-03 16:19 ` Pat Rogers
@ 2001-10-03 16:23 ` Darren New
2001-10-03 16:32 ` Marin David Condic
2001-10-04 23:47 ` Rufus V. Smith
3 siblings, 0 replies; 48+ messages in thread
From: Darren New @ 2001-10-03 16:23 UTC (permalink / raw)
bgeer wrote:
> Dump several 10s of thousands of lines of code in hundreds of source
> source files, all poorly documented of course since ADA is
> self-documenting, on any but the best memorizers & you end up with
> long delays in productivity.
Of course, we all know that it's trivial to figure out what functions
are in what files in C, and that all C code comes with extensive
internal documentation because it's *not* self-documenting.
> Add to that time to figure out emulators & debuggers for which manuals
> can't be found, long since carted off by a former project member.
And naturally nobody ever works with a C environment where this is true
either.
> Now tell me finding good, quick-to-produce ADA coders, is easier than
> finding good C coders.
No C coder dumped on 10s of thousands of lines of code in hundreds of
undocumented source files is going to be quick-to-produce. So what's
your point?
(Hmmm... Cross-posted to linux.dev.kernel - Does this mean the linux
kernel is 10's of thousands of lines of code in hundreds of source
files, all poorly documented?)
--
Darren New
San Diego, CA, USA (PST). Cryptokeys on demand.
Who is this Dr. Ibid anyway,
and how does he know so much?
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:02 ` bgeer
2001-10-03 16:19 ` Pat Rogers
2001-10-03 16:23 ` Darren New
@ 2001-10-03 16:32 ` Marin David Condic
2001-10-03 17:31 ` Ted Dennison
2001-10-04 23:47 ` Rufus V. Smith
3 siblings, 1 reply; 48+ messages in thread
From: Marin David Condic @ 2001-10-03 16:32 UTC (permalink / raw)
I don't think anyone will contend that there is never a time when Ada might
be less productive or a less attractive choice than C - it depends on the
project and the conditions surrounding it. (For example, some small SBC's
only have C available for them.) If you have a bunch of C "coders" who don't
understand principles of software engineering and/or are unwilling/unable to
do a good job of constructing software, you may end up in the situation you
describe. Chances are, you'll end up in trouble for hiring "coders" instead
of "software engineers" anyway.
As for emulators, debuggers, etc., consider that all of this stuff is
constantly changing with hardware and development tools anyway and has
little or nothing to do with the language of implementation. (BTW: The Gnat
Ada compiler has the gdb debugger with it, so its basically the same toolset
you'll see with gcc - a very popular C compiler that is used for a lot of
realtime/embedded work.) I suppose if you want to go looking for reasons why
Ada is going to cost you a bundle, you'll be able to imagine lots of things
that might never really be a problem. If you want to look for the best tool
for the job at hand and are willing to keep an open mind, you might find
reasons why a new language might be advantageous. People change languages
for different projects all the time - why is it A Good Thing(tm) if the
language is Java (or insert the Language Du Jour here) but A Bad Thing(tm)
if the language is Ada?
BTW: Just for future reference, its "Ada" (named after Agusta Ada Byron) not
"ADA" (as in Americans with Disabilities Act, et alia.)
As for hiring "coders" - my general rule is this: Hire smart people who
understand software development and are capable of learning new things. Give
them the right tools for the job and the right training to use those tools.
Keep them happy and keep them around. (Turnover is expensive!) You'll end up
with better products built more efficiently that way. If your job ads read
"I need Microsoft Visual C++/IBM-PC/Windows95 programmers..." what will you
do with them if Linux becomes the hot craze? Or if the architecture changes
to Sun/Unix? Or (God Forbid!) some *other* language becomes the hot item
this week? Makes more sense to me to find adaptable engineers, 'cause the
world of computers is *always* changing.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"bgeer" <bgeer@xmission.xmission.com> wrote in message
news:9pfcps$p0l$1@xmission.xmission.com...
>
> Time to learning basic ADA isn't the issue.
>
> Dump several 10s of thousands of lines of code in hundreds of source
> source files, all poorly documented of course since ADA is
> self-documenting, on any but the best memorizers & you end up with
> long delays in productivity.
>
> Add to that time to figure out emulators & debuggers for which manuals
> can't be found, long since carted off by a former project member.
>
> Now tell me finding good, quick-to-produce ADA coders, is easier than
> finding good C coders.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:32 ` Marin David Condic
@ 2001-10-03 17:31 ` Ted Dennison
2001-10-03 17:52 ` Marin David Condic
0 siblings, 1 reply; 48+ messages in thread
From: Ted Dennison @ 2001-10-03 17:31 UTC (permalink / raw)
In article <9pfeiu$cfr$1@nh.pace.co.uk>, Marin David Condic says...
>reasons why a new language might be advantageous. People change languages
>for different projects all the time - why is it A Good Thing(tm) if the
>language is Java (or insert the Language Du Jour here) but A Bad Thing(tm)
..
>with better products built more efficiently that way. If your job ads read
>"I need Microsoft Visual C++/IBM-PC/Windows95 programmers..." what will you
>do with them if Linux becomes the hot craze? Or if the architecture changes
>to Sun/Unix? Or (God Forbid!) some *other* language becomes the hot item
>this week? Makes more sense to me to find adaptable engineers, 'cause the
>world of computers is *always* changing.
That's one of the reasons I think Ada is a good choice. If you do your software
right, it is probably going to end up lasting for many years. Thus if you choose
a language that has *nothing* to offer other than it present-day market share or
"coolness", you might as well choose the one with the prettiest box, for all the
good it will have do you 5 years down the line.
Ada isn't about market share or slick marketing or cool logos. Ada is about
writing fast, bullet-proof software, period. Those are timeless values that will
*never* quit paying you dividends, no matter what language is cool 3 years(or
weeks) from now.
---
T.E.D. homepage - http://www.telepath.com/dennison/Ted/TED.html
home email - mailto:dennison@telepath.com
No trees were killed in the sending of this message.
However a large number of electrons were terribly inconvenienced.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 17:31 ` Ted Dennison
@ 2001-10-03 17:52 ` Marin David Condic
2001-10-03 20:07 ` Ted Dennison
2001-10-03 20:44 ` Preben Randhol
0 siblings, 2 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-03 17:52 UTC (permalink / raw)
Well, there *are* problem domains in which 5 years represents 10 generations
of product. :-) You and I may have lots of experience with long-lived
systems and see the value of Ada there rather readily. For faster product
cycles, things like maintenance may be less of a concern. But then, so would
be the concern about finding programmers who know the language 5 years from
now.
In fast product cycle environments, I'd think the advantages of high
reliability are still of major importance. Who wants to put out an
electronic gadget and sell millions of them only to discover some fatal flaw
after they ship that forces recalls and/or lawsuits? We all know it has
happened and could probably cite lots of cases here. Ada wouldn't guarantee
it doesn't happen, but it helps minimize that risk.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"Ted Dennison" <dennison@telepath.com> wrote in message
news:SXHu7.14534$ev2.23789@www.newsranger.com...
>
> That's one of the reasons I think Ada is a good choice. If you do your
software
> right, it is probably going to end up lasting for many years. Thus if you
choose
> a language that has *nothing* to offer other than it present-day market
share or
> "coolness", you might as well choose the one with the prettiest box, for
all the
> good it will have do you 5 years down the line.
>
> Ada isn't about market share or slick marketing or cool logos. Ada is
about
> writing fast, bullet-proof software, period. Those are timeless values
that will
> *never* quit paying you dividends, no matter what language is cool 3
years(or
> weeks) from now.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 17:52 ` Marin David Condic
@ 2001-10-03 20:07 ` Ted Dennison
2001-10-03 20:27 ` Marin David Condic
2001-10-03 20:44 ` Preben Randhol
1 sibling, 1 reply; 48+ messages in thread
From: Ted Dennison @ 2001-10-03 20:07 UTC (permalink / raw)
In article <9pfj8a$ebc$1@nh.pace.co.uk>, Marin David Condic says...
>
>Well, there *are* problem domains in which 5 years represents 10 generations
>of product. :-) You and I may have lots of experience with long-lived
>systems and see the value of Ada there rather readily. For faster product
>cycles, things like maintenance may be less of a concern. But then, so would
I wasn't talking specificaly about maintenance. Just because you have to
*develop* quickly doesn't mean that people won't be trying to use that software
5 years from now. It also doesn't mean that developers won't be trying to use
your sources 5 years from now. In a short-cycle environment reuse of old code
from the previous generation is vital to a project's success. What you don't
want in that enviroment is to find yourself stuck with a language that was
designed to promote *itself*, rather than reuse.
---
T.E.D. homepage - http://www.telepath.com/dennison/Ted/TED.html
No trees were killed in the sending of this message.
However a large number of electrons were terribly inconvenienced.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 20:07 ` Ted Dennison
@ 2001-10-03 20:27 ` Marin David Condic
0 siblings, 0 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-03 20:27 UTC (permalink / raw)
I was rather thinking about the case where someone develops software for a
product and the product lives for a relatively short time and the *next*
product that comes along reuses little to none of the existing code because
it is sufficiently "new" to warrant a whole new development. You might see
this in some kinds of consumer electronics products and some PC types of
apps, where basically a whole new look&feel needs to be developed every year
to 18 months. In effect, the developers are building throw-away code.
Granted, part of the reason this may be done is that the language of
implementation makes it sufficiently hard to maintain, enhance or reuse, so
it becomes more cost effective to pitch it and start over. Some of the
reason it might get done is simply to guarantee a difference with every
release. Some of the reason may be because the company wants to avoid the
costs involved in building systems that will hang around for a long time or
have big reuse factors. (You produce little to no design artifacts and have
to do little to no configuration management and certainly don't need to
produce much in the way of programmer documentation or provide for a lot of
customer problem reporting. If you can build the thing all over again from
bottom dead center at less cost than doing a *good* job, maybe you don't
need to do a *good* job?)
I'll easily concede that Ada buys you a lot for long-lived systems or
developing reusable code or any of the conditions that may keep what you
build around for five years. I'd just offer that even when you don't have
long-lifespan concerns, Ada can make a lot of sense from a reliability and
time-to-market perspective as well.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"Ted Dennison" <dennison@telepath.com> wrote in message
news:jeKu7.14722$ev2.24082@www.newsranger.com...
>
> I wasn't talking specificaly about maintenance. Just because you have to
> *develop* quickly doesn't mean that people won't be trying to use that
software
> 5 years from now. It also doesn't mean that developers won't be trying to
use
> your sources 5 years from now. In a short-cycle environment reuse of old
code
> from the previous generation is vital to a project's success. What you
don't
> want in that enviroment is to find yourself stuck with a language that was
> designed to promote *itself*, rather than reuse.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 17:52 ` Marin David Condic
2001-10-03 20:07 ` Ted Dennison
@ 2001-10-03 20:44 ` Preben Randhol
2001-10-03 21:09 ` Marin David Condic
1 sibling, 1 reply; 48+ messages in thread
From: Preben Randhol @ 2001-10-03 20:44 UTC (permalink / raw)
On Wed, 3 Oct 2001 13:52:09 -0400, Marin David Condic wrote:
> Well, there *are* problem domains in which 5 years represents 10 generations
> of product. :-) You and I may have lots of experience with long-lived
> systems and see the value of Ada there rather readily. For faster product
> cycles, things like maintenance may be less of a concern. But then, so would
> be the concern about finding programmers who know the language 5 years from
> now.
Wasn't this how they thought in the 60 and ended up with Y2K? That all
systems will be replaced in 10-20 years?
I think security and software quality will eventually play a more
dominant role in the future of software development. As the need for
good quality reliable software will increase more and more as we get
more dependant on the computers and gadgets. Ada is of course a very
good choice for developing such software. Ada will save time on
debugging which ought to make high quality software cheaper than
developed with C or similar.
Preben Randhol
(who wonders when the first XML virus will come)
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 20:44 ` Preben Randhol
@ 2001-10-03 21:09 ` Marin David Condic
2001-10-03 23:48 ` Preben Randhol
2001-10-03 23:56 ` pete
0 siblings, 2 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-03 21:09 UTC (permalink / raw)
Fair enough - but keep in mind this fundamental principle of engineering:
"Not All Things Worth Doing Are Worth Doing Well."
Or phrased another way: "'Good Enough' Is Not Nearly So Wonderful A Thing As
'Perfect', But Its Good Enough!"
Everything you say is true, but when talking to people who develop
throw-away code, the emphasis should be on time-to-market and reliability
rather than long-term benefits such as reduced maintenance or reusable code.
Otherwise, folks in a fast-moving throw-away market may find the argument
interesting, but not compelling.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"Preben Randhol" <randhol+abuse@pvv.org> wrote in message
news:slrn9rn5fc.uu.randhol+abuse@kiuk0156.chembio.ntnu.no...
>
> Wasn't this how they thought in the 60 and ended up with Y2K? That all
> systems will be replaced in 10-20 years?
>
> I think security and software quality will eventually play a more
> dominant role in the future of software development. As the need for
> good quality reliable software will increase more and more as we get
> more dependant on the computers and gadgets. Ada is of course a very
> good choice for developing such software. Ada will save time on
> debugging which ought to make high quality software cheaper than
> developed with C or similar.
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 21:09 ` Marin David Condic
@ 2001-10-03 23:48 ` Preben Randhol
2001-10-04 2:58 ` Brian Rogoff
2001-10-04 13:40 ` Marin David Condic
2001-10-03 23:56 ` pete
1 sibling, 2 replies; 48+ messages in thread
From: Preben Randhol @ 2001-10-03 23:48 UTC (permalink / raw)
On Wed, 3 Oct 2001 17:09:35 -0400, Marin David Condic wrote:
> Fair enough - but keep in mind this fundamental principle of engineering:
> "Not All Things Worth Doing Are Worth Doing Well."
Unfortunately a large part of the software industry has taken it as
"Release It Yesterday, Consumers Are Used To Bugs" I would say.
> Or phrased another way: "'Good Enough' Is Not Nearly So Wonderful A Thing As
> 'Perfect', But Its Good Enough!"
>
> Everything you say is true, but when talking to people who develop
> throw-away code, the emphasis should be on time-to-market and reliability
> rather than long-term benefits such as reduced maintenance or reusable code.
I cannot see that Ada wouldn't accommodate on all these areas. :-)
> Otherwise, folks in a fast-moving throw-away market may find the argument
> interesting, but not compelling.
My hope is that the folks in the fast-moving throw-away market are
throwing themselves out with the bath water :-) I mean "Good Enough"
isn't "Good Enough" for the comsumer when he suddenly finds himself with
a negative bank account on Monday morning due to an software error in a
banks software which is fixed soonest next day more likely next week. Or
I don't expect the Software Industry to clean up its act themselves. I'm
hoping the consumers take action and start realizing that it _may_ be
cheaper in the long run to pay for good quality and avoid all costy
troubles in the future that cheap JIT code gives. It is funny as I just
see now that Microsoft is saying that they will "Step Up Software
Security"
(http://linuxtoday.com/news_story.php3?ltsn=2001-10-03-019-20-SC-MS). I
guess the only reason for this statement is recent suggestions from
Gartner Group (and others) that consumers should replace Windows with
other OSes due to poor security.
Preben Randhol
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 23:48 ` Preben Randhol
@ 2001-10-04 2:58 ` Brian Rogoff
2001-10-04 13:40 ` Marin David Condic
1 sibling, 0 replies; 48+ messages in thread
From: Brian Rogoff @ 2001-10-04 2:58 UTC (permalink / raw)
On Wed, 3 Oct 2001, Preben Randhol wrote:
> On Wed, 3 Oct 2001 17:09:35 -0400, Marin David Condic wrote:
> > Or phrased another way: "'Good Enough' Is Not Nearly So Wonderful A Thing As
> > 'Perfect', But Its Good Enough!"
> >
> > Everything you say is true, but when talking to people who develop
> > throw-away code, the emphasis should be on time-to-market and reliability
> > rather than long-term benefits such as reduced maintenance or reusable code.
>
> I cannot see that Ada wouldn't accommodate on all these areas. :-)
No smiley necessary here IMO. If the competiting language is another low
level language (I consider Ada relatively low level, with no pejorative
intended) like C or C++, there is no disadvantage in using Ada, even with
regards to speed of development. I have way more C experience, and I find
it much more pleasant to "hack" in Ada than C.
That's not to say that such an approach is good, but when people argue
that Ada development is laborious and time consuming I'm forced to ask
"Compared to what?". Maybe compared to Erlang, sure, but that may not be a
good choice for other reasons.
> I don't expect the Software Industry to clean up its act themselves.
Good, you won't be disappointed. I'm just scared about the reported trend
away from Ada in defense projects. I don't want those nuclear tipped
cruise missiles missing their various terrorist base targets, and I don't
think that we can convince to many of our guys to ride them Slim Pickens
style all the way to target :-).
-- Brian
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 23:48 ` Preben Randhol
2001-10-04 2:58 ` Brian Rogoff
@ 2001-10-04 13:40 ` Marin David Condic
1 sibling, 0 replies; 48+ messages in thread
From: Marin David Condic @ 2001-10-04 13:40 UTC (permalink / raw)
"Preben Randhol" <randhol+abuse@pvv.org> wrote in message
news:slrn9rng85.220.randhol+abuse@kiuk0156.chembio.ntnu.no...
> On Wed, 3 Oct 2001 17:09:35 -0400, Marin David Condic wrote:
> >
> > Everything you say is true, but when talking to people who develop
> > throw-away code, the emphasis should be on time-to-market and
reliability
> > rather than long-term benefits such as reduced maintenance or reusable
code.
>
> I cannot see that Ada wouldn't accommodate on all these areas. :-)
>
My point was that Ada accommodates all of these things - its just that
long-term support costs aren't of much interest to many developers because
they don't have a "long-term" to care about. In other words, focus on what a
given user *does* care about and explain how Ada helps get them the things
that are important to them. Yes, there are long-term benefits from Ada.
There are also time-to-market benefits (because of early problem
detection/prevention, abstraction, code reuse, etc.) and end-product quality
improvemets (also from early problem detection/prevention)
>
> My hope is that the folks in the fast-moving throw-away market are
> throwing themselves out with the bath water :-) I mean "Good Enough"
> isn't "Good Enough" for the comsumer when he suddenly finds himself with
> a negative bank account on Monday morning due to an software error in a
> banks software which is fixed soonest next day more likely next week. Or
>
There is nothing wrong with throw-away code for some problem domains. Ada
can be used to develop throw-away code - it will also improve the quality of
that throw-away code. The problem isn't that code is written, used and
discarded rather than maintained/enhanced. The problem is that the
discardable code wasn't of very good quality in the first place. There is
such a thing as a "high quality paper towel" and not all towels need to be
made of terrycloth. :-)
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 21:09 ` Marin David Condic
2001-10-03 23:48 ` Preben Randhol
@ 2001-10-03 23:56 ` pete
2001-10-04 4:33 ` David Bolen
2001-10-04 13:51 ` Marin David Condic
1 sibling, 2 replies; 48+ messages in thread
From: pete @ 2001-10-03 23:56 UTC (permalink / raw)
In article <9pfuqg$ikl$1@nh.pace.co.uk>, "Marin says...
>Everything you say is true, but when talking to people who develop
>throw-away code, the emphasis should be on time-to-market and reliability
>rather than long-term benefits such as reduced maintenance or reusable code.
but but but, code REUSE is what will make time-to-market much smaller.
Ada is one of the best languages for designing code reuse, which means
if you want very short time-to-market, then Ada is one of the best choices.
>Otherwise, folks in a fast-moving throw-away market may find the argument
>interesting, but not compelling.
>
Untill they see that code reuse == profit and shorter time-to-market.
of course, writing packages with the idea of REUSE requires more time
and effort, but it will soon pays of (in the next project).
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 23:56 ` pete
@ 2001-10-04 4:33 ` David Bolen
2001-10-04 17:19 ` David Botton
2001-10-04 13:51 ` Marin David Condic
1 sibling, 1 reply; 48+ messages in thread
From: David Bolen @ 2001-10-04 4:33 UTC (permalink / raw)
pete@nospam <pete_member@newsguy.com> writes:
> In article <9pfuqg$ikl$1@nh.pace.co.uk>, "Marin says...
>
> >Everything you say is true, but when talking to people who develop
> >throw-away code, the emphasis should be on time-to-market and reliability
> >rather than long-term benefits such as reduced maintenance or reusable code.
>
> but but but, code REUSE is what will make time-to-market much smaller.
>
> Ada is one of the best languages for designing code reuse, which means
> if you want very short time-to-market, then Ada is one of the best choices.
But most of the time, such reuse only occurs on the subsequent
projects, so if, as Marin suggested, you're talking about throwaway
code on a particular project, you expend energy designing/developing
it for reuse but then never get the benefit since it isn't reused.
Instead, it can prolong time-to-market for that first release.
And in some cases, missing that first time window of delivery means
that even if you did built a fantasically designed and reusable
system, the market isn't going to afford you the opportunity to make use
of it since you won't be around for that second release :-)
> Untill they see that code reuse == profit and shorter time-to-market.
>
> of course, writing packages with the idea of REUSE requires more time
> and effort, but it will soon pays of (in the next project).
Precisely. But if the primary goal is time-to-market and resources to
rebuild the next time are available, sometimes the prudent business
design is to build immediately and assume a large fraction is throwaway.
--
-- David
--
/-----------------------------------------------------------------------\
\ David Bolen \ E-mail: db3l@fitlinxx.com /
| FitLinxx, Inc. \ Phone: (203) 708-5192 |
/ 860 Canal Street, Stamford, CT 06902 \ Fax: (203) 316-5150 \
\-----------------------------------------------------------------------/
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-04 4:33 ` David Bolen
@ 2001-10-04 17:19 ` David Botton
0 siblings, 0 replies; 48+ messages in thread
From: David Botton @ 2001-10-04 17:19 UTC (permalink / raw)
To: comp.lang.ada
Ada also excels here since many "human" errors that quickly start to be a
drain on productivity are found at compile time. Being both a C++ and Ada
programmer, I find that Ada is exceptionally well suited to getting things
done quickly the first time and on time. I even often prototype in Ada
before writing C++ (since C++ is often "required"...).
David Botton
> And in some cases, missing that first time window of delivery means
> that even if you did built a fantasically designed and reusable
> system, the market isn't going to afford you the opportunity to make use
> of it since you won't be around for that second release :-)
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 23:56 ` pete
2001-10-04 4:33 ` David Bolen
@ 2001-10-04 13:51 ` Marin David Condic
2001-10-04 18:07 ` mike
1 sibling, 1 reply; 48+ messages in thread
From: Marin David Condic @ 2001-10-04 13:51 UTC (permalink / raw)
Never said I was against code reuse. (Did I say that somewhere and forget?
Let me check..... Nope! Can't find a single place I said that I thought
reuse was A Bad Thing :-) I said that in some types of development for some
problem domains, code reuse is not very interesting or important - for a
variety of reasons.
Of course reuse is a good way to speed time to market. Where would we be
without APIs to operating systems or GUI interfaces, etc? That's "reuse" and
the more of it you can do, the better.
The point is, if a given application domain isn't interested in reuse, then
there are still *other* reasons why Ada is an advantage. Those areas should
be emphasized when talking to developers who don't have an interest in the
long term benefits Ada has.
MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas www.pacemicro.com
Enabling the digital revolution
e-Mail: marin.condic@pacemicro.com
Web: http://www.mcondic.com/
"pete@nospam" <pete_member@newsguy.com> wrote in message
news:9pg8j901ap6@drn.newsguy.com...
>
> but but but, code REUSE is what will make time-to-market much smaller.
>
> Ada is one of the best languages for designing code reuse, which means
> if you want very short time-to-market, then Ada is one of the best
choices.
>
> >Otherwise, folks in a fast-moving throw-away market may find the argument
> >interesting, but not compelling.
> >
>
> Untill they see that code reuse == profit and shorter time-to-market.
>
> of course, writing packages with the idea of REUSE requires more time
> and effort, but it will soon pays of (in the next project).
>
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-04 13:51 ` Marin David Condic
@ 2001-10-04 18:07 ` mike
0 siblings, 0 replies; 48+ messages in thread
From: mike @ 2001-10-04 18:07 UTC (permalink / raw)
In article <9phpgn$aar$1@nh.pace.co.uk>, "Marin says...
>
>The point is, if a given application domain isn't interested in reuse, then
>there are still *other* reasons why Ada is an advantage. Those areas should
>be emphasized when talking to developers who don't have an interest in the
>long term benefits Ada has.
speaking of reuse. I've seen too many programmer when they want a function
to do something, they jump in and start coding. few hours later they are
done, and few more hours debugging, etc... But they never bother spending few
minutes searching to see if such a function allready exist somewhere...and
most of the time such a function is allready written, even in the same project
(if it is a big project), by someone else, or at least a very similar function.
if hardware engineers build things the way software engineers do, we will still
be using 8088 intel cpu running at 1 MHZ to this day.
^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: Is Linux right for Embedded?
2001-10-03 16:02 ` bgeer
` (2 preceding siblings ...)
2001-10-03 16:32 ` Marin David Condic
@ 2001-10-04 23:47 ` Rufus V. Smith
3 siblings, 0 replies; 48+ messages in thread
From: Rufus V. Smith @ 2001-10-04 23:47 UTC (permalink / raw)
"bgeer" <bgeer@xmission.xmission.com> wrote in message news:9pfcps$p0l$1@xmission.xmission.com...
>
> Now tell me finding good, quick-to-produce ADA coders, is easier than
> finding good C coders.
>
I don't use Ada. I'd love to, but I don't.
But if I flip that around, I just bet I could find a *lot* more BAD C coders
than BAD Ada coders!
And not simply because there are more C coders than Ada coders.
^ permalink raw reply [flat|nested] 48+ messages in thread