begin  quoting guy keren as of Thu, Aug 24, 2006 at 12:46:05AM +0300:
> 
> On Wed, 2006-08-23 at 14:31 -0700, Stewart Stremler wrote:
> > begin  quoting guy keren as of Thu, Aug 24, 2006 at 12:20:52AM +0300:
> > > 
> > [snip]
> > > no all types of applications can assume what you're claiming. there are
         ^^^^^^^^^
> > > applications where performance matters a lot.
> > 
> > This is why we try to assign words to different programs. Are we talking
> > about systems programming (OS & tools)? Application programming?  Business
> > programming? Games programming? Computational programming?
> 
> program types of not relevant here - what matters is what a specific
> program is used for.

Um, program types *are* relevent.

> if a program takes 40 hours to complete instead of 25 hours (just an
> example i encountered about a 2 weeks ago) - then you'd better make sure
> it runs fast enough.

And if it's run once a year, 40 hours may be fast enough.

If reducing the runtime from 40 to 25 introduces stability errors, so
that you have to run it twice on average -- you lose the benefit of a
faster program.

[snip]
> > If we're looking for general rules, however, we need to look at the
> > general cases -- and there, programmers aren't cheap, and programmer
> > errors are, or can be, disproportionately expensive.
> 
> but it's not always optimizing Vs. stability.

Indeed.

Sometimes it's optimizing versus correctness.

>                                               why won't we just stop
> adding features, and only work on stability?

Who said anything about *only* working on stability?

It's a matter of priorities. What do you do first -- strive for
correctness, stability, maintainability, or performance?

>                                              this has its price too -
> sometimes a user prefers having some feature, then enhancing stability
> of an existing feature, because, overall, the new feature will save more
> time, then will be lost by the existing unstable feature.

Funny, I've yet to meet one of these mythical users who prefer a dancing
paperclip over a system that will crash and corrupt the document they've
been working on for three days.
 
I'm sure they exist -- after all, there are people who *welcome* email
spam, too.  I'm not not sure it's a good idea to pander to their pathology.

> > > if one programmer writes a program that is used by 1,000,000 users, then
> > > the time of those 1,000,000 users is far more precious then the time of
> > > this one programmer. if, by spending X more days, this one programmer
> > > could save Y (>> X) days for the 1,000,000 users all together -
> > > determining what is preferable is not as obvious as you're making it
> > > look.
> > 
> > I'd rather have that programmer spend X more days testing and fixing
> > bugs and UI issues.  Saving me ten seconds of computation time isn't
> > worth it if I can lock up my system with an ill-advised mouseclick.
> 
> who's talking about saving ten seconds of computations? i didn't.

I had a specific example in mind. :)

Still, I as a user may not give a crap about T, where Y = T*10^6, if
for X, I could have some _other_ capability -- fewer bugs in the
software, greater stability in the software (if the program crashes,
my time lost L may greatly exceed T), a cheaper upgrade-to-the-next-version,
etc. etc.

If using a scripting language for the GUI and using a profiler to
optimize the stable, maintainable, and correct code when needed means
that the developer didn't quite optimize *everything*, I'm fine with
that. Really.

Nobody is saying "don't optimize". They're saying "wait until the end".

> > I have a system right now where if I run a debugger and change to
> > a different virtual desktop, I lock the system. As in 120-bounce time.
> > This does not make me happy.  No doubt[1] the system instablity was
> > justified by pointing out how performance is more important than
> > just about anything else...
> 
> taking things to the extreme is a sure way to make your argument lost.

This is not an extreme. This is a system I put up with Right Now.

> i am simply trying to point out that using generalizations in a too
> broad context is not a good idea.

In general, sure.  I don't agree that all GUIs should be in a scripting
language -- but I don't think that's an unreasonable position for someone
to hold, while I *do* think the opposite position is untenatable.

-- 
_ |\_
 \|

-- 
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to