Tuesday, July 06, 2010

Open Source in schools — not an idle fantasy

One of the policies in the Pirate Party UK's general election manifesto this year was:

We will encourage the adoption of open source software in schools, so that children won't be reliant in the future on buying a particular software package from a particular company.

Here in the UK, I still get odd looks when I say I use Linux almost exclusively on my computers. A widely-held perception seems to be that Linux is an esoteric operating system that isn't capable of doing a lot of widely-needed tasks. Certainly many of my friends would never consider running it on their own computers (despite the fact they're almost certain to have at least box running Linux in their house — but I digress).

Open Source in schools is a particularly controversial concept. 'But how will school leavers be able to function in the Real World if they haven't been taught to use the "industry standard" software?' the detractors cry, referring of course to Microsoft Office.

The fact is, though, that Linux has been widely deployed in schools all around the world. The biggest deployment is in Brazil, where the Ministry of Education has installed Linux in labs used by 52 million schoolchildren nationwide — yes, that's fifty-two million — and it's been a great success. Not only does the 'Linux Educacional' distribution, installed in tens of thousands of school computer labs, fulfil the day-to-day needs of school ICT and computer science teaching, but has lead to a growing market for OEM Linux computers in Brazil. And no, their school leavers seem to have no difficulty whatsoever in adapting their IT skills for use in the 'real world' (whatever that is), as Brazil continues to have the strongest IT industry in South America.

Aaron Seigo mentioned this and other (huge!) educational Linux deployments in his keynote speech at this year's Akademy, the KDE developer conference. It seems to me that Linux — not to mention other great Open Source software such as OpenOffice.org, Firefox, Blender, Audacity and Inkscape — have already proven their suitability for use in schools.

Maybe it's time for British schools to step out of the muddy rut of using Microsoft everywhere 'because everybody uses Microsoft', and follow the lead of so many other countries in trying something new, exciting, and in the long run quite possibly both better and cheaper.

Friday, March 12, 2010

Blog migration

Since Blogger are discontinuing FTP and SFTP publishing at the beginning of May, I've now migrated my blog to being hosted by a Blogger "custom domain", http://blog.peter-b.co.uk.

Fortunately, I've been able to use a .htaccess file to add a mod_alias Redirect directive that ensures that old links to http://peter-b.co.uk/blog/ will continue to work. So that makes it a lot less of a hassle!

What was a hassle was figuring out the CSS to disable the Blogger navbar, since it completely destroyed the harmony of my site design. It's hard to believe that it's almost seven years old! I should probably break out the text editor and update it at some point, but after this long I can hardly remember how to use CSS and HTML; I've got a lot of catching up to do.

Banana and walnut cake

A cake recipe that I've had some success with recently is this rather delicious banana and walnut cake. It's dead simple, and takes very little time to make. There's one in the oven right now!

  • 450 g ripe bananas (weighed before peeling), mashed
  • 125 g unsalted butter
  • 150 g caster sugar
  • 2 large eggs
  • Half tsp vanilla extract
  • 50 g walnuts, chopped
  • 250 g self-raising flour
  • Pinch of salt

Pre-heat oven to 180 °C. Lightly butter a 25x10 cm loaf tin. Cream butter and sugar together until smooth and pale.

Add eggs one at a time, beating well. Fold in mashed bananas, vanilla and walnuts. Sift in flour and salt and fold in.

Spoon mixture into loaf tin, and bake for one hour or until a knife pushed into centre of cake comes out dry. Cool in tin for at least 20 min before turning out.

My chocolate brownies have also been popular recently, this time with the University of Surrey Mountaineering Club!

Saturday, February 20, 2010

GTK+ no longer supports Windows, apparently

When writing computer programs, I try to ensure that they are portable enough to run on as many different platforms as possible without modifying the source code. This becomes tricky when I'm writing in C and I want to provide a vaguely-modern-feeling user interface. Since about 2006, I've relied on GTK+, the basis of the GNOME desktop environment, as my GUI library of choice. A good example of a piece of GTK+-based software for which I'm a member of the development team is the gEDA project, a collection of tools for electronics design.

One of the attractions of GTK+ for me has always been its ability to be used on both X Window System-based operating systems (e.g. Linux and BSD) and on Microsoft Windows. Unfortunately, it seems that Windows support has now been discontinued.

Back in September, GTK+ 2.18 was released. Unfortunately, it contained a large regression which has caused some headaches for people working with GTK+ on the Windows platform (essentially, GTK+ applications would be completely unusable in some cases). Furthermore, a rewrite of some core GTK+ code inbetween 2.16 and 2.18 left the GTK+ on Windows infested with a host of other minor but annoying bugs.

Now, what normally happens when an Open Source program upon which literally thousands of applications and millions of users depend has a major stable release containing a large regression on one of the major supported platforms? Well, in most such cases, the software's developers figure out a workaround as quickly as possible and make sure that those affected know about it, and then make haste to track down the source of the bug, fix it, test the fix, and issue a point release or set of patches with which their users can obtain a working version.

Apparently not so in the case of GTK+. Four months later, GTK+ 2.18.x is still pretty much unusable on Windows, and the general consensus is to use 2.16.x. Dominic Lachowicz, a GTK+ developer, has is still warning people not to use 2.18.x on Windows:

Look before you leap. GTK 2.18 on Windows is very buggy.

The attitude of the maintainer of the Windows port, Tor Lillqvist, has been quite alarming. In comments on the GNOME bugtracker, he gave no impression of any intention of resolving the issues himself, saying:

You want ot use some new API present only in 2.18? Please then consider helping in actually debugging and fixing the problems in GTK+ 2.18 on Windows.

... perhaps you should just use the version of software as it was before the "introduction" of the bug? I mean, nobody promised you there would be any updates of Windows-specific functionality, or otherwise, in GTK+, right? So just use GTK+ as it was before "somebody broke it".

It's becoming distressingly clear that there is no-one in the current GTK+ development team with any particular commitment to keeping the Windows support in working order. Furthermore, it seems clear to me that the hostile and confrontational attitude of people like Tor will tend to drive away any new developers interested in taking the work on. It's already hard enough to get patches into GTK+ as it is -- even complete and tested patches tend to hang around in the GNOME bugtracker for weeks or months before being dealt with.

Going forward, I think that I'll need to find an alternative set of libraries that I can use for cross-platform GUI programming and get a well-integrated 'look and feel' with. The Qt toolkit has a good reputation for documentation and support, but doesn't seem to support applications written in C. Are there any other alternatives I've missed?

Monday, February 01, 2010

Project Postcard

I recently wrote a blog posting for the Pirate Party UK website about my latest publicity initiative: Project Postcard!

The election is fast approaching, and the time has come to really press on with raising our profile. All our members need to be doing their part if we're going to make an impact on the UK political landscape. I personally have been aiming to do something meaningful & constructive for the party every day -- and I recommend to you all to make a similar commitment. Even little things can make a real difference.

One way you might be able to help is to get involved with my 'Project Postcard' initiative. I'm shortly going to be ordering a few thousand professionally-produced postcard-like flyers, printed with information on who we are and what we stand for, as well as details of how to find out more.

Read the full article on the PPUK blog.