<story><title>Only solve one new problem at a time</title><url>https://www.bennadel.com/blog/4352-only-solve-one-new-problem-at-a-time.htm</url></story><parent_chain><item><author>edw519</author><text>As a general rule, successful programmers have been doing this forever:&lt;p&gt;&lt;pre&gt;&lt;code&gt;  - It works. You added 2 things. It doesn&amp;#x27;t work. Which thing broke it?
  - It doesn&amp;#x27;t work. You changed 2 things. It works. Which thing fixed it?
  - It works. Two people changed it. It doesn&amp;#x27;t work. Who broke it?
  - One donut left. 2 programmers went into break room. No donuts left. Who ate it?
&lt;/code&gt;&lt;/pre&gt;
Now change &amp;quot;2&amp;quot; to &amp;quot;1&amp;quot; in all of the above examples. See how much easier?</text></item></parent_chain><comment><author>flappyeagle</author><text>&lt;p&gt;&lt;pre&gt;&lt;code&gt;  - It works. You need to add 16 things. You add 1 thing at a time. 16 operations later you are good but the deadline has passed. Fired.

  - It works. Add 16 things. It doesn&amp;#x27;t work. Remove 8 things. It works. You&amp;#x27;ve eliminated 8 culprits. 4 operations later done. Delivered on time. Get a promotion.

  - One donut left. 2 programmers went into the break room. No donuts left. Who ate it? Not any of the 30 programmers outside of the break room. Ask the 2 programmers who did it. Prisoner&amp;#x27;s dilemma. Fun had by all.&lt;/code&gt;&lt;/pre&gt;</text></comment>
<story><title>Only solve one new problem at a time</title><url>https://www.bennadel.com/blog/4352-only-solve-one-new-problem-at-a-time.htm</url></story><parent_chain><item><author>edw519</author><text>As a general rule, successful programmers have been doing this forever:&lt;p&gt;&lt;pre&gt;&lt;code&gt;  - It works. You added 2 things. It doesn&amp;#x27;t work. Which thing broke it?
  - It doesn&amp;#x27;t work. You changed 2 things. It works. Which thing fixed it?
  - It works. Two people changed it. It doesn&amp;#x27;t work. Who broke it?
  - One donut left. 2 programmers went into break room. No donuts left. Who ate it?
&lt;/code&gt;&lt;/pre&gt;
Now change &amp;quot;2&amp;quot; to &amp;quot;1&amp;quot; in all of the above examples. See how much easier?</text></item></parent_chain><comment><author>zelphirkalt</author><text>That can be a horrible time sink as well though. Imagine if only changing one thing means, that you need a test cycle of 15 minutes or even if it is only 5 minutes. You will need 5 minutes per change then. If you know multiple things you still need to change ahead of time, you might also go ahead and fix them all, and then fix resulting or remaining issues after only running one test cycle.&lt;p&gt;I think it depends on the situation, what the best approach is. Is it a system, which is running in production and you are operating an &amp;quot;open heart&amp;quot;? Well, better only change one thing and check. Is is a newly developed thing, which you develop on your own dev machine? You can easily fix many things and many more will still remain for further iterations.</text></comment>