Skip Navigation Links / Posts / Posts By Category
Search site. 
Powered by Google
Darren Neimke (Me)

My Book

Readify

">ASP.NET MVP


Interesting Portals 

NetVibes
This portal feels similar to PageFlakes in many ways but I love their gallery. They also have a feature whre certain chrome elements only become visible when you hover over the web part.

Xtra
A New Zealand news portal. I especially liked the content rotator web part at the top of the middle row. Seems like a nice way to allow a user to browse through data.

 

Posts Archive 

Posts for Category: Blogging

Feed for this Category
My blogging activity

Back when ASP.NET 2.0 (Whidbey) was released, I created a blogging application called SingleUserBlog.  I used this development experience to gain practical experience with using .NET 2.0 - and especially to learn about Web Parts as I wrote my book about them.  Times change though and now with the imminent release of Orcas it's time to move forward and try new things. 

These days my passions and interests are pretty evenly split between:

  • Personal - Hockey coaching.  My longer term goal here is to coach hockey at a very high level - maybe National level.
  • Technical - Web 2.0 - particularly Live branded applications, and furthering my formal skills as a solutions architect.

Effective immediately I'll be moving all, or at least most, of my blogging activity away from this site.  My technical stuff will get moved to my Live Spaces site:

http://showusyourcode.spaces.live.com

Here I will continue to talk about all the things that I usually talk about here.  In the immediate future this stuff will focus on my experiences in and around:

  • Managing the Development Process
  • Visual Studio 2008 and .NET 3.5
  • Virtual Earth 6 and Live branded applications
  • My new application - a map based, ASP.NET AJAX application

One of the biggest reasons for moving my blogging into Spaces is to get much more first hand experience in using the platform.  Increasingly I'd like to move into this space to get ready for some of the new stuff that is still coming - such as presence and others. 

If you are reading this and you want to stay connected, I'd recommend that you get yourself a Live Space and add me as a Friend and then also connect via Messenger.  Getting Friend updates via presence is a great way to stay in touch, not just through blog 'articles', but also through other updates that you make to your profile.

My hockey coaching related stuff will get moved to another blog that I've created specifically to talk about my learning's in getting further into coaching and to provide guidance to others who are looking to get into this area.

posted on 10/24/2007 12:28:33 PM ( 5 Comments )


Microsoft SkyDrive blog - how NOT to have a conversation in the blogsphere

I'm constantly amazed when I see the new product teams in Redmond getting started with their brand new shiny blogs.  They invariably write an excited post - like this one - telling the world about their new product and how excited they are to be able to have a blog so that they can have a conversation with the punters about it.  Hot on the heels of this magical first post by a new product team, other influential bloggers from Redmond start pimping it from their blogs saying how cool it is to see product X being blogged about.  I've seen this on a number of occasions now, the BizTalk services in the cloud blog was probably the most recent example. 

After the initial excitement of getting their first blog post out of the way, these teams then seem to get writers block or something because quite often it's the last post of any substance that we see. 

This post by the SkyDrive team really bothers me because it's their initial post and people have followed up by posting 80 comments (mostly "when will this be available in my region") and not a single reply from the team.   That just sucks, but is in line with the other stellar communication efforts that I've seen from teams working underneath the Live brand.

posted on 8/14/2007 9:28:35 AM ( 3 Comments )


Tech.Ed Day 1: Bloggers Lunch - Web 2.0

Today I was fortunate enough to have been on a panel as part of a conversation about Web 2.0.  Nick Hodge has all the details of the questions and answers, plus a bunch of photo's here:

http://www.nickhodge.com/blog/archives/2035

Long Zheng has more photo's here:

http://www.istartedsomething.com/20070808/teched-day-1-bloggers-lunch/

posted on 8/8/2007 9:42:05 PM ( 0 Comments )


What I know about you

An interesting read:

Dare Obasanjo aka Carnage4Life - RE: Life at Google - The Microsoftie Perspective

Make sure that you follow the link from there through to the full phatbits article.  Something that each of us may be confronted with at some stage I guess.

posted on 6/29/2007 2:22:18 PM ( 0 Comments )


Constantly improving the Signal to Noise ratio

At home I have this habit where, whenever I purchase a new article of clothing, I turf out an equivalent number of old items.  Buy a new shirt - turf an old one.  In with new socks, out with some old ones.  New hanky in - old hanky out.  You get the picture.  The idea is to drive towards a wardrobe of clothes that always represent a current set based on what I prefer to wear.  It's like survival of the fittest where each article of clothing has to compete to remain in the fold - although old jocks can only survive for so long smile_regular.

I've started to actively do the same with my RSS subscriptions.  I use the trigger of new subscriptions as a point of evaluation for items in my current subscription list.  I don't unsubscribed from feeds on a pure 1-1 basis.  What I do is to look at the number of items that the new feed will add to my reader each week and look to unsubscribe from a number of feeds that is representative of that number of individual reading items.  This helps to ensure that the signal to noise ratio is always being fine tuned on a proper comparative basis.

Over the past 6 months I've started tuning in much more to feeds that focus on the theory knowledge management and less on individual technologies and implementation related blogs.  As an example I've added blogs such as:

At the same time my interest in low level details about implementation has waned somewhat.  In recent times, to match the intake from the blogs that I've listed above I've unsubscribed to some really excellent blogs about CRM, SharePoint, and design patterns:

  • Shade Tree Developer - a great blog about implementing code and design patterns.
  • Same Shirt Every Day - Alex's new Rails blog.  Sorry Alex, I'd love to get excited about Rails but I lack the time smile_nerd
  • Stunnware's CRM Corner - This guy has customized CRM to within an inch of its life but I'm not so interested in actual CRM customization as I thought that I would be.
  • Steve Pietrek's SharePoint links blog - Not to be confused with his original Links Blog which I can't see myself ever unsubscribing from!

 

It's not that these blogs are not a good read - they've served me extremely well in the past.  It's just that, beyond a certain point, reading stuff can interfere with doing stuff.  So hence the need for constant pruning and vigilance in maintaining the right level of signal to noise.  By the same token, there's a couple of blogs that I've kept - mostly because they are friends - but who seldom update me with their articles these days:

Although they tend to clutter my reader I've kept a hold of them in the hope that they may one day again inspire me with their tales from the trenches smile_regular

posted on 6/27/2007 1:35:51 PM ( 1 Comments )


Shared Reader items

I've written about Shared Items on Google Reader before but wanted to re-post because they are so cool and I wonder how many people are making use of that feature.  This has drifted back to my attention after yesterday, having had a chat about them with Warren Schaefer at Melbourne airport who agrees about their coolness.

How it works is that as I'm reading items within Reader, there is a "Share" button at the bottom of each item:

Google Reader share button

As I come across articles that I think are of exceptional value I click on that button and the item is then available to be shared.  By sharing the item it is available via the following link which also exposes itself as an RSS feed:

http://www.google.com/reader/shared/17231039675326267877

There is also a nice web part that they make available so that I can present a view of my shared items on my blog:

Google Reader shared items web part

I'm firmly of the opinion that each of us must read some incredible articles each day and without a sharing experience such as this, then this knowledge sharing opportunity is either lost or just poorly translated as time passes waiting for me to blog about it.  Clicking on a share button means that the "cream of the crop" is always shared though and so the things that I read that are valuable are available as a filtered list for people to view.

If you are interested in * 2.0 (Web, Enterprise, etc) discussions, team based development, .NET, then I'd highly encourage you to subscribe to my shared items feed because that's where you will find the best knowledge that I see each day about those topics.  And if you have a Shared Items link please add it as a comment to this post so that I can subscribe to yours - in your comment please let me know what content categories your shared items are likely to contain smile_regular

posted on 6/16/2007 9:57:21 AM ( 1 Comments )


More on my quest for a new web presence...

The other day I wrote about creating a new website and mentioned that I was favoring a move to Squarespace.  I've continued to think about what I want to get out of this new web home and have decided that a pure blog product won't meet my needs... I really need a Wiki to do what I want.  I started looking around for a hosted Wiki offering and none really stood out.  I've applied for an account with JotSpot although they are currently offline after acquisition by Google and so I now have to wait until they let me know that I can proceed.  Oh well, this will give me more time to really think about what I want my Wiki to be smile_regular

Or maybe the world is ready for SUW... sorry, bad joke, just kidding smile_wink

posted on 6/7/2007 8:45:11 AM ( 3 Comments )


Starting a new website/blog

If there's one thing that I've been really crappy at over the years it is documentation - but it's definitely something that I'm getting better at!  It's when I go back through all of the 1300 or so posts that I've written over these last few years that I realize what an unstructured gaggle of information I've created.  Contrast the tangled web of data that I've created with other more valuable online resources such as Wikipedia and you soon get a good feel for the potential that lies behind information that is properly maintained and structured.   The cool thing about Wiki's is their organic nature and how they tend to grow outwards.  This gives you the ability to link articles in a manner which allows a reader to pivot around on a piece of information.

In addition to my growing admiration of wiki's I've also been giving a lot of thought to what I can do to improve the value of what I post online.  This thinking has been greatly aided by the timely reading of the following two articles:

Scott Hanselman's 23 way's to keep your blog from sucking

The Definitive Guide to Semantic Web Markup for Blogs

All of this thinking has made me realize that I need a website which:

  1. Has articles that are maintained to always reflect my current views on topics of interest
  2. Is a better representation of my "brand" in the online community
  3. Has a nice usable theme
  4. Becomes the source of truth for all areas in which I have knowledge
  5. Serves as the basis for creating knowledge from scattered data - kind of like a knowledge factory

So I've decided that I'm going to start a new blog and start adding articles to it on a regular basis about a more narrow range of topics and with all of the rants removed (that's what this blog is for smile_regular).  I initially thought that I might start up a Subtext blog and host it on my server but then decided not to head down that path so that I'm forced to only focus on the content management and not on the technology.

Last night I started playing around with a few of the major online blogging providers to see how they work and to get a feel for them.  Here's some screen shots of what I tried out - you can actually click through to see them for yourself if you like:

Squarespace

Squarespace blog

 

WordPress

WordPress blog

 

Blogger

Blogger blog

 

Squarespace is the blog provider that Grant uses and so far it's the one that I like best.  I've set it up in such a way that my name is more prominent and it will use keywords, tags, and themes that better represent the types of topics that I'll be writing about.  Hopefully over time this will pay dividends in the way of better Google page rankings.  

I'm going to leave all of those blogs up and running, but if you are interested in my thoughts about Knowledge Worker topics then please subscribe to my Squarespace blog.

posted on 6/6/2007 2:22:38 PM ( 10 Comments )


Google Reader - Darren's shared items

Google Reader has a cool feature that allows you to mark items in your reading feed as "Shared".  When you mark items as "Shared" they appear on a separate shared items feed: 

Link to Google Reader - Darren's shared items

Subscribing to the feed at that page will allow you to see the coolest things that I read each day! smile_regular

Even cooler is that Google give me a free web part that I can stick on my blog which displays a list of the recent blog posts that I've read:

Google Reader Shared Items Web Part

I love you Google Reader heart

posted on 5/1/2007 8:46:22 AM ( 0 Comments )


World Cup Cricket - Google Search Ranking

I just noticed that my little World Cup Cricket Gadget now appears on the first page of Google results for the term "World Cup Cricket":

http://www.google.com/search?hl=en&rls=com.microsoft%3A*&q=World+Cup+Cricket

Cool! smile_regular  In other good news, downloads have finally topped the 100 mark as represented by the following daily download graph:

And as we can see in the following chart, downloads from Australian users total the most at 34, closely followed with downloads by users from India (23) and the Americas (20):

Lastly I thought that I'd show the UI of the Gadget that is displayed for a match in progress. In the following picture we can see that India are playing Sri Lanka.  From the text at the bottom of the gadget we can deduce that Sri Lanka must have batted first and that India now require 228 runs at 5.36 runs per over to win.  Originally I had hoped to have a detailed view - to see match scores and stuff - but given the short timeframe in getting this gadget up and running there just wasn't the scope to get that feature written.

I've also noticed that all of this extra attention - both through the World Cup Cricket Gadget and My Book - hasn't done my blog subscriptions any harm as the subscription count now stands at over 300! smile_nerd

posted on 3/24/2007 5:55:38 AM ( 0 Comments )


Google Reader Trends

I love Google Reader! The UI is great, they offer nice keyboard browsing support, and they do an excellent job of supporting my mobile device.

Link to Google Reader

Now they have added statistics about my subscriptions; from these I can tell you:

From your 76 subscriptions, over the last 30 days you read 735 items, starred 8 items, and shared 0 items.

And here are some graphs...

Google Reader Trends

Google Reader Trends

Google Reader Trends

Google Reader Trends

Google Reader Trends

Google Reader Trends

posted on 1/6/2007 9:55:48 AM ( 1 Comments )


BlogML used by closing community

This is not great news, Ryan has announced the impending closure of the GeekDojo blogs:

Link to Ryan Rinaldi's Blog : A bit of bad news

In announcing the closure Ryan did mention that each blogger in the community will be able to get a copy of their content as BlogML.  That's thousands of posts, comments, and trackbacks that will be able to be ported to another platform.  Hopefully those bloggers will read Mitch's post titled "Healing the Web" after they've made their decision about relocation.

posted on 12/27/2006 11:35:02 AM ( 2 Comments )


Subtext 1.9.3 "Repair Job" Edition Released!

Steve announces the latest release of Subtext: 

Link to Subtext 1.9.3 "Repair Job" Edition Released!

 

In that post he mentions that this latest version now supports version 2.0 of BlogML - well done guys!

posted on 12/14/2006 8:46:02 PM ( 0 Comments )


Friendly Url's, Provisioned Pages

I was sitting at Docklands tonight having dinner with Aymeric and talking about our respective web engines - mine: SingleUserBlog and his: AymericWeb smile_regular 

We each had things that we liked about the others' engine.  Aymeric liked the web parts of SUB and I really liked two of the features that he had: Friendly Url's and the ability to provision new pages (ala Wiki's). 

I'm really hoping that I'll get some time later this week to pull down the latest code for SUB from CodePlex and start to think about how these things might get added into the core SUB codebase.  Before I integrate any code changes into the SUB codebase I'll prototype how these changes might fit in.  Basically I see SUB as now having a number of page types (which BlogML supports smile_wink) such as:

  • BlogPost
  • Article
  • Wiki

I think that each page type would derive from a different page template and would be provisioned in a different manner.  For example, to create a new blog entry you would go into the Administration section and choose "New Post" from the menu.  Doing that would:

  • Instance a page from the BlogPost Template
  • Save the content of the page into the Posts data path
  • Save one post file per page

To create a new Wiki page you would embed a special syntax into the content of any page - something like what Aymeric used:

[[pageid|pagedisplayname]]

So, for example, if I wanted to create a Wiki entry for Regex, I could embed the meta tag like so:

[[regex|Regular Expressions]]

In addition to having these Wiki pages provisioned on the fly, they would also:

  • Use a friendly URL format
  • Save historical versions

This means that each version would get saved as a different content file in the Wiki data path - i.e.: Regex, Regex(1), Regex(2), Regex(3), etc.  The reason for saving all historical versions of the Wiki entry is so that you can track the evolution of the thought/idea.

The friendly URL format would probably look something like this:

http://MarkitUp.com/Wiki/Regex.aspx

On the topic of friendly URL's, Aymeric shared this great link with me which discusses some of the benefits of having nice, neat URL's:

http://www.edition3.com/articles/friendly-urls

posted on 10/30/2006 10:55:59 PM ( 2 Comments )


Blogger thrown out of Telstra?

As Geoff mentioned, there's an interesting article in this morning's AFR about a contractor who was working at Telstra and got 'released' a week after "seeking permission to become more vocal on his blog".  Throughout the article - which also includes a mention of Cam Reilly's The Podcast Network - the contractor is quoted as talking about his grand blogging vision...

"'...adopting the ethos and standards promoted by famous bloggers such as former Microsoft executive Robert Scoble'.  The plan was to 'tell the truth', 'post fast on good news and bad', 'use a human voice'"

I wonder if, in addition to all of that humanity-saving work that he'd taken ownership of doing that the contractor had also planned to do some of the work for which Telstra had engaged his services? :-)

Unfortunately we are destined to see many more such stories in the coming days.  Maybe my next book might be titled: "Crimes in the name of Scoble" :-)

posted on 10/13/2006 1:25:21 PM ( 0 Comments )


Google Reader update

This week Google Reader was given a new look with a significant update, you can read about it here.

Google Reader interface

This update has addressed many of the usability issues which had previously existed and makes it much simpler to manage feeds and tags, view categories of feeds (now displayed in a tree), and to read.

Well done Mr Google! 

posted on 9/30/2006 9:16:49 AM ( 0 Comments )


Frank's talking at a corporate blogger conference

I almost fell over when I read Frank's post about his upcoming gig speaking at a corporate blogger conference.  It wasn't the fact that I wondered how Frank gets the time to do this stuff; it wasn't that I was amazed that the corporate types have picked up on blogging; it sure as heck wasn't the $900 per ticket price tag (I knew that Frank wouldn't be cheap :)).  The thing that knocked me over was that this conference starts tomorrow! Now I probably could have found the $900 somewhere but I really doubt that I'll be able to get things organised to be there at that short notice.

Frank, I'll be interested to hear what the corporate types think about blogging and IP so hopefully that gets touched on.  If not can you ask this question for me please.

Let's say that I'm Microsoft and I have great people who know lots of cool stuff about the industry.  Many of my people have public facing blogs and, because they are smart and because they are connected to such a well known company their blogs attract a large readership.  Over time this readership and reputation of some employee blogs grows to the point where those employees can make good sums of money from advertising.  And for the best of those people other opportunities also present themselves - such as companies giving cash and other incentives to the employee to promote their products.  What is the right corporate policy to have in place there?

 

posted on 8/28/2006 5:47:11 AM ( 0 Comments )


Vance Morrison's perf blog

Vance Morrison is the Performance Architect for the CLR and has a blog here:

    http://blogs.msdn.com/vancem/

One of the things that Vance has said that he'll be blogging about is how to use tools to better monitor perf. 

Subscribed!

posted on 6/20/2006 3:00:43 PM ( 0 Comments )


More Google Portal Goodness

The Google Personalized Home Page and Google Reader totally rock!  To use Google them you must first create a GMail account and then sign in to the Google.com home page to start personalizing it to your own liking.  Unlike Live.com, Google have gone for the kind of simple elegance that has made Google a market leader in web technology.  One of the great recent additions to the portal has been the tight integration between it and the Google Reader (click here to learn about Google Reader).

Today I noticed another really cool thing about Google Reader.  Click on this button to see it for yourself (and then return to the article):

   Add to Google

Notice that, by adding that link to your blog you can take users to a page that allows them to add your blog to either their default portal view or to your subscriptions. 

Google Reader impresses me and I'm sure that as soon as Google iron out a few bugs in their UI that it is going to gain a very important slice of the feed subscription market.  I'm not sure whether Google Reader plan to open up an API to access feed stores but I'll be watching this space with a great deal of interest.

posted on 5/11/2006 3:59:20 PM ( 0 Comments )


Daily Links

How many cool websites do you visit on any given day?  I'll bet that there must be some amazing sites and web pages that people visit on any given day that just go un-remembered and un-shared.  Not any more!  Today I added a new feature to my blog called "Daily Links" which allows me to arbitrarily add cool or interesting links via an administrative web part and have them appear on an RSS feed.  You can subscribe to the feed here:

    http://markitup.com/DailyLinksRss.ashx

This idea was originally an SUBV2 feature suggestion by Howard Van Rooijen as you can see in this comment:

    http://markitup.com/Posts/Post.aspx?postId=622ac040-d459-40dc-a66d-5478bbe2db8a#94085f1b-853d-4d1e-b1be-37f2ecc23448

I think that it would be great if this took off and we all started blogging our most interesting "visited links"; I think that this will turn up some real gems!

Thanks Howard :-)

posted on 3/20/2006 5:37:38 PM ( 5 Comments )


Lighting up my blog - with a new tagline

Since I started blogging a couple of years ago my blog has had the following tagline's:

  • ShowUsYour<Blog> - this was my first tagline and was used because, prior to having a blog all of my web content was published on my previous site which was called ShowUsYourCode.
  • Irregular Expressions Regularly - this was the tagline for my separate regex blog.
  • Thinking Products... - this is the current tagline for my blog and is meant as a silly play on words.  It means two things in one.  Firstly it emphasizes the fact that I spend a lot of time thinking about building "products" as opposed to just "coding".  Secondly it is a silly way of writing that thinking "produces" things.  In other words the act of thinking itself is productive.

With the upcoming release of my book about creating web portals I'm hoping to align myself much more closely to things such as Vista, Web Portals, and personalization in software and the topic that cuts across these slices and which also has attention is Live.com. 

The phrase that is associated with Live.com is "Light up" and you'll hear it a lot over the coming months.  It is a term that is used to indicate that something has become active or engaged - such as an interaction between two participants or a web part which performs some gesture upon activation.  It is even used to refer to the Live.com site itself.  When Microsoft say: "We're planning to light up Live.com" they are saying that they will "activate the site" or "release it".

Over the next 12 months I'm planning to grow the readership of my blog through much more planned release of content that is targetted around Web 2.0.  In other words, I'm going to "Light Up" my blog.  Because of this new "focus" I want to create a new tagline for this blog that reflects what I'm doing and so far I have the following ideas:

  • Let's Light Up
  • Lighting up the web
  • Lighting up Web 2.0

I think that I prefer the first one because it infers that there is some for of engagement in the blogging activity between me and you - and that's very much how I'd like it to be. 

Which tagline do you prefer?

posted on 3/11/2006 9:12:37 AM ( 4 Comments )


Url Mappings and Feedburner

The other day I posted a plea for subscribers of my blog to point the subscription for my feed to my feedburner link but today I'm asking that you change it back to the original Url of:

    http://MarkItUp.com/Rss.ashx

The reason for this is that in a comment to that post, Rick Klau who is the VP of Business Development with Feedburner mentioned that I'd be better off having people continue to point at my Rss.ashx page and performing a silent re-direct to the Feedburner URL under the covers.  This makes a lot of sense because it means that I'm not constantly asking people to change their link - like I am now :-) 

To implement the solution I created a special URL which still exposes my RSS feed and I point the Feedburner bot at that link.  The link for the bot is: http://MarkItUp.com/RssForBots.ashx.  Notice that if you browse to my http://MarkItUp.com/Rss.ashx page that you will end up at the Feedburner page but it you point at the http://MarkItUp.com/RssForBots.ashx URL you will see my raw feed.

Anyways, as with all simple programming tasks things quickly went south and it resulted in a major operation.  My initial thought was that I could simply use the UrlMappings service that comes with ASP.NET and re-target my RSS feed like so:

<urlMappings>
  <add url="~/Rss.ashx" mappedUrl="http://feeds.Feedburner.com/MarkItUp" />
</urlMappings>

Unfortunately it turns out that the UrlMappings service will not serve up URL's that are external to your site.  Damn!  I'm starting to hate that darned UrlMappings thing… me and it just don't hit it off.

So what I decided to do was to create my own UrlMappings service instead.  I iplemented my service as an HttpHandler that would read in a Mappings.xml file and handle re-directions to external URL's. 

First I created a mappings file named UrlMappings.xml which lives in ~/App_Data and which looks like this:

<UrlMappings>
  <UrlMapping url="~/Rss.ashx" mappedUrl="http://feeds.feedburner.com/MarkItUp"></UrlMapping>
</UrlMappings>

Next, because my feed is now served up at two locations I deleted the Rss.ashx physical file and moved it into the ~/App_Code directory and configured a couple of UrlMappings using that silly ASP.NET UrlMapping service like so:

<urlMappings>
  <add url="~/Rss.ashx" mappedUrl="Redirector.ashx" />
</urlMappings>

In this case, Redirector.ashx is the location of the custom HttpHandler that I wrote to manage my own UrlMappings file.  You can see that from the HttpHandler mappings that I created to handle the requests:

<httpHandlers>
  <add verb="GET,POST" path="Rss.ashx" type="MarkItUp.SingleUserBlog.Web.RssFeedHandler" />
  <add verb="GET,POST" path="RssForBots.ashx" type="MarkItUp.SingleUserBlog.Web.RssFeedHandler" />
  <add verb="GET,POST" path="Redirector.ashx" type="MarkItUp.SingleUserBlog.Web.Redirector" />
</httpHandlers>

So now when a user browses to my Rss.ashx page they are redirected to the Redirector which reads my UrlMappings file and sends the request off to Feedburner.  Of course the upside of all this is that SUB now has a dinky little redirector that can map out to external links - whoop-dee-doo!

posted on 3/6/2006 8:47:40 PM ( 3 Comments )


Subtext 1.0 "Nautilus" Lives

Late last year when BlogML was a shiny new object I started to look around the blogging universe for potential blogging engines to target.  One of the people that I contacted was Phil Haack who I knew was involved in an open source blog called SubText.  SubText is a branch of the the old .Text codebase.  This all happened in early October last year.

This morning when I synch'd up my aggregator I was very pleased to read this announcement from Phil:

    http://haacked.com/archive/2006/03/02/Subtext1.0NautilusEditionReleased.aspx

SubText 1.0 Nautilus

I get a great feeling when I see projects like SubText come to life; it keeps me believing in the dream that I had when I started coding. 

Anyways, because these guys have implemented BlogML, all of you suckers who have installed SUB can go to your Administration page and dump out your SUB blog into BlogML and then import it into "Nautilus"!   

Well done guys, enjoy the glory!

posted on 3/4/2006 2:19:35 AM ( 0 Comments )


Favour to ask...

Up until the weekend I had really only heard about Feedburner but hadn't taken the time to go and see what it's all about but after seeing this post I got interested in enough to move my RSS feed over.  So now I have a favour to ask.  If you are subscribed to my feed could you please change the URL that you use to my new Feedburner address:

  http://feeds.feedburner.com/Markitup

This will help me to better understand how many people are subscribed to my blog and will also hopefully help me to ultimately produce better content.

Thanks! 

 

posted on 3/3/2006 2:32:22 AM ( 9 Comments )


Interesting data about the size of the blogsphere

Blogosphere Growth

posted on 2/8/2006 11:43:59 AM ( 1 Comments )


BlogML - progress

This morning I purchased the BlogML.com domain so that I will have a central place to publish the schema files and so that I can expose other tools from that site - such as an online validator to validate against the BlogML format.

I'm hoping to have the schema files and the other artifacts that have been created to support BlogML posted somewhere that they can be collaborated on until we have a final spec.  Once we have the spec. nailed then I can publish it on the BlogML.com domain and create other cool things such as online validators etc.  These files should be available by the end of the weekend.

This morning I also tested fully integrated BlogML import/export functionality into the admin console for SingleUserBlog.  I was able to do an export to BlogML then delete all of my posts and comments and then restore (import) from the saved file.  This was very cool.  Because SingleUserBlog supports multiple data providers I was also able to export my file based content, switch providers and then import it all in to a database.  This shows how cool BlogML will be for scenarios such as either migrating content or moving blog content between environments - such as moving from staging environment to a production environment.

Here is a link to the file that I imported and exported on my test system this morning so that you can see the format of BlogML: http://markitup.com/Data/Images/SUB.xml

posted on 8/27/2005 2:32:50 AM ( 0 Comments )


Blogging API - some concrete ideas

A couple of people have asked me about the Blogging API ideas that I wrote about a little while back.  Unfortunately I haven't really had time to write about this any further but I do have some concrete ideas about what needs to happen.  Here's a very quick version of my "utopia" for this:

Basically, I think that each blogging engine should expose methods that allow you to export or import the entire content for the blog in a common format.  Let's call it BlogML.  An export for a blog could obviously be a huge file - but that's fine, storage is cheap and text compresses very well.

I've got a concrete sample of the schema for the format defined already and hope to post it in the coming days and perhaps it might promote some discussion and then gain acceptance somehow.

Think about this for a moment and what it means.  Having a common format for blog content means that it would become very simple to import and export a blog; it would also be easy to backup and restore. 

As an example, a feature such as this would allow you to go to the admin section for SingleUserBlog and choose an "Export" function" that would persist all of your content - posts, categories, feedback, trackbacks, etc - to an xml data file.  Potentially, you could then take that file to another blog and import it, thereby making it simple to migrate content between applications or even between versions of blogging engines.  These are things that have proven to be problematic in the past - for example, moving between early and late versions of .Text and then again, moving between .Text and Community Server.

I'll try to blog the schema definition that I have in the next few days and then implement it into SingleUserBlog as a proof of concept.

Finally, in my original posts I had discussed the idea of creating a common API.  After sitting down and thinking about it for a while it became obvious that simply having a common API would not solve most common problems - such as interoperability.  Having a common schema defined will solve problems such as these while freeing blog implementors to expose their API's as they choose.

 

posted on 8/12/2005 2:03:00 PM ( 0 Comments )


Blog API Part 2

I noticed that Chris has thrown down some of his thoughts about a blogging API.  I'd really like to hear what some of the other "players" in the blogging industry think about this and who has been giving it some thought. 

From some initial thinking I think that the API would need to be:

  1. SOAP based.  All of the major frameworks have SOAP API's these days.
  2. Allow you to discover and obtain information about: Posts (including any attachments), Comments (including trackbacks), Categories.
  3. Able to get information at a very granular level - ie: be able to return items by a variety of parameters and be able to perform queries which return both verbose and terse resultsets.

The benefit of being able to perform queries that perform terse results is that it would make it easier to perform atomic operations (allowing for re-tries) over an unreliable transporation medium.

So, looking at the shortcomings of the existing API's I feel that they make it very difficult to perform operations such as:

  • Get a count of posts
  • Get a range of posts
  • Cycle through all posts
  • Retrieve attachments
  • Discover linked documents
  • Query for Trackbacks or Comments (ie: types of feedback)

The existing API's seem to make it easy to post new entries or to edit existing content - provided that you already know the address of it.  In other words, those API's do not lend themselves to auto discovery of content; and that's exactly what you need if you are going to go about writing a migration tool.

One thing that I should mention here is that, by talking about a blogging API I'm not talking about Rss.  Rss and blogging have managed to evolve separately and should remain separate. 

posted on 7/28/2005 6:36:16 AM ( 0 Comments )


Blog API's

The request came out recently for me to build in a migration wizard which would allow for users to easily migrate content from their existing blogs into SingleUserBlog.  This is a great idea and involves a problem which has come up quite a bit of late, that is... how to migrate content from one blog into another.  We've seen this repeatedly within the .NET world as people have struggled to move content between .Text versions and then again when they tried to migrate into CommunityServer; and I'm sure that we'll see it again when CommunityServer has its next major revision.  With the blogging universe having exploded I'm totally amazed that we haven't sat down to implement a common API for discovering and working with blogs - even more so given that we all see to agree on the virtues of having common API's and common Type systems.

The MetaWeblogAPI

Having heard of something called the MetaWeblogAPI [1] - which I knew was supposed to provide some sort of API based layer around blogs - I initially thought that building a single content migration tool would be pretty simple:

  • Locate the blog
  • Discover the category list
  • Import the categories
  • Discover the post list
  • Import the posts

Of course, importing a post would also involve the discovery of any attachments and metadata associated with it such as categorization and feedback entries.  Once I started looking into the MetaWeblogAPI though it was apparent that this was a very primitive and hard to work with API compared to what I would expect to be dealing with.  The API itself is based on XML-RPC which doesn't have the support that SOAP has within the .NET Framework.  To work with XML-RPC I'd have to locate a third-party library and use it.  The API is also very poor in that it has a very limited number of methods and the choices for working with data are virtually non-existant.  For example, to get a list of posts I'd basically have to do a "GetRecentEntries" call and specify a huge number so that they would all get returned (hopefully); also, the packet of data which gets returned from that call is extremely verbose as it contains all of the information about each post. 

Ideally, I would have options to retrieve either: A) just the id's of the post or B) just the post "headers".  This way I could bring back some data that I could start working with very quickly and it would make it easier to attempt things such as re-tries on much smaller packets of data.  For example, let's say that I do a GetLatestPosts(1000000) on Scoble's blog.  I'm going to get back one almighty packet of data.  Now, if I'm on a flaky connection and the connection drops out after I've *almost* retrieved all of the data, then I'm going to have to re-try again from the beginning.  If I was able to request just the headers - or even better, just the id's - of his posts, then I would have that data very quickly and could start doing requests on just individual post entries.

The Atom API

After briefly chatting with Chris Frazier - who has actually had to implement some of this stuff - it was recommended that I take a look at the Atom spec.  Having looked at the API documentation [2] it would appear that this spec. is obviously either incomplete or just in a very formative stage so I'll see what I can dig up on it over the next little while.

A better blogging API

I'll also do some searching over the next week or so to see what others have been discussing around this topic as it is obviously something which must have come up a lot.  Maybe we have to wait until industry heavyweights start to build blogging products into their core platforms before clear spec's start to emerge around what is needed from an API that would allow for the programmatic disovery and interaction with blogs. 

And then, who knows how long it will take for the current blog engines to implement that?

Links:
[1] MetaWeblogAPI: http://www.xmlrpc.com/metaWeblogApi
[2] Atom API draft spec: http://bitworking.org/rfc/draft-gregorio-07.html
[3] Atom high level: http://www.xml.com/pub/a/2003/10/15/dive.html

posted on 7/27/2005 5:42:42 AM ( 7 Comments )


Another SUB installation

Bruce Mack is a guy that I "know" through virtual collaboration over the past year or so.  We "met" after Bruce got interested in ProjectDistributor and then wrote a smart client which uses the PD web services to expose all of the functionality.

Throughout that time Bruce has also spent time showing me the benefits of software patterns.  Anyway, Bruce has now installed SingleUserBlog and is blogging.  You can find his blog here:

    http://blog.brucejmack.biz/

posted on 7/24/2005 8:35:29 AM ( 0 Comments )


SingleUserBlog source code now online

I've just released the first public version of SingleUserBlog which you can grab from here:

    http://projectdistributor.net/Releases/Release.aspx?releaseId=220

SingleUserBlog is the blogging application which runs my blog (this blog) and currently supports a FileSystem data provider as it's data store.  The main reason for writing this application was that I wanted something which was insanely simple - and I think that I have pretty much achieved that.  If you download it and run it for yourself, please let me know so that I can keep tabs on it.

The plans are now to release a .NET V2 version of it on an account that I just set up with http://Orcsweb.com.  I should have that online next week sometime I hope.  The plan will be to release it so that others can go online to try out the admin features and see it all online and play around with it.

posted on 7/21/2005 7:35:13 AM ( 1 Comments )


Added CommentAPI extensions to my Rss feed

The Rss feed for SingleUserBlog now includes several extra nodes which make it play better with good Rss subscription tools.  The new nodes include the wfw:comment and the wfw:commentRss nodes which provide links back to the location of comments on this site.  Specifically the wfw:commentRss node allows your aggregator to do a lookup and bring the comments back to you so that you don't have to go to my site to read them.

I also added the slash:comments extension which contains number of comments made to the specified blog item.  This is the thing which allows your aggregator to display the number of comments against each item.

You can read about the CommentAPI here: http://wellformedweb.org/story/9 and here http://wellformedweb.org/news/wfw_namespace_elements/.

posted on 7/7/2005 7:02:11 AM ( 0 Comments )