I’ve been working on some relatively interesting code recently which is trying to solve a hard problem. Today I read this post by Eric Jarvi which links to an e-Week article about how Microsoft is leveraging tools and techniques from Microsoft Research to make their products better and it got me thinking about the general state of play for this kind of collaboration in the enterprise developer space.

Many of the applications that we design and build in the enterprise use tried and tested approaches, indeed this is where much of the material and inspiration for our INDUSTRIAL STRENGTH .NET course came from.

But is there room for unique research activities in the enterprise development space? I think that there is but the flow of research-style development is bound to drive most project managers up the wall.

Research begins often with a vague understanding of a problem and its through experimentation and reading (lots of reading) that you come to understand the problem better – at some point you might even be able to define it in one sentence, but don’t count on it.

At some point in the process (hopefully before the allocation of funds runs out) a brainwave will strike and you will build your first demoable prototype. That’ll get everyone excited and prove that its possible to do something, you just need to make sure there aren’t any warts or even a better solution!

Next time you are working on an enterprise project - ask yourself is there anything here that could be done better, or that could give you a competitive advantage? Whats the problem that your users know about but assume you can’t solve? Surprise them!