I’ve used dasBlog since I first began hosting my own blog and previously considered a move to BlogEngine.NET (BE) but the URL’s aren’t compatible so there remains some investigation to figure out the best mechanism prior to switching. Unfortunately, dasblog seems to be on it’s final legs so spending time there at this point doesn’t seem wise.
To that end, I’ve been investigating various issues involved in a switch and in an attempt to make a transition easier I’ve created a BE provider which reads/writes blog posts and comments using dasBlog’s IBlogDataService rather than BE’s own XML provider. Basically, I’ve replace one XML provider with another, actually that’s not entirely true as this new provide is a descendant of XmlBlogProvider included with BE. Using this approach I avoid having to constantly re-import my blog data as I look into solving the URL issues.
I’ve made the code available via SVN on Google Code here so feel free to grab it and give it a go. I chose Google Code over Codeplex because the latter doesn’t want abandoned projects and I don’t see this as an ongoing project as it’s scope is quite narrow. What I’m interested in is any feedback regarding issues using the code and taking this sort of approach. In my initial playing around with BE it seems to function properly and allows me to use the “slug” feature of BE to “fix” at least part of the URL problem by simply removing spaces from Titles rather than replacing then with dashes.
Things I’ve tested (manually)
- Adding/Editing/Deleting posts
- Adding/Editing/Deleting comments
I haven’t played with images or attachments though my blog data seems to render fairly well. I can see some limitations such as no support for threaded comments though I don’t view this as a long term solution but I think it’s a step in the right direction.
Things that need testing/implementation:
- DateTime conversions from dasBlog to BE
- Image uploads
- Windows Live support
Btw, I’m looking for help with the problem of retaining my existing URLs so if you’re a dasblog user and potentially interested in switching ping me and perhaps we can collaborate.
One of the things I like about blogging is looking through the various search terms people used which lead them to my blog. For example, I just noticed this page from the University of Washington which links to my post on testing ASP.NET applications using Selenium. That’s pretty cool. dasBlog has an Activities page that lists Referrer Urls which is where I found the above link.
On the same page is a list of Internet Search results where I can see what keywords people, mostly from Google, used to find my content. The keywords link back to the original search page so I can click through and view where my content ended up in the search results as well as see other related content. Here is what that list looks like on the admin pages of my blog:
For example, take the search results for "setting up delphi build machine". I can see my post was in the top five.
Granted, for people who already blog this isn’t likely to be all that exciting as many blog engines includes such features however, I do think it’s interesting to see how other people search for content.
One last point, I find it more than a little spooky how completely Google controls search. I’d guess Google accounts for all but a few percent of Internet searches on my blog which means they could effectively shut my blog down.
If you follow Microsoft’s web development world you might have noticed an interesting trend dating back to January of this year. You see, back in January they hired
RubyCLR guru
John Lam. In July they hired top tier (.NET) blogger and lead developer of the dasBlog open source blog engine
Scott Hanselmen. More recently they’ve hired
Phil Haack, lead developer for
SubText another .NET blog engine and now they’ve hired
Rob Conery the developer of
SubSonic.
It’s possible and perhaps the hiring trend extends further back than January although these four hires alone seem fairly significant in the realm of .NET based OS software. It makes me wonder if perhaps Jeff Atwood is next? He just finished writing An ASP.NET 2.0 Anthology with none other than Phil Haack (and a few others) and already has a deal with Microsoft where they’ll match his OS donations. Of course, ScottGu is a big blogger and he personally reached out to Rob Conery so it wouldn’t surprise me if Scott and his crew have "gone shopping" for people who are influential .NET bloggers as well as OS developers. In fact, Rob talked about the significance of keeping his blog as well as his SubSonic work alive and I’m sure similar conversations occurred with ScottH and Phil.
To top it all off, check out this email from last May that Clemens Vasters (the original dasBlog developer) sent to the dasBlog developer’s mailing list. Here is a quote from that message.
"The purpose of this work is, as indicated, to use the engine as a testbed for a lot of new technologies we’re bringing online in RTM or Beta form over the course of the next several months. The current intent is to have all dasBlog-based bloggers from our division here at Microsoft and also the one or the other official "team blog" run on that testbed."
I’ve been using dasBlog for about a year now and I really like it so all this attention will be interesting to watch. I wonder what it means for SubText?

I've been running dasBlog for several months now and I'd been having problems with my login timing out very quickly. I added a HealthMonitoring section to my web.config so as to get email notifications when errors occurred. Right away I noticed that simply refreshing the browser could trigger an authentication error like:
Forms authentication failed for the request. Reason: The ticket
supplied was invalid.
I Googled for ways to resolve these errors and found this article from my hosting provider no less. I then used the online machinekey generator and added it to my web.config and my dasblog login errors were history as well as the invalid viewstate problems! Basically, the key used for encrypting the authentication information was getting changed between request as a result of either the server or the ASP.NET worker process being recylced.
<providerplug>
You can probably tell I really like DiscountASP.NET they've got a great options, a great control panel (which is frequently enhanced) and they have some great technical staff who post to their support forums. I've gone so far as to join their referral program, so if you sign up please use the link above which includes my referral ID to let them know I sent you!
</providerplug>
Like many people I wanted to add my own personal touch to my blog and creating a theme was high on my list. My first task was finding a simple CSS based layout that included the typical three columns, header and footer. Back in August of 2004, I blogged about a three column layout I'd created and thought it only appropriate to put it to real world use so if you reading this from my website the layout is pretty much the same one I posted two and a half years ago.
DasBlog is very easy to theme and you can use any HTML as your site template which provides a huge amount of flexibility not to mention it includes over 20 themes so there are lots of starting points. To create a new theme you'll need to do the following:
- Create a new directory under the dasBlog's themes directory
- Copy the files of an existing theme into the new directory
- Tweak the various CSS and *.blogtemplate files to your liking
- Edit SiteConfig\site.config and change the <theme> tag to the name of the directory you created above
- Edit themes\yourthemename\theme.manifest and set the attributes of the <theme> tag accordingly.
I used some of the files from a theme called "dasblog" primarily because it has dasblog.css which defines CSS classes for all of the elements used in dasBlog which is a real time saver. Along with the HTML markup a dasBlog theme template contains
macros which at runtime, render the various blog elements and appear like the following in your template:
<%newtelligence.search()%>
This particular macro renders the Search box in the upper right corner of my blog. Do worry though even though it's an ASP.NET application you really won't need ASP.NET experience to create your own theme. Another nice thing is that I've yet to run into a macro that doesn't allow for theming.
Where to get theme ideas
There are lots of resources on the web related to design, here a few that I look at for ideas:
If there is interest I'll make my site design available just let me know.
Reference: Part I, Part II, Part III
Update: Fixed Part III URL