Architecture Chat 17

Sorry about the much belated write-up for the last Architecture Chat, been rushed off my feet of late, though a whole week's gone by now ... so the only real excuse could be that I've been a slack bastid.

So, first off... terrible turn out, with only myself and an envoy from Intergen turning up - hopefully not a sign of things to come (small numbers that is, not the intergen guys ;o) and also hopefully not something to put off the Intergen guys from making the trip out this way again (though I suspect Kurt would do it just to get Mexican) - Not to mention Peter losing out on some vital opportunities to introduce Wiki-love to some new comers!

So, as opposed to the usual mixed bag of discussions we focused largely on what tooling and practices Intergen Auckland use (and by comparison myself) - internally it sounds like they have a big drive towards

  • "All sorts of testing"
  • Continuous Integration / Build Servers

So we covered continuous integration (CC.Net) ... make tools i.e. Nant, which has adoption within Intergen, and MSBuild which I use (mostly because I swapped over during the first beta of VS2005, prior to Nant having support for the Framework 2.0, and never moved back) - the key observation was that MSBuild just seems to have very unintuitive syntax - i.e. a Nant build scripts reads a lot more like plain English then a MSBuild equivalent.  I asked if anyone had tried TeamCity, which they had, but without much success (much like my own experience).

Installers were next on the agenda - I'm a big supporter of WiX, though the feeling from  some of the guys at Intergen (and I think many people out in the wild) is that getting a WiX installer off the ground was a cumbersome experience, but on the flip side the "setup" project isn't as friendly when it comes to continuous  integration or support concurrent development (merging setup projects, ugh!) - I expressed my views on the fact that WiX is a hell of a lot easier to maintain once it's in place (i.e. figuring out changes other developers have made), and that making use of tools like Heat that come with WiX can accelerate your development effort quite a lot - Once you have a couple of reference projects with WiX installers it's very easy to rinse and repeat for new projects, or perhaps keep a library of wix templates on a wiki ;o)

Source control cropped up - I use Subversion - From what was mentioned Intergen are using Team System, though TFS does plenty of things SVN does not (Merge history and light-weight labeling appeal to me) - the lack of a good "off line" story still annoyed everyone at the table - maybe once SVN Bridge is half way stable, this won't be such a problem..?

That lead into issue tracking and bug management - where I generally use Trac, though for some clients I'm migrating to Jira (Trac comes across as "to simple" to clients for some reason, especially to dedicated testers, but I'm still a little puzzled as to why, perhaps they just don't get the "wiki" side of things?)

Mingle also came up in conversation - which is a product I'd never taken a look at - after a quick look around the site it looks pretty cool, especially with the source control aspect, I will definitely need to explore it further, though even something with about 80% of its  features as a Trac plug-in would suite my needs ... any readers out there using mingle who can offer an opinion?

I also brought up the news of the  framework code being made available - I'm not really sure it registered, or perhaps there just wasn't a need (we've all got so used to using reflector) ... though at the moment I'd rather have the SharePoint source code then the framework (especially considering parts of the sharepoint framework are obfuscated).

Hopefully next week we'll be back on track for next Thursday with a few of the regulars, or if Thursday is turning into a "bad day" for everyone then perhaps we need to mix it up a little.

See you all there!

Written on October 10, 2007