- When all else fails manipulate the data
- I’m as confused as a termite in a yo-yo
- Bugs come in through open Windows
- Celibacy is not hereditary
- Love is blind, marriage is the eye-opener
- Life is sexually transmitted
- Born free . . . Taxed to death
- If it’s too loud, you’re too old
- Common sense isn’t common
- If it ain’t broke, fix it until it is
- If you can’t convince them, confuse them
- A feature is a bug with seniority
- I’ll try being nicer if you’ll try being smarter
- Justice: A decision in your favor
- All Men Are Animals, Some Just Make Better Pets
- Few women admit their age . . . Few men act theirs
- Beauty is in the eye of the beer holder
- If the enemy is in range, so are you
- Adults are just kids who owe money
- Meetings — The practical alternative to work
Q: When was the last time you discovered a software bug?
A: I discovered one today.
Q: What did you do with the bug?
A: I fixed it.
Q: Then?
A: Life goes on.
Above are not the correct questions to ask our self whenever we found bug in our code. Almost exactly 20 years ago, a man has given us his wisdom in form of three questions to ask when we found a software bug.
The questions are: (I am rephrasing the explanation to make it memorable to my own memory ^_^)
- Is this mistake somewhere else also? We need to think whether similar programming technique that introduced the bug also used in other section of the code. If it is, we need to look at that section and investigate whether the same bug will appear there.
- What next bug is hidden behind this one? Are we going to probe left and right, sort of trial and error to fix the bug? Or, are we going to understand why the bug appeared in the first place? We must also ask our self what will happen if we fix this bug. Are we going to introduce a new bug? Another important issue is how are going to proof that our bug-fix is going to work? What kind of test cases that we need to introduce? What conditions that will be covered by the test case?
- What should I do to prevent bugs like this? The last question is sort of reflection on what we have learned by answering the first and second question. We must study and remember our bug discovery and rectify experience, so that we will not fall into the same pitfall in the future.
Source:
Image credit:
About Hardono
Alternatively, this post could have the following title:
- How to Change Your Life
- How to Change Your Personality
- How to Achieve Perfection
- How to Be a Better Person
- How to Stop Procrastinating
- How to be a Better Programmer
- How to get Better at Everything
Apparently it is simpler than we think. It is called small iterations and focus.
On small iterations, Teachers used to say ‘Practice makes perfect’. Indonesians often said “sedikit demi sedikit, lama-lama menjadi bukit”. And Jerry Seinfeld said, “Don’t break the chain”.
On focus, Confucius said “Chase two chickens, you will missed both”. Scientist also shown that our learning process become worse when we are multitasking.
I suggest you to follow the discussion HERE, many people have contributed a very insightful stories and advices.