inicio mail me! sindicaci;ón

About me and .NET, Atom.NET and stuff like that

I decided to write this post just to get things straight and recall some memories of the past.

Since I still get emails about Atom.NET I think it’s time to say it out loud and clear: I don’t care about it anymore but I still think Atom is a good idea, though :-)

I repeat: I don’t have anything, whatsoever, to do with the library anymore. I sold it years ago to ToolButton Inc. so please just ask them for support or if they’re gonna release something anytime soon.

The only reason why I’m still listed in the SourceForge project page is because I can’t remove myself.

Now let’s recall those memories I was talking about.

I started Atom.NET at the end of 2003. At that time I was foolishly hooked up by things like Microsoft .NET and XML. Now I think that’s one of the worst matches ever but let’s not digress…

In 2003 MS .NET was two years old I think and I was on my way to change my desktop operating system from Windows to Debian Linux but one day the hype got me and I gave C# a try and soon after that I postponed my switch.

Maybe I was searching for a reason to stick with Windows (which I didn’t really like anyway) and since the unborn Ubuntu or Apple’s OSX were not on my radar yet, I stopped the clock and gave the new language a try.

I soon became one of the most enthusiastic contributor in the Italian .NET user group jumping from one conference to another, from one workshop to another and post to newsgroups or forums and post and post and learn and post.

I even happened to receive a kind letter from Microsoft Italy for my contribution with a nice book bundled to drain the thirst of knowledge I had.

.NET was all I was searching for to develop applications on Windows. But some things were thankfully going to come in the way: Python, OpenSource and the healthy part of my brain.

In the second quarter of the year 2003 I did find a job as a .NET developer in a Windows oriented Web firm (I said it all) and although I wasn’t really shining as a .NET coder due to the newbieness on the field they hired me right away to create ASP.NET custom controls and something else.

The people there were mostly great and young but I soon realized my way of thinking was miles away theirs. They didn’t really care about cross platform, standards support, Linux, OpenSource, Python and I started feeling bad with myself so I guess my performances at work dropped down and after a while I resigned. It was a summer job anyway so no one complained.

That experience taught me something: never, never ever use only proprietary technology that can lock yourself in somewhere unless you have no other choice. At least this is Lawrence’s opinion.

I know there’s gazillions of people perfectly happy with proprietary stuff and I’m too because I use a Macintosh now and I’m neither a Microsoft zealot nor a FOSS one. I choose technologies according to my personal tastes, technical reasons and adherence to public domain standards.

I didn’t, by the way, stop to code in C# but I had been hired in a FOSS based startup to work with Python, Linux and all the things I technically enjoyed the most. So my language for fun became the one to work with and C# replaced it (with not the same fun ratio) because of what’s going to become the first library to handle Atom in the .NET world.

Atom.NET was already in my mind and on paper but I honestly admit I don’t remember the exact moment when I started coding it.

The reason why I did that was to learn something more from .NET, make use of the many books I had (most of them not purchased by me) and bring Atom to the .NET masses. They were the days of the rising of the Atom syndication format so I joined the bandwagon and created a library to handle Atom 0.3 (1.0 came later in time).

I think the first implementation was based on .NET’s XmlReader, a pull parser, but later I switched to XPath and a little plugin architecture.

I made the first public release in January 2004 with only a feed generator, then after a month I wrote the first parser, then after 20 days I rewrote it basically from scratch introducing a plugin architecture, using XPath and something else I don’t remember. I also enhanced my library with some custom XML stuff made by MS MVPs sending a couple of patches.

The latest public release was in July 2004 (I was already caught up in the Python world).

I really felt better after leaving the dotnetty-we-all-think-xml-is-the-cure world.

A year and a half later a Canadian private company, Toolbutton Inc., offered me money to sell them the library and the intellectual property. Since I had no use of it or .NET anymore I soon agreed and in December 2005 Atom.NET was no longer mine.

I could have sacrificed a couple of lambs to the gods but I thought it was too much :-)

The library before the acquisition ended up in various places: an Xml SDK, FeedJumbler, inside a feed reader and various articles. It was quite a success to be the first project of a .NET newbie. It lasted one year and a half.

One year and half without any kind of community feedback. That was absurd because I had tons of download and usage testimonies. But hey, I didn’t care and I surely do not care now. The MS .NET community didn’t get the OpenSource spirit and it seems they still don’t get it very well.

I’m now happily using other technologies and you all know what I’m talking about.

Atom.NET is no longer mine

I write this post to notice that Atom.NET is no longer mine. It’s property of Toolbutton, Inc. in Edmonton, Canada.

If you have any kind of requests about the library, ask to the support service of Toolbutton, Inc.

Atom.NET 0.4.3

Atom.NET 0.4.3 is out, here are the major changes:

  • added xml:base support
  • merged XPathNavigatorReader.cs and XmlNamespaces.cs from mvp-xml library
  • Utils.cs: added a public GetVersion() method to obtain the version of the assembly at runtime
  • fixed a bug in AtomPersonConstruct parsing
  • AtomFeed.cs: added a Uri property for an easy identification of the uri of the feed
  • AtomEntry.cs: added a Uri property for an easy identification of the uri of the entry
  • added Load(System.Uri) for both feed and entry element
  • updated nant build file
  • various bugfixes (see the cvs changelog)


You can find the detailed changelog here.
As usual: homepage, project page, download.

Adding support for Xml Base to Atom.NET

Before making a new release of the library I wanna try to add the support for Xml Base. The problems are described in the final part of the recommendation:

The XPath [XPath] data model preserves neither base URI information nor the boundaries of external entities and thus is insufficient to support resolution of relative URI references within these entities to be resolved correctly. This includes relative URI references in xml:base attributes.

So, since I heavily use XPath I have to think a way to handle it… maybe I could track xml base attributes manually and add their values to compose the absolute uri… I’ll think :)



UPDATE: xml:base support has been committed into cvs with a lot of bugfixes :) Refer to the changelog for the news.

Atom.NET grows with Mvp-Xml

Atom.NET (the cvs version, but the new release will be here soon) grows with the integration of part of the Mvp-Xml library, an effort made by various Microsoft’s MVPs to enhance .NET System.Xml support. Thanks to Daniel Cazzulino (XML MVP) for the support.

I’ve also added an example made in VB.NET by Russell Lindell. See the examples page.

Atom.NET mailing list

After some requests and suggestions I decided to open a mailing list about the Atom.NET project.
The main page is: https://lists.sourceforge.net/lists/listinfo/atomnet-discuss

Atom.NET 0.4.1

Nothing new since the lasta change in the cvs tree (but there are few changes since the last release), only a service release.
homepage, project page, download 0.4.1

Atom.NET and downloads

The number of downloads slowly grows day by day and only few have told me for what (s)he uses the lib. It could be nice to have more feedback so I can add a page for the “projects” in the Atom .NET website. In this way the various projects can gain some visibility and I can keep up to date that page. Bye!

Atom.NET 0.4 release

I’ve released the 0.4 version of the library. It’s a big rework against the past version.
See the website for more infos: http://atomnet.sourceforge.net

Atom.NET homepage bugfixing

I’ve fixed a couple of things in the Atom.NET homepage, not it validates against XHTML 1.0 Strict DTD and againt the W3C CSS validator. Someone told me that the page looks like a mess in IE5 for Win but… I don’t care, it’s too buggy as a browser… so let’s upgrade to IE6 or (better) change browser (try Mozilla Firebird). Bye!

Next entries »