<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="" type="text/css"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/"
         xmlns:dcterms="http://purl.org/dc/terms/"
         xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
         xmlns:rss="http://purl.org/rss/1.0/"
         xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <rss:channel rdf:about="http://vanrees.org/weblog">

        <rss:title>Reinout van Rees' weblog</rss:title>
        <rss:link>http://vanrees.org/weblog</rss:link>

        <rss:description>Personal stuff, python/zope/plone, bit of building-construction research, some faith posts.</rss:description>
        

        <rss:image rdf:resource="http://vanrees.org/logo.png"/>

        <sy:updatePeriod>daily</sy:updatePeriod>
        <sy:updateFrequency>1</sy:updateFrequency>

        <rss:items>
            <rdf:Seq>
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/08/versions-buildout"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/08/glorious-new-office-for-zest-software"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/03/easy-backups-with-buildout"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/03/overengineered-koekhappen"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/02/no-fear-of-presenting"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/02/kss.plugin.cacheability"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/07/01/cake"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/06/30/load-only-the-languages-you-need-with-pts"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/06/11/de-nieuwbouw-ict-in-de-bouw"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/23/plone-net-great-resource-for-prospective-plone"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/20/using-multiple-zope2-product-directories-from"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/20/gtd-changing-next-actions"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/15/project-task-distinction"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/13/fire-at-my-former-university"/>
                
                
                <rdf:li rdf:resource="http://vanrees.org/weblog/archive/2008/05/12/strange-osx-plone-craches-external-c-libs"/>
                
            </rdf:Seq>
        </rss:items>
    </rss:channel>

    <rss:image rdf:about="http://vanrees.org/logo.png">
        <rss:title>Reinout van Rees' weblog</rss:title>
        <rss:link>http://vanrees.org/weblog</rss:link>
        <rss:url>http://vanrees.org/logo.png</rss:url>
    </rss:image>

    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/08/versions-buildout">

        <rss:title>Keeping track of versions between development and production buildouts</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/08/versions-buildout</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>At <a href="http://zestsoftware.nl/">Zest software</a>, we're always refining our buildout
strategy. For stable buildouts, you need to make it easy to do the right
thing. And you need some mechanisms in place to keep the complexity
manageable. The reality is that there are quite a lot of eggs involved in a
typical plone project.</p>
<p>Two blog posts that outline what we're doing now:</p>

<ul>
<li><a href="http://vanrees.org/weblog/archive/2007/12/27/buildout-development-production-strategy">Splitting the buildout two
  ways</a>
  about having stable/unstable.cfg for product configuration and
  devel/preview/production for server/instance configuration. Preview.cfg and
  production.cfg both extend stable.cfg; devel.cfg extends unstable.cfg. This
  keeps concerns separate.</li>
<li>My brother Maurits' entry on <a href="http://maurits.vanrees.org/weblog/archive/2008/01/easily-creating-repeatable-buildouts">creating repeatable
  buildouts</a>
  which was mostly about pinning eggs in versions and how to do that reliably.</li>

</ul>
<p>I was bothered by the long list of pinned versions in our buildout's
<code>[versions]</code> part. Which are versions we picked ourselves and which are
"just" currently used versions? To make the difference easier to spot, all you
have to do is to make a small subdivision with comments. A quick "diff" will
tell you what the difference between development and production is when you do
that. Note that we've also started to pin versions in development.</p>
<p>In the unstable/development 
configuration:
<pre>
 [versions]
 # Pin versions that we want to pin to a specific version
 SQLAlchemy = 0.4.5
 plone.recipe.plone = 3.1.1
 # Not specifically pinned versions.
 # List compiled 2008-07-07 by Reinout.
 # Remove this list and run buildout with '-n', afterwards run:
 # bin/buildout -vvvvv |sed -ne 's/^Picked: //p' | sort | uniq
 Products.CMFSquidTool = 1.5
 Products.CacheSetup = 1.2
 Products.PageCacheManager = 1.2
 Products.PolicyHTTPCacheManager = 1.2
 .....
</pre>
</p>
<p>In the stable configuration:
<pre>
 [versions]
 # Current version numbers of our own products
 ren.app = 0.8
 ren.model = 0.8
 ren.theme = 0.8
 # Copied from the current unstable.cfg: specific pins.
 SQLAlchemy = 0.4.5
 plone.recipe.plone = 3.1.1
 # Copied from unstable.cfg: buildout-generated list.
 Products.CMFSquidTool = 1.5
 Products.CacheSetup = 1.2
 Products.PageCacheManager = 1.2
 Products.PolicyHTTPCacheManager = 1.2
 ...
</pre>
</p>
<p>This way, it is easy to spot what has to be copied where and which items you
have to update yourself. In case you develop with the latest versions and only
want to pin it in production, unstable/development would be just:
<pre>
 [versions]
 # Pin versions that we want to pin to a specific version
 SQLAlchemy = 0.4.5
 plone.recipe.plone = 3.1.1
</pre>
</p>
<p>and stable/production:
<pre>
 [versions]
 # Current version numbers of our own products
 ren.app = 0.8
 ren.model = 0.8
 ren.theme = 0.8
 # Copied from the current unstable.cfg: specific pins.
 SQLAlchemy = 0.4.5
 plone.recipe.plone = 3.1.1
 # Not specifically pinned versions.
 # Generate pin list by running the following command in development:
 # bin/buildout -vvvvv |sed -ne 's/^Picked: //p' | sort | uniq
 Products.CMFSquidTool = 1.5
 Products.CacheSetup = 1.2
 Products.PageCacheManager = 1.2
 Products.PolicyHTTPCacheManager = 1.2
 .....
</pre>
</p>
<p>I hope this gives some ideas to adapt it to your own situation!</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-08T11:26:08+02:00</dc:date>

        <dcterms:modified>2008-07-08T11:26:08+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/08/glorious-new-office-for-zest-software">

        <rss:title>Glorious new office for Zest software</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/08/glorious-new-office-for-zest-software</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Yesterday, monday, was our first day in <a href="http://zestsoftware.nl/">our</a> new office after the move: yeah,
great office space. Every one of us looked happy and content. I was merrily
working throughout the afternoon and suddenly noticed that it was 17:45 (I had
to go home at 17:00 in order to eat before people arrived)... I just didn't
look at the time. I blame it on the nice building :-)</p>
<p><a href="http://photos.reinout.vanrees.org/gallery/4740020_eA5vZ/1/#327231340_GVVeL-A-LB">
<img src="http://photos.reinout.vanrees.org/photos/327231340_GVVeL-M.jpg" alt="New zest office" /></a></p>
<p>The old location started to get cramped (see <a href="http://vanrees.org/weblog/archive/2008/07/01/cake">last
photo</a>), so we needed the
extension. Jean-Paul and Esther (=bosses) did manage to find a good office
that they're rightfully mighty proud of. Three random things that I especially
like:</p>

<ul>
<li>Two entire walls filled with whiteboards. I love whiteboards and have a big
  one at home. Zest's new office takes it to a new level. We immediately put
  the whiteboards to good use to plan out a new customer project.</li>
<li>Big Window. One of the long walls is all glass. From floor to ceiling. The
  programmers are on the second floor: when you come up the stairs the first
  thing you see is a big open space and a wide view outside. Loads of light,
  loads of openness. Gives me a feeling I'm capable of more: more overview of
  projects, better architectures, less bugs, whatever :-)</li>
<li>Dead next to the metro (=subway). On a day, it shaves 2x10=20 minutes off my
  commute compared to the old office location. If I manage to be more strict
  in my morning routine, this bit of margin ought to allow me to be home on a
  better time. I have a 1 hour 35 commute (one-way) now (was 1h45) three days
  a week (I work at home two days a week). So I mostly got home just when
  dinner was finished. Those 20 minutes might make quite a difference!</li>

</ul>
<p><a href="http://photos.reinout.vanrees.org/gallery/4740020_eA5vZ/1/#327231162_ES5QK-A-LB">
<img src="http://photos.reinout.vanrees.org/photos/327231162_ES5QK-M.jpg" alt="Big windows in new zest office" /></a></p>
<p>There's some work to be done on the office, of course. But the office is off
to a good start, seeing everyone's enthousiasm on the first day!</p>
<p>The location? <a href="http://maps.google.nl/maps?f=q&hl=nl&geocode=&q=zest+software,+hoogvliet&sll=52.469397,5.509644&sspn=3.446843,8.569336&ie=UTF8&ll=51.863143,4.377805&spn=0.003412,0.008368&t=h&z=17">Right here</a> , but it is a brand new building, so google maps doesn't have it on its satelite photo yet :-)</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-08T09:43:24+02:00</dc:date>

        <dcterms:modified>2008-07-08T09:44:53+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>zestsoftware</dc:subject>
        
        
            <dc:subject>work</dc:subject>
        
        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/03/easy-backups-with-buildout">

        <rss:title>Easy backups with buildout</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/03/easy-backups-with-buildout</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>I finally got around to copying the backup functionality of ye olde
<a href="http://plone.org/products/instance-manager">instancemanager</a> to a buildout
recipe. The result is a real handy recipe:
<a href="http://pypi.python.org/pypi/collective.recipe.backup">collective.recipe.backup</a>
.</p>
<p><code>bin/repozo</code> is a zope script to make backups of your Data.fs. Looking up the
settings can be a chore. And you have to pick a directory where to put the
backups. collective.recipe.backup provides <strong>sensible defaults</strong> for your
common backup tasks. Making backups a piece of cake is important!</p>

<ul>
<li>bin/backup makes a backup.</li>
<li>bin/restore restores the latest backup.</li>
<li>bin/snapshotbackup makes a full backup, separate from the regular
  backups. Handy for copying the current production database to your laptop or
  right before a big change in the site.</li>

</ul>
<p>Just read the pypi page, especially the section on <a href="http://pypi.python.org/pypi/collective.recipe.backup#supported-options">supported
options</a>,
though you get perfectly decent backups by adding <code>backup</code> to your buildout's
parts list and adding the following two lines:
<pre>
  [backup]
  recipe = collective.recipe.backup
</pre>
</p>
<p>That's it!</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-03T18:15:00+02:00</dc:date>

        <dcterms:modified>2008-07-04T11:45:34+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>instancemanager</dc:subject>
        
        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/03/overengineered-koekhappen">

        <rss:title>Overengineered "koekhappen"</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/03/overengineered-koekhappen</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>"Koekhappen" is a traditional Dutch children's game on birthdays. "Cake
biting" would be the literal translation. You dangle a piece of cake from a
wire overhead and the child gets to try and bite in it, possibly blindfolded.</p>
<p>Don't ask your technically educated husband (that is: me) to do that. Some
people honestly don't believe there's such a thing as "overengineering". I
took a solid piece of rope; attached three smaller cords to it; attached a
short cocktail stick to the end; drilled nice round holes in a couple of cakes
(with an <a href="http://nl.wikipedia.org/wiki/Appelboor">apple drill</a>); looped the
cocktail stick through it.</p>
<p><img src="http://photos.reinout.vanrees.org/photos/324572206_c2L7f-M.jpg" alt="overengineered koekhappen" /></p>
<p>The good thing is that we can reuse this every year. The other good thing is
that I had fun.</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-03T10:50:34+02:00</dc:date>

        <dcterms:modified>2008-07-03T10:50:34+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>personal</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/02/no-fear-of-presenting">

        <rss:title>No fear of presenting</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/02/no-fear-of-presenting</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>I'm not a terribly good presenter, but there's one thing I don't have: fear of
presenting as such. I'll tell you why in the next paragraph. Anxiety whether people will
like what I'm going to tell: yes. But it doesn't matter to me whether there
are 3, 30, 300 or 3000 people in the room. Well, I've only tested it till 300.</p>
<p>As a first-year student at Delft University, I joined <a href="http://csrdelft.nl">a student
club</a> . Feburary was the month in which the club's birthday
was celebrated. One of the activities was a simple debating contest which I
participated in. The first round was at the club itself, with just 15 people
around or so, so that didn't scare me.</p>
<p>What <strong>did scare me</strong> was the second round: at the theater evening with some
80 people present, right dead smack center on the stage. That prospect scared
me.</p>
<p>When I came on stage, they put the main spotlight on me and my opponent. The
result: you were blinded and couldn't see the audience. Only the bright
light. So I could concentrate on the debating contest. No fear as you couldn't
see the audience anyway. So I noticed I could speak for 80 people without
being eaten or getting shot at.</p>
<p>The realisation that I talked center-stage in front of 80 people helped me a
lot. The number of people never bothered me anymore after that. A <strong>valuable
life experience</strong>!</p>
<p>I'm naturally introvert: all the basics to be afraid. But my fear of spotlights was cured by spotlights :-)</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-02T22:08:45+02:00</dc:date>

        <dcterms:modified>2008-07-02T22:17:01+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>personal</dc:subject>
        
        
            <dc:subject>c.s.r.-Delft</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/02/kss.plugin.cacheability">

        <rss:title>Cacheable GET requests with KSS</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/02/kss.plugin.cacheability</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>KSS best known for the inline editing in Plone. There's a lot more you can do
with it. But most of the usage I've seen concerns <strong>modifying</strong> something. And
if you modify something, you need a POST request in http land. The other
request you can do, a GET request, is defined as something that you can do
multiple times without changing anything. So you can press "reload" in your
browser on ordinary pages just fine, but re-submitting a comment 20 times with
POST results in 20 identical comments.</p>
<p>So KSS by default uses POST for its requests, as there's often a change
involved. The downside is that POST requests aren't cacheable. So a simple KSS
plugin that fetches a list of images from the server and that displays a
random one from that list <em>keeps on hitting the server</em>. Even though that list
of images changes only once a year or so.</p>
<p>Balasz Ree has a branch of KSS that allows GET requests. It only needs
reviewing to land in KSS trunk. But we (= <a href="http://zestsoftware.nl">zest
software</a> ) needed it now, so Balasz cooked up 
<a href="http://www.nabble.com/ANN%3A-kss.plugin.cacheability-td18239041s6741.html">kss.plugin.cacheability</a> 
that allows GET to work in the current KSS version. It'll provide an easy
migration path once the GET functionality itself has landed on trunk.</p>
<p>So if you have KSS requests that don't change a thing and that are expensive
'cause they're POST instead of GET: try it out!</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-02T20:51:56+02:00</dc:date>

        <dcterms:modified>2008-07-02T20:51:56+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>zestsoftware</dc:subject>
        
        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/07/01/cake">

        <rss:title>Cake for our new office</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/07/01/cake</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Plone is rightfully known as a friendly community. We got some tasty proof of that at <a href="http://zestsoftware.nl/">zest software</a> this morning: we're moving our office later this week and got a congratulation cake from <a href="http://www.goldmund-wyldebeast-wunderliebe.com/">Goldmund, Wyldebeast &amp; Wunderliebe</a>, another plone company from the Netherlands. Thanks!</p>
<p><img src="http://photos.reinout.vanrees.org/photos/323403279_3e9n6-M.jpg" alt="cake" /></p>
<p>We've got a wonderful reason for our move: <strong>we're growing</strong>. It is getting too crowded in the office. We're staying in the same neighborhood near Rotterdam, just 200m closer to the metro. The office is about twice as big, so it ought to do for a while :-)</p>
<p><a href="http://photos.reinout.vanrees.org/gallery/4740020_eA5vZ/1/#323403199_fyy5B-A-LB"><img src="http://photos.reinout.vanrees.org/photos/323403199_fyy5B-M.jpg" alt="Full house" /></a></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-07-01T13:31:43+02:00</dc:date>

        <dcterms:modified>2008-07-01T13:31:43+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>zestsoftware</dc:subject>
        
        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/06/30/load-only-the-languages-you-need-with-pts">

        <rss:title>Load only the languages you need with PTS</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/06/30/load-only-the-languages-you-need-with-pts</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Plone is translated into a whopping amount of languages. Many add-on products
also sport at least a few translations. This is all handled by zope's
PlacelessTranslationService (PTS).</p>
<p>When starting up, all those translation files are loaded and information about
them is stored in the zodb. That takes time and memory. A recent PTS release
(at least included in plone 3.1.1) added a nifty trick to reduce that
footprint in case you don't need those languages: a <code>PTS_LANGUAGES=en,nl</code>
environment variable would make PTS use on the Dutch and English.</p>
<p>In case you use buildout, add the following to your instance part:
<pre>
 [instance]
 recipe = plone.recipe.zope2instance
 ...
 environment-vars =
     PTS_LANGUAGES en, nl
</pre>
</p>
<p>I just discovered it in some mailinglist message last week and tried it out
today. Great little feature. (Note that it seemed to want a comma AND a space when I tested it locally, might be a bug).</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-06-30T15:50:00+02:00</dc:date>

        <dcterms:modified>2008-06-30T15:56:30+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/06/11/de-nieuwbouw-ict-in-de-bouw">

        <rss:title>ICT in de bouw debat van "de nieuwbouw" (article in Dutch)</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/06/11/de-nieuwbouw-ict-in-de-bouw</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Maandag 2 juni was er een debat georganiseerd om te kijken of de bouw nu voor
of achter loopt qua ICT. Onder andere georganiseerd door <a href="http://www.denieuwbouw.nl">de
nieuwbouw</a>, waarvan ik ook twee
<a href="http://vanrees.org/weblog/congres-de-nieuwbouw-article-in-dutch">eerdere</a>
<a href="http://vanrees.org/weblog/culemborg">samenvattingen</a> heb gemaakt.</p>
<p><a href="http://photos.reinout.vanrees.org/gallery/4837207_rvTrj/1/#306034517_gR9at-A-LB"><img src="http://photos.reinout.vanrees.org/photos/306034517_gR9at-M.jpg" alt="De nieuwbouw in theater de Kikker" /></a></p>
<p>De discussie werd geleid door Anton Schippers van <a href="http://www.kraan.com">Kraan
bouwcomputing</a> . Hij had drie stellingen voorbereid waar
een panel en de zaal op konden reageren</p>

<ul>
<li>Standaardisatie moet afgedwongen worden. Dat is de enige manier om ict
   toepassingen massaal doorgang te laten vinden in de bouw.</li>
<li>Over twee jaar kan niemand in de sector meer om het BIM (bouw informatie
   model) heen.</li>
<li>Veel bouwondernemingen hebben korte termijn strategiën. Er zijn dus geen
   noodzakelijke lange termijn investeringen in ict. Dat is funest voor
   innovatie door middel van ict.</li>

</ul>
<h2>Stelling 1: afdwingen standaardisatie</h2>
<p>  Ik maakte een opmerking over het ophakken in kleine stukken. Bestaande
  standaardisatieinitiatieven zijn eigenlijk allemaal groot en
  bouw-overkoepelend. De terminologie van de hele bouw moet erin gevangen
  worden. Dat krijg je toch nooit van de grond? Begin liever met kleine losse
  deelgebieden van de bouw en probeer het later aan elkaar te knopen. (Voordat
  ik het te lang maak: zie <a href="http://vanrees.org/research/phd">m'n proefschrift</a> ).</p>
<p>  Een andere probleem dat werd genoemd was <strong>wantrouwen</strong>. In de bouw wordt veel
  geregeld en gesjacherd: transparantie is dan niet gewenst. En als je je
  collega-bedrijven wantrouwt wil je ook niet dat ze bij "jouw" informatie
  kunnen. De informatie loopt op deze manier nooit de hele keten door.</p>
<p>  Financiering is ook een probleem. "Maar er is toch genoeg geld in Bouwend
  Nederland?" "Tja, we zijn al zolang bezig... enige mogelijk is gewoon beginnen
  en proberen."</p>
<p>  Er is een <a href="http://www.bimcaseweek.nl">BIM case week</a> geweest waar met 90
  personen met BIM is gewerkt. Er ontstond vertrouwen en men begon beetje bij
  beetje samen te werken: ook qua ict communicatie.</p>
<p>  ETIM is, refererende aan het ophakken in kleine stukjes, klein begonnen: met
  inkoopinformatie. Dat werkte en had success omdat het aantrekkelijk was. Omdat
  er geld mee verdiend kon worden. Belangrijk voor BIM: het moet ook gemakkelijk
  zijn, bijvoorbeeld voor de loodgieter. Bij Oranjewoud merkten ze dat het in de
  praktijk al lastig was om een website met wachtwoord voor de meest recente
  tekeningen gebruikt te krijgen.</p>
<p>  Een ander probleem is dat men geen verdienmodel in de nieuwigheden ziet. De
  staandaard verdienpunten (uitknijpen, afdingen, enz) gaan weg zodra het
  <strong>transparant</strong> wordt. Eng.</p>
<p>  Iemand kwam terecht met een bedrijfskundige kijk op de zaak: <em>OF</em> de ict
  toepassing is gewoon niet goed <em>OF</em> je krijgt van het goede product niet
  verkocht dat het goed is. In die redenatie hoor je geen enkele keer het woord
  <em>standaardisatie</em>: heeft dat er dan wel mee te maken? We keren in onszelf en
  komen met een oplossign waar geen behoefte aan is.</p>
<p>  De samenvatting van Anton:</p>

<ul>
<li>Op deelprojecten kan je succes boeken. Goed punt om mee te beginnen.</li>
<li>Vertrouwen is een belangrijke factor.</li>
<li>De behoefte is er kennelijk niet direct.</li>

</ul>
<h2>Stelling 2: BIM over twee jaar onomkoombaar</h2>
<p>  Eigenlijk iedereen: nee. Voor wie is het het belangrijkste? Eigenlijk de
  hele bouw. Veel partijen hopen op goede data van het deel van de bouwketen
  dat voor hen zit (en hebben geen zin om zelf goede data aan de keten <em>na</em>
  hen te leven). Het enige dat lijkt te zorgen voor marktacceptatie is dwang
  van bijvoorbeeld de overheid (BIM door de USA overheid, STABU bestek door de
  NL overheid) of het verkopen van bouwmateriaal (zoals bij de succesvolle
  ETIM standaard).</p>
<p>  Er zijn bedrijven die het nu, met bouwpartners, lekker BIM-achtig
  geïntegreerd doen en er 40% rendementsvoordeel uit krijgen. En langzaam
  wordt dat gekopieerd. Maar uiteindelijk heb je het nodig dat een grote partij het
  doet, niet een paar kleinere bedrijven die die 40% pakken. Concurrentie is iets waar je wakker van wordt. Ikea
  <a href="http://www.boklok.co.uk/">bouwt goedkope woningen</a> in het Verenigd
  Koninkrijk: dan gaan UK aannemers echt wel even opletten.</p>
<p>  Qua architecten moet je ze eerst allemaal van 2D naar 3D krijgen. Veel
  bureaus doen het trouwens al of zijn ermee bezig. Iemand uit de aannemerij
  zei trouwens dat hij graag standaardisatie en afspraken wilde: "steeds weer
  mooie paketten, maar ze sluiten niet op elkaar aan".</p>
<p>  Anton: vroeger wilden automatiseerders niet samenwerken. Nu is het
  anders. Maar het zit ook op mensen vast: de wil moet er zijn.</p>
<h2>Stelling 3: korte termijn visie, dus geen lange termijn ict investeringen</h2>
<p>  Voor veel bouwondernemers is het inderdaad zo. Veel kleine bedrijven zijn
  "gewoon aan het werk". Geen innovatie, zowel vakinhoudelijk als qua
  ict. Investeringen zijn vaak anti-cyclisch. Pas als het slecht gaat proberen
  ze te innoveren. Ze zijn er trouwens wel, de kleine bedrijven die
  innoveren. Een van de panelleden had er laatst 80 langs voor workshops.</p>
<p>  Het zijn ook veelal juist de kleinere bedrijven die innoveren. Ze zijn van
  nature veel slagvaardiger.</p>
<p>  De markt begint aan de leveranciers te zeggen dat ze het <em>beter</em> kunnen
  doen. De Rotterdamse havendienst die zaken aan de markt oplegt enzo. Er
  begint begrip te ontstaan dat er een mismatch is.</p>
<p>  Het is een feit dat je tegenwoordig wat <strong>kan</strong> met BIM. Dat was 10 jaar
  geleden niet zo, daar moest je niet mee aankomen. Nu werkt het deels
  tenmiste! Onontkoombaar in twee jaar? Da's te snel, maar er begint wat te
  komen.</p>
<p>  <a href="http://photos.reinout.vanrees.org/gallery/4837207_rvTrj/1/#306034209_h4J2F-A-LB"><img src="http://photos.reinout.vanrees.org/photos/306034209_h4J2F-M.jpg" alt="Levendige discussie" /></a></p>
<h2>Slotopmerkingen</h2>

<ul>
<li>Successen vieren zodat het niet te ontkennen is.</li>
<li>BIM gaat er komen, maar het zullen meerdere BIMs zijn. Je kiest een leuke
    uit voor je project!</li>
<li>BIM: leuke nieuwe uitdaging voor software bouwers.</li>
<li>BIM kan sneller gaan dan we denken. Luister wel goed naar elkaar.</li>
<li>Een BIM, da's gewoon de toekomst. Maar het is nog best lastig.</li>

</ul>
<p>  <strong>Maak het tastbaar, dan kan het groeien. En COMMUNICEER het.</strong></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-06-11T18:27:19+02:00</dc:date>

        <dcterms:modified>2008-06-11T18:27:19+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>aec</dc:subject>
        
        
            <dc:subject>denieuwbouw</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/23/plone-net-great-resource-for-prospective-plone">

        <rss:title>Plone.net: great resource for prospective plone customers</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/23/plone-net-great-resource-for-prospective-plone</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p><a href="http://plone.net/providers/sixfeet">Six feet up</a> just submitted a whole lot of sites to <a href="http://plone.net">plone.net</a> . As every submission now ends up in the reviewers' mailbox (via the cmfnotifications product), my mailbox was pretty effectively spammed :-) Time to look at the numbers again!</p>
<p>Wow, plone.net now has a whopping <strong>1186</strong> sites from 255 providers. That's a lot. At the 2007 plone conference (half a year ago or so) we just got our 200th provider. So 55 more companies listed themselves. Those 1186 sites is what freaks me out, though :-) Thanks for everyone that lists their plone sites there. Prospective customers can get a real good impression of plone. For instance, sorted by <a href="http://plone.net/providers/zest">provider</a> , <a href="http://plone.net/sites/sites_listing?industries%3Alist=Transportation+and+Logistics">industry</a> or <a href="http://plone.net/sites/sites_listing?countries%3Alist=NL">country</a>
&nbsp;. What more do you want when investigating whether to get yourself a plone website or not?</p>
<p>If you want to list yourself as a provider, just log in to the site with your plone.org username, read the <a href="http://plone.net/content-guidelines">short guidelines</a> and submit yourself and your sites. Welcome!<p style="font-size:10px;text-align:right;">Tags: <a href="http://technorati.com/tag/plone" rel="tag">plone</a></p></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-23T23:24:43+02:00</dc:date>

        <dcterms:modified>2008-05-23T23:24:43+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/20/using-multiple-zope2-product-directories-from">

        <rss:title>Using multiple zope2 product directories from python scripts</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/20/using-multiple-zope2-product-directories-from</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Having fun with the python documentation generation tool <a href="http://sphinx.pocoo.org/">sphinx</a> today. I halfway hooked it up in my buildout, so I have a <code>bin/sphinx-build</code> script with all the eggs and python paths linked in.</p>
<p>Boom, semi-automatic python docstring extraction failed with an import error (on Products.statusmessages, Products.Archetypes, etc.). Aha, those are not in the <code>Products/</code> dir in <code>parts/zope2/lib/python</code> (which is linked) but in <code>parts/plone/*</code>. It took me quite some time, but in the end (after looking at zope's own code) I added the following near the top of my sphinx conf.py config file:
<pre>
 import Products 
 # ^^^ From zope's lib/python.
 Products.__path__.append(os.path.abspath('../../parts/plone'))
 # ^^^ Relative path in my situation.
</pre>
</p>
<p>I did not know that individual modules <em>also</em> had a path, I only knew about <code>sys.path</code>. It works :-)</p>
<p><p style="font-size:10px;text-align:right;">Tags: <a href="http://technorati.com/tag/plone" rel="tag">plone</a></p></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-20T21:00:00+02:00</dc:date>

        <dcterms:modified>2008-05-20T22:00:41+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/20/gtd-changing-next-actions">

        <rss:title>GTD: changing next actions</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/20/gtd-changing-next-actions</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>I took a couple of hours yesterday evening to work through a couple of next actions for projects that I wasn't making any progress on. Nice to sit down in your study room, look at the list "@studyroom" and know you're going to check off a couple of actions in the next hours.</p>
<p>What I noticed: sometimes those next actions are the wrong actions. After completing a few of them I noticed some actions further down the list that were actually more practical/easy/fitting to do first. I would have gotten earlier progress on my projects if I maintained them a bit better and spend more time on the order of next actions.</p>
<p>So: if a project lingers on your list for weeks or months: look at that first action and see if you'd rather pick another action as the next one.
   <p style="font-size:10px;text-align:right;">Tags: <a href="http://technorati.com/tag/gtd" rel="tag">gtd</a></p></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-20T13:43:26+02:00</dc:date>

        <dcterms:modified>2008-05-20T13:43:26+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>gtd</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/15/project-task-distinction">

        <rss:title>Project - task distinction</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/15/project-task-distinction</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>A couple of weeks ago I got triggered by a short article on <a href="http://www.lifehack.org/articles/productivity/working-in-project-space.html">working in
project
space</a>
. I've got a great project/todolist application
(<a href="http://www.omnigroup.com/applications/omnifocus/">omnifocus</a>) but there are
days when I hardly look at it as I'm on the roll with a customer project. So I
considered that a possible problem. The customer projects are managed in our
extreme programming management website. No way I'm going to type over my
tasks into omnifocus.</p>
<p>I'm now making a distinction:</p>

<ul>
<li>Projects that I want to work on for an extended period of time. It is
&nbsp; actually entirely ok to get into the flow of a customer project and spent a
&nbsp; full day on it. One day of focused work can make a huge difference on a
&nbsp; project. Getting into the flow is important.</li>
<li>Loose tasks ("buy diapers") or projects that consist more of separate tasks
&nbsp; ("eventually I want to move my website from vanrees.org to
&nbsp; reinout.vanrees.org"). I can do those tasks anytime I want.</li>

</ul>
<p>For me, omnifocus is great for the second type of tasks. I never have nothing
to do if I want to do someting: just give me the list of things I want to
brainstorm on or that I want to google.</p>
<p>An <strong>important note</strong>: maintaining the system you use for that second type of
tasks is essential. Get all your commitments ("oh, I still have to ...") out
of your head and put them in omnifocus/excel/paper. Only then can you really
get into the project-flow, confident that you're not forgetting important
things.</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-15T12:19:19+02:00</dc:date>

        <dcterms:modified>2008-06-01T02:35:08+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        
        
            <dc:subject>zestsoftware</dc:subject>
        
        
            <dc:subject>gtd</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/13/fire-at-my-former-university">

        <rss:title>Fire at my former university (updated)</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/13/fire-at-my-former-university</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>I've been quite distracted today by a fire at my former university (technical university Delft, the Netherlands). I studied there at the civil engineering faculty. My building was next to the architecture department's ("bouwkunde"). This morning that building caught fire. No casualties, but the building is a complete write-off. (Photo by <a href="http://www.flickr.com/photos/ceaseless/">praeseodymium</a> )</p>
<p><a title="Brand Bouwkunde" href="http://www.flickr.com/photos/70626379@N00/2489633796/">  <img src="http://static.flickr.com/2115/2489633796_c9a0ed8147_m.jpg" border="0" /> </a></p>
<p>In that picture there's one spot of visible fire. Three meters to the side and one floor down (approximately, I don't remember the very exact floor) was where I had the meeting with the chairman of my PhD committee. And another floor down was the office of one of my supervisors. Yuck. And the office next to hers and the one next to that: both PhD colleagues that I met quite often. Yuck. It comes pretty close that way.</p>
<p>It was only little more than a year ago that I was <a href="http://vanrees.org/weblog/archive/2007/02/27/colloquium">inside the building</a> for some small conference...</p>
<p><strong>Update</strong>: ok, those rooms that I mentioned: that part of the building just collapsed. You <a href="http://www.nufoto.nl/2008/05/13/faculteit-bouwkunde-deels-ingestort/">can see the dangling floorplates in this photo</a> . <strong>Update 2</strong>: and there's <a href="http://www.dumpert.nl/mediabase/105731/46ccb8cd/bouwkunde_gebouw_delft_stort_in_topic.html">a video of the collapse</a> (after 40 seconds).</p>
<p><p style="font-size:10px;text-align:right;">Tags: <a href="http://technorati.com/tag/bouwkunde" rel="tag">bouwkunde</a>, <a href="http://technorati.com/tag/tudelft" rel="tag">tudelft</a></p></p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-13T17:50:00+02:00</dc:date>

        <dcterms:modified>2008-05-13T19:47:11+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>personal</dc:subject>
        
        
            <dc:subject>aec</dc:subject>
        
        
            <dc:subject>phd</dc:subject>
        

    </rss:item>

    
    

    <rss:item rdf:about="http://vanrees.org/weblog/archive/2008/05/12/strange-osx-plone-craches-external-c-libs">

        <rss:title>Strange osx plone craches: external c libs</rss:title>

        <rss:link>http://vanrees.org/weblog/archive/2008/05/12/strange-osx-plone-craches-external-c-libs</rss:link>       

        

        <content:encoded>
          <![CDATA[
          <p>Writing it down so I don't forget it the next time I encounter it on my own laptop or a colleagues' laptop. Sometimes plone (or rather the zope process) crashes and gives you an OSX crash report. So: no python tracebacks, but an osx dialog.</p>
<p>If you see something like this, the cause is not in python code, but in some c library. Last week a colleague's laptop crashed because of some wrong sqlite library. I've seen it barf on a mysql lib, too.</p>
<p>Hard to figure out what's happening as you don't have any "nice" python traceback. If you look hard at the details provided by the osx dialog, you can often identify a likely culprit if you keep in mind that you have to look at some c library that your code interacts with (some <code>_sqlite.so</code> in my case). It <em>does</em> make you very appreciative of python as there's a whole class of programming problems that we don't have.</p>

          ]]>
        </content:encoded>        

        <dc:date>2008-05-12T16:39:20+02:00</dc:date>

        <dcterms:modified>2008-05-12T16:39:20+02:00</dcterms:modified>

        <dc:creator>Reinout van Rees</dc:creator>

        

        
            <dc:subject>plone</dc:subject>
        

    </rss:item>

    

</rdf:RDF>
