<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/">

  <channel rdf:about="http://blog.crisp.se/perlundholm/">
    <title>Per Lundholm&#039;s blog</title>
    <link>http://blog.crisp.se/perlundholm/</link>
    <description>Everyday Software Development</description>
    <items>
      <rdf:Seq>
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2010/03/03/1267608420000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2010/02/16/1266351000000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/12/17/1261042651768.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/11/20/1258717215369.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/10/14/1255545943989.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/10/10/1255210167957.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/07/27/1248729180000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/07/08/1247086469581.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/06/01/1243890906062.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/06/01/1243887000000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/04/29/1241037067073.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/04/01/1238621553738.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/03/17/1237301422982.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/02/28/1235815701880.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2009/02/02/1233589740000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2008/11/11/1226384280000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2008/10/22/1224656160000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2008/10/06/1223285634798.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2008/10/01/1222844880000.html" />
        
        <rdf:li resource="http://blog.crisp.se/perlundholm/2008/09/18/1221765540000.html" />
        
      </rdf:Seq>
    </items>
  </channel>

  
  <item rdf:about="http://blog.crisp.se/perlundholm/2010/03/03/1267608420000.html">
    <title>TDD Illustrated</title>
    <link>http://blog.crisp.se/perlundholm/2010/03/03/1267608420000.html</link>
    
      
      
        <description>
          I am planning an introductory course on TDD. In that process I have been thinking about how to convey the productivity gain with TDD.&lt;br /&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt; Being a visual person, I had an idea that would illustrate this in a few pictures. Here they are for your scrutiny and enjoyment!&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2010/03/03/1267608420000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2010/02/16/1266351000000.html">
    <title>The TDD Tetrahedron</title>
    <link>http://blog.crisp.se/perlundholm/2010/02/16/1266351000000.html</link>
    
      
      
        <description>
          &lt;style type=&#034;text/css&#034;&gt;
	&lt;!--
		@page { margin: 0.79in }
		P { margin-bottom: 0.08in }
	--&gt;
	&lt;/style&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;Are you looking for some concrete expression for Test Driven Development? Let me give you a glimpse of what I am working currently on &amp;ndash; the TDD Tetrahedron.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;The idea originates from when a colleague at Crisp, David Barnholdt, wrote about not focusing on one step at the time. So I thought for a while and came up with this idea, a tetrahedron where each side displayed &amp;ldquo;failing test&amp;rdquo;, &amp;ldquo;implementation&amp;rdquo; and &amp;ldquo;refactor&amp;rdquo;, respectively.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;&lt;img height=&#034;165&#034; width=&#034;150&#034; alt=&#034;tdd tetrahedron&#034; src=&#034;http://blog.crisp.se/perlundholm/images/tetra/ild1_small.JPG&#034; /&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;You turn it and look at the first side where you read &amp;ldquo;failing test&amp;rdquo;. You write a failing test and turn it again, reading &amp;ldquo;implementation&amp;rdquo;. Write the implementation and run the test to get the green bar. Once again you turn the tetrahedron and read &amp;ldquo;refactor&amp;rdquo;. You look for something to refactor, confident that if you do, you will be supported by unit tests all the way.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;Or the thing just sit on your table to tell everyone how cool you are as being a TDD programmer. At least wish to be. :-)&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;Anyways, here are some sneak preview pictures of the greatest thing that ever happened to the world of  programming, ta da &amp;ndash; the TDD Tetrahedron!&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2010/02/16/1266351000000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/12/17/1261042651768.html">
    <title>Change Based Configuration Management</title>
    <link>http://blog.crisp.se/perlundholm/2009/12/17/1261042651768.html</link>
    
      
      
        <description>
          Configuration Management (CM) is crucial to any software project as neglecting it will easily get you in big trouble. It may look like bad luck, but it is not.&lt;br /&gt;
&lt;br /&gt;
A CM-plan will deal with several matters, from simple to decide things, such as naming of releases to more advanced subjects, such as branching strategy. I will talk about the latter today.&lt;br /&gt;
&lt;br /&gt;
There are of course different ideas about what a good branching strategy should be. It is my firm belief that it must be aligned with the subject at hand, namely changes.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/12/17/1261042651768.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/11/20/1258717215369.html">
    <title>Beyond Basic TDD</title>
    <link>http://blog.crisp.se/perlundholm/2009/11/20/1258717215369.html</link>
    
      
      
        <description>
          This coming spring we will host a course with Robert C Martin on advanced TDD. I would really appreciate the input from my experienced TDD readers on what they consider to be the largest obstacles when it comes to TDD. This is your chance to shape the event so that it is customized to meet your needs.&lt;br /&gt;
&lt;br /&gt;
A few months ago we hosted a very popular course with Michael Feathers. He talked about refactoring legacy systems and of course, unit tests which are an essential part of that. But the crowd cried out for more.&lt;br /&gt;
&lt;br /&gt;
I have been practicing TDD for two years. I program in Java and frequently use Mockito and Wicket. The latter has support for unit testing web interfaces and it is great although it has its quirks.&lt;br /&gt;
&lt;br /&gt;
But what is everyone else doing?&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/11/20/1258717215369.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/10/14/1255545943989.html">
    <title>Not the Fixed Price Contract</title>
    <link>http://blog.crisp.se/perlundholm/2009/10/14/1255545943989.html</link>
    
      
      
        <description>
          The fixed price contract has been discussed here at the Crisp blog by others. It is broken by design as it creates more problem than it fixes. &lt;br /&gt;
&lt;br /&gt;
On the way from &lt;a href=&#034;http://jaoo.dk&#034;&gt;JAOO&lt;/a&gt; I talked to &lt;a href=&#034;http://www.udidahan.com/&#034;&gt;Udi Dahan&lt;/a&gt; and that made it fall into place in a different fashion. Not that this is what he said, this is what he sparked.&lt;br /&gt;
&lt;br /&gt;
The fixed price contract is not necessarily fixed price, a contract or evil.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/10/14/1255545943989.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/10/10/1255210167957.html">
    <title>Design Principles for Error Handling</title>
    <link>http://blog.crisp.se/perlundholm/2009/10/10/1255210167957.html</link>
    
      
      
        <description>
          Besides understanding the most important structures of a system, it is an architect&#039;s responsibility to understand and influence the design principles.&lt;br /&gt;
&lt;br /&gt;
One common and important set of principles are those of error handling. It is good to have the same principles throughout the system as it produces fewer surprises and mistakes.&lt;br /&gt;
&lt;br /&gt;
In this post, I will discuss some principles that including checked exceptions and Null Object, which you may not fancy. But it is always good to think this subject through, so please come along.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/10/10/1255210167957.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/07/27/1248729180000.html">
    <title>The Last on Code Review</title>
    <link>http://blog.crisp.se/perlundholm/2009/07/27/1248729180000.html</link>
    
      
      
        <description>
          Code quality. It has been haunting me for so long I forgot when I started to think about it. Do other people think about it? For sure. Do everyone? Certainly not.&lt;br /&gt;
&lt;br /&gt;
I was doing RUP and before that some waterfall process from DoD. Before that I was programming Fortran. Now, what has been my single most important recommendation for reaching code quality?&lt;br /&gt;
&lt;br /&gt;
Peer code review. &lt;br /&gt;
&lt;br /&gt;
But enough. It just struck me how much I do not miss code reviews. &lt;br /&gt;
&lt;br /&gt;
I&#039;ll tell you why and I&#039;ll tell you what is the replacement, because there should be one.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/07/27/1248729180000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/07/08/1247086469581.html">
    <title>Modal Windows Considered Harmful</title>
    <link>http://blog.crisp.se/perlundholm/2009/07/08/1247086469581.html</link>
    
      
      
        <description>
          On the Wicket user&#039;s mailing list there was a question about modal windows and it set me off. Since my excellent wisdom ;) is larger than just modal windows and Wicket, I thought that it would be of interest to all of you, dear readers.&lt;br /&gt;
&lt;br /&gt;
I have discovered that the modal windows that was gone when web applications started to spread, are starting to come back. And they are bad, even if they are not as bad as the goto statement that was accused the same way as I just did: harmful.&lt;br /&gt;
&lt;br /&gt;
A modal window is something that pops up in the face of the user, screaming its importance by not letting the user touch anything else until the modal window had its way.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/07/08/1247086469581.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/06/01/1243890906062.html">
    <title>Stable Interfaces - any good?</title>
    <link>http://blog.crisp.se/perlundholm/2009/06/01/1243890906062.html</link>
    
      
      
        <description>
          I once worked in a rather large project, about 1000 persons. There are many stories about that project but the one that I&#039;m thinking of now is that we loved to say &amp;quot;stable interface, we must have stable interfaces&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Now, stable means not changing which means nothing gets better. So why would anyone want stable interfaces? And what should we say about the opposite, &amp;quot;unstable&amp;quot;?&lt;br /&gt;
&lt;br /&gt;
Stable interfaces is a cornerstone in tactics for modifiability, so how do stability and modifiability go hand in hand?&lt;br /&gt;
&lt;br /&gt;
Do you see my finger?&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/06/01/1243890906062.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/06/01/1243887000000.html">
    <title>Requirements Specification is Waste</title>
    <link>http://blog.crisp.se/perlundholm/2009/06/01/1243887000000.html</link>
    
      
      
        <description>
          &lt;style type=&#034;text/css&#034;&gt;
	&lt;!--
		@page { margin: 0.79in }
		P { margin-bottom: 0.08in }
	--&gt;
	&lt;/style&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;Eclipse trashed some code for me today and I had to recreate the workspace. On such days, I can get a bit edgy and maybe I was, when commenting &lt;a href=&#034;http://scrumftw.blogspot.com/2009/05/when-scrum-meets-traditional-quality.html&#034;&gt;Richard Kronf&amp;auml;lt&#039;s blog &lt;/a&gt;on Scrum and traditional QA.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;Sorry about that, Richard, but you are a viking so I guess I can get away with a glass of mj&amp;ouml;d if I ever bump into you.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0in;&#034;&gt;But my point is still, requirements specification is waste. It follows from that the issue tracking is as well. Well, not always.&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/06/01/1243887000000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/04/29/1241037067073.html">
    <title>Mock the Clock</title>
    <link>http://blog.crisp.se/perlundholm/2009/04/29/1241037067073.html</link>
    
      
      
        <description>
          Your unit test should have no dependencies on anything external, you know that already. So you try not to read any files or connect to a database server.&amp;nbsp; But what about time? Recently we had some unit tests that failed during nightly build due to daylight saving. Suddenly the distance between two days was 23 hours.&lt;br /&gt;
&lt;br /&gt;
But it doesn&#039;t stop at unit tests. System tests, too, may depend on time.&lt;br /&gt;
&lt;br /&gt;
You should have a strategy for how your system perceive time. Read on.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/04/29/1241037067073.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/04/01/1238621553738.html">
    <title>Understanding a System</title>
    <link>http://blog.crisp.se/perlundholm/2009/04/01/1238621553738.html</link>
    
      
      
        <description>
          I teach a course on System Architecture. It is a three-day course attended by experienced developers who want to go further in some respect. &lt;br /&gt;
&lt;br /&gt;
What strikes me most is that the majority has never read any architecture document. Since writing such documents is one of the main topics of the course, I have a long road for them as they haven&#039;t read any.&lt;br /&gt;
&lt;br /&gt;
So, when you are faced with a system that you are about to change, how do you go about to understand it?&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/04/01/1238621553738.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/03/17/1237301422982.html">
    <title>A Lean Simulation in JavaFX</title>
    <link>http://blog.crisp.se/perlundholm/2009/03/17/1237301422982.html</link>
    
      
      
        <description>
          My collagues are talking a lot about Lean these days. I thought it would be interesting to simulate one of their examples using JavaFX.&lt;br /&gt;
&lt;br /&gt;
Here is a picture:&lt;br /&gt;
&lt;br /&gt;
&lt;img height=&#034;250&#034; width=&#034;350&#034; src=&#034;http://blog.crisp.se/perlundholm/images/leanmachine.png&#034; alt=&#034;Lean Machine Simulator&#034; /&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/03/17/1237301422982.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/02/28/1235815701880.html">
    <title>Don&#039;t let Java ruin your JavaFX</title>
    <link>http://blog.crisp.se/perlundholm/2009/02/28/1235815701880.html</link>
    
      
      
        <description>
          &lt;style type=&#034;text/css&#034;&gt;
	&lt;!--
		@page { margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;
&lt;p style=&#034;margin-bottom: 0cm;&#034;&gt;Me and Oscar is currently working on a small project, just to learn JavaFX. &lt;br /&gt;
&lt;br /&gt;
We stumbled on some nasty crashes which we at first did not understand.  &lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0cm;&#034;&gt;ArrayIndexOutOfBoundsException? Is there a bug in JavaFX?&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0cm;&#034;&gt;It turned out to be a callback from Java. Let us see how we got there.&lt;/p&gt;
&lt;p style=&#034;margin-bottom: 0cm;&#034;&gt;&lt;img alt=&#034;picuture if the application&#034; src=&#034;http://blog.crisp.se/perlundholm/images/ppfx.png&#034; /&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/02/28/1235815701880.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2009/02/02/1233589740000.html">
    <title>Essensen och kruxet med testdriven utveckling</title>
    <link>http://blog.crisp.se/perlundholm/2009/02/02/1233589740000.html</link>
    
      
      
        <description>
          N&amp;auml;r du f&amp;ouml;rst&amp;aring;tt &lt;strong&gt;po&amp;auml;ngen&lt;/strong&gt; med testdriven utveckling kommer givetvis &lt;strong&gt;kr&amp;aring;nglet&lt;/strong&gt;. S&amp;aring; hur tar man sig vidare?&lt;br /&gt;
&lt;br /&gt;
Vi b&amp;ouml;rjar med po&amp;auml;ngen s&amp;aring; att vi &amp;auml;r &amp;ouml;verens om vad vi menar.&lt;br /&gt;
&lt;br /&gt;
Testdriven utveckling (TDD) s&amp;auml;ger att man f&amp;ouml;rst skriver ett test som fallerar (viktigt), sedan implementerar man s&amp;aring; att det inte l&amp;auml;ngre fallerer.&lt;br /&gt;
&lt;br /&gt;
I det l&amp;auml;get tar man sig en funderare om man tycker att designen och kodstrukturen &amp;auml;r enklast m&amp;ouml;jliga. Om inte s&amp;aring; fixar man till den, utan att &amp;auml;ndra vad koden g&amp;ouml;r, refactor p&amp;aring; engelska. Eftersom de tester man har, g&amp;aring;r igenom s&amp;aring; &amp;auml;r det tryggt att &amp;auml;ndra implementationen.&lt;br /&gt;
&lt;br /&gt;
Vi forts&amp;auml;tter sedan med ett nytt varv, test - implementation - refactor. &lt;br /&gt;
&lt;br /&gt;
Enkelt s&amp;aring; l&amp;aring;ngt, men vad &amp;auml;r po&amp;auml;ngen?&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2009/02/02/1233589740000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2008/11/11/1226384280000.html">
    <title>Qualities Attributed to the Architecture</title>
    <link>http://blog.crisp.se/perlundholm/2008/11/11/1226384280000.html</link>
    
      
      
        <description>
          Functional requirements describe how a system delivers value. However, the quality attributes of those functions will make or break it. For example, if your functional requirment is about something that takes you from one city to another, I have a car to sell. Really cheap, for that matter.&lt;br /&gt;
&lt;br /&gt;
Every system has an architecture. It may be elegant or it may be ugly. It may be described or it may be unknown. But it is.&lt;br /&gt;
&lt;br /&gt;
Architecture is what determines the qualities that the system delivers. Is it fast? Is it secure? Can it be extended? Does it scale?&lt;br /&gt;
&lt;br /&gt;
The qualities you strive for should determine the design of the architecture - not the other way around.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2008/11/11/1226384280000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2008/10/22/1224656160000.html">
    <title>Perspective of Retrospective</title>
    <link>http://blog.crisp.se/perlundholm/2008/10/22/1224656160000.html</link>
    
      
      
        <description>
          &lt;p lang=&#034;en-GB&#034; style=&#034;margin-bottom: 0cm;&#034;&gt;Scrum received some criticism today in Computer Sweden. &lt;a href=&#034;http://www.idg.se/2.1085/1.187182/kritiken-mot-scrum-vaxer&#034;&gt;The article&lt;/a&gt; featured an interview of &lt;strong&gt;Ken Schwaber&lt;/strong&gt; and our guy &lt;strong&gt;Henrik Kniberg&lt;/strong&gt;. &lt;strong&gt;Tobias Fors&lt;/strong&gt; from Citerus was giving the comment that Scrum lacked support for retrospective. I am not sure if he was quoted correctly.&lt;/p&gt;
&lt;p lang=&#034;en-GB&#034; style=&#034;margin-bottom: 0cm;&#034;&gt;I am in the belief that Scrum has three roles, three artefacts and three meetings. Of the latter, there is one you should never skip.&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2008/10/22/1224656160000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2008/10/06/1223285634798.html">
    <title>Email eats your day</title>
    <link>http://blog.crisp.se/perlundholm/2008/10/06/1223285634798.html</link>
    
      
      
        <description>
          Email has reached into the everyday life of almost every profession. While I have been using it since the 80&#039;s, its usage has accelerated enough to make it an issue even to us who are used to it since long.&lt;br /&gt;
&lt;br /&gt;
There is research that shows that we use a lot of time reading email. It may be waste. &lt;br /&gt;
&lt;br /&gt;
Here is a suggested personal policy for handling you email.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2008/10/06/1223285634798.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2008/10/01/1222844880000.html">
    <title>Usability will cost you money, ignore or score</title>
    <link>http://blog.crisp.se/perlundholm/2008/10/01/1222844880000.html</link>
    
      
      
        <description>
          Anna Forss writes under the subject &lt;a href=&#034;http://painistemporaryfailurelastsforever.blogspot.com/2008/09/what-do-you-test.html&#034;&gt;&amp;quot;What do you test&amp;quot;&lt;/a&gt; some interesting and classical observations on how users cope with systems that has bad usability. &lt;br /&gt;
&lt;br /&gt;
I will elaborate some on the comment I made at her blog. &lt;br /&gt;
&lt;br /&gt;
As a product owner, you should be highly aware that usability will cost you money, regardless if you ignore it or not.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2008/10/01/1222844880000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  
  <item rdf:about="http://blog.crisp.se/perlundholm/2008/09/18/1221765540000.html">
    <title>Wicket + Mockito = Love</title>
    <link>http://blog.crisp.se/perlundholm/2008/09/18/1221765540000.html</link>
    
      
      
        <description>
          I&#039;ve survived my first Rocket Day. RD are our seminars at Crisp where we talk for half a day on a subject of choice. Mine was Test Driven Development with &lt;a href=&#034;http://wicket.apache.org&#034;&gt;Wicket&lt;/a&gt; and &lt;a href=&#034;http://code.google.com/p/mockito/&#034;&gt;Mockito&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I chosed to do a live coding performance as I liked to do a very down-to-earth, practical seminar.&lt;br /&gt;
&lt;br /&gt;
The slides are currently in swedish but I will translat them to english. Later. ;-)&lt;br /&gt;
&lt;br /&gt;
However, most of you read swedish so I have published them &lt;a href=&#034;http://www.crisp.se/per.lundholm/doc/wicket_rd.pdf&#034;&gt;here&lt;/a&gt;.&lt;p&gt;&lt;a href=&#034;http://blog.crisp.se/perlundholm/2008/09/18/1221765540000.html&#034;&gt;Read more...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
  </item>
  

</rdf:RDF>
