Software Engineering Proverbs | Freebies and Product Samples

Software Engineering Proverbs

A clever person solves a problem.
A wise person avoids it.
-- Einstein

André Bensoussan once explained to me
the difference between a programmer and
a designer:

"If you make a general statement, a
programmer says, 'Yes, but...'
while a designer says, 'Yes, and...'"

No matter what the problem is,
it's always a people problem.
-Jerry Weinberg

Wexelblat's Scheduling Algorithm:
Choose two:
* Good
* Fast
* Cheap

Craziness is doing the same thing and
expecting a different result.

Tom DeMarco, rephrasing Einstein, who said

Insanity: doing the same thing over and
over again and expecting different results.

"There's no time to stop for gas, we're
already late"
-- Karin Donker

Deming's 14 points:
1. Create constancy of purpose.
2. Adopt the new philosophy.
3. Cease dependence on mass
inspection to achieve quality.
4. Minimize total cost, not initial
price of supplies.
5. Improve constantly the system of
production and service.
6. Institute training on the job.
7. Institute leadership.
8. Drive out fear.
9. Break down barriers between
10. Eliminate slogans, exhortations,
and numerical targets.
11. Eliminate work standards (quotas)
and management by objective.
12. Remove barriers that rob workers,
engineers, and managers of their right
to pride of workmanship.
13. Institute a vigorous program of
education and self-improvement.
14. Put everyone in the company to
work to accomplish the transformation.

We know about as much about software
quality problems as they knew about the
Black Plague in the 1600s. We've seen
the victims' agonies and helped burn the
corpses. We don't know what causes it;
we don't really know if there is only
one disease. We just suffer -- and keep
pouring our sewage into our water supply.
-- Tom Van Vleck

The Troops Know
* The schedule doesn't have enough
time for maintenance in it.
* A lot of bugs get past the tests.
* Most old code can't be maintained.

To go faster, slow down. Everybody who
knows about orbital mechanics
understands that.
-- Scott Cherf

Everybody Knows:
* Discipline is the best tool.
* Design first, then code.
* Don't patch bugs out, rewrite them
* Don't test bugs out, design them out.

Everybody Knows:
* If you don't understand it, you
can't program it.
* If you didn't measure it, you
didn't do it.

Everybody Knows:
*If something is worth doing once, it's
worth building a tool to do it.
*Your problem is another's solution;
Your solution will be his problem.

Everybody Knows:
* If you've found 3 bugs in a
program, best estimate is that there are
3 more.
* 60% of product cost comes after
initial shipment.

The significant problems we face cannot
be solved by the same level of thinking
that created them.
-- Albert Einstein

On the radio the other night, Jimmy
Connors said the best advice he ever got
was from Bobby Riggs:
* do it
* do it right
* do it right now

It is not enough to do your best: you
must know what to do, and THEN do your best.
-- W. Edwards Deming

A leader is best when people barely know
that he exists.
Less good when they obey and acclaim him.
Worse when they fear and despise him.
Fail to honor people, and they fail to
honor you.
But of a good leader, when his work is
done, his aim fulfilled,
they will say, "We did this ourselves."
-- Lao-Tzu

You must be the change
You wish to see in the world
-- Gandhi

Experiment escorts us last,
His pungent company
Will not allow an axiom
An opportunity.
-- Emily Dickinson

when the cart stops
do you whip the cart
or whip the ox?

Q: How many QA testers does it take to
change a lightbulb?
A: QA testers don't change anything.
They just report that it's dark.
--Kerry Zallar

Q: How many software engineers does it
take to change a lightbulb?
A: Just one. But the house falls down.
--Andrew Siwko

One test is worth a thousand opinions.
"If you didn't write it down, it didn't