A little more time with Ubuntu

In the quest for the perfect Linux for me, I decided to give Ubuntu a longer bit of time on my setup. This lead up largely to the weeks till the release of 9.04 meaning it is the latest Ubuntu has to offer.

Ubuntu has a very solidly frozen release which kinda bothers me since I either have to apply an unsupported PPA external repo to get the version of software upstream supports. This is the case for things like Banshee e.g.. In addition Ubuntu does not seem very willing to adopt software early which means that 9.04 ships with the older 0.9.14 version of Pulseaudio, which is a shame since 0.9.15 definitely is an improvement and finally lets me set up 5.1 (though still only analog). Again I can enable a PPA but that leads to a support nightmare (and breaks the awesomeness that is Apport) which I am not really prepared to bestove on anyone having worked with supporting users myself I know that I always like them to be in the most vanilla state I can get them to lessen my burden. This is a larger problem though of what to do with regards to the balance between a static release with updates and a rolling release. I do not believe this to be an easy problem ti solve but making people rely on PPAs to get important updates to X drivers and leaf applications like Banshee is not a good way to solve it from a QA point of view. What is, seems a huge problem space which would be interesting to explore.

There are also some really annoying moments, mostly when dealing with the package manager. I really miss an up to date PackageKit 0.4.x and interacting with apt-get or dpkg from the commandline just doesn’t feel as natural as using yum or rpm. The output of yum e.g. is very clean and easy to follow as is the out of rpm. In contrast dpkg has multiple lines of jibberish which one has to dig into to find simple information like version numbers for filing a bug report. I really think the time is approaching rapidly to have dpkg put down and radically redesigned, things like debhelper are especially poor designs for the target audience Ubuntu has. If you default to a situation where asking questions during the installation of updates you have failed. My metric for this is normally how quickly my mother would call upon me screaming “IT’S SAYING SOMETHING AGAIN!!! HELP”. Aside that dpkg is extremely frail for some reason, it falls over and gets it database corrupted quite quickly and unlike with rpm the recovery has not be easily discoverable (rm -rf /var/lib/rpm/__db.00* && rpmdb –rebuilddb normally takes care of it). It lacks some nice modern functionality like rollbacks and delta downloads, sadly it does’t look like it will gain them anytime soon either. I am concerned that I have yet to see a clear sign of commitment to PackageKit from Ubuntu, they don’t have the latest version and despite being marked as “in process for Jaunty” we still do not have it by default in any capacity.

I hate the fact that I can’t delete everything relating to gimp and openoffice without also losing my danish translations for everything else. Yes I know OpenOffice has features like a presentor that GNOME office does not have but AbiWord does just fine for me, it’s pretty, quick and very stable. I should be able to remove all those useless help files from OpenOffice as well. Minor nitpick I know but it seems that Ubuntu isn’t very flexible when it comes to changing these applications.

The Mono stack works beautifully, documentation is generated for everything and the coverage is near spotless (all I lack is Monsoon). You are given a full MonoDevelop stack. It’s truly a thing to behold how well kept it is and how much work has gone into making it the best Mono stack around. Additionally the excellent debian/ubuntu Mono team has done some impressive work cutting down the size of applications by removing Mono 1.x functionality meaning that now Banshee and all it’s dependencies take up less space on the CD than rhythmbox. I find this especially interesting as one of the, fallacious, accusations I got when proposing Banshee as the default media player in Fedora was that I disregarded the space contraints and I suggested just this solution to meet the requirement along with splitting out debug information. I am happy to see that it paid off for them and I hope that the patches will be broken out and pushed upstream where possible, also so other distros might benefit that they become available in something other than dpkgs default horrid one mega pseudo patch per package format. Truly masterful, and I get moonlight in the repos as well which rocks my rationale mind.

The desktop itself has some nice tweaks, I like the idea of using the fast user switching applet to do presence and to handle the logout/halt/suspend/hibernate scenerios. I just wish they did that work upstream so that everyone would benefit from looking at the design and applying. It is though a very nice idea and it works really well with Empathy. I do lack the option to set some predefined custom states such as “Having dinner” and such. There is the risk of growing this list very long if one was to do this though.

I hate Launchpad marginally less now, I still think that it is confusing and dead hard to use but somehow work gets done. It needs to be orders of magnitude easier to use before I beats bugzilla though. In the same sense I really miss an easy overview on a per package basis of all the bugs, like bugz.fedoraproject.org/<packagename>. It makes it much easier to do what I love, namely breaking software and triaging bugs, in an effective manner.

Suspend just works… most of the time, I have gotten the system into a state where the network driver never regained life and other little wringles but overall it is the first time I have seen suspend work consistently on this laptop. I hope the same is the case for other people so that one day we might rely universally on this technology to suspend machines when they are idle. If wake up could be made really quick perhaps a system as envisioned by OLPC that would suspend the machine while reading a website might be a viable future for us all.

I am still not sold on the per home directory encryption and it does worry me that I have yet to see any evaluation of this technology by a 3rd party security expert for flaws. It is appealing to have security that does not require every user of a machine to know the master password to boot it yet still have the advantage of knowing that while you are not logged in your data remains safe. It also does not encumber boot nor imparts the performance overhead to system binaries that full disk encryption would do, which is another appealing idea. I would like to have a more informed opinion on the design before I judging one way or the other. It worries me that I have not been able to find a wiki page listing the known weaknesses in this approach, it is not enabled by default but it would still be nice to be able to look up more information. Personally since my laptop is used only by me, I used the alternative CD to install and used dm-crypt, then added this on top, mostly “because I could”, surprisingly the performance overhead of doing this was very low. I think what worries me is that it seems like such a finely pick solution that does the best from a user point of view that it really has to have problems from a security point of view – experience tells most people that when sounds to good to be true, it very likely is.

A problem that seems to plague all Linux desktop right now on this laptop is that it takes very little to make it lock up for seconds or minutes. Audio stutters when the slightest load comes along. It didn’t used to do this but looking at the cpu scaling the slightest load seems to cause a problem where it instantly lowest the cpu speed to the lowest setting. I am currently unaware of what is going on and I don’t have another machine to confirm that it isn’t just this machine going tits up. Ubuntu sadly is affected as well, I won’t deduct them any points but it does make Linux as a desktop very painful on the whole.

Jaunty is an excellent desktop I would not hesitate to recommend it to people, out of the box you get a lot of very nice functionality and a very polished look and feel. It does somehow feel like it is the end of the line for the current Ubuntu desktop and that their experiments with new UI elements will have to lead to some major changes. Hopefully they will be able to pipe this into the GNOME 3 process in a standardized manner so to avoid basically forking the desktop.

SUSE Studio

SUSE Studio is made of pure awesome, definitely the slickest way to build appliances I have ever seen. I shall worship forever at the feet of it’s developers while basking the immensity of it’s glory.

The one feature I can’t seem to find though is setting the architecture of the appliance which would come in very handy when say, building a GNOME desktop filled with holy goodness for my Core 2 Duo laptop.

Consistent experiences

Today I spotted an interesting little usability tidbit in the Ubuntuforums. A user who had recently switched to Linux was confused that double clicking the trash applet opened 2 nautilus windows. Now clearly he mentally connected the underlying technology but failed to notice the context. An applet require a mere click, however in file browsing context double clicks are required.

This made me think, where outside of nautilus do we in GNOME default to requiring double clicks. The applets, notification icons, the menu (and menu items), the window list – all single click. All I can think of that defaults to requiring double clicks is nautilus. So clearly the correct question is not should the trash applet require double clicking but rather why is nautilus inconsistent with the rest of GNOME.

In that vein of thinking I swiftly changed the default to single clicking.

Funny how I never noticed this before, a new user user asked about it. I wonder how many other small little details like this are hiding in our platform.

I’m anti-Brasero

Well, not so much anti Brasero as pro doing things right really. Having a separate burining application is a horrible idea that stems back to the days when computers came without cd burners. It became an add on item for which support was needed, as use cases grew so did the horrible apps – now looking at Nero one of the apparent favourites it has grown from a simple little app that did the wrong job to being a several hundred meg app that does the wrong thing.

Having a separate application for burning is like.. imagining a world where if you want to save your work to a floppy (youngsters, replace the word floppy with USB stick),  you would be required to launch a completely separate application only then may you be allowed to do your work. This naturally being the way it would work instead of just selecting the destination in every application.

Burning is no different, it should be integrated where it is needed. In my media player, in my file manager, in my photo manager. Was it not for patents, I would want to highlight a movie, then select convert to DVD in my file manager or my media player, or I could in the context of my photo manager have my photos backed up to a media or turned into one of these slideshow DVDs.

How about some nice widgets and a library application designers can use to integrate burning. Make it easy and see where people put it to good use. I really honestly and truly see no reason to continue down the path of having this workflow, Free Software is or could be the shining example of improving computing for all. Just look at what we have done so far, look at Sugar, the work being done exploring for GNOME 3. Wizbit, PackageKit.. so many paths of excellence.

And yet, Brasero was proposed for GNOME inclusion, to what so far has been nothing but favorable opinions.. clearly my logic must be flawed.

The oddness we call the GNOME menu structure

Something that has annoyed me quite a bit lately is that a desktop as usable as GNOME still has some glaring problems with it’s defaults. Take the menu bar as the example, it has three entries “Programs”, “Places” and “System”. Which while a fairly vague and bluntly put bankrupt attempt at application centric workflow, it does work.. a little.

First grievance, what’s up with the Internet entry. I know once upon a time “Internet” was considered a seperate entity but today nearly none of my apps fully function without internet access. Making it a meaningless point of distinction when it comes to workflow. My “Internet” catagory currently contains “amsn, empathy, xchat-gnome, firefox, deluge and monsoon” meaning they can be seperated into Communcation tools (amsn, empathy and xchat-gnome), download tools (deluge and monsoon) and webbrowser.

Communication is being built into the entire desktop as we speak so hopefully these will go away, likewise downloads should be invoked when I click a torrent file I shouldn’t really need to go click an item. If there are remaining download, maybe the torrent handler – and why again is this a seperate download application…download should really just be download, let the lower layers worry about where my junk comes from – I’d love to see a similar approach to gvfs file copying, no matter which protocol I use a get a nice detached progress bar and the system will alert me when I am done.

The web browser is a special case, it is a gateway to a world of experiences, not an application in itself. Maybe the correct approach is to give it a completely separate entry, a bit like about GNOME in the system menu. It doesn’t naturally fit into any category 100% and yet is a core tool which means we need to keep it handy.

That brings us to the programs->System tools entry, which is plainly a sick idea. I already have a whole menu item for System administration, why aren’t these merged? Probably some old hat distinction between apps that run as root and apps that run as a user but yet manages your system.. the patent absurdity of this given that policykit now exists leaves little doubt that the whole thing is an exercise in obscurity which should not be inflicted on our users.

One could go on and on about the illogical placement of applications but it just goes to illustrate that while the program centric workflow has brought us so this far, it is a bankrupt idea. I don’t use OpenOffice Writer, I write documents. My system should be structured around letting me do my work not handing me a list of applications whose lines of distinction are getting blurrier every day. Clearly a new approach is needed and alternatives are being explored currently for GNOME 3.0.

That is not to say going task centric is always the right answer, an application like the web browser still poses a problem for this approach as it is a bottleneck narrowing down several types of work into one entry. Things like prism and google chromes similar “application entry” address this neither of these seem to be approached with much joy nor have they seen much system integration. One simple example of this is my workflow for mail. I use Gmail for everything but even using prism to make Gmail a “seperate application” it still does not register a way to make the default for clicking mailto: links opening a new composer window via prism+gmail. This is a great source of annoyance as one now has to copy and paste addresses, or go back to using evolution.. both in all honesty hellish and horrible experiences.

Abiword 2.6 rocks my world

I love hitting the Abiword 2.6 icon and watching it start up faster than I can blink my eyes… then trying to start up OpenOffice Writer and noticing it taking a good 30 secs. Followed by girlish giggling. Abiword does what I need and more, OOo surely does the same but it’s slower, uglier and it doesn’t yet do the sexy collaborative editing AbiWord does – additionally having tried to read some OOo code, the whole thing scares the living daylight out of me. All GNOME Office needs now is a presentation application and my life can be entirely free of the OOo terror, currently I rely on Google Docs to do presentations which is not optimal.

Back to giggling like a school girl in praise of the AbiWord developers. Thank you!