Time for a New Distro

Recently, I upgraded my work laptop with an SSD disk.The laptop, a Lenovo Thinkpad T510, has been pretty reliable but getting a bit long in the tooth. A conventional 2.5″ disk three years old is a cause for concern if used daily, and anyway, SSDs are amazingly fast these days. It’s almost like buying a new computer.

I should also mention the Nvidia Optimus graphics card. It’s basically two cards in one, an Intel graphics chip for the daily stuff that doesn’t require much graphics processing and an Nvidia chip for the stuff that does, the idea being that the OS switches between the two to either save battery or boost performance.

So, anyway, while I simply cloned the Windows partitions from the old disk (using Acronis software), I eventually decided to try a new Linux distro rather than fixing the cloned Debian Sid I’ve been running since 2010 or so. The Debian system was spread out over several partitions, which caused problems when booting the cloned system–apparently UUIDs changed when cloning, crashing the system.

I wanted something Debian-based, of course. Apt-get rules and all that, and Debian is pretty hard to break even if you run an unstable version of it.

First, I tried the new Linux Mint Cinnamon distro (v 17), having heard some very good things about it. The installation went without a hitch and I was soon able to boot into the desktop (what a pretty one, btw) using the open-source Nouveau display drivers. They were OK but not great, so I decided to replace them with Nvidia’s proprietary package and something called nvidia-prime that would allow me to switch between the two graphics chips. This seemed to work well, until I came to work the next morning, placed the laptop into a dock and booted using an external monitor only.

No desktop appeared, just a black screen.

Opening the laptop’s lid, I discovered that the desktop was actually there, after all, but only on the laptop screen. Nvidia Settings, the helper software that allows you to configure the X server and screens, was broken and so I couldn’t use it to configure the monitors. The Cinnamon display settings would only share the desktop between the two screens but not allow me to only use the external monitor.

Changing from the Nvidia chip to the Intel one did not significantly change this, but introduced a new problem: I no longer had the option to change back to Nvidia.

I looked around to see if there were newer Nvidia packages around, or perhaps a newer kernel, since that’s what I would always do in Debian Sid; there would frequently be something in the experimental branch that would help me. Linux Mint, however, while Debian-based, is far from Debian Sid. It is meant to be stable, and anything, um, unstable would have to come from somewhere else entirely.

I found a 3.15 kernel from a Ubuntu branch and installed that, but Linux Mint would then insist that a 3.13 kernel was actually an upgrade, so I gave up and realised Linux Mint wasn’t for me after all.

I then spent the following evening (and night) installing and testing Ubuntu 14.04 in place of Linux Mint, as a Google search suggested nvidia-prime would work out of the box in it. It did, but after a few hours of fooling around with Ubuntu, I realised I truly hated Ubuntu’s Unity desktop.

Discouraged, I wiped Ubuntu from the disk in favour of Debian’s Testing branch, but that didn’t go well. I downloaded an ISO, remembering that Debian’s installer would not support WiFi cards during the install, only to discover that they had a) switched to XFCE from Gnome as their default desktop and, more importantly, b) my WiFi card was still considered bad as it was non-free according to Debian’s rather strict criteria and so the firmware was not on the ISO and I had no wired network hooked up to that laptop.

I could have used the Windows partition or my Macbook Pro to download the missing firmware, of course, but I got annoyed and wiped the disk again, now installing the new Kubuntu 14.04 instead.

Which is where I am now. Kubuntu also handles nvidia-prime out of the box, but it also has the (for me) familiar KDE desktop. It’s not perfect (the system fonts, for example, are ghastly and I have to do something about that very soon) but it’s good enough for now.

Now, you may be tempted to point out that Nvidia Optimus works out of the box there, too, and with more finesse, but if so, you are missing the point.

Linux is fun, and the very fact that there are so many distros out there speaks in its favour. If something in Windows doesn’t work for you, you won’t have a Windows alternative. Well, you have Windows 8, but seriously?

ProXist Documentation, Etc

My XProc abstraction thingy for eXist, ProXist, is not the most well-documented open source project there is, but at least there is now something to read. It’s little something in DocBook, just a first draft and terribly incomplete, but something that I’m hoping to make more complete, given enough time.

I also feel it’s time to ProXist it as an eXist app rather than a set of misplaced collections.

Paper Woes

I managed to submit my Balisage paper on time, in case you wondered.

Also, I still think my basic idea is a good one. It’s simple and, I think, useful. So simple, in fact, that I’m worried that everybody but me thinks it’s perfectly obvious.

::sigh::

Just A Few More Days

The Balisage paper deadline is approaching fast. Deadline is on Good Friday, which is three days from now and close enough to keep me busy until some decidedly ungodly hours come Friday night. Basically I’m interpreting “April 18” as “early morning, April 19, GMT”.

My paper is, so far, a study in procrastination. There is an angle bracket or two, and possibly even a semi-intelligent thought, but most of all my long days so far remind me more of my uni days and approaching exams, when any excuse from sorting spoons (I had two) to counting dust bunnies was enough to keep me away from the books, than a serious commitment to markup theory and practice.

It is coming along, though.

Linux Ready for the Desktop and All That

My recent XML Prague presentation ran from a Linux partition, the first time in a while I’ve used Linux for presenting anything. The reasoning was simple; I’d developed the accompanying demo on Linux, on a server on localhost, so it would be much easier to just write a presentation in Open Office than to move the demo to something else.

It wasn’t.

I’d fixed every bug in the demo, styled my web pages in an aesthetically pleasing manner (well, for me), and carefully prepared an XML Prague presentation project in oXygen with only the files I would need to show, making sure that they’d fit without scrolling when projected in a lower resolution. I’d bookmarked the important code, and I’d folded everything else. My demo was in great shape.

What I didn’t do beforehand (even though I actually meant to) was to test my Linux laptop in dual screen mode, mirroring the laptop screen to an external monitor using that lower projector resolution. That, of course, was what failed.

My talk was immediately after a coffee break so I figured I’d hook up my laptop immediately after the last talk before the break and test all this. How hard could it be?

Well, no mirroring in that lower resolution. Mirroring in a higher one (the laptop’s native resolution) was possible but of course, the projector wouldn’t work in that resolution. They usually don’t. Dual screen mode, outputting two different screens, didn’t work because I wouldn’t be able to see on my laptop’s screen what was being projected for the audience. I tested pretty much every setting there was but to no avail.

And then the (Gnome) window manager decided it couldn’t take the abuse any longer and crashed.

I rebooted into KDE, hoping it would fare better, but all I got for my troubles was another crash. Not the same software, mind, but something or the other in KDE. I hadn’t really tried anything very dramatic, I’d simply changed the display modes a few times.

So I rebooted again and accepted my faith, booting into Gnome and using the dual screen mode where I’d be flying blind unless twisting my head all the way back like that poor girl in The Exorcist, trying to run the demo from the laptop’s touchpad in front of me while hurting my neck to see the results on the large screen behind and above me.

If you’ve watched the conference video (second day, about 7 or 8 hours into the file), you now know why.

My laptop is not particularly fancy or modern. It’s a 3-yo Thinkpad with an Nvidia Optimus graphics card, the kind that includes what was then a high-end Nvidia card and a low-end Intel card, the idea being that you use the former for the graphics-intensive stuff while reserving the latter for the 2D desktop stuff. It still doesn’t work properly in Linux so I only use an Nvidia only mode. It’s not something I blame the Linux developers for–the Optimus is proprietary and thus not something easily handled in open source–but it is what it is and quite common.

But other than that, there is nothing very special about my laptop. It just works, mostly. Well, it should.

So is Linux ready for the desktop yet?

On the Importance of Free T-shirts

My friends at SyncRO Soft, the makers of the oXygen XML Editor, frequently hand out oXygen t-shirts to their users at XML conferences, and the recently concluded XML Prague was no exception. I’m wearing my new one as I write this. It’s a very nice shirt, the quality is good, and while the oXygen brand is clearly visible, it is unobtrusive and has a non-commercial feel to it.

I also plan on decorating my laptop with some of the stickers they gave away, and I’m always backing up my data on their USB sticks.

Free t-shirts are a difficult art to master. There’s the issue of quality, obviously, and we don’t really need to go there, do we? Then there’s the issue of the logo, the basic message, and the key here is unobtrusiveness. Yes, it will have to be visible, but that’s about it. I’m not a commercial message, I’m a pro, and want to be regarded as one. Your logo is fine but keep it simple, please.

But most importantly, I need to like the brand.

Here, the oXygen people have a unique advantage. Their product is used almost universally in my chosen field. It’s used by my peers, pretty much every single one of them, and it’s used by our customers. The fact that it is a terrific product and we all rely on it helps, but that’s not really why. A lot of people use Windows every day but would never dream of wearing their shirts.

I think the real reason to why I like the product is that it always feels as if oXygen is updated based on our feedback and what we need. Part of the reason is that they are as much XML geeks as we are; they are a knowledgeable bunch. It really helps if you know your market, basically.

They also sponsor markup conferences which, to me, makes a lot of business sense. Our field is highly specialised and rather small, so these gatherings are hugely important. I do think that without them, eventually development would stop or be taken over by the really commercial entities.

But even more importantly, they participate. They show up at conferences and they present papers. They share what they know and are glad to listen to us share what we know. They are the most non-commercial commercial entity I know of, because while I certainly know that they are selling a product, I don’t really care. See it’s not really us and them, it’s just us, license fees or no license fees.

When you are in a position like that, a t-shirt is an opportunity not to be missed. For all of us.

There’s another company that I like, MarkLogic, that sells what’s probably the most expensive XML database in the world. Lots of people I like and respect work there, which is why I noticed them in the first place. They also participate, they sponsor, and they frequently help develop the standards we all rely on. I have yet to try their product more extensively, but there are free developer licenses for non-commercial purposes and so I will, at some point.

They also hand out t-shirts, and even though I have yet to test MarkLogic Server more extensively, I wear them. And at one point they handed out this awesome USB stick slash bottle opener, a true collector’s item.

They key here, though, is participation, not the nice give-aways. They show up and they share, and so I’m much more inclined to share back.

This Year’s XML Prague…

…was fabulous. It always is, don’t get me wrong, but this one was the best yet. It’s all on video at the conference website, which, all things considered, is a pretty decent substitute for being otherwise engaged, but Prague this time of year is the XML capital of Europe and the place to be.

For one thing, I think I finally actually understand some of the streaming part of the up-and-coming XSLT 3.0 spec, thanks to Abel Braaksma and Michael Kay, who both presented papers on the subject.

John Lumley presented a paper on lessons learned when finalising a standard library for XSLT/XPath extensions to manipulate binary data, a brilliant talk.

George Bina showed oXygen on mobile devices with the crowd cheering his every swipe of the iPad screen, in what was probably one of the most memorable demos ever at XML Prague.

And there was me, lastly (literally; I was the last scheduled speaker, right before a concluding interactive talk led by Robin Berjon), showing my ProXist demo. It all went surprisingly well, except for a slight problem with Linux and Gnome.

You should have been there.