Older blog entries for niksilver (starting at number 42)

It was interesting to read the OSDN/BCG survey of open source developers, suggesting that most are professionals spending about a day per week on one particular project. Also interesting comparing that with our own experience, in which we do have a number of developers from the open source community but certainly not fitting the profile suggested by OSDN and BCG.

But on closer examination it's not that surprising. The population sampled was those who are named developers on various Sourceforge projects. And usually these people are the people whose baby it was in the first place. So it's very likely that these people will spend an hour a week on the project... and surprising they don't spend longer. If they surveyed us they'd find a bunch of full time developers working 40+ hours/week.

In my experience those who come to a project later spend much less time on it. Not too surprising. We have a handful of contributors who spend maybe 4hrs/week coding various segment. More significant projects therefore are unlikely to get off the ground. Our Storix project is a lot fo work for one person, even though the idea of it ahs generated much interest. So I've created much smaller projects (sometimes well-defined bugfixing or feature enhancements) such as the Swing front end to launcher, our command line management tool. This is a postive benefit, but also a very well-defined and medium-sized task.

I note that Miguel de Icaza says Evolution had 17 developers at its peak. So Jtrix, with its full time staff plus sundry others isn't doing too bad compared to a high profile, easily-understood, less ambitious project like that.

Fascinating article in The Register today about how Miguel de Icaza wants to port GNOME to .NET, and generally make this the platform of the future. It's fascinating to hear this, and has some relevance to our own project, Jtrix.

.NET is about SOAP and it's about portable bundles of code ("assemblies"). Jtrix is still about a lot more than that, but it's good to hear someone recognise .NET's assemblies. I don't know too much about them, but from what MdI says their security features are much like setting Java's security policies. These work fine for Java applets, but I can see this being quite inadequate for practical purposes, and one will end up enabling all features because application-style programs (as opposed to applet style programs) need them. And then your system is compromised.

Additionally, I can see that all useful Windows applications will be platform-specific by addressing memory direct. .NET allows this and it will render a Linux MONO less useful than one would like. James Gosling noted this some time ago in an interview with News.com.

Jtrix runs everything in its own code space, and resources (e.g. disk) are kept entirely separate. Its aim is allow you to use your own PC as a commercial hosting environment. You need complete security for that. So it's nice to see people recognise the general idea, but it's a shame to see them focus their attention on what is, IMHO, a misguided direction.

Writing a small Beatrix application of my own. Just a small demo, but should help others see how things work. It also helps me see how things work, and how to improve my documentation. Some errors are just silly. Some require a bit more detective work, and that shouldn't be necessary for this kind of application. It means there are some gaps in my documentation. So all in all a good exercise.

Spent some time filling in the gaps in the Beatrix documentation, which appear to be large. The information is all there, but sometimes you need to be a bit of a detective to piece it all together. CryoBob suggested a kind of Q&A table, mapping "What do you want to do?" to "How to do it". That's a good idea and can act as a good reference. What you want to do (in human terms) doesn't always map to single class or interface. It's usually split up over several. So having a handy reference is a very good idea.

Among other things, yesterday I spoke to Jim, our CTO, about a very small class he has in mind to help make legacy systems available as Jtrix services. It's quite simple and very elegant. It involves setting a few fields in one class which then gives you a warrant for someone to access the service. The class then starts an HTTP server listening for a service bind request. This will come when you give the warrant to someone and they use it in a netlet. At this point your legacy application can talk to the netlet. Very simple. Requires a little bit of work, but should open up Jtrix even more.

More javadoc, which really is not fantastically exciting, but it does mean there's going to be a lot fewer people scratching their heads over our storage system thinking "Eh? That's dumb". Andy really does have a fetish for inner classes. Which are all very good in their place, but it can get silly at times. I cannot see the point of most inner interfaces. I pine for the simple things in life. I remember BBC Basic. Now *that* was a programming language...

Phew, long day continuing Javadoc, and tidying up some interfaces. At least I think it's tidying up... we'll see what happens when real programmers get to them. This is for Storix, our distributed transactional file system. Actually, it's probably a good thing for several people to run over the code. It provides a sanity check.

Spoke to CyroBob at the end of the day regarding Beatrix and his understanding of it. Looks like there are lots of gaps in my documentation. Not all that surprising since that's the least roadtested.

Spent the morning making a few corrections to How to write netlets after CryoBob went through it on Friday. It was good to see that his comments were thoughtful and well-directed, as that means he has a good understanding of the issues. Or at least as far as the document allows.

Today he's looking at Beatrix, our application framework. Some comments have already come my way, and it's certainly more complicated. Mind you, it allows you to do much more. We'll see.

Will spend the rest of today making sure our javadoc compiles without problems. A painful, but I think helpful, business.

18 Jan 2002 (updated 18 Jan 2002 at 09:38 UTC) »
CryoBob is now starting work on writing Jtrix netlets. Let's see how he gets on. In the past people found it difficult, but currently it's generally more streamlined and much easier to do simple things. Of course, it's more complicated to do more complicated things, but then it would be, wouldn't it?

Observed that experienced people try fiddle around with things to learn them better. CryoBob did this: "I tried to change X just to see what happened, and it broke. And I figured I think I know why...".

Site experienced a small surge after posting a "developers wanted" ad on sourceforge, for our redundant file system, Storix. Meanwhile still looking to fill our full time Java job here in the London office.

Trundling on with documenting the latest changes to the Beatrix framework, which makes it easy to write large-scale services. This is more important now because we have a design for our redundant storage system, Storix, which will be built in this framework, and developers will need decent documentation.

Also on the agenda is continuing the design of the One Node Wonder (is there a better name?). This is a simplified version of the Jtrix node, optimised for a one-user PC rather than a server cluster. Current problems include how to represent resources (disk, sockets, etc) which appear in multiple locations (i.e. multiple PCs).

33 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!