Blog from March, 2009

Location of repository has been changed

New location of the repository is: https://repos.deltares.nl/repos/delft-tools/trunk.

Use the following command to change to the new location:

svn switch --relocate http://svn/repos/delft-tools/trunk https://repos.deltares.nl/repos/delft-tools/trunk
Don't set tests to ignore if they crash build server

The following test:

        // 20081211 this test fails on purpose, fix in model engine.
        [Test]
        [Category("Integration")]
        [Ignore("test crashes test server.")]
        public void ImportVanCouverNetworkAndRunCalcGridAtFixedInterval()
        {
            ImportVanCouverNetworkAndRun(true);
        }

must be written as

        [Test]
        [Category("Integration")]
        public void ImportVanCouverNetworkAndRunCalcGridAtFixedInterval()
        {
            Assert.Fail("test crashes test server, update model dll to a stable one and remove this line.");
            ImportVanCouverNetworkAndRun(true);
        }

Then test will always fail on the build server.

We have scheduled the following sprint sessions in April 2009:

  • Thursday 2 April 2009: Nelen & Schuurmans, The Netherlands: User Conference TURTLE
  • Tuesday 7 April 2009: Hoogheemraadschap Rijnland, Waterschap Rivierenland, Waterschap Groot-Salland, Waternet, Arcadis, Grontmij, WUR, PBL, STOWA, SEPRA and MX Systems: Workshop BC DUFLOW-SOBEK
  • Tuesday 14 April 2009: IPP, Germany
  • Tuesday 21 April 2009: Royal Haskoning, The Netherlands
  • Wednesday 22 April 2009: HBO Practicum, The Netherlands
Projects to unload (eliminate waste)

The following figure shows which projects can be unloaded for the release of version DelftShell 1.0 alpha 3 and 4.

ReSharper 4.5 beta is out - faster than ever
ESRI Silverlight API

Interesting post from former author of SharpMap: http://resources.esri.com/arcgisserver/apis/silverlight/

Click on image below to see more samples.

Added Scrum book to Project Materials
Unable to render {include} The included page could not be found.
Quantum GIS

Quantum GIShas a decent properties dialog. It is possible to create a user defined coordinate system. (EPSG CRS style).

Adding symbology to layers.

The Attibute table has a nifty feature of querying the data.

Useful reading about Pair-Programming practice

Read it here: http://www.infoq.com/articles/adopting-pair-programming

Issues discussed:

  • Focus on One Team-Member At a Time
  • Pair Switching
  • Who Should Drive
  • Pair Mentor
  • Pair Learner
  • Uninterested & Distracted Pair
  • Spellchecking Pair
  • When Not to Pair
  • Core Pairing Hours
  • The Simplest Thing That Could Possibly Work
  • Mandate Code Review
Fluent NHibernate

Interesting project, maybe we can switch to it from hbm.xml. The advantages are obvious:

  • Easier refactoring
  • Automapping
  • Smaller

... read more on a web site http://fluentnhibernate.org/

Traditional HBM XML mapping

<?xml version="1.0" encoding="utf-8" ?>  
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"  
  namespace="QuickStart" assembly="QuickStart">  
  
  <class name="Cat" table="Cat">  
    <id name="Id">  
      <generator class="identity" />  
    </id>  
  
    <property name="Name">  
      <column name="Name" length="16" not-null="true" />  
    </property>  
    <property name="Sex" />  
    <many-to-one name="Mate" />  
    <bag name="Kittens">  
      <key column="mother_id"/>  
        <one-to-many class="Cat"/>  
      </bag>  
  </class>  
</hibernate-mapping>  

Fluent NHibernate equivalent

public class CatMap : ClassMap<Cat>  
{  
  public CatMap()  
  {  
    Id(x => x.Id);  
    Map(x => x.Name)  
      .WithLengthOf(16)  
      .Not.Nullable();  
    Map(x => x.Sex);  
    References(x => x.Mate);  
    HasMany(x => x.Kittens);  
  }  
}