<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Object Mentor Blog: Tag okccoco</title>
    <link>http://blog.objectmentor.com/articles/tag/okccoco</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Challenge: How would you start this problem?</title>
      <description>&lt;p&gt;On Thursday, we&amp;#8217;re holding our first &lt;a href="http://codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; at the recently opened &lt;a href="http://okccoco.com/"&gt;OkC CoCo&lt;/a&gt;. This isn&amp;#8217;t the first Coding Dojo to happen in Oklahoma City. Some time back, &lt;a href="http://davenicolette.wikispaces.com/"&gt;Dave Nicolette&lt;/a&gt; held a &lt;a href="http://davenicolette.wikispaces.com/TDD+Randori+and+Fishbowl"&gt;Randori with a Fishbowl&lt;/a&gt; at the OkC Java User&amp;#8217;s Group, and that&amp;#8217;s the format I&amp;#8217;ll be using for &lt;a href="http://schuchert.wikispaces.com/Rpn+Calculator+High+Level+Description"&gt;this problem&lt;/a&gt;. It was a blast then and I&amp;#8217;m hoping it&amp;#8217;ll be the same this time around.&lt;/p&gt;


	&lt;p&gt;This first DoJo is with C#, though I hope we manage to use several languages over time. I&amp;#8217;d like to sneak in Smalltalk as soon as we have enough of a critical mass so we don&amp;#8217;t lose people. I also plan to slowly introduce &lt;span class="caps"&gt;BDD&lt;/span&gt; (maybe not so slowly, who knows &amp;#8211; depends on the group).&lt;/p&gt;


	&lt;p&gt;The recent refactoring exercises (&lt;a href="http://blog.objectmentor.com/articles/2009/06/09/another-refactoring-exercise-design-patterns-recommended"&gt;here&lt;/a&gt; and &lt;a href="http://blog.objectmentor.com/articles/2009/06/04/refactoring-exercise"&gt;here&lt;/a&gt;), they come from &lt;a href="http://schuchert.wikispaces.com/Rpn+Calculator+High+Level+Description"&gt;this problem&lt;/a&gt;. We&amp;#8217;ll be starting from scratch, so you can probably imagine that those refactoring examples are not going to come up right away (actually probably not at all given the time).&lt;/p&gt;


	&lt;p&gt;So your challenge this time is not one of refactoring but rather one of an initial value problem. Given &lt;a href="http://schuchert.wikispaces.com/Rpn+Calculator+High+Level+Description"&gt;the problem statement&lt;/a&gt;, how would&lt;i&gt; &lt;b&gt;you&lt;/b&gt;&lt;/i&gt; go about starting it? I&amp;#8217;m assuming &lt;span class="caps"&gt;TDD&lt;/span&gt;, do you make that same assumption? If so, what&amp;#8217;s your first test? Your first few tests? What features do you try to tackle first? What questions do you ask yourself about the problem?&lt;/p&gt;


I&amp;#8217;ve used this problem several times and it&amp;#8217;s a great problem to practice many things including:
	&lt;ul&gt;
	&lt;li&gt;Test Driven Development&lt;/li&gt;
		&lt;li&gt;refactoring (lower case r deliberate &amp;#8211; can you guess why?)&lt;/li&gt;
		&lt;li&gt;Refactoring to Design Patterns&lt;/li&gt;
		&lt;li&gt;Most of the &lt;span class="caps"&gt;SOLID&lt;/span&gt; principles&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;Anyway, how would you go about starting this problem? Or better yet, give it a try and post your first few tests (in the order you create them).&lt;/p&gt;


	&lt;p&gt;I&amp;#8217;ll be interested in seeing how people start and I&amp;#8217;ll compare it to what I&amp;#8217;ve done (hint, I use this as a class-driven thing, so I&amp;#8217;m pretty flexible on how to start it).&lt;/p&gt;


	&lt;p&gt;p.s. As a result of studying the &lt;a href="http://h10032.www1.hp.com/ctg/Manual/bpia5305.pdf"&gt;manual for my &lt;span class="caps"&gt;HP 32SII&lt;/span&gt;&lt;/a&gt;, I have a much better understanding of just how its stack works. I have a EE and CS background, so the stack implementation makes sense, but I left some of its details out of the problem.&lt;/p&gt;</description>
      <pubDate>Wed, 17 Jun 2009 00:16:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:cd259101-5576-45c4-99b6-866ae4207d25</guid>
      <author>Brett Schuchert</author>
      <link>http://blog.objectmentor.com/articles/2009/06/17/challenge-how-would-you-start-this-problem</link>
      <category>Schuchert's Scattered Synapses </category>
      <category>TDD</category>
      <category>randori</category>
      <category>dojo</category>
      <category>okccoco</category>
    </item>
  </channel>
</rss>
