Interesting. I think MS

Interesting. I think MS has its work cut out for itself to build a large open source community anywhere near the sizes of Linux, GNU or Jakarta. Especially if its under a dodgy MS licence. All I’ve seen so far have been C# ports of existing Java open source projects (like NAnt, NUnit etc). Is there really much of a C# open source community out there?[James Strachan’s Radio Weblog]

As someone who’s turned most of their development attention to .NET (splitter), I’m feeling kind of isolated. OSS is totally alien to the existing MS community and the Java community view .NET as the plague. An umbrella is badly needed for the .NET OSS community.

How long until we see dotnet.apache.org? 🙂

[Joe’s Jelly]

C# is similar enough to Java that it isn’t hard to pick up for java developers who haven’t rejected it merely on the basis of its heritage. As companies (like Joe’s clients) start to demand .net stuff, developers coming in to .net who are used to the availability of OSS tools for java will probably start to produce equivalents for the .net world. Although what Microsoft were thinking with their first workspaces license escapes me. Unless they offer a compelling technical reason not to use sourceforge I think they may struggle. The community will decide, and it doesn’t really matter whether the tools are hosted on sourceforge, apache, or gotdotnet workspaces.

Java email redux

I am humbled, and impressed. Humbled by once again realising how much I don’t know, and impressed by how much others do, and how important human interaction is in what we do.

In one single comment, Chris has pointed me to at least three java related email projects I somehow managed to miss. I’d heard of ICEMail already, but forgot to mention it.

Must brush up on my google terms – its too easy to artificially narrow the criteria and not get what you were after. Google should just know what I want, not what I say I want!

So what do I want? Its more than just a mail reader. I have a ‘too many email addresses’ issue. I have several personal ones and a work one. I want to be able to aggregate all my personal ones and read them at work and at home. I want emails I write to be stored centrally, irrespective of where I am when I write them. At home I use WindowsXP for most things, and FreeBSD for everything else. Part of the ‘everything else’ includes my email. But I don’t want to have to switch chairs just to write an email. Fetchmail, Procmail and Mutt form a powerful triumvirate, and I can still fire up KMail if I feel like it and have it work. What I’d love is to have something like KMail as a cross-platform remote client, so I could use a nice GUI from wherever I can get a net connection, without having to lug my entire email directory around with me. It would have to be client-server. I don’t want to try and rethread a 15,000 message folder back and forth over the net. The server should do that and just show me the results.

The other thing I want (don’t ask much do I?) is actually where I started. The concept of a smart mail reader that is also a newsgroup, web page, rss, etc. aggregator that can index all my stuff and show me the relationships between things, sort of like ZOË taken to its logical extreme.

Then I just have the problem of what to do after breakfast… 🙂

Dreams and aspirations

Inspired by ZOË, and motivated partly by the fact that Mutt is still the best go-anywhere remote mail reader, I’ve been daydreaming about a cross-platform client-server GUI (not web based) java mail program with built in smart indexing and context sensitive threading and dynamic linking.

What have I achieved so far? I’ve got some very simplistic code that scans an mbox file and creates EmailMessage objects.

On the way I discovered that:

  • There appear to be no open source java libraries for parsing mbox mail files.
  • Mozilla starting work on a java email reader, called Grendel in 1997, but it seems to have died. There appears to be a lot of code in CVS, but most of it seems to be pre-java 1.2, and it requires netscape jars which probably aren’t open source.
  • There is apparently no official spec for the mbox format hence…
  • …the implementation varies significantly between applications and platforms. About the only thing you can assume is that each message starts with ‘From ‘ preceded by a blank line or the start of the file.
  • The ‘From ‘ address at the start of each message isn’t necessarily the same as the ‘From:’ header.
  • Jamie Zawinski (ex-Mozillian) has lots of useful and eclectic information on his site.

Quality of service

Late night ramblings…. Back to blogging… ahhhh.

I sorta mentioned my new server setup in passing before, but I’m using OrionServer again and I love it. I was thinking about slapping a hacked copy of Weblogic on the server so I can work and play in the same environment, but Orion is just so nice I decided to play nice.

-Russ [Russell Beattie Notebook]

Nice to have you back, Russ.

On Weblogic: Whoa, you’ve only got 4 gig of disk and a gig of RAM, are you sure she can take it captain?

On JohnCompanies: I received the following at 10 pm PST on a friday night, after signing up at 1pm. Impressed.

Hi,

We have a really nice welcome message that we send out to new customers for our FreeBSD product, but I haven’t finished writing the welcome message for our linux customers – I assume you’d rather not wait for that and just get an informal welcome.

…[account stuff skipped]…

P.P.S. We are having a scheduled maintenance tomorrow (saturday) night for about 20 minutes … this is rare and it is just a coincidence that it is happening the day after you sign up.

A hosting firm that actually keeps their customers informed? Remarkable.

Finally:

…we are very happy to have you as a customer…

I think I’m going to be very happy being one.

On hosting and domain names

I’ve been hanging on to darrenhobbs.com for a couple of years, but never done anything with it. I always felt it was a bit narcissistic somehow, don’t ask me why. Anyway, having discovered JohnCompanies thanks to Russell, and having suffered before from not having full control over my hosting I decided to take the plunge and sign up for a linux account with them. So hopefully in a few days http://www.darrenhobbs.com will go live. What shall I do with it?

And what do I use for an email address? me@darrenhobbs.com? mail@darrenhobbs.com?

Expectations

F*!?#&! FeedReader. I’m on the way out the door but before I leave I decide to check the RSS feeds I read. I open FeedReader and lo and behold all of my feeds are gone! Argghhh!!! On top of that I can’t find where FeedReader stores any of its data. Plus add to that the fact that when it was working it would run at around 85MB of memory when I was using it! FeedReader is out, manual reading is back until I can finish my own desktop RSS aggregator. [All Things Java]

Its locked up on me a few times, but nothing that bad. It does seem that programmers have a far higher quality bar than ‘lay-people’ when it comes to applications. Maybe because we know that it is actually possible to write decent apps that work as expected and don’t crash every 10 minutes?

Noise pollution

My HDD whine is getting louder. This can’t be a good thing. I started considering buying a new drive out of a concern that this one would die, now I find myself considering it just to get some peace and quiet. Seagate’s Barracuda IV gets excellent (ie. low) noise ratings. I’d mind less if the thing was more than 3 months old. Serves me right for wanting the biggest and newest. Who needs 120Gb anyway?

Framework coding

Still confused.

OFBiz Turning OO on its Head or Programming in the Large?

My take on all this is that “programming in the large” is a bit different that the usual programming. What happens is that abstractions that are quite similar to the usual procedural things become important. You simply can’t deny the importance of these Actions in webapp or gui work, however they aren’t the same thing as functions in C. The difference is that an Action (aka Command) can be persisted, sent as a message, suspended, undone, redone, stopped, cancelled, approved etc. These are not attributes that are associated with function in the procedural sense.

[::Manageability::]

Hmmmm. This is all starting to feel a hell of a lot like python crossed with scheme. I mean, we have taken a strongly typed language and side-steped all of the strictures of typing.

I’m not saying this is necessarily a bad thing. I love programming in python where typing is a run time thing, and coding is so quick. I’m just wondering why we are doing this Java? So we can be J2EE buzzword compliant?

[Brett Morgan’s Insanity Weblog Zilla]

Its the difference between framework development and application development. You’ve heard advice like ‘you shouldn’t need to use instanceof in your code’, and for application development that’s often true. You’ve essentially sidestepped polymorphism by using it. However, I find it really quite hard to avoid using instanceof or the functionally equivalent isAssignableFrom method call when I’m writing framework / infrastructure code. The whole point of frameworks is that they are generic, and the framework developer doesn’t know how it will be used by application developers. The ‘nnnAware’ interfaces from Webwork are an example of this (although they’ve apparently now been deprecated for reasons I don’t know). The point being that the framework can do the right thing without knowing the specifics of your implementation. But this power usually comes at the cost of explicit type-safety.