Collected Wisdom

Post on 21-Jan-2018

76 views 6 download

transcript

Collected Wisdom

Collected By Nitin Bhide

Till July 2017

Collected Wisdom

Thoughts and ideas collected from various source.

Something that resonated.

Thoughts

General Thoughts

Management Thoughts

Software Development Thoughts

GENERAL THOUGHTS

It is mainly the incompetent

that don't like to show off their work.

The conditions attached to a promise are

forgotten, only the promise is remembered.

“If you keep doing what you have always done, you will keep getting what you have always got”.

– W. Edwards Deming.

Teach principles not formulas

-- Richard Feynman

Common Sense is not so Common

If only thing you have is a hammer,

everything looks like a nail

Some see things that are and ask why.

Some dream of things that aren't and ask why not.

Some people have to go to work and don't have time for all that crap.

Never Argue With Idiots. They bring you down to their level

and then beat you by experience

Never attribute to malice that which can be adequately explained by stupidity

-- Hanlon's razor

ARGUE as if you are right

and LISTEN as if you are wrong

Karl Weick, Psychologist

University of Michigan

Disobedience, in the eyes of anyone who has read history, is man's original virtue. It is through disobedience that progress has been made, through disobedience and through rebellion.

~ Oscar Wilde

One man's magic is another man's engineering. Supernatural is a null word.

~ Robert Heinlein

When you give food to the poor, they call you a saint.

When you ask why the poor have no food, they call you a communist.

~ Archbishop Helder Camara

Failure Sucks,

But Instructs

Bob Sutton

In theory, there is no difference between theory and practice. But, in practice, there is

- Yogi Berra

Walt Disney’s mantra was, “I don’t make movies to makemoney—I make money to make movies.” That’s a good wayto sum up the difference between Disney at its height andDisney when it was lost. It’s also true of Pixar and a lot ofother companies. It seems counterintuitive, but forimagination-based companies to succeed in the long run,making money can’t be the focus.

Speaking personally, I want my films to make money, butmoney is just fuel for the rocket. What I really want todo is to go somewhere. I don’t want to just collect morefuel.

- Brad Bird, Pixar

To the optimist, the glass is half full.

To the pessimist, the glass is half empty.

To the engineer, the glass is twice as big as it needs to be.

MANAGEMENT THOUGHTS

(GENERAL, PROJECT MANAGEMENT, TEAM MANAGEMENT ETC)

The Best Results Are

Produced

By Men and Women

Who Don’t Have To Be

Told What To Do

Never mistake motion for action

- Ernest Hemingway (1889-1961)

(one should not confuse activity for progress)

Reward success and failure.

Punish inaction

Bob Sutton

A players hire A players.B players hire C players

A Fool with a Tool is still a Fool

(probably a more dangerous fool)

Expect the best in people.

They may occasionally disappoint you,

But persistent pessimism hurts you more.

You get what you expect from people.

This is especially true when it comes toselfish behavior; unvarnished self-interestis a learned social norm, not anunwavering feature of human behavior.

From Bob Sutton’s Blog

“Thinking is very hard work.

And management fashions are a wonderful substitute for thinking.”

Peter Drucker ,

CIO Magazine, September 15, 1997

The individual can take initiatives without anybody's

permission.

- R. Buckminster Fuller

You may be the boss, but if you constantly have to

solve someone's problems, you are working for him

Integrity means your subordinates trust you

Give a good idea to a mediocre team, and they will screw it up.

Give a mediocre idea to a great team, and they will either fix it or come up with something better. If you get the team right, chances are that they’ll get the ideas right.

- Ed Catmull, Creativity, Inc.

It is not the manager’s job to prevent risks. It is the manager’s job to make it safe to take them.

- Ed Catmull, Creativity, Inc

Trust doesn’t mean that you trust that someone won’t screw up— it means you trust them even when they do screw up.

- Ed Catmull, Creativity, Inc.

Be wary of making too many rules. Rules can simplify life for managers, but they can be demeaning to the 95 percent who behave well. Don’t create rules to rein in the other 5 percent— address abuses of common sense individually. This is more work but ultimately healthier.

- Ed Catmull,. Creativity, Inc

Do not fall for the illusion that by preventing errors, you won’t have errors to fix. The truth is, the cost of preventing errors is often far greater than the cost of fixing them.

- Ed Catmull, Creativity, Inc.

THOUGHTS RELATED TO SOFTWARE DEVELOPMENT

Quality happens only if somebody has the responsibility for it, and that "somebody" can be no more than one single person

-- Fred Brooks in Design of Design

The review is a failure if the reviewed learn

nothing from it.

It takes one woman nine months to have a baby. It

cannot be done in one month by impregnating

nine women (although it is more fun trying).

Too few people on a project can't solve the problems –

Too many create more problems than they solve.

Any problem in computer science can be solved with another layer of indirection. But that usually will create another problem

David Wheeler (Inventor of Subroutine and BWT Transform)

Rule of 3 in Software Reuse

There are two "rules of three" in [software] reuse:

• It is three times as difficult to build reusable components as single use components,

• a reusable component should be tried out in three different applications before it will be sufficiently general to accept into a reuse library.

“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.”

Brian W. Kernighan

Organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations

M. Conway

http://en.wikipedia.org/wiki/Conway%27s_law

When your wife is about to give birth, it's not really a good idea to take apart

your car's engine.

Instead build a new one on the side and don't hook it up until it's perfect

- Joel Spolsky

• Non-programmers THINK programming is HARD.

• Average programmers THINK programming is EASY.

• Good programmers KNOW programming is HARD.

The model that really matters is the one that people have in their minds. All other models and documentation exist only to get the right model into the right mind at the right time.

-- Paul Oldfield

For a new software system, the requirements will not be completely

known until after the users have used it.

--- Humphrey's Requirements Uncertainty Principle

An old-timer once told me that computer science might have many fancy-pants data

structures, real-world software development only has three:

stack, queue, and hashtable. :)

Chris Peterson (http://www.cpeterso.com

Software development is like building a house. You can build a house in a few days...if your only going to live there for say 48 hours you would say sure go ahead and build it as fast as you can. On the other hand if you want to live in that house for 20 years, you probably want the contractor to take a little more time, wouldn't you?

The point is we can build an application in a few days or we can build an application in a few months, which would you prefer?

- Joel Spolsky

“Adding manpower to a late software project makes it later!”

Fred Brooks

Mythical Manmonth

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”

Martin Fowler

In Refactoring: Improving the Design of Existing Code

“It's OK to figure out murder mysteries, but you shouldn't need to figure out code. You should be able to read it.”

Steve McConnell

Author of ‘Code Complete’

Why do we never have time to do it right, but always have time to do it over?.