Excitement about and around Crestone

There’s nice news upcoming, from next week we’re allowed to talk about our latest and newest release Crestone. These days I’m in Copenhagen and you can feel the excitement. In the upcoming days there will be a lot of press releases about the exact product, what’s going to happen in terms of a beta period(the month(-s) before the release), etc.
Please make sure you don’t miss this one. I’m sure we’ve missed some points and there’s room for improvement… but Crestone is definitely not comparable to Windows Vista. If you know what I mean ;-).

For all information right now, please look at this press release.

Is parallelism our mistake?

A funny thing I noticed recently while having a discussion about parallelism is that everybody is convinced that Microsoft should solve this issue. I’m sure they are on the good way with the Parallel Framework, although they we’ re kind of late.
Haven’t they promised use to do the spreading over available resources inside the CLR? That we shouldn’t even think about it? And now this vision is changing? Where are those optimised iterations? There such an advanced and improved build process in .NET 3.5, so can’t we figure out what can be done for optimising my whole AST(Abstract syntax tree out of my code) during compile time? This has been done for C++ for many years now. But as Microsoft always said, we don’t have to bother about it as they would do it in the JIT.

Bringing out Parallelism as a BCL feature will introduce a lot of problems and questions for ISVs. I’d love to see the whole Sitecore framework to run of several processors. But it will introduce a lot of challenges:

  1. Should we make our full library parallel?
  2. What about debugging and tracing? So we should make it configurable?
  3. Should you be aware of it, e.g. should you be able to decide wether an action will be performed in parallel or not using the API?
  4. What should be the best practices on implementing parallelism in your own custom code?
  5. In a more general level: are we allowed to use all of the resources of a webserver? Where can we limit these? Is this our responsibility our IIS’s?

As you can see we have thought about it. And I think if we’re really going to be in the fase that .NET 4.0 will be released and Sitecore will introduce parallelism in the product, it should be done from the underlying platform but also from our side. Hopefully the PDC will bring some answers, as I’m quite sure Microsoft hasn’t thought about us so far…

Upcoming events

The upcoming weeks I’m quite busy doing a lot of presentations. If you are willing to see me, please come to one of the following sessions:

  1. CMS Congres on the 21th of May in Nijmegen, here I’ll present "The 7 habits of Highly Effective Websites" at 12:20 in the room LABDA. This is a very nice presentation for IT decision makers and marketers to make the right choices when it comes to implementing their new website.
  2. WebScene 2008 on the 3rd of June in Bruxelles. Sitecore is present there as well with a nice booth and 2 sessions. I’ll keep you informed about the first, the second will be "SEO from concept to CMS implementation".
  3. eFocus Sitecore Event on the 12th of June in Utrecht. Again we’ll be talking about SEO. This time the session be done together with Ruben Timmerman of Usarchy.com. Ruben will focus on SEO in concept and I’ll go into the decision which should be made by the customer when it comes to the exact implementation. The main difference between this session and WebScene is that Ruben will give a more broad overview what’s possible when it comes to SEO and my session will closely match his information. The day will end with a nice case presented by one of the eFocus directors.

The last 2 events are free of charge.

I won’t attempt DevDays this year because of my heavy schedule. But I’m sure that I’ll be back there next year.
I’ll keep you informed on updates on events. During the events, please feel free to talk to me. I’m always interested to share opinion also about non-Sitecore-cases.

Microsoft focuses on Extensibility

Recently, a lot of blogs have written about the new Microsoft Extensibility Framework(MEF).
From an ISV(Independent Software Vendor) perspective, this is really interesting. As you all know, Sitecore has rebuild a lot of functionality such as events, hooking, threading, etc. It is nice to see that Microsoft has figured out that they should spend a lot of time in making their API’s more extensible and adding support for it.

The funny thing is that I’ve been discussing how a product such a Sitecore handles it’s internal connections(i.e. class coupling, interfaces, events, exception). I’ve formed a new vision on how a system should be build up, instead from an exception policy to and incident policy(a bit to abstract and to experimental to describe here).
Microsoft might provides me some tools to make my vision come reality in the feature. At least you’ll see a demonstration of System.AddIn using ASP.NET on my blog in the upcoming weeks.

For more information on Microsoft’s exact plans, please watch this blogpost by Krzysztof Cwalina.