A pile of books, and a single dialog box better than all of them

I had a couple hours to kill downtown, so I wandered into the bookstore.  After futzing about with popular economics and romance novels, I decided to go check out the various Ubuntu books on offer.  I ended up looking through the index and sorting them into two piles.

Two piles of books at Borders

So, what’s the difference between the left and the right pile?  The books on the left, despite some of them being much thicker, make absolutely zero mention of Wine or running Windows applications.  Not even a cursory mention of how it’s possible, or a small paragraph suggesting users go look it up themselves – these books don’t even list Windows applications or Wine in the Index.

I’m sorry, but if your book is in the left pile, it’s crap.  At best, it’s written for an audience in some alternate reality. 90 percent of computer users run Windows; about half of all Ubuntu users have installed Wine, and an untold number more would like to if they could get it to work. And these books, on the left, pretend that they simply don’t exist.  It’s like making a tourist guide and forgetting to mention the majority of cabdrivers will kidnap you unless you tip in advance.

Concern for at least one Windows application is a use case so common that it could be fairly described as the main barrier for human beings running Ubuntu.  Maybe they don’t need to run their application since there’s a good Ubuntu equivalent.  Maybe their application works without fuss in Wine.  Maybe it doesn’t work at all.  It’s a question users have, and it’s a question that needs to be answered – even a short “no, don’t bother with Wine” is better than pretending this question doesn’t exist.

Fortunately, most users don’t read books, and they shouldn’t have to.  If we’re smart about it, we can convey the information missing from these books through the operating system itself.  I shouldn’t have to look in a book to find out what Wine is, how it may or may not work with Windows applications, and how to install it – that information should be given to me as soon as the computer can figure out I’m interested.  That is, as soon as I double click on a Windows application.

A dialog more valuable than any book (pen board draft)

This is just one dialog, but it can convey information more valuable than any book, to millions more people.  That kind of small change having a big impact is exactly the reason I get excited about developing for Ubuntu.

UPDATE: Apparently Hacking Ubuntu does mention Wine, it’s just that Wine and Windows applications aren’t in the index because the author didn’t write that part.


AngelaMay 19th, 2009 at 5:29 pm

I agree with you something like that dialogue would indeed be helpful to users, trying to make the switch from a windows OS to Ubuntu.

MackenzieMay 19th, 2009 at 5:38 pm

I disagree in the case of Hacking Ubuntu.
“At best, it’s written for an audience in some alternate reality”

No, it’s written for advanced Linux users. It’s a book about performance tuning. What does Wine have to do with that? Throwing in a paragraph on Wine would be soooo far off topic!

BugsbaneMay 19th, 2009 at 5:42 pm

Yes, sir I like it.

Of course there will be a similar dialogue for Mac executables, right? Oh, and RPM’s. And maybe arch packages.

I may sound like I’m joking, but now I think about it, how many newbies have downloaded software from the “Linux download” link, and then wondered why it wouldn’t do anything…

JeffMay 19th, 2009 at 5:44 pm


I know the proposed dialog text is just a concept draft, but I’d probably avoid the word “originally”. To me it suggests that the the application I’m running is not the “original” version that was designed solely for windows — perhaps this means that the application author has made some steps towards porting it, but it’s not quite perfect yet?

YokoZarMay 19th, 2009 at 5:46 pm

Mackenzie: The Ubuntu Hacks O’Reilly book in the opposite pile aims at the same market, and it has the largest Wine section of all of them. There’s pages about the differences in performance between virtual machines and Wine as well.

JonasMay 19th, 2009 at 6:36 pm

Honestly, why should any book in either pile mention wine or how to run Windows-programs? The books are about Linux, not Windows. I do not disagree about many people needing/wanting one or more Windows-programs to work (using wine, virtualbox or whatever) but I do disagree that mentioning how to accomplish that somehow defines whether a book is crap or not.

That’s like admitting defeat to Microsoft, and can be a self-full-filling prophecy at worst. That is, making the newbies not even try the free equivalent (when they exist) if a Windows-only app that happens to run fine with wine fits the bill. Linux (whether Ubuntu/Suse/Fedora/whatever) should be judged on its own merits – not whether it can also run Windows-programs.

That being said, it’s great that Linux is flexible enough to be able to do that to an extent but IMO it should NEVER be a selling-point.

JanneMay 19th, 2009 at 6:40 pm

A bit off topic, but for a lot of people Wine is utterly useless. Nothing to do with deep API compatibility, but much simpler than that. Try to run a Japanese-language (or Chinese) Windows application and you’ll soon realize something is missing: the fonts. Wine does not display the Japanese fonts, and as far as I’ve tried so far, I can’t for the life of me figure out how to make it.

And you know, with no ability to actually read the application output or input text of your own, the application really might as well not exist for some billion and a half people.

ethana2May 19th, 2009 at 6:43 pm

I thought Jaunty would have this dialog. There was this whole thing about moving wine to main, and it didn’t get done? I was surprised and disappointed to discover that.

yokozukiMay 19th, 2009 at 6:57 pm


WINE really dropped the ball with CJK. It’s only a critical function to, what, a fourth of the world population. :\ Fortunately, development release 1.1.22 (coming out in a few days) seems likely to yield advances in this regard. Cheers.


Joseph James FrantzMay 19th, 2009 at 7:12 pm


YokoZarMay 19th, 2009 at 7:15 pm

Jonas: It seems incredibly bizarre to categorize 100 million new users migrating to Ubuntu and still being able to use that one irreplaceable Windows app as some form of “defeat”. Even then, we don’t “admit defeat” by answering a question. If a book wants to make the rather optimistic prediction that a user’s needs will never include some Windows only program, they should at the very least explain to the reader why this is so.

ethana2: The fact that this didn’t happen earlier is due to my own failings, and not having all the code that works behind the dialog done in time. I am, of course, a volunteer; the only reason I’ve gotten so much work done ~ Wine in the past month is due to my decision to be unemployed leading up to the Developer Summit. That’s given me a lot of time to get this right.

nixternalMay 19th, 2009 at 7:59 pm

I would rather have the popup in this case link them to further information, because there is a decent chance the app they are trying to install won’t even run under Wine. It would be good to send them to a page that has information about what Wine is, how and what it can be used for, a link for them to search the Wine DB of apps to see if theirs exists, and maybe even have a list of alternative free software examples that may work for what they need. Last I heard either Mac or MS had a dialog that would tell you, hey this isn’t for $OS, read here for further info.

And just so you know, that book store is crap! There is no Official Ubuntu Book in there :p

YokoZarMay 19th, 2009 at 8:05 pm

I suspect the official ubuntu book wasn’t there because it was sold out ;)

As for directing the user to search AppDB, I’m fairly convinced that by the time Karmic hits on average we’ll waste less time by just having them run the application. If it works, they save a ton of time. If it doesn’t work, then the amount of time spent figuring that out is about how long it takes for a first time user to look it up on AppDB anyway.

nixternalMay 19th, 2009 at 9:09 pm

@YokoZar – that is fine, however if it doesn’t work and they are stuck with half installed packages which leave an icon, then they are back to Windows functionality :p Wine isn’t for the faint of heart still, and having it install, setup, and then attempt to install their app, only to make them go “wtf” isn’t good, it is a bad usability practice.

If people are going to Ubuntu.com to grab an ISO and what not, then I think they are smart enough to realize what they are getting themselves into. If they are getting CDs from a LoCo team, then that team needs to do a little teaching before grandpa runs off with a CD and if he doesn’t stick it into his CD player in the car, he puts tries it out on his home computer. The thing is, providing all kinds of stuff like this is pretty much like us say, “Hey, we realize you are a bit dumb, so because of that and due to you being to lazy to do research, here is what we think you need.” Next thing you know, Ubuntu has a stupid paperclip telling us what to do.

nixternalMay 19th, 2009 at 9:16 pm

Forgot to add :)

Right, the book could be sold out, but they should get more to stock them shelves :)

Oh, if it doesn’t work out right, what if it leaves them with a mucked up install of Wine? I have read reports on this, and I have mucked it up myself messing with Outlook in it at my last job. Just like real Wine, it gave me a nasty head ache :)

MackenzieMay 19th, 2009 at 10:01 pm

Actually, I own both of those books, and Ubuntu Hacks is more of a “tips, tricks, & neat things” book than Hacking Ubuntu is.

JanneMay 19th, 2009 at 10:19 pm

Yokozuki, thank you! Now, once it hits the Ubuntu repositories I’m done dual-booting forever.

nnonixMay 19th, 2009 at 11:13 pm

Making such a dialogue would lead a user (the ones you are speaking about) to believe that wine’s performance, or lack thereof, is a reflection of Ubuntu. It should not be automatic. It should take a bit of reading (albeit simple) so the user understands basically what is going on. That said, giving a user more information upon clicking on a windows executable would be great.

Dread KnightMay 19th, 2009 at 11:37 pm

Geezas fucking christ at some of the comments around here. So it’s better for a non-geek to have no chance to run his shitty application at all than to have a chance. Meh, it doesn’t makes sense!

Probably a distro like Mint will implement such a feature soon ;)

anotherubuntu.blogspot.com/May 20th, 2009 at 12:01 am

This sounds wonderful :-) Will this happen in time for 9.10?

I’ve been wanting to see something like this for a long time (http://ubuntuforums.org/showthread.php?t=905402). It just seems to be the most obvious thing to do.

Looking forward to this “feature” actually landing.

IdiotMay 20th, 2009 at 12:05 am

I think that this is a fairly essential idea, although maybe the wording on the dialog could be improved. I feel that “Some Windows applications may not function correctly” is possibly a bit too optimistic, but maybe that is a matter of opinion.

One change I would make, though, is to add a “more information” button, in addition to “cancel” and “install wine,” linking to a description of what wine is, why it is better to use a native application, what the alternatives are, that some programs don’t work well and why they don’t, a link to winehq etc. (i.e. everything that those posters above want to be mentioned). This would allow a detailed explanation of wine, and its drawbacks, to be easily available, without forcing it down the throats of those users who would just be put off by all the more `technical’ details. But the first thing to pop up should just be a simple dialog such as this.

YokoZarMay 20th, 2009 at 1:32 am

Janne: also see from my comment (8) and down: http://bugs.winehq.org/show_bug.cgi?id=13829

CJK fonts are coming. I plan on conferring with Arne Goetje at UDS (our CJK fonts expert) so I get the aliases right, but it should happen soon (and certainly in time for the Wine that gets to Karmic).

GNUixMay 20th, 2009 at 1:40 am

I’m sorry but your assesment of a book being crap because its a GNU/Linux book that doesn’t mention wine is well.. crap. There are several of us out there that have zero need for wine or windows applications. Its that simple. Now if you have a need for windows or wine then sure, its great, use it. But as an author of a book based on GNU/Linux the goal should be to demonstrate the capabilities of GNU/Linux… not on teach how to make your windows applications work.

Had you said the books on the left don’t mention wine, but probably should because of x, y, and z I could make sense of that.. but to toss them out as “crap” is crap it’s self. Try writing a book sometime.

YokoZarMay 20th, 2009 at 1:59 am

GNUix, do you feel like I didn’t offer a good reason in the following paragraph? Or did you stop reading when you reached the crap line? It’s ok if you did, that’s the nature of writing in a down to earth yet inflammatory tone to keep things interesting. It’s a style I’ve found effective in essays too.

One of these days I’ll write a book, but it won’t be an Ubuntu book – my time is better spent making Ubuntu not need a book. It’s a sisyphusian task, but no matter how good of a writer I become an improvement to the UI will generally do more good than even an exhaustive book will.

val-gaavMay 20th, 2009 at 2:59 am

I wonder how many of those books has at least one chapter about KDE …

Vadim PeretokinMay 20th, 2009 at 4:24 am

The dialog looks fine, except for ‘originally’ – the program still is designed for Windows.

Dr. Neal KrawetzMay 20th, 2009 at 4:32 am

As the author of Hacking Ubuntu (top of left pile), you are incorrect. If you had opened to the book then you could clearly see that Wine is discussed on page 199. In fact, I have an entire chapter on collaboration tools (Chapter 6, pages 167 to 201) where I discuss different tools for sharing files, sharing desktops, sharing drives and directories, and even virtual machines and emulators (this is where Wine comes in).

You are correct that Wine is not mentioned in the Index of my book. However, no author has control of the Index. The Index is usually created by by someone else after the book has been written and right before it goes to print. If an author is lucky, then they might get to see the index for review.

Please return to the bookstore and take a photo with my book on the right.

Duncan LockMay 20th, 2009 at 4:58 am

This is a really nice idea and I approve completely! An extension for this that occured to me would be having it talk to AppDB and apt, and giving you more information, such as:

a) Some kind of appDb traffic light’s type thing, giving you an indication of how well supported this app is under wine. This might require appdb to be a bit more machine readable, maybe? Or possibly a simple list exported from appdb and installed with this system, periodically updated via apt? This appdb derived rating would help set realistic user expectations up front and would remove the need for your generic warning message, making a specific message possible.

b) Linux alternatives for the windows software that are in the repositories for you to try instead, if you wished. This would obviously need a file/db containing a list of windows software with linux alternatives. There are websites that compile these kinds of lists, which could get you started.

Obviously, this would be impossible to get 100% right, but I guess perfect is the enemy of good here. If this started out with the highlights – popular applications, things with a good linux alternative – and let people contribute new win->lin mappings over time, it might work quite well.

If it checks appdb and it’s win->lin list and doesn’t come up with anything useful, then it could just fall back to doing the whiteboard version above.

What do you think?

David PattayaMay 20th, 2009 at 5:42 am

An Ubuntu book is crap because it doesn’t mention wine? I hope that you are not serious.

Wine is rubbish. The last time I tried it out was in 1995, when it was early stages. Nothing ran, and we didn’t expect much. It was new. Fast-forward to 2009, and I’m running Wine 1.1.21. Nothing runs — 14 years later.

Oh, sure — it runs WordPad and Solitaire — who gives a toss? There are a handful (and quite literally, one can count them on one hand) of applications for which there are no substitute in Linux, and Wine doesn’t run any of them. Look on the support web site, ask around in the various forums, and people say, well, that’s not supported yet. People don’t buy a Linux book to learn how to run Wine — the world has given up on it. If they can’t get it right in 14 years, Wine will NEVER be useful or relevant.

Your dialogue box would be a great idea — if Wine worked. It doesn’t. Linux Torvalds has got it right: Linux must be taken on its own merits, and not as a stable platform on which to run Windows applications — OS/2 tried that and failed. We need to focus on what is not available on Linux, and fill those gaps, not waste time with Wine (unless, of course, we are drinking it!).

jMay 20th, 2009 at 6:57 am

Bah, this is such a complex and delicate issue that I can’t even begin to argue. What I can do, is show how awesome WINE is from personal experience. I have been, and always will be, a PC gamer. WINE is the FIRST thing I install whenever I do formats, reinstalls, etc. It is what allows me and the rest of the LAN party group I am with to even consider installing Ubuntu as a main system of any kind. Granted, I still dual boot to XP, but this is only out of necessity, as yes, WINE is a work in progress. The bottom line for me is, it gives me choices. And I thought that was a major feature for Linux?

Without WINE, I would be an XP-running, Ubuntu-in-a-virtual-machine kind of guy, not knowing what I would be missing out on. Without WINE, I would not be the Linux guy I am today, and I shudder to think about that alternate me.

Oh, and regards to that “crap” comment: WINE is an incredibly complex and large project which has had, and will continue to have a large impact on Linux in general. If I was a major contributor to WINE (or something along those lines, I don’t really know what Scott does), and any type of Linux book didn’t even have a passing reference to it, I’d be ticked too.

+1 for the dialog.

OmarMay 20th, 2009 at 7:31 am

I like it. Ubuntu needs that dialog box exactly as you worded it.

AstronMay 20th, 2009 at 7:39 am

a) Maybe you can reuse the dialogue that shows up when trying to open an unsupported media file (like MP3′s on a fresh install).
b) It’s nice that Wine is out there, but it’s never done anything useful for me, which is usually, because Wine either lacks (proper) IE or WMP or because it needs to access USB or virtually anything else. The only things you can actually run with Wine are games and open-source software (which generally is also natively available on Linux). So, concluding, I’d say including it in the default install is probably not a good idea, especially since, on its own, Wine does nothing (there are no preinstalled Windows programs).

PeterMay 20th, 2009 at 8:00 am

Shouldn’t the dialogue also make some mention of security? Making it easier for folks to run programs which are not part of the distribution seems risky, without some warning that not only might it not work, but it could be insecure.

YokoZarMay 20th, 2009 at 1:21 pm

Dr. Neal Krawetz: You should ask to write your own indexes, because whoever wrote yours doesn’t know enough to do it well. I refuse to accept that this is the absolute standard in the publishing industry, especially for technical books – the author is clearly more qualified to make a list of what readers might be looking for than the publisher is.

Anyway, I updated the blog post, sorry for the mixup. Next time I get back to Border’s I’ll take another picture ;)

YokoZarMay 20th, 2009 at 1:24 pm

Peter: I’ll talk about security with the next dialog (the one that occurs when you actually open the application). There’s nothing particularly unsafe about installing Wine; rather risks come from running applications with it. Of these, the only preventable risks we really have are the ones where the user runs an application without meaning to. We have a discussion scheduled for just how to address this at UDS, but the general idea is to make Wine (and other interpreters eg Java) respect the executable bit, and warn/prompt the user if it isn’t set.

YokoZarMay 20th, 2009 at 1:47 pm

Astron: The code behind the dialog was heavily influenced by Gnome-Codec-Install. I’ve got a roughly working version on my local machine now. Also the plan isn’t to put Wine in the default install, but rather to put this dialog and a few other things there. A user who never downloads any Windows application won’t notice any difference, but a user who does (and thusly likely needs Wine) will have a much easier time.

Rodney OrpheusMay 20th, 2009 at 2:15 pm

An excellent and well-overdue post. I second your idea of the dialog box, it really needs to be in there. The suggestion to add a More Info… button is a good one too.

As regards the comment from someone about WINE not working very well, I have Guild Wars running in another window right now, which is an extremely high performance DirectX 9 Windows game, and it’s running BETTER under WINE than it does on Windows Vista natively.

We need gamers to move to Linux. WINE is the ONLY way we can make that happen. It should be considered an essential part of any good Linux distro.

MichaelMay 20th, 2009 at 10:08 pm

Your absolutely right. I like your idea of when users click on a windows installer they are automatically prompted to install wine. I guess the problem with this is that it almost encourages using Windows applications, but I guess your warning message/dialog box kind of covers that. Perhaps adding a link to add or remove programs to search for native Ubuntu apps with similar functionality which be a good addition.

GNUixMay 21st, 2009 at 2:37 am

@Rodney Orpheus: You demonstrate a perfect example of why one shouldn’t focus on using GNU/Linux to run windows applications. We do not (repeat: DO NOT) need “Gamers” to move to GNU/Linux, they are already there. We need game developers to move to GNU/Linux. Build it and they will come.

@YokoZar: I read the whole article and agree that a dialog box informing people of the existence of WINE if they try to run a windows applications would most likely be useful to a lot of people, however the negativity (and frankly naiveness) of the review (if you can call it that) of the books makes me frown upon the whole thing, especially considering you have not published a book. Try to stay on the positive side.

Dr. Neal KrawetzMay 22nd, 2009 at 2:01 pm

@YokoZar: You wrote “I refuse to accept that this [not writing the index] is the absolute standard in the publishing industry, especially for technical books – the author is clearly more qualified to make a list of what readers might be looking for than the publisher is.”

You might want to bring this up to the American Society for Indexing (www.asindexing.org) and the Society of Indexers (www.indexers.org.uk). While Academic and self-publishers usually write their own, bigger publishing houses usually employ their own indexers.

You might also be surprised to know that most of the technical books in Border’s have titles that were not chosen by the author, descriptions (inside cover flaps and back) not by the author, and even cover art not by the author. “Don’t judge a book by its cover” is true because the author didn’t create the cover.

Leave a comment

Your comment