collected wisdom
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?.