Refreshing BlogML Library

BlogML It's been over three months that I've reactivated BlogML project and am working smoothly to unit test existing code, improve the library, add new features and fix bugs from the past.

In this while I've tried to improve the project after a long time that we haven't had any new release. The result was good but at the middle of the process I found that I need to do more than this.

You may know that BlogML project comes with BlogML specification as an XSD file along a rich .NET library and a set of tools to work with specification via this library.

BlogML .NET library has been the most common way to work with BlogML and perform conversions between blogging engines and this library is powerful indeed.

One of the main negative feedbacks about BlogML project is the lack of good documentation to help developers and users. This is right and we agree on that. Although it's planned to improve the documentation for BlogML 2.5 but unfortunately nowadays I'm alone on the project and haven't been able to get assistance from others for BlogML 2.5 yet. My limited time and the amount of work to be done on the code stuff have stopped me from the documentation to some extent.

On the other hand BlogML library for .NET (which is the main part of user requests for documentation) isn't very self-explanatory. Most of the .NET frameworks, libraries and APIs that we're working with them in our daily works have a good self-explanatory structure that let us use them without reading any documentation.

For instance, I've written several Graffiti plug-ins and extensions while there isn't any rich documentation about its development and just asked a few questions from Scott Watermasysk on using some APIs. This is because of the simplicity of Graffiti APIs that let you develop for it easily.

But as I said BlogML library isn't very easy to understand and some parts of the API are hard to use without documentation. I experienced this before when for the first time I wrote a Community Server converter for BlogML 1.0.

Some parts of BlogML library can be much better and simpler than what they are right now and some major changes in the API can improve the overall design and structure.

The most important point that can stop a developer from applying such changes is breaking the existing code and everything that is built on top of it. I had to think much about this to decide whether I should break the current code and refresh the library or just keep it as is and only apply minor changes. Based on my experiences and our needs as well as the probability of future requirements I finally decided to postpone version 2.5 release and apply these changes so BlogML 2.5 will be a milestone with basic changes and a total refreshment that most likely helps developers to use it easier and faster. Simplicity is the main goal for this new design while behind the scenes I'll use many of the main codes that are already there!

As I have to apply these changes in a way that they don't make my work harder and let me manage the project easily, I will add things in a special order after finishing my work on unit tests and then will refresh the library and finally will add some new features to the code.

[advertisement] Axosoft OnTime 2008 is four developer tools in one: bug tracking, project wiki, feature management, and help desk. It manages your development process so developers can focus on coding. Installed or Hosted – Free Single-user license -- Free 30-day team trial.

No Comments : 02.26.08

Feedbacks

There are no comments yet...Kick things off by filling out the form below.

Leave a Comment