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)

Subtext

News and tips about my favorite blogging engine

Finally moved my blog to Azure Web Sites

Over the last few years I had to move my blog through different hosting providers, and when in March my last hosting, EpicWin Hosting, closed business with only one month of notice I decided that I had enough of small hosting providers run by people I know, so I decided to finally make the big step and move to Azure. Unfortunately this happened during a moment in which my life is going through some big changes, and I didn’t have time and brain-power to put all my efforts into the migration, so you might have noticed that my blog...

When Subtext DB gets out of control (and how to fix it)

During the last weeks I noticed that my blog was becoming slower and slower (and if you visited my blog you might have noticed it as well). After a bit of troubleshooting on the server (which was kind of painful due to the slow connection via RDC from Europe to my server in the US) I figured out that most of the slowness came from my SQL Server Express instance that was taking up too much memory. And I found out that I had 3 tables that were extremely big in size: Subtext_Log -...

Subtext Skin Bonanza

Simon Philp, member of the Subtext team with a passion for webdesign (and snowboarding), has started the New Year with a lot of energy, and with an amazing project: Subtext Skin Bonanza 2011 What is it? He is taking some public available skins from other blogging engines and porting them to Subtext. He will publish one skin every 2-4 days for 3 months. So at the end of this super-porting project, Subtext will have 30-40 new skins you can choose from. The 6 skins so far He started this project at the beginning of the year...

My resolutions for 2011: do not over-commit

One of the reasons for the failures of 2010 is over-commitment. Number one priority for 2011, will be: do not over-commit. Starting from my resolutions, so just 3 per 3 categories. Personal life XC-Skiing: at last for this winter, train, practice and try to take part in the Engadin Ski Marathon with Daniela and Davide Vosti. Climbing: go back climbing. Period. Be more constant with training...

How to move you posts from Subtext to WordPress

A few weeks ago, I finally finished the migration of Daniela’s old blog to a new domain and a new blogging platform: we moved from Subtext to WordPress. The reasons of the move There are two reason behind that move: the big ecosystem around WordPress, and the lack of a real desktop blogging tool on the Mac (combined to the outdated FCKeditor 2 that is used by Subtext). During the migration Daniela thought about a different Information Architecture of her content spread around in the web, designed and implemented a HTML5 template and later we made it...

How to configure Windows Live Writer to link tags to your blog

Till last week I was linking the tags at the bottom of all my posts to Delicious. But now that Delicious is going to be shut down, I don’t want all my blogs to link to something that is not existent, so I decided to change the configuration of Windows Live Writer to link tags to my tags’ archive on my blog. All you have to do is adding a new Tag Provider. First you need to open the window to enter the new provider (down here is a slideshow with the steps) ...

Subtext 2.5.2: now works 100% in Medium Trust

In June this year we released an important version of Subtext that included lots of refactoring and was the first step to being ASP.NET MVC based. Then after a few weeks we released a bug fix version (2.5.1) but still an important bug was left open, and it prevented one of our contributor and long time user Travis Illig to upgrade to 2.5 because some of the changes we made to the skinning component broke support for Medium Trust (VirtualPathProvider had some problem in Medium Trust). Unfortunately we were never able to replicate the problem because on “normal”...

Subtext vNext: which features would you like and on which framework?

Over the last month we released 2 versions of Subtext: Subtext 2.5, with a few amazing features like full-text search powered by Lucene.net, an improved admin dashboard, an upgrader tool and tons of code refactoring Subtext 2.5.1 with some urgent bug fixes Now we are looking ahead for the next version (Subtext 2.6) which will mainly address the pains of some big blog sites like UGIdotNET and GeeksWithBlogs: with the current version it’s nearly impossible to manage the amount of blogs they have on their site and we will...

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...

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 Lucene.net. I wrote about how Lucene.net 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 Lucene.net based search engine has its effect: Full-text search Related links More Results for the search OpenSearch provider ...

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 Lucene.net. If you are interested you can also read how the search engine has been implemented using Lucene.net. Lots of improvements have been made to the codebase of Subtext for this release: Code reorganization...

How to install Subtext (and Umbraco) using WebPI

The Italian MSDN video portal BE-IT just published the first two of a series of screencasts presenting the opensource applications available to install through the Web Platform Installer. Installing Subtext with WebPI The first one, recorded by myself, is presenting Subtext and the how to install it very quickly on a machine that doesn’t have anything on it, leveraging the automatic dependencies download feature of the WebPI. You can go and have a look at it on the BE-IT site (it’s in Italian but it’s mostly action, so might be easy to understand also for not Italian...

Lucene.net is powering Subtext 2.5 search

Back in August and September I started a series with the main concepts of Lucene.net and I started to explain the design behind the forthcoming Lucene.net-powered search engine for Subtext. In the last few months I finally had the time to sit down and implement the search engine for Subtext. In this post I want to show you how I implemented it and since I kept the points of contact with the Subtext domain model to the minimum, how you can modify it to use it in your own application. Another reason behind this post is… asking to...

How Subtext’s Lucene.net index is structured

Lucene.net tutorial How to get started with Lucene.net Lucene.net: the main concepts Lucene.net: your first application Dissecting Lucene.net storage: Documents and Fields Lucene - or how I stopped worrying, and learned to love unstructured data How Subtext Lucene.net index is structured In the last part of the tutorial about Lucene.net we talked about...

How to get started with Lucene.net

Lucene.net tutorial How to get started with Lucene.net Lucene.net: the main concepts Lucene.net: your first application Dissecting Lucene.net storage: Documents and Fields Lucene - or how I stopped worrying, and learned to love unstructured data How Subtext’s Lucene.net index is structured A few weeks ago I expressed my intention of introducing Lucene.net into Subtext, and that I would have written about the journey. In...

CKEditor 3.0 is out

After a long period of development, the new major release of FCKEditor has shipped. The most notable change is the new name: it went from FCKEditor, which many people didn’t like because of its similarity to an English bad word (it was made by the initials of the project founder, Frederico Caldeira Knabben) to CKEditor where CK stands for “content & knowledge”. But obviously this is not the only change: it’s amazingly fast, it has a completely new UI, no more popup but only js modal dialogs, produces valid XHTML code (and hopefully it will not screw-up the...

Scheduling post while on vacation: how did it go?

As you might have noticed if you followed my twitter stream, I spent the last two weeks in Hokkaido, doing some trekking and enjoying the onsen. But still 5 new posts appeared on my blog. This happened thanks to a feature of Subtext that allows posting in the future. Before leaving to Japan I was undecided about scheduling posts while I was on vacation for two weeks, but then I decided to try this experiment. But now I’m back and I wanted to ask you what you think of what I did: did you like the fact...

Reducing the bounce rate of tech blogs with Subtext and Lucene.net

In this post I’m going to explain the reason behind my decision to introduce Lucene.net into Subtext to power the internal search engine. The problem: high bounce rate It all stared a few week ago, when I noticed that I get lot of visitors from search engines (around 70%) but that they rarely look at more than one page (only 15% read a second page). I was interested in knowing if this was just a problem of my blog, or a general problem of all tech/dev oriented blogs. So I ran a quick poll over twitter, and I found out that I’m not...

Subtext goes to Google Code

Subtext finally leaves the SourceForge Hell and moves source code and issue tracking on Google Code. What does that mean for users? First of all that means that you won't have to fight with the bad user experience of SourceForge any more. Then, if you were reading and asking questions in the SF Forums, now you have to subscribe to the Subtext group on Google Groups. For the moment the latest stable version is still on SourceForge, version 2.1. Actually the really latest version (2.1.1) is available for download and install from the Windows Web App Gallery. I'm pretty excited by this...

Subtext 2.1 released

Taking advantage of the Thanksgiving Day’s holiday, Phil wrapped up a few changes and bug fixes and released the first update of Subtext 2: Subtext 2.1. This new version fixes also on flaw that could allow a potential XSS attack via comment. To read more about the release, go to Phil’s post: Subtext 2.1 Released! Contains Security Update. If you are on Subtext 2.0 there are no database schema changes, so just replace the dlls and merge the web.config file, and you are done. Download the latest version here. Technorati Tags: subtext

Subtext 2.0 released

As I already anticipated a few days ago, Subtext was on its way to be released. And today Phil just announced it: Subtext 2.0 has been released, one year and a few months after the previous version 1.9.5. I already explained a some of the new features of Subtext 2.0: Publish in the future JS and CSS performance optimization Enclosures but Subtext 2.0 also brings to the table: Enhanced MetaWeblog API implementation Enhanced WLW implementation ...

New feature in Subtext 2.0: publish in the future

In the last two days I wrote about two new feature of Subtext 2.0: Enclosures and performance optimizations for skins. Today I’ll talk about another new feature of Subtext 2.0: Future Posting. I already anticipated this feature while I was testing it last week: posting in the future allows the blog’s author to write a post either with the post editor online or with any offline blogging application (like Windows Live Writer), set the date and time, save it on the server as published (not as draft), and have it automatically published both on the blog and the RSS feed at the...

New feature in Subtext 2.0: CSS and JS optimization for skins and mobile support

Yesterday I wrote about the support for enclusures that has been introduced with Subtext 2.0. Today I’m going to talk about the improvements we introduced to our skinning engine in order to reduce the number and the size of HTTP requests. And we added support for mobile browsers as well. Web Performance Optimization It all started last year, when Yahoo released YSlow, an add-on for Firebug that measures the performance of a web page based on the best practices evangelized by the Yahoo’s team for Exceptional Performance. Pushed by Mads Kristensen I improved the performances of my own blog with some...

New feature in Subtext 2.0: Enclosures

One of the cool new features of the latest version of Subtext is the support for enclosures. What can a enclosure do for you? You can use it to: host a podcast host a webcast/screencast to have photoblog or just to include a downloadable file to your post, like a code archive, a pdf file or a PowerPoint presentation How to add a enclosure At the bottom of the post page you’ll find...

Subtext 2.0 is approaching fast

As you might have noticed, a few weeks ago Subtext entered the QA phase of the development process, and the new version, v2.0, is going to be released in a short time. In the next days I’m going to write a few posts about the features I implemented for this new release, with the description of the features, and a little bit of “internals” how they were implemented. Check my blog during the weekend, or subscribe to the feed to get the new posts with the new features of Subtext delivered automatically to your feedreader. Technorati...

Subtext: Posting in the future

As I did last week, this evening I upgraded my blog to the latest interim version of Subtext. As you might see, the time of this post is 5:00AM. No, I didn’t stay up till late, but I’m using one of the new features of the soon to be release 2.0: the ability to post in the future. So, if this post popped up in your RSS reader at 5:00AM it means the new feature is working… otherwise, it means we have a bug to fix before we do the release. We also created a custom manifest for Windows Live...

Eating my own dogfood: Subtext 2.0

You might have noticed a short period of downtime at 8:30 this morning (CET): that’s because I woke up and decided to test on my own blog the soon to be released next version of Subtext. As usual the upgrade was pretty simple, and just a matter of changing the values that need to be customized in the web.config file (connectionstring, email addresses, and gravatar url), copying all the new directory tree over the old one, and running the upgrade wizard that appears the first time you reload the site after the files have been changed. And here...

How to get a RSS feed of a Subversion repository

Just found via Twitter thanks to Matt Hawley: SubversionFeed. This service takes any SVN repository with anonymous access enabled and transforms it into a RSS feed with the latest 10 changes. I just subscribed to Subtext SVN RSS feed: http://svnfeed.com/convert?url=https%3A%2F%2Fsubtext.svn.sourceforge.net%2Fsvnroot%2Fsubtext Technorati Tags: RSS,SVN,Subtext

How to manage ASP.NET validation from Javascript with jQuery

Validators are a great part of the ASP.NET framework: they provide a standardized and easy way to add validation to form fields. But even if the framework provides different kinds of validators, there are so many different validations patterns that sometimes you have to write custom code to match your specific requirements. I wrote a post a few months ago about how to write a custom validator for a Checkbox list, but I was dealing with a completely new validation pattern. But what if I only want to enable the validation of certain field based on certain conditions? Or...

Problem with Spam? Waegis to the rescue

One of the problem of having a blog with a Google PageRank higher than 3 is that you get flooded by a storm of spam. Be it comment spam or trackback spam it's a waste of server resources and, if not filtered, could fill your blog with tons of sex related links and more. Last year Subtext included a integration with Akismet, the de-facto only spam blocking service available for free on the net. But last autumn I received more than 1000 spam trackback in one day and more than 30.000 on the same day in my Italian blog...

Having a crush on jQuery

A few weeks ago I started to play around with jQuery and I already banged my head against some small gotchas of the framework. But a comment made by Jake Scott opened my eyes: I recommend you read (if you haven't already) Manning jQuery in Action, its the best book on Javascript ever :) Even if I might not second the "best book on Javascript ever" part of the comment, I got the book yesterday afternoon and I already read 4 chapter of the book while on the train. I've to say that the...

What's happening with Subtext?

If you subscribed to subtextbuild twitter feed or added Subtext build server to the list of CI server you are monitoring with CCTray, or better, the CCNET Monitor gadget for Vista you might have noticed that the number of builds raised a bit in the latest days: the reason is that finally the Subtext team is having a bit more spare time than before and we are planning to release Subtext vNext pretty soon with some exciting new features. subtext

Temporary disabled ping/trackback

Today I was hit by a massive spam attack, both here and on my Italian blog: here I received almost 1000 spam trackback in one day, and on my Italian one I reached the incredible number of 30.000, and almost all passed as approved. I guess Akismet is having some problems these days. Technorati tags: Subtext, Akismet

Better late then never: fixed skin for IE6

A few weeks ago, while browsing my blog from a friend laptop with IE6 I noticed that the right sidebar sometimes was under the main content area of the blog, probably the width of some post was too wide for the main column of my skin so, with IE6, the broke the layout. Today I finally downloaded the IE6 VPC image, tested it on my laptop, and fixed it. But if I waited a few more months probably the percentage of users with IE6 would have dropped, since last Friday the IE team announced that from now on IE7 will...

To www or not to www?

When I started this blog back in December I advertised it as www.codeclimber.net.nz, but given the fact that Subtext always strips the www out of the domain name when building internal urls, my blog was being indexed by Google with two different domain names: www.codeclimber.net.nz since it was the url I was giving around, that was linked from my post signatures and so on codeclimber.net.nz, the url that was generated by Subtext for some of the internal links, and from the rss feed and the Google sitemap So, to avoid shattering the PageRank...

Subtext security patch

While I was leaving for Barcelona to visit a friend and to enjoy Les Festes de la Mercè, a user of Subtext found a security problem in our integration with the WYSIWYG editor FCKeditor. And only one day after it has been discovered Phil released a security patch that fixes the problem. The vulnerability allowed a user to upload files in the images folder of a blog without being authenticated. To secure your installation of Subtext just download the secured version of the FCKeditor provider dll, or, as workaround, remove the following folder: Providers\BlogEntryEditor\FCKeditor\editor\filemanager Technorati tags: FCKeditor, Subtext, security patch

LinkLift control for ASP.NET revised

A few months ago I released a rough first version of an ASP.NET control to display text-links served by LinkLift. Since then the control became the "de-facto" official control for ASP.NET (Italian, German, French and Spanish). Today I found quite a subtle bug that never showed up before (since I never really had the control on my site for more than a few hour): I used the FileSystemInfo.CreationTime to keep track of the last time the local copy of the XML was saved. But the CreationTime is the first time the file was saved, because all the subsequent saves are...

YSlow performance challenge: improved from 36 to 64

Mads Kristensen, after reading my report about the score given by YSlow to his and other blogs, improved his score and challenged me to do the same. After 20 days, recovering from the time zone shift, and after a few days of holidays, yesterday evening I finally managed to try and improve my score: with some manual tuning to the CSS, the JavaScript files and Subtext masterpage I improved my score by 77% (28 points, from 36 to 64). I didn't beat Mads's score which is 67 (was 71 at the time of the challenge), but his improvement was 15 points, which is almost...

How to use YUI JS Compressor inside a NAnt build script

As I anticipated yesterday, I implemented the YUI JS compressor inside Subtext's build process, and since it took me a while to understand how to specify the arguments for the NAnt <exec> task I wanted to share the snippet of the build file I created: <target name="JavaScript.minify"> <echo message="${filename}" /> <exec program="java" workingdir="${YUICompressor.dir}"> <arg value="-jar" /> <arg value="yuicompressor.jar" /> <arg value="-o" /> <arg value="${filename}.min" /> ...

Yet another "big" blogger on SubText

Last week the UGIdotNET community blog portal migrated to Subtext, and yesterday, another Italian .NET blogger, Michele Locuratolo, C# MVP and co-founder of a regional .NET UG (dotnetside), moved from Community Server to SubText. Seems like he had a few issues exporting his blog from CommunityServer to BlogML, so he had to transform the DB schema from CS to Subtext manually. Happy blogging Mighel! Technorati tags: Subtext, UGIdotNET

Dissecting YSlow

In the last weeks there has been a lot of talking around YSlow, the tool that the Yahoo! Developer Network released to check sites against their 13 rules of High Performance Web Sites. Last week I used it against various blogs and I found out that my blog is rated only 36/100. So, also after the challenge started by Mads, I decided to try and improve my score. The final score is a weighted average between the scores for each of the 13 rules. This means that some rules are more important than others and to increase the score of a site...

UGIdotNET is now on Subtext

 goes to   After GeeksWithBlogs, also UGIdotNET, the Italian .NET user group, migrated from .Text to Subtext. Andrea, the president of the user group, waited for the week of "Ferragosto" when almost all the Italians are on holiday, to minimize the down time of the blog portal. The first comments are positive, users like the new RichTextEditor, or the possibility to close the comments after N days, or to use Akismet to filter the spam. A lot of the very old skins are not available on Subtext, so most the personal blogs changed their skin, and I'm happy to see that most have them have...

How Slow is your site (How to improve the performance of your site with YSlow)

A few days ago I posted about Firebug, the Swiss Army Knife of the developers' plugins. Last week Yahoo released an add-on for Firebug: YSlow. YSlow measures web page performance based on the best practices evangelized by Yahoo!'s Exceptional Performance team. Since many of these best practices focus on the frontend, YSlow is integrated with Joe Hewitt's Firebug, the web development tool of choice for frontend developers. After checking your site against the 13 rules of High Performance Web Sites, it rates the performances of your site with an A to F grade. I run the tool on a...

One of the smartest .NET guy in Wellington moves to Subtext

Ivan, the Belgian .NET developer and member of the Wellington.NET user group just moved his blog from DasBlog to Subtext. He is a very smart guy, with lot of interesting opinions about development, not only .NET but also Ruby and other "cool" languages, so if are not already subscribed to his blog I encourage you to do so. He also decided to stop developing nBlogr, his own blogging engine: it's always sad when someone decides to stop developing his own project for lack of time. Hopefully Ivan will contribute to Subtext, and with the plugin framework we are adding to Poseidon, he will...

LinkLift control for ASP.NET

A few weeks ago I received a message from Valentina Baraldi, the Italian Country Manager of LinkLift, asking me if I wanted to take part in the beta testing of their Text Links. At the moment they are hitting the Italian, German and Spanish markets, but they are delivering Text Links also in other languages (English, French, Polish and Portuguese) Text links are a new way to monetize your blog, that should be more targeted then Google AdSense: the most famous company that delivers these kinds of links is text-link-ads. So I decided to give it a try since at the moment...

How to install Subtext

Sometimes I receive mail from people asking how to install Subtext and how to move their old contents from their old blog. Probably the "official" docs are a bit hidden, so here is quick list of all the resources available: Official step by step installation guide Installation screencast How to install Subtext on GoDaddy (which requires a few manual steps) How to install Subtext on Aruba, an Italian hosting provider (this doc is in Italian) And now the migrations docs: Screencast on how to migrate old...

Extending the UI of Subtext with Plugins

Today I published the 3rd article for Subtext plugin SDK quickstart documentation: Create a custom settings page. This article explains how to write a web user control to collect data for the configuration of the plugin. Here is the toc: Create a Settings page Load and store settings Installing the plugin What’s next Now that the plugin framework API are pretty stable you can start write plugins for Subtext and help us with your feedback about the API. So, go and grab the latest code from SVN, read the Quick Start guide, write your plugin, if you have problem...

Subtext nominated for the SF Community Choice Award

Thanks to everyone that nominated Subtext for the SourceForge Community Choice Award. Nominations Subtext has been nominated for 2 Awards: Best Project for Communications: The best project for talking to your friends or sharing information (together with Miranda, Pidgin (ex gaim), FileZilla and others) Most Collaborative Project: The project most likely to accept your patches and value your input (with Azureus, XOOPS, Zimbra, ADempiere) This is already a big achievement for Subtext, but maybe we can do even better then just being nominated. A it is the only .NET project nominated for the final award. How can you vote? This...

Please Nominate Subtext For A SourceForge Community Choice Award

Steve Harman and Phil Haack both posted a request to nominate Subtext for a SourceForge 2007 Community Choice Award. The SourceForge.net team is proud to present our second annual Community Choice Awards. Winners are selected by community members like you, and it’s that time again! Cast a ballot for your favorite projects now and make your voice heard. To nominate Subtext just click on the following badge: Nomination are accepted till 29th June (Pacific Time, so almost 30th June here in NZ). I think the best categories to nominate Subtext are: Most Collaborative Project: The project most likely to accept...

How to persist settings in a Subtext plugin

Almost one week after the Introduction to Subtext plugins, I just added to the subtextplugins website a new document: How to mange plugin settings. This article explains the differences between the 3 types of settings available to a plugin and how to read and write them. Here is the ToC: Introduction Settings available to the plugin How to read and write settings Application-wide settings Blog Settings Entry Settings What's next Next article will explain how to add to the setting page inside Subtext admin a panel to collect settings from the blog author. Technorati tags: Subtext, Plugin, Red...

Another mountain addicted coder blogs on Subtext

This morning, going through my weekly ego-search, and I found a blog by Simon Philip, a snowboarder and .NET developer living in Scotland. We share a lot things: same name, passion for mountains, same job. He moved to Subtext a week ago, and has a very nice looking skin. I love the random mountain images he has in the header of his blog: something I might add to my skin in the future. Technorati tags: subtext, blog, egosearch

Twitter Publisher for CC.NET

Thomas Freudenberg, an active blogger and CS MVP from Germany, just released a very useful CC.NET publisher task: Twitter publisher. I joined the Twitter band-wagon more or less one month ago, and I'm using Twitteroo to receive my "friends" notifications on the desktop, so I think it will be a good idea to receive a notification every time a build is triggered on the Subtext build server. I downloaded the publisher, installed it on Subtext build server, added 2 lines of configuration in the ccnet.config file and in 5 minutes I had the twitter publisher up and running. After you change the...

How to write your first SubText plugin

Less then a week after the official announcement of the SubtextPlugins website, today I added the first tutorial on writing a Subtext Plugin. The first document covers the basics of building a Subtext plugin. This the TOC of the article: Introduction to Subtext Plugins How to develop a plugin for Subtext Download and install the latest Subtext v2.0 Create a new VS project Extend PluginBase...

Subtext Plugin Framework aka Red Moon: web site is online

One month ago a new Red Moon was rising... Red Moon is the codename for one of the most important new feature in Subtext "Poseidon": Plugin Framework. Today the official web site went online: subtextplugins.com At the moment there are not many information on the site, but I'm planning to add some docs in the next week. Just a quick overview on the Plugin Framework: the plugin model is event based like HttpModules and Community Server plugins plugin can store their own settings on the DB, both for a per-blog and per-entry basis for the first release, plugins must...

Rss2BlogML: export any RSS feed to a BlogML file

BlogML is an XML format for storing the entire content of a blog. You can use BlogML as a way to archive the contents of blogs or to act as a standard format for transferring content from one blog to another - this could include migrating a blog from one blogging engine to another. To create a BlogML archive, you must: have a blog engine that can export to BlogML, as core feature or with an external plugin the latest version of your blogging engine or the export plugin must be installed on...

CodeClimber is now on Subtext 1.9.5

Even if took longer then expected (probably Telecom NZ uses hamsters or cats to move data), the upgrade is complete, and now CodeClimber is running on Subtext 1.9.5. The most important upgrades are: on the left you can see a tag cloud with the top 20 tags a full tag cloud with all the tags used in my posts Identicons and different background to identify more easily the comments written by the author of the blog (that is me): you can see both in action in the comments of my top post How to make a Gmail-like loading indicator with...

Simone's BrainDump

The guys at Mindscape just started a series of video blog posts: BrainDump. Every now and then they will be interviewing a member of the .NET development community in New Zealand. Last week they knocked at my door, and I was very pleased to be part of the first episode of their BrainDump, speaking about my involvement with Subtext and my last project, the CCNET monitor gadget for Vista. Watch the video here: BrainDump #1 - Simone Chiaretta (EDIT: they removed the silverlight player, so here is a link to YouTube) Now I understand how Phil Haack felt when he was interviewed at Mix07. Being interviewed...

Akismet and the trackback spam

I started this blog back in last December, so I didn't bother about the spam problem at the beginning. But last month I started getting a lot of trackback spam, some days even 30-40 per day: I guess this is the new way of blog spam since comments are being filtered by all the CAPTCHA controls or other dictionary based comment filters. I decided to give Akismet a try: and in the first week after I enabled Akismet I have no more spam on my blog. All the trackbacks are being checked against the Akismet web service and eventually...

A Red Moon is rising

No, I'm not referring to Luna Rossa, the Italian sailboat that is taking part in the America's Cup, but to something else... though the name is inspired to the boat. Stay tuned for more details This wonderful red moon is from Flickr and is copyright by _____b_____ Technorati tags: moon, red moon

Subtext 1.9.5 "NoName" is released

The QA department just finished testing the version we were working on, so I'm pleased to announce the official release of Subtext 1.9.5, this time with no codename. New Features This version adds a lot of new features, bringing Subtext One Step Closer to my ideal blogging platform. The most interesting new features, IMHO, are: Content Tagging and Tag Cloud: for more details Tagging In Subtext Identicon: if you don't know what they are, here you can find a good explanation Lightbox v2: in my previous posts how to migrate a custom skin and how to use...

Breaking change in Subtext 1.9.5: update your custom skins

Subtext 1.9.5 is being tested by our QA department and hopefully will be released soon. One of the new features of the new version is the upgrade of the code scripting library for image display from Lightbox v1 to Lightbox v2, but unfortunately this introduces a breaking change. Lightbox v1 requires only the lightbox.js file, while version 2 requires 2 more libraries in order to work: scriptaculous and prototype.So if you built a custom skin that uses Lightbox v1 you have to manually update its definition inside the skin.config or skin.user.config in order to make it work with the new version. Almost 2 months ago I...

Phil Haack interviewed on OpenSource

Phil Haack has been inverviewed by Tim Heuer for his new TimCast podcast. Phil explains why he started working on Subtext, and what his feelings are about the open source community on the Microsoft Platform. I'm very proud of having been mentioned by him during the interview, you know (!), he even said my name "almost" correctly. Thank you for that Phil. Here is the announcement of the interview, and here you can download the mp3 interview Technorati tags: Phil Haack, MIX07, SubText, TimCast

YASB: Dave Transom

Yet Another Subtext Blogger: Dave Transom, web developer and web standard evangelist from Auckland has just moved his blog from Blogger to Subtext. Welcome to the Subtext world, and compliments to your webdesigner for the awesome skin: maybe you can share it with us on the Subtext Skin site. The question is: when are Nic and Leonie going to move from dasBlog to Subtext? Technorati tags: Subtext

New blogger moves to SubText

Igor Damiani, a very active community member, yesterday made a very brave choice, well, 2 choices: he left the safe place which was the UGIdotNET community, and moved to his own domain he decided to install the engine on his own server, and since he never worked with web apps, but only with winforms and T-SQL that is a very brave thing And he did the right choice because he installed Subtext with (almost) no help: which means that the installation procedure is dumb proof Unfortunately he lost all of his previous contents because...

Per-project Visual Studio Settings

Working on both "real", personal and opensource project sometimes I've to face the problem of managing different visual studio settings based on the project I'm working on. For my personal projects I like a certain tab and curly brace configuration, for Subtext I've to use another convention, and from my real job I've to use yet another configuration. After a few weeks of struggling I decided to adopt the Subtext settings even for my personal projects, but I cannot do it for my job, because that settings have been already used for years: so, every time I've to change type...

How-to add Lightbox v2 to a Subtext skin

Yesterday I added Lightbox v2 to my skin. So here is a step by step guide on how to do it. Step 1: Download library Download Lightbox 2.02 and extract it on a folder of your choice. Step2: Skin Definition Change the skin definition inside skin.config or skin.user.config adding the following lines inside the <Scripts> tag: <Script Src="scripts/prototype.js" /> <Script Src="scripts/scriptaculous.js?load=effects" /> <Script Src="scripts/lightbox.js" /> And that inside the <Styles> tag: <Style href="lightbox.css" /> If you are upgrading from the version of lightbox that is coming with Subtext you have to remove the following lines, too: <Script Src="~/scripts/lightbox.js" /> <Style href="~/scripts/lightbox.css" /> In the case you don't...

CodeClimber is now LightBox2 enabled

As I promised a few weeks ago, I just upgraded my CodeClimber skin to version 2 of Lightbox. To see the new features have a look at my post about picture of vacations and click on the images: the first one is a normal image (but you will notice the new image loading animation), while the second and the third are setup as gallery, so, clicking on the first (the Kilimanjaro one) you have to possibility to move to the other (Kalymnos one) always staying on the image popup. I'll write more on how to setup this on any Subtext blog in a...

Going tramping

Tomorrow morning I'm leaving for the first real trekking here in New Zealand: I'm going to walk the Queen Charlotte Track in the Marlborough Sounds. I'll be walking for 4 days inside nature, bush, on unspoiled beaches, and, hopefully, under a warm sun. The track is 71 km long, with the 3rd day being the longest (24km, 6 hours walk at easy pace) and the 2nd one being the shortest (11Km, 3hours). If you are interested to know more about that track the official track website have a nice track guide with maps, elevations, approximate times and so on......

Blog statistics with FeedBurner and Subtext

A month ago FeedBurner unleashed a new very cool feature: Blog Statistics. They integrated into their RSS feed stats also the tracking engine they got when they acquired Blogbeat. For a complete overview have a look at their announcement: A 360 Degree View of Audience Engagement. Now that performancing metrics is an opensource project (and not a service anymore) and measuremap doesn't have new features added since it has been acquired by Google one year ago, the only solution for specific blog stats is this service. I tried it, and it rocks!!! How to add the tracking...

Is an Open Source Project Successful?

InformationWeek has a nice article titled: How To Tell The Open Source Winners From The Losers It's a long 6 printed pages article, not read it completely, but at page 2 there is nice chart with 9 points that an OpenSource project should have in order to be a winner. Ayende also wrote a nice blog entry about it. I'm trying to evaluate Subtext using that metrics (and giving points from 0 to 5): A thriving community: we have just 4-5 core dev and a few contrib. But all the main contributors are very committed and a lot of discussion...

Subtext 1.9.4 (Windward) released

Steve just posted on his blog the official announcement: Subtext v1.9.4 "Windward" Edition Released My blog is running it since a few weeks with no issues, so, I think it's safe to upgrade it. As I previously said, the most important feature, IMHO, is the Sitemap implementation made by David Vidmar, from Slovenia. For more information about that feature, and for instructions on how to set it up, I recommend his post: Subtext 1.9.4 - now with sitemap.The final release have just one small difference: the sitemap is inside a "sitemap" folder instead of the root folder of the blog,...

No more free communities with Community Server

Telligent just released the new Licensing Guide for Community Server 2007. The new Community Server 2007, new name for the CS v3.0, has a lot of new features. Above all there is a new dynamic theme engine named Chameleon, that makes the development of new skins more easy than with the previous version. It should also allow non tech person to change the appearance of the site with a sort of WYSIWYG editor for themes. But is post is not about the new features of CS 3.0, but is about the new licensing (here the complete PDF): basically the free license will enforce only...

How to earn Community Credits points using SubText

Probably not everybody knows that Subtext can automatically notify Community Credits whenever someone posts an entry or an article on his blog. Thanks to Web API provided by Community Credits avid bloggers can earn point immediately without having to go to the Submit Point page and waiting for the approval of Community Credits moderators. You will receive 500 points for each blog post, and 5000 points for each article (story using ST naming) This feature exists since version 1.9.0, but it has never been advertised and explained as it should have been . The configuration is very easy: just open the...

Ayende goes Subtext

Another major .NET blogger enters Subtext club: Ayende, THE NHibernate man (of course after Janky ) has just moved his blog from DasBlog to Subtext. On his post he explains his migration, and all the configuration changes he made so that Subtext handles the url the same way that DasBlog did. A very good overview of the BlogML import process from DasBlog to Subtext... probably after that post we will make a few changes to the import procedure to make the whole process easier.

Eating My Own Dog Food - Again (build 73)

Three days ago I deployed Subtext build 72... In the last days I included into the 1.9 branch a few other code changes: New Feature - Category/ies Displayed In Post New Feature - Google SiteMap Bug Fix - Updating an entry changes the entryname which fixed a pretty annoying regression bug The main addition to the upcoming 1.9.4 release I guess is the SiteMap implementation: this allow Google and other search engines to easily index a website knowing exactly which are the pages that they must index. The SiteMap feature was developed by David...

Eating My Own Dog Food - Subtext v1.9.4.x

As Steve already did, I'm eating my own dog food, too... So this blog now is running on Subtext 1.9.4. How can you be sure I'm not kidding you? Just have a look at the header section of this page: it now includes a new html meta tag: <meta name="Generator" content="Subtext Version 1.9.4.72" /> So, please, if you can, poke around, and eventually report bugs in the usual way: submitting them to sourceforge.

Speaking about CC.NET and Subtext

This afternoon (Italian time) I'll be speaking at small code camp organized by the local user group DotNetMarche in Ancona, Italy. The name of the meeting is: "Sviluppare applicazioni 'migliori': CruiseControl.NET & NHibernate" (in English "How to build better software: CruiseControl.NET & NHibernate"). Here is the link to the meeting agenda. My session, titled "CruiseControl.NET in a real world project" will be an brief introduction to Continuous Integration with CruiseControl.NET. Then I'll show what I think are the Best Practices for successfully implementing a CI process on a real world project using as example the "pretty sweet" implementation I did for Subtext. I'll translate all the PPT slides...

Here I am... writing in English

Finally I made it: starting from today, December 11st, 2006, almost 2 years after my first blog post on my Italian blog, I've got an English blog, too... Why did I choose to have a blog written in English? Because I'm moving to Wellington, NZ in less than a month and I'm taking part in the global .NET community. Also, last April I saw this post from Jeff "Coding Horror" Atwood about creating one's own personal brand, and since I'm a free climber I decided to go with CodeClimber: a good mix of the 2 things I like the most. If you want...

Subtext Halloween

No, it's not the name of some SubText special version, but it's...      SubText submarine carved inside a pumpkin to celebrate Halloween. Yesterday evening I spent almost 3 hours digging inside the pumpkin, drawing the layout (outlining it from a print of the logo), and then carving with a knife to get the submarine shape. Happy Halloween to all SubText users!!!