Mindscape Mindblog

Archive for May, 2007

LightSpeed Beta 1 Ships

tag icon Tagged as Products

Today we shipped the first beta of LightSpeed, our domain modeling framework that is designed to get developers up and running much faster. It’s been a big effort getting this far but I’m really pleased with how LightSpeed is shaping up – I look forward to when everyone can use it to deliver higher quality solutions faster.

LightSpeed’s design philosophy is centred on:

  • Convention over configuration.
  • Support idiomatic .NET domain models: (Data binding etc.)
  • Highly usable API and low barrier to entry.
  • Internalizes best practice patterns: Session per request, Unit of Work etc.
  • Testability built in.
  • Small, lightweight and performant.
  • Solve the 95% case – i.e. more like Rails than NHibernate.

Beta 1 is a closed beta meaning that you need to contact us if you want to test it out. We don’t have any firm close off dates so if you missed the first announcement then it’s not too late to sign up. Send me an email and I will send you out a beta tester email with details about LightSpeed. Thanks to all of those who have already expressed interest, it’s the efforts of testers that really help ensure that a product is of a high quality when it is released into production.

We will be posting more about LightSpeed over the next few weeks and months.

John-Daniel Trask

How to Win the Services Game

tag icon Tagged as General

Ambler nicely articulates in The consequences of fixed-price IT projects the fundamental problem facing IT services companies.

Basically, the problem boils down to an impedance mismatch between the traditional customer/vendor dance on the one hand and modern software development methods (agile) on the other.

My feeling is that IT services shops should use variable-priced contracts as a competitive advantage! Why? Because as Ambler points out, more often than not, fixed price projects are a mess. I’ve seen this first-hand and it seems particularly endemic in the New Zealand market. Such projects lead to, among other things:

  • Angry/disappointed/frustrated customers as the price goes up late in the delivery, or when the delivered system sucks.
  • Low staff moral as they are left to pick up the pieces (read long hours.)
  • Developer frustration as attempts to bring in agile methods are mostly futile when working in a fixed-price setup.
  • Propagation of the fixed-price vicious cycle. The customer was burnt last time so this time the contract will need to be even more bullet-proof.
  • Increased risk for all stake-holders! The vendor has no idea what they are building or how much it will really cost – even though they have committed to both in a contract! The customer has signed up to get a system that may not meet their requirements and will most likely cost more than they expect. When these cost overruns come near the end of delivery, they are virtually impossible to walk away from. Some despicable vendors actually leverage this approach to make more money. i.e “That sounds like a change request and it sounds expensive.”

So what would I do if I were running a services company?

Embrace contracts based on “variable-priced projects with gated investment based on interim deliverables (ideally working software.)” Sure, some customers will require education and some deals will just have to be walked away from. But over time, constantly delivering better software, more quickly and with less risk is just too compelling and word gets around. I have no doubt that the first service shops that can successfully adopt this strategy will win.

- Andrew