Category Archives: open source

image

Sun’s Media Summit

I’m at Sun’s Media Summit in San Francisco for a couple of days. It follows an analyst week, which prompted this great post from James Governor: Strong Leaders, Strange Bedfellows and The Art of War by Sun Two. Here’s a sample:

Jonathan [Schwartz] is quiet, understated and concentrates on running the business, rather than running down the competition. He may not have the raw charisma of his predecessor Scott McNealy but in my opinion he is a just as strong, if not a stronger character.  His decision to shell out a billion dollars MySQL also shows he is extremely ballsy – Wall Street is finally coming round to the idea of Sun as a going concern rather than a basket case, and what does Jonathan do? He goes and buys a little company from Sweden that builds an open source database which pretty much no one actually pays for.

So what would you ask Sun? Let me know, and if you’re quick I’ll try and get the question in.

Nokia acquires Trolltech,

Nokia is to acquire Trolltech, makers of the popular cross-platform Qt GUI API and widget set. Qt (Cute Toolkit) is used by KDE, one of the two most widely used Linux desktops. It is also used in many cross-platform applications.

The announcement states that Qt will continue to be open source:

We will continue to actively develop Qt and Qtopia. We also want to underline that we will continue to support the open source community by continuing to release these technologies under the GPL

Nokia says:

The acquisition of Trolltech will enable Nokia to accelerate its cross-platform software strategy for mobile devices and desktop applications, and develop its Internet services business. With Trolltech, Nokia and third party developers will be able to develop applications that work in the Internet, across Nokia’s device portfolio and on PCs. Nokia’s software strategy for devices is based on cross-platform development environments, layers of software that run across operating systems, enabling the development of applications across the Nokia device range. Examples of current cross-platform layers are Web runtime, Flash, Java and Open C.

Interesting acquisition. I have great respect for Nokia, but find its platform strategy confusing. It is the major partner in Symbian, the operating system used in its smart phones, but it also uses Linux, for example in its Internet Tablets like the N810. Nokia sponsors an open source development platform called Maemo, which uses the Gnome Toolkit, a competitor to Qt. I also met Nokia folk at Adobe Max in Barcelona, talking up its Flash support. The Flash player is included on all high-end Nokia mobiles.

And what’s this about “applications that work in the Internet”?

It is a shame to see another smart, independent company swallowed by a giant, but there could be worse homes for Qt. That said, I’d be nervous about Qt’s support for Windows CE. And what will happen to Qtopia Phone Edition:

Qtopia Phone Edition is a comprehensive application platform and user interface for Linux-based mobile phones.

The releases say Nokia/Trolltech will continue to invest in Qtopia. Will it become core to Nokia’s own range of devices, or sidelined? What are the implications for Symbian? Is Nokia worried about too much mobile development going to Flash?

However you spin it, it seems that Linux is ascendant at Nokia.

Technorati tags: , , , , , ,

How to debug into .NET Framework source code

Shawn Burke has posted the steps needed to step through the .NET Framework source when debugging your application.

Good news for a couple of reasons. The first is the most obvious: if you are getting surprising or perplexing behaviour, you now have a better chance of working out why.

Second, and perhaps more important, this makes it easier to submit bug reports or feature requests to Microsoft along the lines of “why does your code do this when it could or should do that“?

All going well, this should improve quality. For example, the .NET Framework library code is huge, and I’ve heard it muttered that there is considerable duplication within it. Separate teams working on different parts of the library may solve the same problem with different code, causing bloat and possibly inconsistency. Opening up the library to public scrutiny makes it more likely that issues like this will get fixed.

Daniel Moth has a screencast.

Becta’s report on Vista and Office 2007: wise advice, or mere polemic?

I read Becta’s report on Vista and Office. Becta is a UK government agency supporting IT in education. The report is a ponderous affair and tells us that XP still works, so why bother with Vista; and that Office 2007 saves by default in a tiresome new format that few other applications can open; and that free office suites like Open Office work well so why pay for something else?

All this is fair enough; but I’m surprised that Becta didn’t spot a couple of other things. One is that Office 2007 can easily be set to save by default in the old Office binary formats that pretty much everything can read. The other is that while ODF is indeed an ISO standard, it is also pretty awkward from a compatibility point of view.* So I’m surprised by this recommendation:

When specifying new systems, schools and colleges should normally insist on the desktop having access to office productivity software that is capable of opening, editing and saving documents in the international standard ODF, and setting it as the default file format.

I suppose the idea is that if kids come home with their homework on a USB key and find that their documents will not open on the home PC running Microsoft Office, that they just download and install Open Office. Fair enough I suppose; but why not just use .doc and .xls?

The report adds:

Becta did not conduct technical assessments of the merits of either the existing international document standard (ODF) or the proposed second international document standard (OOXML).

There is however a lengthy discussion of the inadequacies of the half-baked ODF converter add-in which Microsoft has sponsored. I agree; but I’m not sure why it merits so much space.

I would have found it interesting to see a bit more examination of the merits or otherwise of the ribbon UI in Office 2007; better, worse, or indifferent for education? What about overall usability and functionality versus Open Office? It would also have been good if Becta had considered the large market share Microsoft Office enjoys, especially in business. Like it or not, it is relevant to this discussion.

I didn’t see much attention given to security, which is perhaps the biggest single reason for adopting Vista versus XP (it could also be a reason not to use Windows at all). This is not only a matter of Vista being more secure, if it is, but also that it aims to fix the insecurity of Windows long-term by fostering well-behaved applications that will enable future versions of Windows to be more tightly locked-down. Not interesting in education? I’m surprised, since when I talk to IT people in education, security is one of their chief concerns.

I find myself wondering whether this is really a document aiming to offer wise and objective guidance to schools, or a more polemical report promoting ODF and open source in education.

I reckon there is a good case for promoting open source in education. However, considered as a report on Vista and Office 2007 this is a poor effort.

*PS: It is interesting to see what Asus has done with its Eee PC, which  actually gets an oblique mention in Becta’s report:

We have also noted the emergence of low-cost innovative ‘mini-notebooks’ that have been brought to the market running a version of Linux and a range of Linux-based applications including OpenOffice.org.

On my review Eee, which was supplied by RM for the education market, Open Office is set to save in the Microsoft formats by default. I imagine that Asus wanted to make the Eee fit seamlessly into a Microsoft environment if necessary. It must have been a conscious decision, since an untweaked Open Office install uses the Open Document formats by default.

Technorati tags: , , , , ,

Trying out SqueezeCenter and Jive (updated)

I took a look at Logitech’s Jive, a platform for smart remotes that link with its SqueezeBox players and SqueezeCenter (formally SlimServer) music server. Incidentally, it looks like all the names are getting the Squeeze treatment; even Jive is to become SqueezeOS. Personally I prefer Jive, but there it is.

So what is Jive? Let’s start by saying that it is the firmware for Logitech’s new remote, the SqueezeBox Controller, which is “coming soon” for $299.00. A hefty price; but Logitech is betting that users will love the new gadget. It is a world away from an infra-red remote that just sends commands to a SqueezeBox. This is a handheld computer which connects by wi-fi (no need for line of sight). You can browse through album art, tune into Internet radio, even run applets which might be games (Space Invaders anyone?), enhancements such as lyric display, or other utilities.

Long-term Jive is intended to have its own audio capability. In other words, you could plug headphones or speakers directly into the controller. Apparently the initial release of the controller will have an audio-out socket, but it will not be active.

It’s not much of a stretch to consider this as a (potential) portable MP3 player that could access your music from anywhere in the world, provided you have a fast wi-fi connection. All the main pieces are in place.

Although Jive can be called firmware, it is somewhat decoupled from the hardware. You can run it on a PC or Mac, and Logitech is thinking about implementations for other devices such as Apple’s iPhone. That will be an interesting test of Apple’s resolve in opening up its hardware to third-party applications.

Trying out Jive

I don’t actually have a Jive-capable remote, but got it un and running on a PC. It is all bleeding-edge stuff right now. Jive requires SqueezeCenter, also known as SlimServer 7.0, which is still pre-release. Furthermore, you cannot yet download Jive binaries, you have to check out the source and build it yourself. It is open source, as in “you can download the code”, but the license is more restrictive than with SlimServer, a fact that has prompted considerable debate. Jive makes heavy use of other open source libraries, including Lua, an embeddable scripting language.

I opened the provided solution in Visual C++ 2008 and it built first time, so no complaints there. See here for a guide.

The new SqueezeCenter looks smarter than its predecessor, and Jive looks good too. The user interface in the current build is clean and uncluttered. I used the arrow keys to navigate the menus. You can play audio stored in your SqueezeCenter library, or from the Internet. SqueezeCenter optionally hooks into an iTunes library, and everything is fine provided you don’t have any DRM-encumbered purchases from the iTunes store.

Jive is great if you want to control your Squeeze clients from an expensive remote, but it has competition from another strong feature of SlimServer SqueezeCenter, which is that you can use it from any old device with a web browser – like an Asus Eee PC, for example, or a SmartPhone. Finding the music you want is a lot quicker with a full keyboard, than with a remote. There’s no inherent reason Jive can’t support a keyboard as well, though you need a controller with a (soft or hard) keyboard. But note this little menu in SqueezeCenter:

This lets you use an alternate skin for SqueezeCenter, including some that are suitable for small devices.

I’m not alone in liking the keyboard input offered by the browser UI, but Jive fans in the Squeeze community point out several benefits to the new controller:

  • You pick it up and it just works
  • More responsive
  • Does not require SqueezeCenter to be running (for Internet radio etc)
  • Less geeky
  • Can be used one-handed

I suspect the Jive-based controllers will be popular, even if a few of us still prefer the browser.

There is still space for alternative rich clients for SqueezeCenter. The communication protocols are all public and as far as I know anyone is free to use them.

Editorial note: I’ve revised this article extensively since the first draft

Postscript: On the subject of alternative rich clients, I’ve just discovered Moose, which looks promising. Especially in conjunction with squeezeslave, which makes in effect a player as well as a controller. Snags: Windows only, and search is a bit clunky.

8GB Asus Eee PC from April 2008, Windows or Linux

RM has announced an upgraded version of its popular miniBook, also known as the Asus Eee PC. The details:

  • 1GB RAM (up from 512MB in the current version)
  • 8GB solid state drive (up from 4GB)
  • Same 7″ screen, webcam and built-in mic, speakers
  • Prices “in the region of” £229 + VAT for Linux, £259 + VAT for Windows XP Home
  • Available from April 2008

I would assume that the same machine will also be available from other vendors, with small price variations.

The Eee is already a great machine and having more space is nice, though it’s a shame that the biggest weakness of the Eee is not yet being addressed: the limited 480 pixels vertical resolution of the screen. This makes some applications and web sites hard to use, since few are designed for this size of screen. In some cases dialogs appear with no buttons; in other cases there is little working area left because of the space taken up by toolbars or header and footer panels.

Why Windows? RM says:

The introduction of the Windows based miniBook means that schools that already have curriculum software which is Windows based can add this to the miniBook. Also, schools with Microsoft Volume License agreements have a route to upgrade to XP Pro and enable network connection using Windows.

I can see that there is demand for this. On the other hand, Windows needs some tweaking in order to work at its best on the Eee. One of the issues is that frequent writes to the solid state drive are reckoned to reduce its life, so it makes sense to configure Windows without a swap file as well as cutting out unnecessary components.

Will the Windows Eee, which costs £30.00 more (plus VAT), come with an equally generous suite of bundled open-source applications, such as Open Office, as found on the Linux version? It will be interesting to see, though I doubt it.

It will be fascinating to see how take-up of the Linux and Windows versions compares, both in the education market, and more widely. I’d suggest that Linux is better suited to the device, but Windows has familiarity, compatibility, and arguably ease of use advantages. It will be a shame if Windows ends up dominating on the Eee, as it has given a boost to the visibility and adoption of Linux on the desktop.

Kim Cameron hacked, commenters make fools of themselves

Kim Cameron has an amusing post on the aftermath of his blog being hacked and defaced over the weekend.

The reason for the hack: a security bug in WordPress. More proof of the problem posed by millions of apps out there on the internet with no update mechanism in place. Security fixes are made available, but not applied. WordPress has improved this somewhat by introducing an alert when you log-in to an out-of-date installation, but it needs to go further and provide something more automated. Personally I recommend the Subversion install, for those with command-line access; I used it for the 2.3.1 update and it worked well.

But I digress. The amusing part of Cameron’s post is his link to the comments on a news report describing the defacement. I believe in the value of comments, but some of the leading news sites are afflicted by knee-jerk commenters with time on their hands, who twist every post into another salvo in the OS wars. An news item about a Microsoft “security” expert being hacked seemed an ideal candidate (though I don’t believe identity is the same as security). “This is a shining example why you should host on Linux + Apache,” says one comment.

As Cameron observes, his site and blog is hosted by a third-party and runs on FreeBSD + Apache.

Conclusions? First, the thoughtless commenters on this kind of site are doing the community a disservice, by discouraging others with more interesting contributions.

Second, it shows what some have to put with just because of their association with a particular company.

Third, keep your WordPress patched.

Technorati tags: , ,

OOXML vs ODF: where next for interoperability?

Gary Edwards of the Open Document Foundation has a fascinating post on the important of Microsoft Office compatibility to the success of the ISO-approved Open Document formats.

It is in places a rare voice of sanity:

People continue to insist that if only Microsoft would implement ODF natively in MSOffice, we could all hop on down the yellow brick road, hand in hand, singing kumbaya to beat the band. Sadly, life doesn’t work that way. Wish it did.
Sure, Microsoft could implement ODF – but only with the addition of application specific extensions to the current ODF specification … Sun has already made it clear at the OASIS ODF TC that they are not going to compromise (or degrade) the new and innovative features and implementation model of OpenOffice just to be compatible with the existing 550 million MSOffice desktops.

More:

The simple truth is that ODF was not designed to be compatible – interoperable with existing Microsoft documents, applications and processes. Nor was it designed for grand convergence. And as we found out in our five years participation at the OASIS ODF TC, there is an across the boards resistance to extending ODF to be compatible with Microsoft documents, applications and processes.

Summary: in Edwards’ opinion, there are technical and political reasons why seamless ODF interop cannot be baked into Microsoft Office. Therefore the Foundation is now working on interop with the W3C’s Compound Document Format, about which I know little.

Surprisingly, Edwards also says that ODF will fail in the market:

If we can’t convert existing MS documents, applications and processes to ODF, then the market has no other choice but to transition to MS-OOXML.

Edwards is thoroughly spooked by the success of Sharepoint in conjunction with Exchange, and overstates his case:

If we can’t neutralize and re purpose MSOffice, the future will belong to MS-OOXML and the MS Stack. Note the MS Stack noticeably replaces W3C Open Web technologies with Microsoft’s own embraced “enhancements”. Starting with MS-OOXML/Smart Tags as a replacement for HTML-XHTML-RDF Metadata. HTML and the Open Web are the targets here. ODF is being used as a diversion from the real end game – the taking of the Internet.

I find this implausible. At the same time, I agree about the importance of interoperability with Microsoft Office.

I would also like clarification on what are the limitations of OOXML / ODF conversion. Here’s a technique that does a reasonable job. Open OOXML in Microsoft Office, save to binary Office format. Open binary Office format in Open Office, save as ODF. The same works in reverse. Not perfect perhaps, but a whole lot better than the Microsoft-sponsored add-in that works through XSLT.  Could this existing Open Office code be made into a Microsoft Office plug-in, and if so, what proportion of existing documents would not be satisfactorily converted?

Note that Sun’s ODF converter seems to be exactly this, except that it does not yet work with Office 2007. It could presumably be used with Office 2003 and the OOXML add-in, to provide a way to convert OOXML to ODF in a single application. Some further notes on Sun’s converter here.

Gutsy Ubuntu and Precipice Computing

The good news: I’ve successfully upgraded two machines from Ubuntu 7.4 (Feisty Fawn) to the new 7.10 (Gutsy Gibbon). I followed the instructions here. The bad news: neither upgrade was without incident.

I’ll start with the server. I use this for SlimServer and for experimenting with interesting Linux-based software; it has no GUI installed. Towards the end of the upgrade I got this message:

Message saying Could not install the upgrades. The upgrade aborts now. Your system could be in an unusable state. 

Not good. I call this “precipice computing”. In the UK a few months back there was some fuss about “precipice bonds”. These are a type of savings bond that guarantees at least your money back, unless certain conditions are met, usually to do with stock market growth. The conditions do not look likely to occur, but if they do, all bets are off and you could lose heavily.

Computing is like this sometimes. You tinker with your system and safe, user-friendly options guide you every step of the way. Except that under certain circumstances they do not, and then you may be deep in the mire.

It turned out to be not so bad. Ubuntu automatically ran dpkg, a package management tool. It reported some dependency issues and suggested how I might fix them. This worked. It is all because I have been messing around with Fuppes, a promising UPnP media server that is not quite done yet. I had to compile this manually, which entailed installing a bunch of multimedia development packages, and it was two of these that tripped up the upgrade. I doubt this would have happened on a production server, and in any case one would not upgrade a production server so soon and so casually. Even so, it was a scary message.

How about the other PC? This one is a Toshiba laptop which I have written about before. I had it running sweetly, and there was really no need to fiddle with it, except that I need to try new stuff for my work. I ran the upgrade. I was presented with some difficult dialogs offering to remove “obsolete” packages. Naturally I had no idea whether these were really obsolete or not, but I allowed the upgrade to remove them on the grounds that I could always put them back later if necessary.

All went smoothly until the inevitable restart. Unfortunately the machine would not longer boot. It reported “Drive does not exist”, if I remember rightly. Fortunately I had seen this before. The upgrade restored the same wrong settings that it used on initial installation, and I had to edit the grub boot menu.

After that is was fine, except for a disappointing lack of 3D desktop effects, normally the most visible new feature in Gutsy. The desktop had gone a slightly deeper shade of brown (I don’t much care for Ubuntu brown) but otherwise little seemed to have changed. The Appearance Preferences did not offer anything exciting, like the rotating 3D cube effect when switching desktops.

I investigated. I went into the Synaptic Package Manager and installed compizconfig-settings-manager, following a tip from the Ubuntu forums. That helped; I now have an option called Advanced Desktop Effects Settings, and can select the Desktop Cube and more. Something is not quite right though. After the upgrade, I only had one workspace instead of 4. Apparently there is an interaction between the Workspace Switcher and the Compiz desktop effects. To add workspaces when Compiz is running, it seems you have to use the General Options in the Advanced Desktop Effects dialog, under Desktop Size. I set this to 4, then restarted the X server.

Now I had 4 desktops, and could sometimes, but not always, switch between them with a rotating cube effect. What was odd is that I actually seemed to have more than 4 desktops, but could not switch between all of them using Ctrl-Alt-Arrow. To do this I had to use the Workspace switcher. Even then, I managed to get into a state where I knew Open Office was running, but could not switch to it at all.

At this point I reminded myself that I don’t much like the 3D cube effect anyway. Disabling it again was no great loss.

Just a few minor problems, then. The next question: does the upgrade deliver anything of value? I’ll let you know.

Great for debugging: Microsoft to release .NET Framework source

Scott Guthrie has the details. As my title implies, this is great for debugging. There will be benefits for the Framework as well, presuming Microsoft listens when a developer says, “Why does your code do this and not that?”

Is this a big radical step for Microsoft? I don’t think so. Nor does it merit this kind of predictable backlash – Steven J Vaughan-Nichols saying that Microsoft is tempting open source developers to use its code and become vulnerable to lawsuits.

I recall an early .NET briefing in which an IT exec from the Nationwide Building Society (an early adopter) said how grateful he was to Microsoft for sharing the source to the .NET Framework. How come? Well, ever come across Reflector for .NET? If compiled .NET libraries are not obfuscated, you can easily decompile the code. Admittedly you will not see comments, but it is still pretty effective. As far as I know, the .NET Framework has never been obfuscated, so in some ways we already had the code.

I do understand the risks for projects like Mono, which seek to be clean-room implementations, but I doubt they are significantly greater than before. Further, I suspect that if Microsoft wanted to bring legal guns to bear on Mono, it is likely that it already could. Although Mono builds on ECMA standards, it implements plenty of stuff that is not covered by those standards. I have no idea whether it breaches any Microsoft patents; but I would not find it surprising. What stops Microsoft pursuing Mono? Mainly, I imagine, because it is good for .NET and therefore a benefit to the company.

Technorati tags: , , , ,