The document discusses steps for solving problems, including reproducing the problem, scoping the problem, articulating the problem in writing with a goal, researching potential fixes, experimenting to determine the cause, hacking a rough fix, refining the fix, deploying the fix, informing interested parties, and taking lessons learned. It also discusses techniques for having fewer bugs like peer review, automated and manual testing, consistent environments, and safe use of contributed code.
24. I have rephrased the problem
IN WRITING.
I have a timebox for looking
into the issue.
Articulating
Problem:
Users with the Editor role
do not see fields for Title
and Alt Text after
uploading an image to the
Media library in
WYSIWYG. Admins do see
the fields currently.
Goal:
Both Editors and Admins
should see the fields.
Monday, July 15, 13
26. I have searched for fixes and
recorded potentially useful
links.
I have checked error logs.
Researching
http://drupal.org/node/
123456
http://
drupal.stackexchange.com/
questions/123456
Monday, July 15, 13
27. I have proven or disproven
hypotheses .
I have determined the cause of
the problem and written it
down.
Experimenting
The problem is due to the
og_moderation module not
being compatible with the
diff module.
Monday, July 15, 13
28. I have a rough fix.
I have recorded the hack.
Hacking
By hacking the diff module I
can eliminate the problem.
Monday, July 15, 13
29. I have fixed the problem responsibly.
I’ll never have this problem again.
Refining
Monday, July 15, 13
30. The fix is deployed.
Shipping
Monday, July 15, 13
33. Write down everything.
Bad assumptions are costly.
Watch out for rabbit holes.
Isolate issues.
Take breaks.
Take Aways
Monday, July 15, 13
34. Peer review & manual testing
Automated testing
Zero tolerance
Log gardening
Git
Consistent environments
Practice Safe Contrib
How to Have Fewer Bugs
Monday, July 15, 13