Home

29 Motivational Quotes for Business and other Work Environments !!

Posted on October 5th, 2006 in , by Ashok

Some days a motivational quote can provide a quick pick-me-up for employees and even management. They can be a breath of fresh air when it comes to a drab afternoon. These are also a great way to jazz up a newsletter or a memo or even to simply print and attach to a bulletin board. Using quotes like these are perfect ways to create a motivational and successful work environment. As Mr. Rick Pitino says “The only way to get people to like working hard is to motivate them. Today, people must understand why they’re working hard. Every individual in an organization is motivated by something different.” –Rick Pitino

Motivational Quotes:

1. Mahatma Gandhi: You must be the change you wish to see in the world.

2. Jim Stovall: You need to be aware of what others are doing, applaud their efforts, acknowledge their successes, and encourage them in their pursuits. When we all help one another, everybody wins.

3. Robert Frost: The only way around is through. 4. Warren Buffett: You only have to do a very few things right in your life so long as you don’t do too many things wrong.

5. Les Brown: You must remain focused on your journey to greatness.

6. Theodore Roosevelt Far and away the best prize that life offers is the chance to work hard at work worth doing.

7. Charles F. Kettering: Where there is an open mind, there will always be a frontier 8. Henry Ford: Whether you think you can or whether you think you can’t, you’re right!

9. Jim Rohn: You must either modify your dreams or magnify your skills.

10. William Hazlitt: Who likes not his business, his business likes not him.

11. Denis Waitley: Winners take time to relish their work, knowing that scaling the mountain is what makes the view from the top so exhilarating. 12. Le Iacocca: Management is nothing more than motivating other people.

13. Dwight D.: Motivation is the art of getting people to do what you want them to do because they want to do it.

14. Drucker: The most serious mistakes are not being made as a result of wrong answers. The truly dangerous thing is asking the wrong question

15. Max Schmelling: Why did I want to win? Because I didn’t want to lose! 16. J. Paul Getty: To succeed in business, to reach the top, an individual must know all it is possible to know about that business.

17. Pierre Corneille: To win without risk is to triumph without glory.

18. Tony Dorsett: To succeed… You need to find something to hold on to, something to motivate you, something to inspire you.

19. James Broughton: The only limits are, as always, those of vision. 20. George Kneller: To think creatively, we must be able to look afresh at what we normally take for granted.

21. Peter McWilliams: To the degree we’re not living our dreams; our comfort zone has more control of us than we have over ourselves.

22. Johann Wolfgang Von Goeth: To think is easy. To act is difficult. To act as one thinks is the most difficult.

23. Tryon Edwards: To waken interest and kindle enthusiasm is the sure way to teach easily and successfully. 24. Spanish Proverb: Tomorrow is often the busiest day of the week.

25. Lyndon B. Johnson: The noblest search is the search for excellence

26. Charles M. Schwab: The man who does not work for the love of work but only for money is not likely to neither make money nor find much fun in life.

27. Chinese Proverb: The miracle is not to fly in the air, or to walk on the water; but to walk on the earth.

28. John Naisbitt: The new source of power is not money in the hands of a few, but information in the hands of many.

29. Henry Ford: The man who will use his skill and constructive imagination to see how much he can give for a dollar, instead of how little he can give for a dollar, is bound to succeed. Many employers will add these quotes inside the employees’ paycheck envelope. Sometimes it may be a motivational quote, other times a silly antidote. Include employee birthdays or other important events to help your employees feel a part of the team. By Thomas Hunter  

 

Ten Tips for Managing Conflict, Tension and Anger !!

Posted on August 7th, 2006 in by Ashok

To be a safe and predictable person for those around you at work and at home, it is essential that you are able to maintain your composure when you feel like your ‘buttons’ are being pushed. This strength will help you to achieve your goals in business as well as your goals for your personal relationships.

1. Share negative emotions only in person or on the phone. E-mails, answering machine messages, and notes are too impersonal for the delicate nature of negative words. What feels like a bomb on paper may feel like a feather when delivered in person.

2. Pepper your responses with the phrase, “I understand”. This phrase will support your goals when the tension is high and you need to find common ground to form compromises or agreements with the other party.

3. Take notice when you feel threatened by what someone is saying to you. Resist the temptation to defend yourself or to “shut down” the other person’s communication. It will take this kind of discipline to become an open, trusting communicator.

4. Practice making requests of others when you are angry. It is often much more useful to make a request than to share your anger. For example, if the babysitter is driving you crazy by leaving dirty dishes in the sink, it is better to make a request of them than to let your anger leak out in other ways such as by becoming more distant.

5. Try repeating the exact words that someone is saying to you when they are in a lot of emotional pain or when you disagree with them completely. This mirroring technique can keep both the speaker and the listener ‘centered’ in a difficult conversation, especially when the attitude of the person doing the mirroring is to gain understanding of a different point of view.

6. Take responsibility for your feelings to avoid blaming others. Notice when ‘blameshifting’ begins to leak into your speech. “I feel angry when you are twenty minutes late and you don’t call me” is much better than, “You make me so mad by being late.”

7. Learn to listen to the two sides of the conflict that you are in as if you were the mediator or the counselor. If you can listen and respond in this way you will bring peace and solutions to the conflict more quickly. For example, in response to an employee’s raise request, you might say, “On the one hand I understand that you really need the raise, and on the other hand I represent the company, whose funds are very scarce at this time. Is there a way that I can work on your compensation package that does not involve cash?” Here, the mediator’s point of view can look for the creative compromise that takes into account the limits and the needs of both parties.

8. Take a playful attitude towards developing the skill of emotional self-control in high conflict situations. You could view maintaining self-control in a tense, angry converstion as an athletic feat. You could also view developing this skill as similar to working out at the gym with weights - the more that you use your self-control muscle the bigger it will grow and the easier it will be to remain calm when tension is great.

9. Wait a few days to cool down emotionally when a situation makes you feel wild with intense feelings, such as rage. As time passes, you will be able to be more objective about the issues and to sort out the truth about the situation more clearly.

10. Make a decision to speak with decorum whenever you are angry or frustrated. If you give yourself permission to blow up, people will not feel safe around you. They will feel that you are not predictable and will carry ’shields’ when they are near you. The fear and walls of others will not support your goals for success in relationships or at work.

By Clare Albright .Psy.D

Chanakya’s Quotes–TRUE FACTS OF LIFE!

Posted on August 7th, 2006 in by Ashok

Chanakya’s Quotes :-

“A person should not be too honest. Straight trees are cut first and honest people are screwed first.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC 75 BC)

“Even if a snake is not poisonous, it should pretend to be venomous.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“The biggest guru-mantra is: Never share your secrets with anybody! It will destroy you.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Before you start some work, always ask yourself three questions - Why am I doing it, What the results might be and Will I be successful. Only when you think deeply and find satisfactory answers to these questions, go ahead.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“As soon as the fear approaches near, attack and destroy it.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“The world’s biggest power is the youth and beauty of a woman.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Once you start working on something, don’t be afraid of failure and don’t abandon it. People who work sincerely are the happiest.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“The fragrance of flowers spreads only in the direction of the wind. But the goodness of a person spreads in all direction.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Whores don’t live in company of poor men, citizens never support a weak company and birds don’t build nests on a tree that doesn’t bear fruits.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“God is not present in idols. Your feelings are your god. The soul is your temple.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“A man is great by deeds, not by birth.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Never make friends with people who are above or below you in status.Such friendships will never give you any happiness.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Treat your kid like a darling for the first five years. For the next five years, scold them. By the time they turn sixteen, treat them like a friend.
Your grown up children are your best friends.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Books are as useful to a stupid person as a mirror is useful to a blind person.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

“Education is the best friend. An educated person is respected everywhere.
Education beats the beauty and the youth.”
Chanakya quotes (Indian politician, strategist and writer, 350 BC-275
BC)

Essence of Shrimad Bhagavat Gita

Posted on July 27th, 2006 in , , by Ashok

Why are you unnecessarily worrying?
Whom do you fear?
Who can kill you?
Soul is not born, nor does it die.

What has happened has happened for the best. What is happening is happening for the best. What will happen will happen for the best.

Do not brood over the past. Do not, worry about the future. The present is on.

What have you lost, that you are weeping? What have you brought, that you have lost? What have you made, that has been destroyed? You brought not anything. What you have, you got from here. What was given, was given here. What you took, you took from this universe. What you gave, you gave unto this universe. You have come empty handed and shall go empty handed. What is yours today was somebody else’s in the past and will be somebody else’s in future. You think it is yours and are deeply engrossed in it.
This attachment is the cause of all your sorrow. Change is the Law of Life. What you call Death is Life itself. In a moment you are a millionaire in the very next you are poor. Mine-Yours; Small-Big; Ours-Theirs; Remove this from your mind, then everything is yours and you are: everybody’s.

This Body is not yours, nor you are of this body. Earth, Water, Air, Fire and Ether comprisee this body and unto this shall it turn. But the Soul is Immortal, then what are you? Surrender unto the Lord, he is ultimate support. He who experiences this is completely free from Fear, Worry and Despair. Whatever you do, offer it unto Him. By this you shall forever experience Eternal Bliss.

–Bhagawan Shri Krishna

Ten Tips for Managing Conflict, Tension and Anger !!

Posted on July 27th, 2006 in , by Ashok

To be a safe and predictable person for those around you at work and at home, it is essential that you are able to maintain your composure when you feel like your ‘buttons’ are being pushed. This strength will help you to achieve your goals in business as well as your goals for your personal relationships.

1. Share negative emotions only in person or on the phone. E-mails, answering machine messages, and notes are too impersonal for the delicate nature of negative words. What feels like a bomb on paper may feel like a feather when delivered in person.

2. Pepper your responses with the phrase, “I understand”. This phrase will support your goals when the tension is high and you need to find common ground to form compromises or agreements with the other party.

3. Take notice when you feel threatened by what someone is saying to you. Resist the temptation to defend yourself or to “shut down” the other person’s communication. It will take this kind of discipline to become an open, trusting communicator.

4. Practice making requests of others when you are angry. It is often much more useful to make a request than to share your anger. For example, if the babysitter is driving you crazy by leaving dirty dishes in the sink, it is better to make a request of them than to let your anger leak out in other ways such as by becoming more distant.

5. Try repeating the exact words that someone is saying to you when they are in a lot of emotional pain or when you disagree with them completely. This mirroring technique can keep both the speaker and the listener ‘centered’ in a difficult conversation, especially when the attitude of the person doing the mirroring is to gain understanding of a different point of view.

6. Take responsibility for your feelings to avoid blaming others. Notice when ‘blameshifting’ begins to leak into your speech. “I feel angry when you are twenty minutes late and you don’t call me” is much better than, “You make me so mad by being late.”

7. Learn to listen to the two sides of the conflict that you are in as if you were the mediator or the counselor. If you can listen and respond in this way you will bring peace and solutions to the conflict more quickly. For example, in response to an employee’s raise request, you might say, “On the one hand I understand that you really need the raise, and on the other hand I represent the company, whose funds are very scarce at this time. Is there a way that I can work on your compensation package that does not involve cash?” Here, the mediator’s point of view can look for the creative compromise that takes into account the limits and the needs of both parties.

8. Take a playful attitude towards developing the skill of emotional self-control in high conflict situations. You could view maintaining self-control in a tense, angry converstion as an athletic feat. You could also view developing this skill as similar to working out at the gym with weights - the more that you use your self-control muscle the bigger it will grow and the easier it will be to remain calm when tension is great.

9. Wait a few days to cool down emotionally when a situation makes you feel wild with intense feelings, such as rage. As time passes, you will be able to be more objective about the issues and to sort out the truth about the situation more clearly.

10. Make a decision to speak with decorum whenever you are angry or frustrated. If you give yourself permission to blow up, people will not feel safe around you. They will feel that you are not predictable and will carry ’shields’ when they are near you. The fear and walls of others will not support your goals for success in relationships or at work.

By Clare Albright .Psy.D

Does God Really Exist?

Posted on April 23rd, 2006 in , by Ashok

AN INTERESTING CONVERSATION .
An atheist professor of philosophy speaks to his class on the problem
science has with God, The Almighty.

He asks one of his new students to stand and …..

Prof: So you believe in God?
Student: Absolutely, sir.

Prof: Is God good?
Student: Sure.

Prof: Is God all-powerful?
Student: Yes.

Prof: My brother died of cancer even though he prayed to God to heal him.
Most of us would attempt to help others who are ill. But God didn’t. How is
this God good then? Hmm?

(Student is silent.)

Prof: You can’t answer, can you? Let’s start again, young fellow. Is God
good?
Student: Yes.

Prof: Is Satan good?
Student: No.

Prof: Where does Satan come from?
Student: From…God…

Prof: That’s right. Tell me son, is there evil in this world?
Student: Yes.

Prof: Evil is everywhere, isn’t it? And God did make everything. Correct?
Student: Yes.

Prof: So who created evil?
Student does not answer.

Prof: Is there sickness? Immorality? Hatred? Ugliness? All these terrible
things exist in the world, don’t they?
Student: Yes, sir.

Prof: So, who created them?
Student has no answer.

Prof: Science says you have 5 senses you use to identify and observe the
world around you. Tell me, son…Have you ever seen God?
Student: No, sir.
Prof: Tell us if you have ever heard your God?
Student: No, sir.

Prof: Have you ever felt your God, tasted your God, smelt your God? Have
you ever had any sensory perception of God for that matter?
Student: No, sir. I’m afraid I haven’t.

Prof: Yet you still believe in Him?
Student: Yes.

Prof: According to empirical, testable, demonstrable protocol, science
says your GOD doesn’t exist. What do you say to that, son?
Student: Nothing. I only have my faith.

Prof: Yes. Faith. And that is the problem science has.

Student: Professor, is there such a thing as heat?
Prof: Yes.

Student: And is there such a thing as cold?
Prof: Yes.

Student: No sir. There isn’t.

(The lecture theatre becomes very quiet with this turn of events.)

Student: Sir, you can have lots of heat, even more heat, superheat, mega heat, white heat, a little heat or no heat. But we don’t have anything called cold. We can hit 458 degrees below zero which is no heat, but we can’t go any further after that. There is no such thing as cold. Cold is only a word we use to describe the absence of heat. We cannot measure cold. Heat is energy. Cold is not the opposite of heat, sir, just the absence of it.

(There is pin-drop silence in the lecture theatre.)

Student: What about darkness, Professor? Is there such a thing as darkness?
Prof: Yes. What is night if there isn’t darkness?

Student: You’re wrong again, sir. Darkness is the absence of something. You
can have low light, normal light, bright light, flashing light….But if you have no light constantly, you have nothing and it’s called darkness, isn’t it? In reality, darkness isn’t. If it were you would be able to make darkness darker, wouldn’t you?
Prof: So what is the point you are making, young man?
Student: Sir, my point is your philosophical premise is flawed.
Prof: Flawed? Can you explain how?

Student: Sir, you are working on the premise of duality. You argue there is
life and then there is death, a good God and a bad God. You are viewing the
concept of God as something finite, something we can measure. Sir, science
can’t even explain a thought. It uses electricity and magnetism, but has
never seen, much less fully understood either one.

To view death as the opposite of life is to be ignorant of the fact that
death cannot exist as a substantive thing. Death is not the opposite of
life: just the absence of it.

Now tell me, Professor. Do you teach your students that they evolved from a
monkey?
Prof: If you are referring to the natural evolutionary process, yes, of
course, I do.

Student: Have you ever observed evolution with your own eyes, sir?
(The Professor shakes his head with a smile, beginning to realize where the
argument is going.)

Student: Since no one has ever observed the process of evolution at work
and cannot even prove that this process is an on-going endeavor, are you not
teaching your opinion, sir? Are you not a scientist but a preacher? (The class is in uproar.)

Student: Is there anyone in the class who has ever seen the Professor’s brain?
(The class breaks out into laughter.)

Student: Is there anyone here who has ever heard the Professor’s brain, felt it, touched or smelt it? No one appears to have done so. So, according to the established rules of empirical, stable, demonstrable protocol, science says that you have no brain, sir.

With all due respect, sir, how do we then trust your lectures, sir?

(The room is silent. The professor stares at the student, his face
unfathomable.)

Prof: I guess you’ll have to take them on faith, son.

Student: That is it sir… The link between man & god is FAITH. That is all
that keeps things moving & alive.

12 Steps to Better Code

Posted on April 11th, 2006 in , by Ashok

12 Steps to Better Code
By Joel Spolsky

Have you ever heard of SEMA? It’s a fairly esoteric system for measuring how good a software team is. No, wait! Don’t follow that link! It will take you about six years just to understand that stuff. So I’ve come up with my own, highly irresponsible, sloppy test to rate the quality of a software team. The great part about it is that it takes about 3 minutes. With all the time you save, you can go to medical school.

The Joel Test:

Do you use source control?
Can you make a build in one step?
Do you make daily builds?
Do you have a bug database?
Do you fix bugs before writing new code?
Do you have an up-to-date schedule?
Do you have a spec?
Do programmers have quiet working conditions?
Do you use the best tools money can buy?
Do you have testers?
Do new candidates write code during their interview?
Do you do hallway usability testing?

The neat thing about The Joel Test is that it’s easy to get a quick yes or no to each question. You don’t have to figure out lines-of-code-per-day or average-bugs-per-inflection-point. Give your team 1 point for each “yes” answer. The bummer about The Joel Test is that you really shouldn’t use it to make sure that your nuclear power plant software is safe.

A score of 12 is perfect, 11 is tolerable, but 10 or lower and you’ve got serious problems. The truth is that most software organizations are running with a score of 2 or 3, and they need serious help, because companies like Microsoft run at 12 full-time.

Of course, these are not the only factors that determine success or failure: in particular, if you have a great software team working on a product that nobody wants, well, people aren’t going to want it. And it’s possible to imagine a team of “gunslingers” that doesn’t do any of this stuff that still manages to produce incredible software that changes the world. But, all else being equal, if you get these 12 things right, you’ll have a disciplined team that can consistently deliver.

1. Do you use source control?

I’ve used commercial source control packages, and I’ve used CVS, which is free, and let me tell you, CVS is fine. But if you don’t have source control, you’re going to stress out trying to get programmers to work together. Programmers have no way to know what other people did. Mistakes can’t be rolled back easily. The other neat thing about source control systems is that the source code itself is checked out on every programmer’s hard drive — I’ve never heard of a project using source control that lost a lot of code.

2. Can you make a build in one step?

By this I mean: how many steps does it take to make a shipping build from the latest source snapshot? On good teams, there’s a single script you can run that does a full checkout from scratch, rebuilds every line of code, makes the EXEs, in all their various versions, languages, and #ifdef combinations, creates the installation package, and creates the final media — CDROM layout, download website, whatever.

If the process takes any more than one step, it is prone to errors. And when you get closer to shipping, you want to have a very fast cycle of fixing the “last” bug, making the final EXEs, etc. If it takes 20 steps to compile the code, run the installation builder, etc., you’re going to go crazy and you’re going to make silly mistakes.

For this very reason, the last company I worked at switched from WISE to InstallShield: we required that the installation process be able to run, from a script, automatically, overnight, using the NT scheduler, and WISE couldn’t run from the scheduler overnight, so we threw it out. (The kind folks at WISE assure me that their latest version does support nightly builds.)

3. Do you make daily builds?

When you’re using source control, sometimes one programmer accidentally checks in something that breaks the build. For example, they’ve added a new source file, and everything compiles fine on their machine, but they forgot to add the source file to the code repository. So they lock their machine and go home, oblivious and happy. But nobody else can work, so they have to go home too, unhappy.

Breaking the build is so bad (and so common) that it helps to make daily builds, to insure that no breakage goes unnoticed. On large teams, one good way to insure that breakages are fixed right away is to do the daily build every afternoon at, say, lunchtime. Everyone does as many checkins as possible before lunch. When they come back, the build is done. If it worked, great! Everybody checks out the latest version of the source and goes on working. If the build failed, you fix it, but everybody can keep on working with the pre-build, unbroken version of the source.

On the Excel team we had a rule that whoever broke the build, as their “punishment”, was responsible for babysitting the builds until someone else broke it. This was a good incentive not to break the build, and a good way to rotate everyone through the build process so that everyone learned how it worked.

4. Do you have a bug database?

I don’t care what you say. If you are developing code, even on a team of one, without an organized database listing all known bugs in the code, you are going to ship low quality code. Lots of programmers think they can hold the bug list in their heads. Nonsense. I can’t remember more than two or three bugs at a time, and the next morning, or in the rush of shipping, they are forgotten. You absolutely have to keep track of bugs formally.

Bug databases can be complicated or simple. A minimal useful bug database must include the following data for every bug:

complete steps to reproduce the bug

expected behavior

observed (buggy) behavior

who it’s assigned to

whether it has been fixed or not

If the complexity of bug tracking software is the only thing stopping you from tracking your bugs, just make a simple 5 column table with these crucial fields and start using it.

5. Do you fix bugs before writing new code?

The very first version of Microsoft Word for Windows was considered a “death march” project. It took forever. It kept slipping. The whole team was working ridiculous hours, the project was delayed again, and again, and again, and the stress was incredible. When the dang thing finally shipped, years late, Microsoft sent the whole team off to Cancun for a vacation, then sat down for some serious soul-searching.

What they realized was that the project managers had been so insistent on keeping to the “schedule” that programmers simply rushed through the coding process, writing extremely bad code, because the bug fixing phase was not a part of the formal schedule. There was no attempt to keep the bug-count down. Quite the opposite. The story goes that one programmer, who had to write the code to calculate the height of a line of text, simply wrote “return 12;” and waited for the bug report to come in about how his function is not always correct. The schedule was merely a checklist of features waiting to be turned into bugs. In the post-mortem, this was referred to as “infinite defects methodology”.

To correct the problem, Microsoft universally adopted something called a “zero defects methodology”. Many of the programmers in the company giggled, since it sounded like management thought they could reduce the bug count by executive fiat. Actually, “zero defects” meant that at any given time, the highest priority is to eliminate bugs before writing any new code. Here’s why.

In general, the longer you wait before fixing a bug, the costlier (in time and money) it is to fix.

For example, when you make a typo or syntax error that the compiler catches, fixing it is basically trivial.

When you have a bug in your code that you see the first time you try to run it, you will be able to fix it in no time at all, because all the code is still fresh in your mind.

If you find a bug in some code that you wrote a few days ago, it will take you a while to hunt it down, but when you reread the code you wrote, you’ll remember everything and you’ll be able to fix the bug in a reasonable amount of time.

But if you find a bug in code that you wrote a few months ago, you’ll probably have forgotten a lot of things about that code, and it’s much harder to fix. By that time you may be fixing somebody else’s code, and they may be in Aruba on vacation, in which case, fixing the bug is like science: you have to be slow, methodical, and meticulous, and you can’t be sure how long it will take to discover the cure.

And if you find a bug in code that has already shipped, you’re going to incur incredible expense getting it fixed.

That’s one reason to fix bugs right away: because it takes less time. There’s another reason, which relates to the fact that it’s easier to predict how long it will take to write new code than to fix an existing bug. For example, if I asked you to predict how long it would take to write the code to sort a list, you could give me a pretty good estimate. But if I asked you how to predict how long it would take to fix that bug where your code doesn’t work if Internet Explorer 5.5 is installed, you can’t even guess, because you don’t know (by definition) what’s causing the bug. It could take 3 days to track it down, or it could take 2 minutes.

What this means is that if you have a schedule with a lot of bugs remaining to be fixed, the schedule is unreliable. But if you’ve fixed all the known bugs, and all that’s left is new code, then your schedule will be stunningly more accurate.

Another great thing about keeping the bug count at zero is that you can respond much faster to competition. Some programmers think of this as keeping the product ready to ship at all times. Then if your competitor introduces a killer new feature that is stealing your customers, you can implement just that feature and ship on the spot, without having to fix a large number of accumulated bugs.

6. Do you have an up-to-date schedule?

Which brings us to schedules. If your code is at all important to the business, there are lots of reasons why it’s important to the business to know when the code is going to be done. Programmers are notoriously crabby about making schedules. “It will be done when it’s done!” they scream at the business people.

Unfortunately, that just doesn’t cut it. There are too many planning decisions that the business needs to make well in advance of shipping the code: demos, trade shows, advertising, etc. And the only way to do this is to have a schedule, and to keep it up to date.

The other crucial thing about having a schedule is that it forces you to decide what features you are going to do, and then it forces you to pick the least important features and cut them rather than slipping into featuritis (a.k.a. scope creep).

Keeping schedules does not have to be hard. Read my article Painless Software Schedules, which describes a simple way to make great schedules.

7. Do you have a spec?

Writing specs is like flossing: everybody agrees that it’s a good thing, but nobody does it.

I’m not sure why this is, but it’s probably because most programmers hate writing documents. As a result, when teams consisting solely of programmers attack a problem, they prefer to express their solution in code, rather than in documents. They would much rather dive in and write code than produce a spec first.

At the design stage, when you discover problems, you can fix them easily by editing a few lines of text. Once the code is written, the cost of fixing problems is dramatically higher, both emotionally (people hate to throw away code) and in terms of time, so there’s resistance to actually fixing the problems. Software that wasn’t built from a spec usually winds up badly designed and the schedule gets out of control. This seems to have been the problem at Netscape, where the first four versions grew into such a mess that management stupidly decided to throw out the code and start over. And then they made this mistake all over again with Mozilla, creating a monster that spun out of control and took several years to get to alpha stage.

My pet theory is that this problem can be fixed by teaching programmers to be less reluctant writers by sending them off to take an intensive course in writing. Another solution is to hire smart program managers who produce the written spec. In either case, you should enforce the simple rule “no code without spec”.

Learn all about writing specs by reading my 4-part series.

8. Do programmers have quiet working conditions?

There are extensively documented productivity gains provided by giving knowledge workers space, quiet, and privacy. The classic software management book Peopleware documents these productivity benefits extensively.

Here’s the trouble. We all know that knowledge workers work best by getting into “flow”, also known as being “in the zone”, where they are fully concentrated on their work and fully tuned out of their environment. They lose track of time and produce great stuff through absolute concentration. This is when they get all of their productive work done. Writers, programmers, scientists, and even basketball players will tell you about being in the zone.

The trouble is, getting into “the zone” is not easy. When you try to measure it, it looks like it takes an average of 15 minutes to start working at maximum productivity. Sometimes, if you’re tired or have already done a lot of creative work that day, you just can’t get into the zone and you spend the rest of your work day fiddling around, reading the web, playing Tetris.

The other trouble is that it’s so easy to get knocked out of the zone. Noise, phone calls, going out for lunch, having to drive 5 minutes to Starbucks for coffee, and interruptions by coworkers — especially interruptions by coworkers — all knock you out of the zone. If a coworker asks you a question, causing a 1 minute interruption, but this knocks you out of the zone badly enough that it takes you half an hour to get productive again, your overall productivity is in serious trouble. If you’re in a noisy bullpen environment like the type that caffinated dotcoms love to create, with marketing guys screaming on the phone next to programmers, your productivity will plunge as knowledge workers get interrupted time after time and never get into the zone.

With programmers, it’s especially hard. Productivity depends on being able to juggle a lot of little details in short term memory all at once. Any kind of interruption can cause these details to come crashing down. When you resume work, you can’t remember any of the details (like local variable names you were using, or where you were up to in implementing that search algorithm) and you have to keep looking these things up, which slows you down a lot until you get back up to speed.

Here’s the simple algebra. Let’s say (as the evidence seems to suggest) that if we interrupt a programmer, even for a minute, we’re really blowing away 15 minutes of productivity. For this example, lets put two programmers, Jeff and Mutt, in open cubicles next to each other in a standard Dilbert veal-fattening farm. Mutt can’t remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he’s sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds).

Now let’s move them into separate offices with walls and doors. Now when Mutt can’t remember the name of that function, he could look it up, which still takes 30 seconds, or he could ask Jeff, which now takes 45 seconds and involves standing up (not an easy task given the average physical fitness of programmers!). So he looks it up. So now Mutt loses 30 seconds of productivity, but we save 15 minutes for Jeff. Ahhh!

9. Do you use the best tools money can buy?

Writing code in a compiled language is one of the last things that still can’t be done instantly on a garden variety home computer. If your compilation process takes more than a few seconds, getting the latest and greatest computer is going to save you time. If compiling takes even 15 seconds, programmers will get bored while the compiler runs and switch over to reading The Onion, which will suck them in and kill hours of productivity.

Debugging GUI code with a single monitor system is painful if not impossible. If you’re writing GUI code, two monitors will make things much easier.

Most programmers eventually have to manipulate bitmaps for icons or toolbars, and most programmers don’t have a good bitmap editor available. Trying to use Microsoft Paint to manipulate bitmaps is a joke, but that’s what most programmers have to do.

At my last job, the system administrator kept sending me automated spam complaining that I was using more than … get this … 220 megabytes of hard drive space on the server. I pointed out that given the price of hard drives these days, the cost of this space was significantly less than the cost of the toilet paper I used. Spending even 10 minutes cleaning up my directory would be a fabulous waste of productivity.

Top notch development teams don’t torture their programmers. Even minor frustrations caused by using underpowered tools add up, making programmers grumpy and unhappy. And a grumpy programmer is an unproductive programmer.

To add to all this… programmers are easily bribed by giving them the coolest, latest stuff. This is a far cheaper way to get them to work for you than actually paying competitive salaries!

10. Do you have testers?

If your team doesn’t have dedicated testers, at least one for every two or three programmers, you are either shipping buggy products, or you’re wasting money by having $100/hour programmers do work that can be done by $30/hour testers. Skimping on testers is such an outrageous false economy that I’m simply blown away that more people don’t recognize it.

Read Top Five (Wrong) Reasons You Don’t Have Testers, an article I wrote about this subject.

11. Do new candidates write code during their interview?

Would you hire a magician without asking them to show you some magic tricks? Of course not.

Would you hire a caterer for your wedding without tasting their food? I doubt it. (Unless it’s Aunt Marge, and she would hate you forever if you didn’t let her make her “famous” chopped liver cake).

Yet, every day, programmers are hired on the basis of an impressive resumé or because the interviewer enjoyed chatting with them. Or they are asked trivia questions (”what’s the difference between CreateDialog() and DialogBox()?”) which could be answered by looking at the documentation. You don’t care if they have memorized thousands of trivia about programming, you care if they are able to produce code. Or, even worse, they are asked “AHA!” questions: the kind of questions that seem easy when you know the answer, but if you don’t know the answer, they are impossible.

Please, just stop doing this. Do whatever you want during interviews, but make the candidate write some code. (For more advice, read my Guerrilla Guide to Interviewing.)

12. Do you do hallway usability testing?

A hallway usability test is where you grab the next person that passes by in the hallway and force them to try to use the code you just wrote. If you do this to five people, you will learn 95% of what there is to learn about usability problems in your code.

Good user interface design is not as hard as you would think, and it’s crucial if you want customers to love and buy your product. You can read my free online book on UI design, a short primer for programmers.

But the most important thing about user interfaces is that if you show your program to a handful of people, (in fact, five or six is enough) you will quickly discover the biggest problems people are having. Read Jakob Nielsen’s article explaining why. Even if your UI design skills are lacking, as long as you force yourself to do hallway usability tests, which cost nothing, your UI will be much, much better.

Four Ways To Use The Joel Test

Rate your own software organization, and tell me how it rates, so I can gossip.

If you’re the manager of a programming team, use this as a checklist to make sure your team is working as well as possible. When you start rating a 12, you can leave your programmers alone and focus full time on keeping the business people from bothering them.

If you’re trying to decide whether to take a programming job, ask your prospective employer how they rate on this test. If it’s too low, make sure that you’ll have the authority to fix these things. Otherwise you’re going to be frustrated and unproductive.

If you’re an investor doing due diligence to judge the value of a programming team, or if your software company is considering merging with another, this test can provide a quick rule of thumb.

12 Steps to Better Code

Posted on April 11th, 2006 in by Ashok

12 Steps to Better Code
By Joel Spolsky

Have you ever heard of SEMA? It’s a fairly esoteric system for measuring how good a software team is. No, wait! Don’t follow that link! It will take you about six years just to understand that stuff. So I’ve come up with my own, highly irresponsible, sloppy test to rate the quality of a software team. The great part about it is that it takes about 3 minutes. With all the time you save, you can go to medical school.

The Joel Test:

Do you use source control?
Can you make a build in one step?
Do you make daily builds?
Do you have a bug database?
Do you fix bugs before writing new code?
Do you have an up-to-date schedule?
Do you have a spec?
Do programmers have quiet working conditions?
Do you use the best tools money can buy?
Do you have testers?
Do new candidates write code during their interview?
Do you do hallway usability testing?

The neat thing about The Joel Test is that it’s easy to get a quick yes or no to each question. You don’t have to figure out lines-of-code-per-day or average-bugs-per-inflection-point. Give your team 1 point for each “yes” answer. The bummer about The Joel Test is that you really shouldn’t use it to make sure that your nuclear power plant software is safe.

A score of 12 is perfect, 11 is tolerable, but 10 or lower and you’ve got serious problems. The truth is that most software organizations are running with a score of 2 or 3, and they need serious help, because companies like Microsoft run at 12 full-time.

Of course, these are not the only factors that determine success or failure: in particular, if you have a great software team working on a product that nobody wants, well, people aren’t going to want it. And it’s possible to imagine a team of “gunslingers” that doesn’t do any of this stuff that still manages to produce incredible software that changes the world. But, all else being equal, if you get these 12 things right, you’ll have a disciplined team that can consistently deliver.

1. Do you use source control?

I’ve used commercial source control packages, and I’ve used CVS, which is free, and let me tell you, CVS is fine. But if you don’t have source control, you’re going to stress out trying to get programmers to work together. Programmers have no way to know what other people did. Mistakes can’t be rolled back easily. The other neat thing about source control systems is that the source code itself is checked out on every programmer’s hard drive — I’ve never heard of a project using source control that lost a lot of code.

2. Can you make a build in one step?

By this I mean: how many steps does it take to make a shipping build from the latest source snapshot? On good teams, there’s a single script you can run that does a full checkout from scratch, rebuilds every line of code, makes the EXEs, in all their various versions, languages, and #ifdef combinations, creates the installation package, and creates the final media — CDROM layout, download website, whatever.

If the process takes any more than one step, it is prone to errors. And when you get closer to shipping, you want to have a very fast cycle of fixing the “last” bug, making the final EXEs, etc. If it takes 20 steps to compile the code, run the installation builder, etc., you’re going to go crazy and you’re going to make silly mistakes.

For this very reason, the last company I worked at switched from WISE to InstallShield: we required that the installation process be able to run, from a script, automatically, overnight, using the NT scheduler, and WISE couldn’t run from the scheduler overnight, so we threw it out. (The kind folks at WISE assure me that their latest version does support nightly builds.)

3. Do you make daily builds?

When you’re using source control, sometimes one programmer accidentally checks in something that breaks the build. For example, they’ve added a new source file, and everything compiles fine on their machine, but they forgot to add the source file to the code repository. So they lock their machine and go home, oblivious and happy. But nobody else can work, so they have to go home too, unhappy.

Breaking the build is so bad (and so common) that it helps to make daily builds, to insure that no breakage goes unnoticed. On large teams, one good way to insure that breakages are fixed right away is to do the daily build every afternoon at, say, lunchtime. Everyone does as many checkins as possible before lunch. When they come back, the build is done. If it worked, great! Everybody checks out the latest version of the source and goes on working. If the build failed, you fix it, but everybody can keep on working with the pre-build, unbroken version of the source.

On the Excel team we had a rule that whoever broke the build, as their “punishment”, was responsible for babysitting the builds until someone else broke it. This was a good incentive not to break the build, and a good way to rotate everyone through the build process so that everyone learned how it worked.

4. Do you have a bug database?

I don’t care what you say. If you are developing code, even on a team of one, without an organized database listing all known bugs in the code, you are going to ship low quality code. Lots of programmers think they can hold the bug list in their heads. Nonsense. I can’t remember more than two or three bugs at a time, and the next morning, or in the rush of shipping, they are forgotten. You absolutely have to keep track of bugs formally.

Bug databases can be complicated or simple. A minimal useful bug database must include the following data for every bug:

complete steps to reproduce the bug

expected behavior

observed (buggy) behavior

who it’s assigned to

whether it has been fixed or not

If the complexity of bug tracking software is the only thing stopping you from tracking your bugs, just make a simple 5 column table with these crucial fields and start using it.

5. Do you fix bugs before writing new code?

The very first version of Microsoft Word for Windows was considered a “death march” project. It took forever. It kept slipping. The whole team was working ridiculous hours, the project was delayed again, and again, and again, and the stress was incredible. When the dang thing finally shipped, years late, Microsoft sent the whole team off to Cancun for a vacation, then sat down for some serious soul-searching.

What they realized was that the project managers had been so insistent on keeping to the “schedule” that programmers simply rushed through the coding process, writing extremely bad code, because the bug fixing phase was not a part of the formal schedule. There was no attempt to keep the bug-count down. Quite the opposite. The story goes that one programmer, who had to write the code to calculate the height of a line of text, simply wrote “return 12;” and waited for the bug report to come in about how his function is not always correct. The schedule was merely a checklist of features waiting to be turned into bugs. In the post-mortem, this was referred to as “infinite defects methodology”.

To correct the problem, Microsoft universally adopted something called a “zero defects methodology”. Many of the programmers in the company giggled, since it sounded like management thought they could reduce the bug count by executive fiat. Actually, “zero defects” meant that at any given time, the highest priority is to eliminate bugs before writing any new code. Here’s why.

In general, the longer you wait before fixing a bug, the costlier (in time and money) it is to fix.

For example, when you make a typo or syntax error that the compiler catches, fixing it is basically trivial.

When you have a bug in your code that you see the first time you try to run it, you will be able to fix it in no time at all, because all the code is still fresh in your mind.

If you find a bug in some code that you wrote a few days ago, it will take you a while to hunt it down, but when you reread the code you wrote, you’ll remember everything and you’ll be able to fix the bug in a reasonable amount of time.

But if you find a bug in code that you wrote a few months ago, you’ll probably have forgotten a lot of things about that code, and it’s much harder to fix. By that time you may be fixing somebody else’s code, and they may be in Aruba on vacation, in which case, fixing the bug is like science: you have to be slow, methodical, and meticulous, and you can’t be sure how long it will take to discover the cure.

And if you find a bug in code that has already shipped, you’re going to incur incredible expense getting it fixed.

That’s one reason to fix bugs right away: because it takes less time. There’s another reason, which relates to the fact that it’s easier to predict how long it will take to write new code than to fix an existing bug. For example, if I asked you to predict how long it would take to write the code to sort a list, you could give me a pretty good estimate. But if I asked you how to predict how long it would take to fix that bug where your code doesn’t work if Internet Explorer 5.5 is installed, you can’t even guess, because you don’t know (by definition) what’s causing the bug. It could take 3 days to track it down, or it could take 2 minutes.

What this means is that if you have a schedule with a lot of bugs remaining to be fixed, the schedule is unreliable. But if you’ve fixed all the known bugs, and all that’s left is new code, then your schedule will be stunningly more accurate.

Another great thing about keeping the bug count at zero is that you can respond much faster to competition. Some programmers think of this as keeping the product ready to ship at all times. Then if your competitor introduces a killer new feature that is stealing your customers, you can implement just that feature and ship on the spot, without having to fix a large number of accumulated bugs.

6. Do you have an up-to-date schedule?

Which brings us to schedules. If your code is at all important to the business, there are lots of reasons why it’s important to the business to know when the code is going to be done. Programmers are notoriously crabby about making schedules. “It will be done when it’s done!” they scream at the business people.

Unfortunately, that just doesn’t cut it. There are too many planning decisions that the business needs to make well in advance of shipping the code: demos, trade shows, advertising, etc. And the only way to do this is to have a schedule, and to keep it up to date.

The other crucial thing about having a schedule is that it forces you to decide what features you are going to do, and then it forces you to pick the least important features and cut them rather than slipping into featuritis (a.k.a. scope creep).

Keeping schedules does not have to be hard. Read my article Painless Software Schedules, which describes a simple way to make great schedules.

7. Do you have a spec?

Writing specs is like flossing: everybody agrees that it’s a good thing, but nobody does it.

I’m not sure why this is, but it’s probably because most programmers hate writing documents. As a result, when teams consisting solely of programmers attack a problem, they prefer to express their solution in code, rather than in documents. They would much rather dive in and write code than produce a spec first.

At the design stage, when you discover problems, you can fix them easily by editing a few lines of text. Once the code is written, the cost of fixing problems is dramatically higher, both emotionally (people hate to throw away code) and in terms of time, so there’s resistance to actually fixing the problems. Software that wasn’t built from a spec usually winds up badly designed and the schedule gets out of control. This seems to have been the problem at Netscape, where the first four versions grew into such a mess that management stupidly decided to throw out the code and start over. And then they made this mistake all over again with Mozilla, creating a monster that spun out of control and took several years to get to alpha stage.

My pet theory is that this problem can be fixed by teaching programmers to be less reluctant writers by sending them off to take an intensive course in writing. Another solution is to hire smart program managers who produce the written spec. In either case, you should enforce the simple rule “no code without spec”.

Learn all about writing specs by reading my 4-part series.

8. Do programmers have quiet working conditions?

There are extensively documented productivity gains provided by giving knowledge workers space, quiet, and privacy. The classic software management book Peopleware documents these productivity benefits extensively.

Here’s the trouble. We all know that knowledge workers work best by getting into “flow”, also known as being “in the zone”, where they are fully concentrated on their work and fully tuned out of their environment. They lose track of time and produce great stuff through absolute concentration. This is when they get all of their productive work done. Writers, programmers, scientists, and even basketball players will tell you about being in the zone.

The trouble is, getting into “the zone” is not easy. When you try to measure it, it looks like it takes an average of 15 minutes to start working at maximum productivity. Sometimes, if you’re tired or have already done a lot of creative work that day, you just can’t get into the zone and you spend the rest of your work day fiddling around, reading the web, playing Tetris.

The other trouble is that it’s so easy to get knocked out of the zone. Noise, phone calls, going out for lunch, having to drive 5 minutes to Starbucks for coffee, and interruptions by coworkers — especially interruptions by coworkers — all knock you out of the zone. If a coworker asks you a question, causing a 1 minute interruption, but this knocks you out of the zone badly enough that it takes you half an hour to get productive again, your overall productivity is in serious trouble. If you’re in a noisy bullpen environment like the type that caffinated dotcoms love to create, with marketing guys screaming on the phone next to programmers, your productivity will plunge as knowledge workers get interrupted time after time and never get into the zone.

With programmers, it’s especially hard. Productivity depends on being able to juggle a lot of little details in short term memory all at once. Any kind of interruption can cause these details to come crashing down. When you resume work, you can’t remember any of the details (like local variable names you were using, or where you were up to in implementing that search algorithm) and you have to keep looking these things up, which slows you down a lot until you get back up to speed.

Here’s the simple algebra. Let’s say (as the evidence seems to suggest) that if we interrupt a programmer, even for a minute, we’re really blowing away 15 minutes of productivity. For this example, lets put two programmers, Jeff and Mutt, in open cubicles next to each other in a standard Dilbert veal-fattening farm. Mutt can’t remember the name of the Unicode version of the strcpy function. He could look it up, which takes 30 seconds, or he could ask Jeff, which takes 15 seconds. Since he’s sitting right next to Jeff, he asks Jeff. Jeff gets distracted and loses 15 minutes of productivity (to save Mutt 15 seconds).

Now let’s move them into separate offices with walls and doors. Now when Mutt can’t remember the name of that function, he could look it up, which still takes 30 seconds, or he could ask Jeff, which now takes 45 seconds and involves standing up (not an easy task given the average physical fitness of programmers!). So he looks it up. So now Mutt loses 30 seconds of productivity, but we save 15 minutes for Jeff. Ahhh!

9. Do you use the best tools money can buy?

Writing code in a compiled language is one of the last things that still can’t be done instantly on a garden variety home computer. If your compilation process takes more than a few seconds, getting the latest and greatest computer is going to save you time. If compiling takes even 15 seconds, programmers will get bored while the compiler runs and switch over to reading The Onion, which will suck them in and kill hours of productivity.

Debugging GUI code with a single monitor system is painful if not impossible. If you’re writing GUI code, two monitors will make things much easier.

Most programmers eventually have to manipulate bitmaps for icons or toolbars, and most programmers don’t have a good bitmap editor available. Trying to use Microsoft Paint to manipulate bitmaps is a joke, but that’s what most programmers have to do.

At my last job, the system administrator kept sending me automated spam complaining that I was using more than … get this … 220 megabytes of hard drive space on the server. I pointed out that given the price of hard drives these days, the cost of this space was significantly less than the cost of the toilet paper I used. Spending even 10 minutes cleaning up my directory would be a fabulous waste of productivity.

Top notch development teams don’t torture their programmers. Even minor frustrations caused by using underpowered tools add up, making programmers grumpy and unhappy. And a grumpy programmer is an unproductive programmer.

To add to all this… programmers are easily bribed by giving them the coolest, latest stuff. This is a far cheaper way to get them to work for you than actually paying competitive salaries!

10. Do you have testers?

If your team doesn’t have dedicated testers, at least one for every two or three programmers, you are either shipping buggy products, or you’re wasting money by having $100/hour programmers do work that can be done by $30/hour testers. Skimping on testers is such an outrageous false economy that I’m simply blown away that more people don’t recognize it.

Read Top Five (Wrong) Reasons You Don’t Have Testers, an article I wrote about this subject.

11. Do new candidates write code during their interview?

Would you hire a magician without asking them to show you some magic tricks? Of course not.

Would you hire a caterer for your wedding without tasting their food? I doubt it. (Unless it’s Aunt Marge, and she would hate you forever if you didn’t let her make her “famous” chopped liver cake).

Yet, every day, programmers are hired on the basis of an impressive resumé or because the interviewer enjoyed chatting with them. Or they are asked trivia questions (”what’s the difference between CreateDialog() and DialogBox()?”) which could be answered by looking at the documentation. You don’t care if they have memorized thousands of trivia about programming, you care if they are able to produce code. Or, even worse, they are asked “AHA!” questions: the kind of questions that seem easy when you know the answer, but if you don’t know the answer, they are impossible.

Please, just stop doing this. Do whatever you want during interviews, but make the candidate write some code. (For more advice, read my Guerrilla Guide to Interviewing.)

12. Do you do hallway usability testing?

A hallway usability test is where you grab the next person that passes by in the hallway and force them to try to use the code you just wrote. If you do this to five people, you will learn 95% of what there is to learn about usability problems in your code.

Good user interface design is not as hard as you would think, and it’s crucial if you want customers to love and buy your product. You can read my free online book on UI design, a short primer for programmers.

But the most important thing about user interfaces is that if you show your program to a handful of people, (in fact, five or six is enough) you will quickly discover the biggest problems people are having. Read Jakob Nielsen’s article explaining why. Even if your UI design skills are lacking, as long as you force yourself to do hallway usability tests, which cost nothing, your UI will be much, much better.

Four Ways To Use The Joel Test

Rate your own software organization, and tell me how it rates, so I can gossip.

If you’re the manager of a programming team, use this as a checklist to make sure your team is working as well as possible. When you start rating a 12, you can leave your programmers alone and focus full time on keeping the business people from bothering them.

If you’re trying to decide whether to take a programming job, ask your prospective employer how they rate on this test. If it’s too low, make sure that you’ll have the authority to fix these things. Otherwise you’re going to be frustrated and unproductive.

If you’re an investor doing due diligence to judge the value of a programming team, or if your software company is considering merging with another, this test can provide a quick rule of thumb.

Leaders Space: Bill Gates

Posted on April 10th, 2006 in , by Ashok

William H. Gates
Chairman and Chief Software Architect
Microsoft Corporation

William (Bill) H. Gates is chairman and chief software architect of Microsoft Corporation, the worldwide leader in software, services and solutions that help people and businesses realize their full potential. Microsoft had revenues of US$39.79 billion for the fiscal year ending June 2005, and employs more than 61,000 people in 102 countries and regions.

Born on Oct. 28, 1955, Gates grew up in Seattle with his two sisters. Their father, William H. Gates II, is a Seattle attorney. Their late mother, Mary Gates, was a schoolteacher, University of Washington regent, and chairwoman of United Way International.

Gates attended public elementary school and the private Lakeside School. There, he discovered his interest in software and began programming computers at age 13.

In 1973, Gates entered Harvard University as a freshman, where he lived down the hall from Steve Ballmer, now Microsoft’s chief executive officer. While at Harvard, Gates developed a version of the programming language BASIC for the first microcomputer - the MITS Altair.

In his junior year, Gates left Harvard to devote his energies to Microsoft, a company he had begun in 1975 with his childhood friend Paul Allen. Guided by a belief that the computer would be a valuable tool on every office desktop and in every home, they began developing software for personal computers. Gates’ foresight and his vision for personal computing have been central to the success of Microsoft and the software industry.

Under Gates’ leadership, Microsoft’s mission has been to continually advance and improve software technology, and to make it easier, more cost-effective and more enjoyable for people to use computers. The company is committed to a long-term view, reflected in its investment of approximately $6.2 billion on research and development in the 2005 fiscal year.

In 1999, Gates wrote Business @ the Speed of Thought, a book that shows how computer technology can solve business problems in fundamentally new ways. The book was published in 25 languages and is available in more than 60 countries. Business @ the Speed of Thought has received wide critical acclaim, and was listed on the best-seller lists of the New York Times, USA Today, the Wall Street Journal and Amazon.com. Gates’ previous book, The Road Ahead, published in 1995, held the No. 1 spot on the New York Times’ bestseller list for seven weeks.

Gates has donated the proceeds of both books to non-profit organizations that support the use of technology in education and skills development.

In addition to his love of computers and software, Gates founded Corbis, which is developing one of the world’s largest resources of visual information - a comprehensive digital archive of art and photography from public and private collections around the globe. He is also a member of the board of directors of Berkshire Hathaway Inc., which invests in companies engaged in diverse business activities.

Philanthropy is also important to Gates. He and his wife, Melinda, have endowed a foundation with more than $28.8 billion (as of January 2005) to support philanthropic initiatives in the areas of global health and learning, with the hope that in the 21st century, advances in these critical areas will be available for all people. The Bill and Melinda Gates Foundation has committed more than $3.6 billion to organizations working in global health; more than $2 billion to improve learning opportunities, including the Gates Library Initiative to bring computers, Internet Access and training to public libraries in low-income communities in the United States and Canada; more than $477 million to community projects in the Pacific Northwest; and more than $488 million to special projects and annual giving campaigns.

Gates was married on Jan. 1, 1994, to Melinda French Gates. They have three children. Gates is an avid reader, and enjoys playing golf and bridge.

Presidents’ Message to Citizens: Developed India

Posted on March 22nd, 2006 in , by Ashok

DEVELOPED INDIA
Dr. APJ Abdul Kalam.
The President of India

“I have three visions for India.

In 3000 years of our history, people from all over the world have come and invaded us, captured our lands, conquered our minds. From Alexander onwards. The Greeks, the Turks, the Moguls, the Portuguese, the British, the French, the Dutch, all of them came and looted us, took over what was ours. Yet we have not
done this to any other nation. We have not conquered anyone. We have not grabbed their land, their culture, their history and tried to enforce our way of life on them. Why? Because we respect the freedom of others. That is why my first vision is that of FREEDOM. I believe that India got its first vision of this in 1857, when we
started the war of independence. It is this freedom that we must protect and nurture and build on. If we are not free, no one will respect us.

My second vision for India is DEVELOPMENT. For fifty years we have been a developing nation. It is time we see ourselves as a developed nation. We are among top 5 nations of the world in terms of GDP. We have 10 percent growth rate in most areas. Our poverty levels are falling. Our achievements are being globally recognized today. Yet we lack the self-confidence to see ourselves as a developed nation, self- reliant and self-assured. Isn’t this incorrect?

I have a THIRD vision.
India must stand up to the world. Because I believe that, unless India stands up to the world, no one will respect us. Only strength respects strength. We must be strong not only as a military power but also as an economic power. Both must go hand-in-hand. My good fortune was to have worked with three great minds. Dr.
Vikram Sarabhai of the Dept. of space, Professor Satish Dhawan, who succeeded him and Dr.Brahm Prakash, father of nuclear material. I was lucky to have worked with all three of them closelyand consider this the great opportunity of my life.

I see four milestones in my career:

Twenty years I spent in ISRO. I was given the opportunity to be the project director for India’s first satellite launch vehicle, SLV3. The one that launched Rohini. These years played a very important role in my life of Scientist.

After my ISRO years, I joined DRDO and got a chance to be the part of India’s guided missile program. It was my second bliss when Agni met its mission requirements in 1994. The Dept. of Atomic Energy and DRDO had this tremendous partnership in the recent nuclear tests, on May 11 and 13. This was the third bliss.

The joy of participating with my team in these nuclear tests and proving to the world that India can make it, that we are no longer a developing nation but one of them. It made me feel very proud as an Indian. The fact that we have now developed for Agni a re-entry structure, for which we have developed this new material. A Very light material called carbon-carbon. One day an orthopedic surgeon from Nizam Institute of Medical Sciences visited my laboratory. He lifted the material and found it so light that he took me to his hospital and showed me his patients. There were these little girls and boys with heavy metallic calipers weighing over three Kg. each, dragging their feet around. He said to me: Please remove the pain of my patients. In three weeks, we made these Floor reaction Orthosis 300-gram Calipers and took them to the orthopedic center. The children
didn’t believe their eyes. From dragging around a three kg. Load on their legs, they could now move around! Their parents had tears in their eyes. That was my fourth bliss!

Why is the media here so negative? Why are we in India so embarrassed to recognize our own strengths, our achievements? We are such a great nation. We have so many amazing success stories but we refuse to acknowledge them. Why?

We are the first in milk production.
We are number one in Remote sensing satellites.
We are the second largest producer of wheat.
We are the second largest producer of rice.

Look at Dr. Sudarshan, he has transferred the tribal village into a self-sustaining, self driving unit. There are millions of such achievements but our media is only obsessed in the bad news and failures and disasters.
I was in Tel Aviv once and I was reading the Israeli newspaper. It was the day after a lot of attacks and bombardments and deaths had taken place. The Hamas had struck. But the front page of the newspaper had the picture Of a Jewish gentleman who in five years had transformed his desert land into an orchid and a
granary. It was this inspiring picture that everyone woke up to. The gory details of killings, bombardments, deaths, were inside in the newspaper, buried among other news.
In India we only read about death, sickness, terrorism, crime. Why are we so NEGATIVE ? Another question: Why are we, as a nation so obsessed with foreign things? We want foreign TVs, we want foreign shirts. We want foreign technology. Why this obsession with everything imported. Do we not realize that
self-respect comes with self-reliance?
I was in Hyderabad giving this lecture, when a 14 year old girl asked me for my autograph. I asked her what her goal in life is. She replied: I want to live in a developed India. For her, you and I will have to build this
developed India. You must proclaim. India is not an under-developed nation; it is a highly developed nation.
Do you have 10 minutes? Allow me to come back with a vengeance.

Got 10 minutes for your country? If yes, then read; otherwise, choice is yours.
YOU say that our government is inefficient.
YOU say that our laws are too old.
YOU say that the municipality does not pick up the garbage. YOU say that the phones don’t work, the railways are a joke, The airline is the worst in the world, mails never reach their destination.
YOU say that our country has been fed to the dogs and is the absolute pits.
YOU say, say and say.
What do YOU do about it?
Take a person on his way to Singapore. Give him a name - YOURS. Give him a face - OURS. YOU walk out of the airport and you are at your International best. In Singapore you don’t throw cigarette butts on the roads or eat in the stores.
YOU are as proud of their Underground Links as they are. You pay $5 (approx. Rs.60) to drive through Orchard Road (equivalent of Mahim Causeway or Pedder Road) between 5 PM and 8 PM. YOU comeback to the
Parking lot to punch your parking ticket if you have over stayed in a restaurant or a shopping mall irrespective of your status identity. In Singapore you don’t say anything, DO YOU? YOU wouldn’t dare to eat in
public during Ramadan, in Dubai. YOU would not dare to go out without your head covered in Jeddah. YOU would not dare to buy an employee of the telephone exchange in London at 10 pounds (Rs.650) a month to, “see to it that my STD and ISD calls are billed to someone else.” YOU would not dare to speed beyond 55 mph (88 km/h) in Washington and then tell the traffic cop, “Jaanta hai sala main kaun hoon (Do you know who I am?). I am so and so’s son. Take your two bucks and get lost.” YOU wouldn’t chuck an empty coconut shell anywhere other than the garbage pail on the beaches in Australia and New Zealand. Why don’t YOU spit Paan on the streets of Tokyo?
Why don’t YOU use examination jockeys or buy fake certificates in Boston? We are still talking of the same YOU. YOU who can respect and conform to a foreign system in other countries but cannot in your own. You who will throw papers and cigarettes on the road the moment you touch Indian ground. If you can be an
involved and appreciative citizen in an alien country, why cannot you be the same here in India?
Once in an interview, the famous Ex-municipal commissioner of Bombay, Mr.Tinaikar, had a point to make. “Rich people’s dogs are walked on the streets to leave their affluent droppings all over the place,” he said. “And then the same people turn around to criticize and blame the authorities for inefficiency and dirty
pavements. What do they expect the officers to do? Go down with a broom every time their dog feels the pressure in his bowels?

In America every dog owner has to clean up after his pet has done the job. Same in Japan. Will the Indian citizen do that here?” He’s right. We go to the polls to choose a government and after that forfeit all responsibility. We sit back wanting to be pampered and expect the government to do everything for us
whilst our contribution is totally negative. We expect the government to clean up but we are not going to stop chucking garbage all over the place nor are we going to stop to pick a up a stray piece of paper and throw it in the bin. We expect the railways to provide clean bathrooms but we are not going to learn the proper use of bathrooms.
We want Indian Airlines and Air India to provide the best of food and toiletries but we are not going to stop pilfering at the least opportunity. This applies even to the staff who is known not to pass on the service to the
public. When it comes to burning social issues like those related to women, dowry, girl child and others, we make loud drawing room Protestations and continue to do the reverse at home. Our excuse? “It’s the whole system which has to change, how will it matter if I alone forego my sons’ rights to a dowry.” So who’s going to change the system? What does a system consist of? Very conveniently for us it consists of our neighbors, other households, other cities, other communities and the government. But definitely not me and YOU. When it comes to us actually making a positive contribution to the system we lock ourselves along with our
families into a safe cocoon and look into the distance at countries far away and wait for a Mr. Clean to come along & work miracles for us with a majestic sweep of his hand or we leave the country and run away.
Like lazy cowards hounded by our fears we run to America to bask in their glory and praise their system. When New York becomes insecure we run to England. When England experiences unemployment, we take the next flight out to the Gulf. When the Gulf is war struck, we demand to be rescued and brought home
by the Indian government. Everybody is out to abuse and rape the country. Nobody thinks of feeding the system. Our conscience is mortgaged to money. Dear Indians, The article is highly thought inductive, calls for a great deal of introspection and pricks one’s conscience too….I am echoing J.F.Kennedy’s words to his fellow Americans to relate to Indians…..
“ASK WHAT WE CAN DO FOR INDIA AND DO WHAT HAS TO BE DONE TO MAKE INDIA WHAT AMERICA AND OTHER WESTERN COUNTRIES ARE TODAY”
Lets do what India needs from us.

Thank you
Abdul Kalam

« Previous PageNext Page »