First time here? You are looking at the most recent posts. You may also want to check out older archives or the tag cloud. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS. Thank you for visiting! (hide this)

June 2010 Blog Posts

Sessions’ voting for NHibernate Day is open

In October the First European NHibernate Day will be held in Bologna and there will be two tracks:

Nine sessions have been proposed, but we have room only for 5 of them: today we are opening the votes to decided which of 9 sessions will be presented at the NHDay.

To vote please rank the sessions in order of preference (1 is the one you definitely want to see, and 9 the one you totally don’t care about).

The 220 seats are not all gone, we still have seats available. If you are using NHibernate this is an opportunity not to miss: go and register for the NHDay.

If you cannot see the voting form, go and vote for the sessions on the external poll.

The poll will be open till the end of July.

Just released: Subtext 2.5.1 release notes

After a long year, 3 weeks ago we released Subtext version 2.5. After the release we found some quite high-priority bug and so now today Subtext 2.5.1 has been released, which fixes the following bugs:

  • 222: Wrong Url for category list
  • 221: Category archive pages are empty
  • 225: Skins with codeblocks don't raise a 404 error when the page is missing
  • 233: HttpException when viewing Skins admin in medium trust
  • 229: Image resizing in galleries does not work
  • 209: Setup should detect problems in the installation

If you installed Subtext 2.5, go and download this bug-fix release, if you are still on a previous version, 2.5.1 is a pretty solid release, hopefully all the critical bugs have been fixed, so go and upgrade to this new version and take benefit of the new feature we introduced in Subtext 2.5.

Download Subtext 2.5.1

At the Umbraco CodeGarden: Slides and Demos of my MVC-Preconf talks

I'm here in Copenhagen at the 6th Umbraco CodeGarden "festival" and currently chilling in the nice garden while resting between the talks of the fist day.

First of all I want to say "THANK YOU!!" to Niels Hartvig for inviting me to talk to the event, and for setting up what I think is the best conference I attended ever. No, no... I'm not just sucking up... this event is really great: great food, great community, great amusements, a great channel tour and side activities... as they said at the keynote: it's more of a festival rather then a normal developer conference.

Then, since many people asked, I want to give you the links to download the slides and demo of my talks

ASP.NET MVC Extensibility

This talks I went through all the main extensibility points and explain how to leverage the main ones. I published the slides on SlideShare, but you can also download them, together with the demos:

And if you attended, please consider rating my mvc extensibility talk.

The ViewModel Patter

In the presentation I explained why you need a separate model for your view, and how to make it easier to adopt this approach using AutoMapper. I published the slides on SlideShare, but you can also download them, together with the demos:

And if you attended, please consider rating my view model pattern talk.

Speaking about ASP.NET MVC Extensibility at the Umbraco CodeGarden10

Next week I’ll be speaking about ASP.NET MVC Extensibility at the MVC pre-conference during annual Umbraco CodeGarden conference in Copenhagen starting next June 23rd.

The presentation will be split in the two parts (just before and just after lunch) and it will cover the most of the main extensibility points of ASP.NET MVC which I covered in my most popular post: 13 ASP.NET MVC extensibility points you have to know. And I will also talk about the new extensibility points introduced in ASP.NET MVC 2, like Validation Rules and custom templates (which I covered in my Wrox Blox about ASP.NET MVC 2).

There will also be an Hands-On Lab, so come prepared and bring your laptop.

I’ll not be the only one talking during the MVC pre-conference: Jon Galloway will hold its famous day-long MVC bootcamp and Steve Sanderson will talk about advanced ASP.NET MVC, BDD-TDD, and Web Security.

If you are interested in the topics I think there are still some seats available: you can still buy them and get a 3 days event in an awesome venue, with great food and community events.

Now that the event is finished, I just published slides and demos of both my MVC Extensibility and ViewModel talks online.

Registration to NHibernate Day opens at 3:15pm CET

Today the registration to the first European NHibernate Day opens, at 3:15pm CET (2:15pm in London).

We setup a countdown on the website that will redirect you to the registration page at the precise moment the registration opens. But remember that there are only 220 seats available, and last time we finished them all in less than one day.

If you are not decided yet, here are some facts that can help you decide:

What’s new in Subtext 2.5: full-text search, related posts and more

In Subtext 2.5 we changed the internal search provider from the “like %term%” SQL based one to a more mature and powerful one powered by I wrote about how is implemented inside Subtext, but it didn’t show the benefits for the users. In this post I’m explaining the visible features of the full-text search.

There are 4 places where the new based search engine has its effect:

  • Full-text search
  • Related links
  • More Results for the search
  • OpenSearch provider

Full-text search

The first and most obvious place where the new search provider is available is the search result page.

Just type the search keywords in the box and they will be joined with the AND operators and passed to the search engine that will return the list of all matching posts, in order of relevance. The keywords will be searched in the title, the body and in the tags of the post.


For example, if you search for ASP.NET MVC on my blog you will find all the posts that talk about ASP.NET MVC.

More results for the search

The main reason why I decided to include into Subtext is that I wanted to show the readers that come from search engines to find more posts related to their search.

Now if a reader is coming from a search engine, it will find a box that shows other posts that matches the same search.

For example, if you search for “ninject mvc” on Google, the 2nd or 3rd result is usually my post on how to use Ninject with ASP.NET MVC. If click on the link from the Google search result you will see the new “More Results” box on the top of the page.


This list of posts is retrieved by searching on the full-text index for the same keywords the user used on the search engine.

Related Posts

If you don’t come from a search engine but from a link on twitter or from a link from another site there are no keywords to use. But comes to help since it provides a very useful Similarity plugin which searches the index for documents that are similar to the one selected, using a pretty complex algorithm. Instead of adding them at the top, the related posts are listed the end of each post.

For example, if you go to my post about Ninject on ASP.NET MVC, you can easily find other posts on the same topics.


OpenSearch Provider

OpenSearch_2 The last feature that is related to the search engine is the OpenSearch Provider which allows searching directly on the blog from the search engine box in the toolbar of your browser. For example on Firefox the arrows of the search engines dropdown list will glow in azure, and you will see “Add CodeClimber” if you open the dropdown list. And you will later be able to search on CodeClimber directly from your browser.


How can I add these cool new features to my blog?

First of all you have to install the latest Subtext, version 2.5. And then customize your skin. But I’ll talk about how to do it in a future post.

Subtext 2.5 is released!

UPDATE: There is a bug-fix version available: read Subtext 2.5.1 release notes.

After more then one year since last release, we are happy to announce that the new version of Subtext, number 2.5, has just been released.

The main features are the new dashboard, featuring the Ayende’s formula for blog post popularity, and a improved site-wide search based on If you are interested you can also read how the search engine has been implemented using

Lots of improvements have been made to the codebase of Subtext for this release:

  • Code reorganization and reduced number of assemblies
  • Dependency Injection used extensively throughout the codebase: might seem trivial at first, but think that most of the code for Subtext’s core was still the one coming from .Text more than 7 years ago
  • Replaced the regex based url handling with the ASP.NET Routing
  • Improved skinning, with self-contained skins

This is such a big change compared to the previous version that we created an upgrader tool in order to help making the upgrade. And also published a video that explains how to do the upgrade to Subtext 2.5.

For more details read the official announcement by Phil: Subtext 2.5 Released!

Now, go grab the latest version of Subtext and let us know what you think.

Update: We found a few bugs: we will release a 2.5.1 version in a few days. Sorry for the problem

Technorati Tag: Subtext,