An excellent interview with Eric Raymond is now on IBM’S Developer Works, but one part in particular cuaght my eye.
dW: In your draft of The Art of Unix Programming, you talk about the Macintosh community and how the Macintosh community is merging, in a way, with the UNIX community. Are there projects where you’re actually seeing that happen?
Raymond: I don’t say that in the book and I wouldn’t put it that way. I would say that the communities are looking at each other’s stuff and beginning to learn some things.
dW: So are there shining examples of this kind of convergence?
Raymond: Well, I have one good one. There’s an audio editor called Audacity that I use as a case study in my book, which I think is a brilliant example of how you take the Macintosh ideas of discoverability and interface transparency and move them into a UNIX environment without losing the UNIX virtues in the process.
dW: The other thing that struck me about your book is that you talk about some of the problems with UNIX design. What do you see as the most pressing problems? And what do you see as the problems most likely to get solved in the near future?
Raymond: The most pressing problems that UNIX has right now, in my opinion, are not technical problems. There are technical flaws and gaps in the UNIX design. These are things that the hacker community can address. These are the sorts of things that we’re very good at addressing over time.
I think one gap that has been repaired quite recently is that file attributes are now part of the 2.5 Linux kernel. I went back and forth on this for years, but I now think that I understand that file attributes are extremely useful for a GUI environment. Basically, the reason is that there is a class of properties — things like “where is this application located on this desktop?” for which you want to be able to associate data with those applications — that have exactly the right semantics for file attributes. That is, they are persistent through user sessions, but not something you want to save in a tarball or export over the wire. And that’s exactly the kind of persistence that file attributes tend to have. So I think that’s one gap. I think we’re going to be able to do things that are equivalent to what the Macintosh resource fork does through the new file attribute feature. …
So Eric Raymond says that meta data or, as he puts it, file attributes, are important. Just as Mac OS X drops support for such meta data. So the Linux community learns this from Mac OS X, but where did OS X learn no meta data from?
So what role should meta data play in a modern OS? Does Mac OS X need it?