<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Unruly Rambling - tdd tag</title>
  <link>http://www.shoesobjects.com/blog/tags/tdd/</link>
  <description>My thoughts on software, technology, and life in general</description>
  <language>en</language>
  <copyright>Mike Shoemaker</copyright>
  <lastBuildDate>Sun, 31 Jan 2010 17:47:37 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>My thoughts on TDD after one small project</title>
    <link>http://www.shoesobjects.com/blog/2004/08/23/my_thoughts_on_tdd_after_one_small_project.html</link>
    
      
        <description>
          &lt;p&gt; First, I must disclose that I really only did Test Driven Development in the beginning while coming up with the object model and basic methods.  It worked out well for this.  I found that it was much harder to drive the detailed design using TDD at later stages.  Although, i&#039;ll give the approach the benefit of the doubt and say that it was my lack of experience using TDD that caused this.   &lt;/p&gt;
&lt;p&gt; The project that I worked on was a calculation engine that takes two objects, each with various numbers of subclasses(I won&#039;t bore you with the business details) and outputs numeric values.  The computation is fairly simple but output is pretty detailed and isn&#039;t easy to see problems by simply eye balling the data.  Unit tests worked out fantastic here.  We have over 120 unit tests that exercise positive and negative paths.  I can honestly say that if management came to us tomorrow and asked for another calculation scenario, we could introduce it and be confident that we didn&#039;t break anything else almost immediately.  Pretty slick.   &lt;/p&gt;
&lt;p&gt; Although this was a very positive experience, there were some downfalls.  When approaching a project with TDD in mind.  I&#039;m having a hard time determining how to estimate it.  Since you are not doing BDUF (Big Design Up Front), the scope of change is quite unknown.  If you haven&#039;t worked with a given project before(legacy or new), it would be very hard to estimate resources or timelines.   &lt;/p&gt;
&lt;p&gt; In my world at work, we are typically give a production date and then figure the timeline out backwards.  This allows us to determine how many people it will take to meet the predetermined date.  I realized, this approach is less than optimal, but I have to live with it.  With this being the case, how can you not do BDUF?   &lt;/p&gt;
        </description>
      
      
    
    
    
    <category>java</category>
    
    <comments>http://www.shoesobjects.com/blog/2004/08/23/my_thoughts_on_tdd_after_one_small_project.html#comments</comments>
    <guid isPermaLink="true">http://www.shoesobjects.com/blog/2004/08/23/my_thoughts_on_tdd_after_one_small_project.html</guid>
    <pubDate>Mon, 23 Aug 2004 15:48:13 GMT</pubDate>
  </item>
  
  <item>
    <title>NoFluffJustStuff Gateway Java Symposium - Day 3</title>
    <link>http://www.shoesobjects.com/blog/2004/03/23/nofluffjuststuff_gateway_java_symposium_day_3.html</link>
    
      
        <description>
          &lt;p&gt; Day three&#039;s events began at 8am and ended at 5:00pm.  A continental breakfast was served from 8am-9am with the first presentation beginning at 9am.  The following are the sessions I attended along with any random thoughts. &lt;/p&gt;
&lt;p&gt; &lt;strong&gt;Better, Faster, Lighter Java (Bruce Tate)&lt;/strong&gt;&lt;br /&gt;
Better, Faster, Lighter Java was about everything EJB isn&#039;t.  Bruce started off by explaining how Java has gone from a 4MB download to a 40MB download in less than 10 years.  He also brought up the fact that deprecated method&#039;s rarely are actually deprecated.  The only examples our group could come up with were situations where leaving the method would actually break something.  Otherwise, deprecated methods have been left to rot for backward compatibility purposes.  We also discussed how EJB had been around for sometime and newer lighter weight frameworks like Spring were not far behind feature wise.  To cut to the chase, this session could have been called, &amp;quot;EJB&#039;s are usually not necessary and there are much better ways to get the benefits they provide&amp;quot;.  Bruce stated that a lightweight container, like Spring, was the future and that EJB&#039;s were dying.  While I have to agree that EJB&#039;s are abused and not needed in many cases, there are a lot developers out there with this skill set so they will likely die a slow death.    &lt;/p&gt;
&lt;p&gt; &lt;strong&gt;TDD for the web tier (Rick Hightower)&lt;/strong&gt;&lt;br /&gt;
Lets see, hmm.  How do I put this.  To be blunt, this presentation sucked from start to finish.  While Rick may know the subject very well and write decent books, an effective presenter he is not.  Not to mention, his slide presentation could have taken the entire 3 days to cover.  This session was suppose to be about junit, httpunit, dbunit, strutstestcase, cactus,  and jWebUnit.  I think we may have completed the junit part, it was hard to tell since I was too busy fighting to keep my eye&#039;s open.  Sorry for sounding bitter, but this presentation was painful.  Instead of throwing up a editor and giving a hello world presentation of a couple of these tools(obviously there was no way to cover all of them), we were subjected to bullet point after bullet point of ways to use them.  I got nothing out of this presentation except that  I will never attend any of Rick&#039;s seminars again.   &lt;/p&gt;
&lt;p&gt; &lt;strong&gt;AOP with AspectJ and Eclipse plugin (Venkat Subramaniam)&lt;/strong&gt;&lt;br /&gt;
To start off with, im very thankful that I got to this room early.  It became overly crowded in a matter of no time.  I guess you could say that AOP was the buzzword of choice  this past weekend.  While I can honestly say that I understood the basics of AOP beforehand, I learned a bunch from Venkat.  His presentation style was similar to Stuart Halloway.    Lots of little tiny programs that did nothing but get the point across.  I learn best in this environment.  Venkat had a single program where he instantiated a JMenuPanel that contained   2 menu items.  When you ran the program, both were available.  He then proceeded to put logic to determine if your locale was US and gray out one of the options.  The next step was to  explain that this type of logic might be useful all over and that copy/paste was not the best solution.  Instead he moved this code into an aspect and applied it that way.  It  was a clear and meaningful example that most people enjoyed.    &lt;/p&gt;
&lt;p&gt; &lt;strong&gt;Introduction to Spring(Bruce Tate)&lt;/strong&gt;&lt;br /&gt;
The last presentation that I attended was on the spring framework.  Bruce did a pretty good job here, but like in all his other presentations he lacked real code.  This presentation was  really nothing more than an overview of spring, how it compared to struts, and how easy it was to keep your object testable using it.  My favorite statement from the presentation was, &amp;quot;Good OO  design is more important that any framework&amp;quot;.  This idea is very foreign to EJB since Session beans like monolithic utility classes and Entity beans are similar persistence via peanut butter.    Spring or spring like frameworks are on my radar and will be something I dig into soon.      &lt;/p&gt;
&lt;p&gt; To summarize the weekend, I would have to say the NFJS Tour was a success again this year and that it was worth every penny.  If my company hadn&#039;t paid for it, I would have.  A coworker of mine brought up the fact that the tour is in Chicago in the September timeframe.  I will seriously consider going to it as well if the topics are different enough.   &lt;/p&gt;
        </description>
      
      
    
    
    
    <category>java</category>
    
    <comments>http://www.shoesobjects.com/blog/2004/03/23/nofluffjuststuff_gateway_java_symposium_day_3.html#comments</comments>
    <guid isPermaLink="true">http://www.shoesobjects.com/blog/2004/03/23/nofluffjuststuff_gateway_java_symposium_day_3.html</guid>
    <pubDate>Wed, 24 Mar 2004 03:06:21 GMT</pubDate>
  </item>
  
  </channel>
</rss>

