Sunday, July 31, 2005

The music and film industries

Due to too large a variety of copy-protection mechanisms for the normal consumer the keep track of, some of which prevent playing of CDs and DVDs on certain devices (inadvertently or deliberately), consumers can no longer be sure of being able to play a given CD or DVD they might have considered buying. Throw in single-region DVD players, and you've got consumer frustration: to prevent the experience of not being able to use an item that we've forked out 10 to 15 Pounds for, we simply don't buy.

As a result of this, the record industry will vanish, while the live music business will remain. And with the simultaneous demise of music television, we'll be seeing less of Britney and more of Wynton. I'll toast to that.

Sunday, July 24, 2005

Mockup for a LaTeX editor

You can write great apps in GTK, and this is an idea for an easy-to-use LaTeX editor.Edit:
There has been some discussion of this at

I also had a response from Jeroen Wijnhout, author of Kile, who said that the code-folding feature should work for larger sections now or in the near future.

I should probably have some GTK coders look over this, since Glade2 doesn't offer a text-folding widget.

Saturday, July 23, 2005

A file manager or desktop environment with version control

A quick google showed that I wasn't the only one who had been thinking this: the next generation graphical user interface needs version control inbuilt, so that you are always working with the head of a version tree checked out, and every "Save" is a commit. Applications must allow users to specify commit titles when saving. File managers must allow users to access previous revisions, and rolling back must be possible both at the application and file manager level. But here's what other people are writing.

Examples of how useful version control really is on the normal desktop - in fact, some of the physicists and statisticians in our institute are already using version control for their manuscripts.

Some of the screenshots of Mockup suggest that the developers may have caught on to the idea of version control integrated in the desktop (I looked in their very scarce and sparse specification docs and found nothing).

I can't really talk about Mockup without mentioning the very promising Symphony OS, which once again treats the computer as a device, with user friendliness benefits to boot!

And if you're getting into the looking glass, here's Syllable.

IRC logbot and whohas

I've finished the IRC logging bot to my own satisfaction; a few more tweaks are possible, but basic grepping and threaded execution to ensure responsiveness are there.

I've also already quietly released the second version of whohas, numbered 0.11. whohas is a utility for querying package databases of such distributions as Debian, Gentoo, Slackware, Arch Linux, Source Mage, and also FreeBSD, NetBSD and OpenBSD.

I'll be publishing the roadmap for whohas soon, and am thinking about writing yet another white paper (like there aren't enough already) about what "release", "repository" and "section" or "package group" mean in different distributions, and how to unify the concepts.

Tuesday, July 12, 2005

Why software vendors want to support Linux

Having taken a look at how hardware vendors may benefit in the near future from adopting GNU/Linux, I will now show why some software vendors should also do this.

Adobe is in the process of buying Macromedia. Some observers have surmised that this is because they can better withstand the pressure that will be put on them by Longhorn's technologies. Specifically, it seems that Microsoft will use the technology shipped with Longhorn to support Metro (an XML-based fixed document format) and Sparkle (Microsoft's answer to Flash; Metro, similarly, is a rival to PDF). Longhorn is thus a less fruitful platform for Adobe/Macromedia to develop for - Mac OS X is much friendlier in this respect. While Adobe and Macromedia stand to benefit from Apple's growing hardware market share, they must compete on the PC platform. The sweet thing about Mac OS X 10.4 Tiger is that it ships with sophisticated graphics functions built efficiently into the OS. In this way, Apple has done some of the work for Adobe and Macromedia, and is sharing the secret - Apple thrives on its innovative developer community!

So how can Adobe get the same advantage on the PC? With Linux! Linux gives software vendors the chance to influence OS development - the same functionality that Mac OS X provides with respect to graphics, could be implemented on Linux. In fact, most of the technology is there - it just needs consolidation, something that hackers are prone to neglect, and that can be difficult due to the large number of competing projects with similar objectives. I believe Adobe would be a very welcome directional force.

Monday, July 11, 2005

OS market development prediction

Let's have a little thought game. Let's suppose that when Windows Longhorn comes out, the users don't like it and Apple continues to pick up market share. What impact will this have on the OS and hardware market?

Quality PC makers like HP will be seeing their sales drop because the Mac platform is still tied to Apple hardware, and will be for some time - PearPC notwithstanding. For this reason, they will be looking for a better desktop operating system so they can keep selling their hardware. What gives? Linux. Although Linux does not quite run perfectly on some devices such as laptops and especially tablet PCs yet, PC vendors will be helping out to make it run even on those machines.

That way, they may end up building a desktop operating system that is more advanced than Mac OS X, depending how conservative they are in their choices of versions and how much extra work they are willing to put into QA. RedHat is very well placed with its Fedora distribution, which already covers much of the home desktop market, even in Europe. Debian is still a strong force, and Ubuntu will be the prime champion of the Debian way, because it's desktop, it's good and it's free. Gentoo is a possible choice for high-specs machines, Mandriva are in a hole again, and Slackware and Arch will be lingering in their specialist, Unix flavour niche. Suse causes users too much frustration, but alas, some hardware vendors may be unaware of this and will perish.

An interesting question, again, is Mono (see earlier post). Hardware manufacturers must stay clear of this, otherwise they may find that Microsoft's got them by the balls after all. This is why RedHat's choice to implement huge amounts of Java (which is nearly as good as C# aka Mono) in Fedora is smart and may give them a head start in the desktop race.

Not only will PC vendors potentially push ahead of Mac OS X in terms of technology, but they may find it works out cheaper, too, particularly as driver problems will be fixed in kernel development, rather than hardware vendors having to keep replacing faulty driver software.

The upshot is that Apple will be driving everyone else to become software-hardware vendors rather than pure hardware.

*nix configuration files always concatenatable

Linux and Unix configuration files that may need to be changed by the addition of extra programs, that is, files containing menus, mimetypes, startup script configurations etc. must not have any strong inherent structure, e.g. a header section of the file. Ideally, they would instead be perfectly concatenatable in any order, or at least, allow new programs to add lines at the bottom (by the >> operator) whose order does not affect operation. I suspect that menu configuration has already been more cleverly solved by the large desktop environments than to require programs to add their own menu items in the right places, but I'm just testing Arch Linux, and the configuration here is somewhat retrograde in that most of it is in one file, rc.conf, which is therefore highly structured.