Martin @ Blog

software development and life.


Archive for the ‘Linux and OSS’ Category

Improving weblog

As I mentioned in my last post, I have a little comment spam problem. This problem resulted in over 30.000 spam comments on my weblog (most of them are deleted now, but still some 2000 remain). The problem is that there are actually some non-spam comments on my webliog (yes, it seems strange, but it is true 🙂 ). Because most spam comments are on only a few posts, it would be helpful to ‘mass edit’ the comments of one post. In current versions of WordPress, this is not possible. So, I created a patch which enables this (it was pretty easy). During the creation of this patch, I noticed that the source of the admin part (I didn’t look at the other parts) of WordPress is a bit of a mess. Different kind of block separators are used (both brackets and ‘endif’s) and the commenthandling should be abstracted to some classes (it is now in a very long php-file without any functions). I expected the WordPress code to be cleaner than this. Even some ‘low profile’ php projects have cleaner source code. The ‘comment management’ code is duplicated in at least two files…

I also installed some anti-spam plugins on my weblog. I hope these will block most of the spam. I am also tracking some visitor statistics, for which I’ve created a plugin (not available yet for the public, because it is not finished yet).
I also discovered that my current archive goes back to the beginning of 2005. However, I’m already blogging since early 2004. I thought I lost most of these posts during a harddisk crash, back in 2004. In a recent cleanup of my harddisks, I found a very old databasedump of my weblog, with posts from the start of my weblog until the beginning of august 2004. I’m planning to import these posts in the current archive. This is not very straightforward, because the database id’s overlap with the current posts, and also the categories are different than now.

Management overkill at Microsoft

Miguel de Icaza of Novell, pointed to a article of usability blogger Joel Spolsky. This article is about the overly complex shutdown/logoff/hibernate/.. feature in Windows Vista. While I don’t have Vista, I didn’t notice this before, but it seems it is a nice example of flawed usability (to many choices for a thing which doesn’t require choices at all). Interestingly, one of the developers at Microsoft who worked on this, wrote a reaction on this article. According to this article, the brokeness of this feature is caused by overly complex development processes and a large number of management layers which makes the development process more like a bureaucratic process of making compromises while it should have been based on the thing the user wanted and facts derrived from usertesting (after, of course, creating reasonable prototypes.
In the blogpost of de Icaza, he also mentioned that in usertests at Novell, they discovered that a search box in a start-menu (Novell has developed a Windows-like startmenu for Gnome) should be at the top of the menu instead of the bottom, because users won’t notice it when it is at the bottom. It makes one wonder (if this is true) why Microsoft decided they should put the search box at the bottom of the menu. But then, I realised that a large number of Windows usability aspects seems to be decided by engineers and not tested. For example, creating a cd is not very straight-forward in Windows (try to find the ‘burn’-button in the Explorer (no, it isn’t there, it is only visible when you open the ‘cdwriter’ from via My Computer)).

I think it is safe to conclude (again) that Microsoft simply has become to large to develop software efficiently. While this could already conducted by the fact that it took five years to develop a ‘new’ OS which almost adds nothing really new to the existing products, stories like this prove this. Maybe they can develop ‘good’ software when they fire 90% of its staff… Open source communities (like Gnome and KDE) prove that is possible to develop similar software with much lesser developers (KDE has approximately 3000 contributers, which are not all developers. I don’t know the numbers on Gnome, but I guess it is similar). Only on Vista worked 10.000 developers (according to Microsoft).

An Apple developer also describe the process of the shutdown/logoff feature.

New Linux kernel

Today, a new Linux-kernel is released. 2.6.20 does come with Playstation 3 support. Also, this is the first kernel with virtualization technologies integrated. KVM and support for hypervisors/paravirtualization are now included in the kernel. See a list of features here.

Computer Science dying?

Neil McBride, a principal lecturer in the School of Computing at De Montfort University, has an interesting article about the feature of computer science at universities. He claims that the current CS-courses are disconnected from the reality. IT-workers hardly develop new systems from scratch, but has to cope with existing systems and are doing less technical work, but more social and business related work. This is mainly caused by the fact that computers are not mysterious anymore. A few decades ago, only at universities computers were common and it was a true art to get a computer doing something useful. Today, an eight-year-old can design and use a robot without programming. On the other hand, in countries such as India and China are full with graduated programmers working for a much lower salary than ‘western’ programmers.
He claims that coming years CS-courses, like the one currently existing, have to change. He doesn’t come with a prefixed solution, but points out some ideas. At his university, the CS-degree does not assume programming as an essential skill, other skills are more important for a computer scientist. I’m not sure if I agree with this, because I think an understanding of the fundamentals of programming are relevant in order to understand computer related problems and to think of sensible solutions. I think it is important for current CS-students not to focus on the technical part only, and to develop a broad skillset. It is important to understand businesses, a little bit of psychology and market developments. During my study I saw a large number of students thinking that it is sufficient to have knowledge of systems which are currently used (mostly the Microsoft productline, consisting of Windows, Visual Studio and Office). However, it is not very likely that in about ten years, this is the same. When you asked them questions about open source projects, they turned it down with statements like ‘it is to difficult’ or ‘… doesn’t run on Linux’. They clearly doesn’t have any knowledge on this part of the IT-market. In my opinion it is deadly for a CS-graduated to be this narrow sighted.

Talk about business models with KDE

Last Thursday, I went to a talk organized by the OSBC about how to use open source software in a business. The talk was given by Sebastian Kuegler, one of the members of the KDE Marketing group. The talk was very interesting and the questions asked by the audience were also very interesting. I think there is definitely a growing interest in open source in common (small) businesses, which is a good thing. However, there are certainly some gaps in the total product open source can offer. Especially in the marketing department there is a lot of work to be done. It seems to me that KDE is a little bit more ready for adoption in businesses than Gnome is. They seems to have a better message prepared for the public, with clear solutions for independent software vendors.

Some more on OpenXML

Migual de Icaza wrote a lengthy article on the Open Document Format vs. OpenXML discussion. One of his points is that the size of the OpenXML specification is not a problem, because ODF lacks essential parts in the specification of the spreadsheet document format, which makes it impossible to implement a spreadsheet solely based on the ODF specification (the specification on formulas is missing). OpenXML will probably by sufficient to implement an office application ‘from scratch’. I think this is a reasonable observation, and therefor I think the OpenXML specification isn’t that bad after all. Another point he makes is that first everybody was complaining about the fact that MS did not disclose the specification of its file formats, and now the company does, people are complaining it is ‘too much’. De Icaza: “If anything, if I was trying to interoperate with Microsoft products, I would request more, not less.”. I think he has more knowledge about these issues than I have, because he was one of the developers on the Gnumeric spreadsheet, which was one of the first non-Microsoft applications fully compatible with Microsoft Excel’s document format.
Another issue he mentions is that ODF is not perfect, and that a standardization of OpenXML is not a real problem for the success of open source software. He points out that open standards in general are a Good Thing and that has that point as clear advantage over Microsoft Office (which uses closed standards until the release of Office 2007). This made it a little bit easier to get governmental organizations using instead of MS Office. Now that this advantage is not there anymore, open source software should compete on technical grounds instead of political grounds.

Watch out for OpenXML

Jono Bacon, community manager of Ubuntu, calls everybody to protest against the standardisation of Microsoft’s OpenXML format as an ECMA standard and European ISO/IEC standard. While I’m not very involved in the discussion of the various word processing document formats, I think it is better that everybody uses one common standard. Because OpenDocument was the first of this kind of formats to become an international standard, I think it is reasonable that everybody uses this standard. I think it is not a good idea to let Microsoft again decide about the standards for the document formats used in word processors (and other office software), because the prove in the past that they do not like to let others use their format and seems to be incapable to define a decent standard.
According to Jono Bacon, the OpenXML standard is 6000 pages, but Microsoft is trying to make it a standard using a ‘fast track’ procedure.

Interesting article on Microsoft’s marketing strategies

This article is about the ‘vapour ware’ strategie Microsoft uses in order to push products from other companies of the radar. The article specifically tells the story on Microsoft’s Cairo, a product which never appears on the market. The article describes how this story resemble the current marketing buzz Microsoft is generating around Vista. Interestingly, it seems that Microsoft promised a ‘object oriented filesystem’ already back in 1993, but seems to be incapable of delevering such a filesystem even now in Vista (WinFS would be a part of Vista, but eventually was not of high enough quality to be shipped with Vitsta, according to Microsoft). When you read such an article, you’ll be almost ashamed for believing all the articles an publications on Microsoft products in the early nineties.

A ‘must read’ for Microsoft lovers and haters (I hope the first group will get to its senses after reading this 🙂 ):

Linux with Beryl: almost as good as Mac OS X

I’ve used Mac OS X almost exclusively for about 1,5 year. I especially liked the nice effects and the fact that things ‘just work’. Now, since a few weeks, I’m using Ubuntu Edgy Eft on my laptop and this week installed it on my old Athlon PC with Nvidia GeForce 4 graphics board. I enabled Compiz this week (see previous post) and now installed Beryl. This last engine is even nicer than Compiz (but according to the changelog of Compiz, a lot of the features of Beryl are also available in the latest development versions of Compiz). Beryl makes Linux almost as usable als Mac OS X. The software was already available (Firefox, Thunderbird, Gaim,, Eclipse, Gvim, The Gimp, Inkscape and Xchat are the programs I use the most) but with Beryl the usability and visual effects are almost as good, and sometimes even better. Especially the Exposé emulation and the trailfocus is very nice and actually improves the usability. I also installed Beagle and Deskbar. I have Beagle installed because of the engine, and use Deskbar as my main search program. This way, the functionality of Deskbar is similar to Spotlight on the Mac, and allows you to search for documents, e-mails, programs, chatlogs, webpages and much more. Finally, there is Network-manager which makes it easier to configure your network and especially makes it a lot easier to use wireless networks with WPA en WEP encryption.

Unfortunately, most of these tools are not installed by default on Ubuntu Edgy Eft, however, Feisty Feist (version 7.04) of Ubuntu, will include most of the stuff I mentioned in this post. At least there will be 3d desktop acceleration, beagle, network-manager and (I assume) Deskbar. As a bonus, the Ubuntu developers aim to improve the multimedia support in Ubuntu. I think this last point will make Linux even more usable for the average person than ever.

Ironically, I stumble across the news that Gartner thinks that Mac OS X is more attractive for businesses as a desktop operating system than desktop Linux. While I have the opinion that both Mac OS X and Linux are more usable than Windows as desktop operating system, I’m not sure that one of them is better than the other. Both are based on Unix, and as such have some obvious advantages over Windows (most notably a better command line shell and better security model), but I think they have both their specialties. Mac OS X is more suited for people who work with proprietary software, such as Photoshop, InDesign, Illustrator and MS Office, while Linux is a better platform for developers (although Mac OS X could be used for this as well, but requires some more fiddling because of the lack of an integrated package manager such as RPM/Yum or dpkg/Apt/Synaptic.

Compiz on Ubuntu Edgy Eft

Today I managed to get Compiz working on my computer. Compiz makes it possible to use OpenGL for rendering your desktop, which makes it possible to add all kind of cool effects. It didn’t take very much time, but some driver troubles made it a little more difficult then expected. I have a nVidia GeForce 4 Ti4200 videocard in this computer, so it was required to install the binary nVidia driver. While this driver is shipped with Ubuntu Edgy Eft, it is necessary to install a newer version. Using this topic at the Ubuntu Forum, this was not very difficult. After some minor modifications of /etc/X11/xorg.conf (enabling Composition and adding Option "AddARGBGLXVisuals" "True", see this topic) everything works. Since the last time I tried AIGLX, there is a lot improved. The speed is much better and there are a lot more nice plugins, like wobbly windows, a rotating cube (for desktop switching), easy to configure transparent windows, a cool alt-tab window switch effect and an Exposé clone.

Exposé clone

You are currently browsing the archives for the Linux and OSS category.