continued notes on the macbook experiment, week 3

Some more notes on running a mac (original post and explanation here):

  • installing new software is insanely nice. Yes, apt and yum are nice, but I don’t find out about software that way. I find out about software by reading something on the web (for me usually a blog post, but for others a news article) and from there installation on mac is a click, download, and drag away. That is it. That is insanely great.
  • suspend and resume is, like everyone says, perfect. It just works. Every kernel developer should be given a laptop and not allowed to do anything else until suspend and resume works this well.
  • one interesting side-effect that I’ve noticed of controlling the hardware is that you don’t need to fit the OS on a CD, so the OS preload is huge- 13-14 gigs. Which is insanely great!1 Instead, even when I tried to do something 99% of mac users will ever do (install a rails app locally) it Just Worked. Rails was there; gems was there; sqlite was there. That is specifically because they don’t have to worry about fitting everything on a CD and can instead rely on the humongous hard drives that every system comes with these days. A very nice luxury, that. (Or to put it another way: emacs is in the default install. And it isn’t in the default install on most linux distros anymore. I understand why it must be so for linux distros, but still, it is sad.)
  • I’ve long suspected that Dashboard + Expose is roughly 1,000x better as a user experience than panel applets. Now I know I’m right.
  • it is great that a lot of the libre software that I love is available on mac; having tomboy and tracks available is already making me more productive. (And obviously I’m using firefox. Sadly it is way more performant on mac than linux- someone who was serious about the linux desktop experience but didn’t know where to start hacking would be well advised to work on firefox performance.)
  • I just saw the following on Krissa’s fresh F12 install:

I am not yet an expert on Mac-style UI design, but I’m pretty sure anyone who put an error message like this in a product shipping from Cupertino would be flogged. Anyone who put it in in such a way that it (as far as I can tell) always comes up on a default install would be fired on the spot.

  1. First commenter who calls it bloat is shot. []

59 thoughts on “continued notes on the macbook experiment, week 3”

  1. Heh, I thought it was GNOME policy to flog for such UIs, too. :-P

    The Dashboard was something I could never get used to, due to its modal nature. The Dock, on the other hand, makes a lot of stuff nicer, and eliminates the need for many applet-type things. I think the Docky guys actually have one-up on Apple in this area, though.

    Also, congratulations! You’re one of the few known users of Tomboy on Mac! Please please please file bugs for any issues you run across, and share any ideas you have for how to make the Tomboy on Mac experience smoother.

    I do have a Mac, but I don’t use it daily so Tomboy doesn’t get enough dogfooding on that platform.

  2. Sandy: dashboard by itself doesn’t do much for me, but with expose, if I need to find the kind of thing I use gnome panel applets for (i.e., non-launcher data like dates, weather, etc.) I can just jam the mouse into a corner of the screen, quickly see the information I wanted, and then make it go away again. And then the 95% of the time I don’t need dates, weather, etc., it isn’t cluttering up my dock/panel. (As a bonus, the 5% of the time that I do need it, it isn’t confined to the form factor/UI of the panel.)

    I really haven’t had any issues with Tomboy Mac; it seems to Just Work, which is terrific. I will definitely say hi if anything comes up, though. (I hope to play with Snowy at some point.)

  3. I keep seeing the claim that software installation on a Mac is easy. I appreciate that hiding all of the gubbins in a single .dmg is very clever and convenient, however:

    * the Applications folder is very undiscoverable and you can have more than one (system and user)
    * not all applications are installed by dragging a dmg into /Applications – some open a little window for you with inconsistently designed ways of doing the drag, some open an installation wizard and I’m sure there’s at least one other variant I can’t remember

    I’ve witnessed professional mac users download a dmg, run the application directly from it and look confused when I asked why they hadn’t installed it, saying “but it is installed, look it’s in the Dock” even though that was simply the running instance.

    Ironically Apple’s insanely successful iPhone opts for the opposite approach and forces all software installation to happen through one route, so it’s not like they’re total strangers to that mode of operation. I suspect it just doesn’t happen on OSX/Windows because the ISVs would never buy into it.

  4. Hm. I’ve been using an MBP with OS X (first Leopard, now Snow Leopard) for a while now, and suspend/resume doesn’t actually always work amazingly. Sometimes it comes back with no unlock screen — when this happens, sometimes you can type your password blind, else just wait for the screensaver to time out and try again, or just suspend/resume again. Sometimes, I’ll pull it out of my bag, only to realise it’s been toasting itself to thermal death, because it failed to suspend when I shut the lid.

    I much prefer installing software with apt/yum; what if we just had much, much better websites for our software in general, which had a pkg-install:// URI or similar that would launch the native installer?

  5. Chris: I actually think that long-term that is a deep flaw in the iphone; iphone store (and Android’s similar store) are lousy ways to find out about software. They’re only successful now because compared to past phones it is like night and day.

    Definitely there are some slight inconsistencies in the handling of .dmgs; and ffox in particular seems to deal with them inconsistently. (The save/open model just doesn’t apply to dmgs very well.) But compared to the mess of dpkg/rpm/etc. for every different distro (and don’t even get me started on dependencies) these are very minimal.

    daniels: weird; I haven’t had any problems with it at all. Note that I don’t lock the screen, so maybe that is some of the difference?

    As far as pkg-install:// – if you could be guaranteed that one package would install everywhere, this would work, but otherwise you’re just sort of setting people up for frequent failure/disappointment, no? [I agree that some combination of package-managed installation and the web is the ideal solution, it just seems hard.]

  6. Nice your enjoying it…

    Here are things that annoy me about my mac mini…

    – No sloppy focus
    – Most gnome apps unavailable (no pidgin, I have to use adium)
    (I mean, without using fink or similar)
    – XCode just has a shedload of windows (maybe I should try the multiple desktop feature to manage this, but it just doesn’t seem as nice as linux multiple desktops).

    But yes… the dmg and app install thing is nice as are other things… it’s a bit swings and roundabouts really.

  7. Stu: I haven’t tried playing with the multiple desktops thing much yet. I’m finding that cmd+h is enough for me. (And I’m going to miss that- dropping things out of alt+tab and window management when you don’t want to be distracted by them is obvious in retrospect; one of those things I never knew I needed but now I love.)

    And yeah, surprisingly, I miss pidgin; adium is nice but there are a couple of things that I miss from pidgin.

  8. re Chris Jones:
    download a dmg, run the application directly from it and look confused when I asked why they hadn’t installed it,

    The important thing to note is that for most (i.e. not broken) software, you don’t actually have to install it – you can run it directly from the .dmg. This is quite nice when you’re just testing it out to see if it does what you need.

  9. I have all kinds of problems with suspend and resume on my Macbook Pro. The worst is that sometimes it wakes up in my backpack and makes everything very hot until the battery runs out. (This may be a hardware problem.) The second worst is that sometimes, on resume, the screen brightness has gone to 0. The screen isn’t quite completely black, so with the right light source and a lot of squinting it is possible to open System Preferences and reset the brightness, but it’s no fun. I also occasionally have hangs or crashes between suspending and resuming.

  10. Oh, and regarding Mac vs Linux performance: I suspect X and GTK2 are mostly to blame. We can get rid of most GTK2 usage (and are gradually doing so), but we also need to get rid of X. I wonder what’s happened to Wayland.

  11. Luis, I think you will find that this is also true of Windows XP, Vista, and 7. I use Ubuntu on my Desktop at work and XP at home on my gaming rig. I used to admin for a Music School at a major University where we rangled a 100 or so macs, and my end-users at work are on XP. Suspend and resume work correctly on every Dell desktop & laptop I buy for work (mix of Inspiron, Vostra, and Optiplex), the system tray does everything any end-user really needs their applets to do (although the overcrowding situation & lack of HIG compliance is not optimal but really pays dividends on low-end displays like netbooks). MSI (Microsoft’s dpkg equivalent) is from what I can tell quite good, although I find the lack of a repo feature to be a real issue. Windows Update works wonderfully (even more streamlined than OS X’s Software Update) but is Microsoft-specific and thus you end up with Flash, Acrobat, and all sorts of other apps doing their own updates, which would actually be just unoptimized and not a real pain if the 3rd party vendors would let their software escelate privileges according to best practices so that Flash could update itself when non-admin users are logged in.

  12. Oh yes, and for the street cred, Linux is the major player in our server closet. Ubuntu runs most stuff, RHEL runs the box that needs to be certified for Unidata (note to the future: I am 27, therefor when you are reading this in year 2050 I will likely be the last surviving person who knows anything about Pick and will help you read your ancient data from the 1970s in exchange for one-billion American dollars, or whatever it takes to have a decent 3-day weekend in your present year), phones run on NT4 (still going!), and life is just grand in general.

  13. If you think the Mac way of installing software is easy, you should see the (proper) way of installing Windows software. Download an MSI file, just as easy as downloading a DMS. Active it. It installs. Unlike the Mac way, this registers the software with the OS so that it can be updated or uninstalled easily.

    It is, in fact, just a less powerful of the Linux way of doing things. From a technical perspective, in truth, RPMs or DPKGs are superior in every way.

    It’s the less-technical, more-political nature of Linux software distirbution that makes Linux a giant steaming pile of shit to the average end user AND makes it an utter hellhole for developers. RPM and DPKG is great, but you can’t actually use them! Let’s say you write an app. You decide to make it available to Linux users. Which package format do you use? Heck, let’s say you pick RPM. Okay. Which distro do you use? Hmm. Okay, you pick Fedora. Which version of Fedora do you use? Alright, now you’ve decided to package the software for Fedora 12. Awesome. Now you just went through a bunch of effort writing an installation mechanism that works on one tiny little fraction of Linux desktops… and will automatically become invalidated and outdated within 6 months. Fucking awesome.

    The central repository model does not work. It does not scale. It will always exclude software. It will always be out of date. If you want the latest version of, say, Firefox, chances are you’re going to have to wait weeks to months. Chances are, you’re going to have to upgrade your entire OS and every piece of software it contains to get the new Firefox, because Firefox 4.0 isn’t going to be pushed into the repos for distros that shipped with 3.5. That OS upgrade is going to bring all kinds of brand new developments that are going to introduce changes you don’t want (because Open Source seems to value change in the guise of “progress” over consistency, reliability, and stability). You’re going to have to deal with all the breakages that every distro release entails just to get the updated Firefox you need in order order to use some new whiz-bang website… or you need to eschew the system packaging system, use binary tarballs (which exist for Firefox, but do not exist for most other software) or source (which is a bitch to deal with, even if you know what you’re doing) to work around all of the artificial incompatibilities imposed by packaging.

    Artificial incompatibilities. That’s the worst part. The binary in Ubuntu’s Firefox dpkg will work just freaking fine on Fedora, but you can’t install it because the Ubuntu package expresses dependencies in a way alien to the software itself. It expresses it in package names or formats or paths that differ between the OSes but which the binary doesn’t care about at all.

    That’s where Windows shines. You can claim that Windows apps work because there’s one OS held with an iron fist by Company, but that’s bullshit. There are multiple Windows OSes in very common use. An MSI designed for Windows XP — an eight year old OS — will work just fine on Windows 7, which was released a few months ago. Good fucking luck getting a package for an old Red Hat release to work on Fedora.

    And yes, this actually matters. Compatibility MATTERS. Maybe you ahve no need to execute old packaged binaries of Free Software on your new Ubuntu install. But you very well may have reasons to run new software on older installs. As I said above, upgrading an OS is a hassle. Stuff breaks, especially in the Open Source world where software releases are made on a time basis or on a whim and without any formal regression control, and where whole parts of the desktp or application UI change for (seemingly) random reasons, forcing users to relearn how things work for absolutely no benefit to the users at all.

    It’s not just about proprietary software. Yes, it is far more susceptible to breaks in compatibility than Free/Open software, but it’s not alone. There are plenty of Free Software applications I’ve seen that have been updated but can’t be installed on an OS due to a lack of packages for that exact specific combination of software version and OS version.

    A common software category — which is dominated by proprietary software, but which we’d all like to see have more Free/Open software — is games. Common games these days are HUGE. And I mean HUGE. id’s Rage is so big that it can’t even fit on a single DVD, and is one of the first games that actually makes use of the size of Blu-Ray discs on the PS3. The PC version will need huge amounts of disk space to install, and the Xbox360 version will require DVD switching. Rage is proprietary, but lets pretend for a moment that it’s Free Software. Guess what?

    That hypotehtical Free Software will NEVER EVER be in any Linux distro’s repostiroy. It’s six fucking gigabytes. No mirror in the world is going to want to host 48 versions of that exact same fucking data just to make it available to all versions of Fedora and Ubunut and SuSE, not to mention all of the other Linux distros and other community OSes.

    Out in the real world with real desktop users under real use cases, the Linux software distribution model doesn’t work. Linux distro developers focus on the appliance model, or the server model, or the netbook/phone model… but not a damn one of them seems to actually understand the desktop. They keep going on about how the browser is the OS and so since Linux runs a browser it is the equal of the OS, which is bullshit since I can’t think of a single person I have ever met in my life that uses nothing but a browser on their desktop. They keep going on about how distro repositories contain any and all interesting software, which is bullshit because I can’t think of a single person I have ever met in my life that uses only software found in the Fedora or Ubuntu or Debian repos or BSD ports. They keep going on about ease of use of the repos and safety, but (like Luis) I can’t think of a single person I have ever met in my life that looks in a catalog for products or software first instead of searching on Google and finding the software’s website.

    Linux distro developers don’t get it. They really don’t. They are totally out of touch with real users, because they’re NOT real users. They’re geeks. I’m a geek. You (whoever is reading this) is a geek. We don’t use computers the same way regular people do. We understand them at a far deeper level. We care about computing for the sake of computing, while regular people see computers simply as a tool. We get excited about advances in computing and technology and have trouble understanding why regular people keep going on about how great the ancient and crufty Windows XP is, the same way that auto geeks can’t understand why we don’t get excited about advances in high-performance racing exhaust systems.

    Most of the Linux developers I’ve talked to are in a different position than someone like me, though. They are Linux developers all day long. Their friends are Linux developers. Their job is all about Linux development. Most of them can’t name the last time they used Windows, or OS X, or any other system. They have no idea where Linux is lagging behind (do you have any idea how many better the Windows 7 Explorer UI is for file searching than the latest and greatest KDE or GNOME has to offer, even with Tracker integration? I bet you don’t. I bet you think Linux file managers make keyboard-friendly searching easier than Windows ever would on account of Linux being the programmers’ OS, and yet you’d be horrible wrong). The Linux developers don’t even know where Linux is way ahead of Windows or OS X, so they have no idea which features and ideas to strengthen and put their support behind further.

    It’s no different than any other homogeneous network or system. A network made up of millions of the exact same nodes will be utterly destroyed by a single attack that the nodes are susceptible to. OSes that are developed by people who have no freaking clue what other OSes do or how they work likewise will have a single weakness; not a security one, perhaps, but a usability one, or performance one, or functionality one.

    You can bet your ass that the Windows and OS X developers are very familiar with Linux. I know for an absolute freaking fact that quite a few Microsoft employees regularly use Linux at home and sometimes even at the office (e.g., on personal laptops brought in to the office). They’re not stupid enough to think that Windows is perfect and that there’s nothing to learn from how Linux does thing.

    But get on a distro’s bugzilla or mailing list and start offering suggestions about the things Windows does better than Linux — be it packaging, video, audio, basic desktop UI, configuration, management, whatever — and you get flamed into oblivion.

    I posted a bug to GNOME about how the Windows 7 keyboard-only search interface blows about Nautilus’, and the bug got shot down because “Nautilus isn’t a browser.” Meaning that adding a search UI that doesn’t regular magic key-combinations or a half-dozen button clicks is unwanted. Does it make the UI better? Doesn’t matter. Making sure the UI isn’t “like Windows Explorer” is all that matters. Linux developers are morons that intentionally and willfull retard the desktop experience on Linux just to NOT be like Windows. Microsoft will copy and improve on Linux ideas wherever possible to make Windows better.

    Many people — people like me — started using Linux because of the technology. Because of the freedom afforded to Open Source. Unfortunately, it seems politics and fanaticism has overtaken excellence and quality. Too many who actually make sthe decisions in major Open Source ecosystem projects are more concerned with avoiding the “copying WIndows” mantra than they are with just making freaking great software, even if that means learning from the great minds working for the “other side.”

    To put bluntly, I went 10 years using nothing but Linux. These days, I find myself booting into Windows 7 far more often than Linux, and I have yet to find a compelling reasons not to other than habit. I’d love it if Windows were Open Source, but at the end of the day, a quality, easy-to-use, no-bullshit OS is more valuable than access to source code I’m not going to edit anyway.

    And that is the primary reason why Linux is never, ever going to be a success on the desktop. Non-programmers don’t give two shits about Free Software ideals if even die-hard programmers have reasons not to care. When you take away Free Software/Open Source licenses as an advantage, Linux is way, way, way behind on usability, and lately seems to have lost interest in much of the community in closing the gap. Shuttlework and Canonical are putting their effort into goofy-ass improvements like new notification areas that no users are even asking for while letting the general state of the desktop as a whole just sit and rot while Windows and OSX flies by.

    .. dear god did I just ramble far more than I intended to. Sorry.

  14. apt: URLs. Nowadays they can even set up future automatic updates for you. Works in any blog or newssite. Works in FF, Chrome, any browser that uses xdg-open.

  15. Add me to the list of people who has problems with suspend/resume with OS X. About once every 2 weeks I’ll arrive at work, plug in my external monitor… and nothing happens. Shutdown and reboot. This has been a problem for me since 10.4, and across MacBook Pro models. I can only assume Apple developers don’t follow this usage pattern, or there’s something different about Apple and Dell monitors that makes it Work For Them.

    App install on OS X is a mixed bag, it’s good for instant gratification (since the .dmg + app bundle isn’t really an “install” in the first place), but has problems with users who don’t understand the process. But we’re working on it, see http://limi.net/articles/firefox-mac-installation-experience-revisited/

  16. One thing that has always pissed me off to no end is the SELinux crap that pops up in a default Fedora install. F12 seems to have been better in this regard, but I recall previous releases doing it in a fresh install (no additional software installed), sometimes immediately after logging in for the first time. It’s like nobody ever tested it.

  17. @Sean: I managed to read through all that and I certainly agree with the spirit of your argument and the spirit of the points you make. Politics, elitism, ideology and willful ignorance play too much of a role in the open source/Linux community and it is to the detriment of everyone.

    Don’t get me wrong, there is a lot of good work by lots of good people, but the community makes things infinitely harder for itself by continually failing on things like backwards compatibility, interoperability and simplicity — and I’m not just talking about the user experience, but also the developer experience.

  18. @Sean: I agree with many of your points.
    Linux make many things damn good.
    But some other as you mentionned are really disapointing.

    As you said, most of the time you get flamed when you point out what the others are doing better (and it is a shame).

  19. @Mairin: Your designs are better than the what was apparently made in the end. For example, the button spacing on the bottom of Luis’ screenshot is not very nice.

  20. It’s pretty hilarious (from a Windows user’s perspective) how you actually sound surprised that suspend/resume works :D Is the Linux side situation still that bad?

  21. @Máirín: the problem with the dialog is that it exists. No UI love can make this piece of information comprehensible or even mildly interesting. SELinux tries to detect ‘Suspicious behavior’ (according to the dialog). What the hell does that even mean? I think it means that SELinux detected something that it wasn’t smart enough to figure out if was good or bad. If so, well then SELinux should be changed such that it can actually figure this out. Don’t bother the user with this stuff.

  22. I have been using a mac for about 6 months (For work purposes, but it is my main machine). Suspend/resume usually works, maybe 1/50 times it goes funky on resume. (This is an old model white macbook) I can always trust it to suspend, whereas with windows I was never entirely sure if it would work properly. I usually never shut the machine down, unless it has crashed (Yes, macs do!). The most annoying thing is a hardware issue and that is the terrible screen, it has the worst viewing angles of any laptop I have used for a long time.

  23. @luis: “the OS preload is huge- 13-14 gigs. Which is insanely great!”

    They are many good things on Mac (at least from a technical/usability point of view), but having a ton of bloat[1] on the default install is not one of these.

    Which is insanely crap. They even had to do some dirty hacking on Snow Leopard to compress binaries, putting their content in extended attributes, to reduce total size… With a decent package and dependency management system, they would not have to put all of this on the default install. Don’t wonder why updates are so big after that. And due to the slow update process of Apple, you have a lot of security vulnerabilities on software that you don’t use…

    Also, maybe this SELinux window is not very user-friendly, but at least Linux has MAC.

    [1] BLAM ! (just’ve been shotted)

  24. The Mac’s installation is only good if it is used in a small number of user-end applications. The problem with non-FOSS having Mac style installation is that you then have to spend all your time searching on the web for basic applications which should be a part of the OS, and heaven forbid that any of those programs need to interact with other programs and libraries not in the package you downloaded.

  25. @Máirín:

    Just a few, random issues:
    0) Is this an alert, a window, or a dialog? It has elements of all three: alert: the exclamation mark icon in the upper left corner; window: close button; dialog: no menus.
    1) Should “Show All…” be ellipsized? (Not sure about that one myself, actually.)
    2) Why is there a border in this dialog?
    3) Stuff inside that border isn’t neatly centred. The right margin is especially awkward.
    4) “|> Show full error output” and “[] Ignore Alert” aren’t left aligned to the text above.
    5) “|> Show full error output” moves up and down if expanded and unexpanded.
    6) Why is the “policy version” line outside the border? Why is it presented at the same level as the Close button?
    7) Why do the Previous and Next buttons (not seen in this screen shot) show up to the right of the Close button?
    8) Why is a “Copy to Clipboard” button needed?
    9) Isn’t “Ignore Alert” ambiguous for an alert (or window, or dialog?) on alerts?
    10) The scrollbar (or two scrollbars, if “Show full error output” is expanded) seems to be “floating” (it isn’t immediately obvious what that scrollbar will scroll)
    11) Shouldn’t “Show full error output” be called “Show full Alert”, or maybe just “Full Alert”?
    12) Why is “Show All…” needed if there’s only one alert?

  26. I enjoy the “you can safely ignore this avc” part of the alert. Hilarious. :)

    It would be nicer if the SELinux alerts were vastly simplified (just a mere “Program X appears to be acting strangely. Your computer is watching it carefully.”

    In addition, the “var/cache/yum/program/blah-xa8834l&&etc” is utterly worthless to a normal user.

    When the “Fedora Updates Experience” (if) ever manages to condense package program to user readable program names, it would be nice if the SELinux alerts reflected this (“Mozilla Firefox is having a problem”, “OpenOffice Writer is having a problem”, “Eclipse is having a problem.”). These alerts currently do not empower and only confuse.

    As for Sloan, I think you make some really good points. Sometimes I wish I was a Linux developer so I could experience the ecosystem first-hand to make my own judgement. But my growing cynicism tells me I’m not sure it’s worth the effort to increase my participation beyond simple bug reporting.

    And yes, while package management in the abstract is nice, the long standing implementations of it are highly inconvenient, archaic, incompatible with the idea of a “friendly user experience”, and don’t scale well at all.

  27. (Oh and yeah, I used to wonder what planet people must’ve been from to constantly hype Firefox as a brilliant and amazing browser, given on Linux it’s — whether due to Firefox, Flash, or both I don’t know — unusable for me. Hangs for up to 30 seconds, all the time, to the point where I’ll try to do as much web browsing as possible on my phone, because it’s quicker and easier. Then I used it on OS X, and everything made sense.)

  28. Not going to comment on the mac much, I haven’t used one since the classic.

    Regarding that dialog, the problems with it are many:
    1. It shouldnt ever show on something as basic as an install’. That should be tested and fixed before release.
    2. If this allert is triggered, does the user need all the information in it? I would say most would not. A small allert box could show, so there is some feedback if this thing actually stops something from happening that the user expects. Maybe this box should have a “more info” option that show this information for those that do need it. (or make it a system wide setting to show verbose error dialogs or not, I’m not an expert)

  29. @Søren the dialog is not meant to be seen by users who cannot take action on it. Ideally, it would only display to a system administrator, and would display alerts for multiple desktops that he or she is in charge of maintaining. However, it does not support that yet. Perhaps it should not be turned on by default in Fedora but, that was not my decision.

  30. @Máirín:

    I’m not sure what you mean by “not meant to be seen.” The dialog is an uncommon occurrence in F12 for me, but I do see it sometimes, and I’m just a normal user on my machine.

    Have they just not finalized how they want the user interaction to work?

  31. @twilightomni the dialog is meant to be seen by administrators, not non-root / non-technical users. The reason is that it’s scary/alarming, and a non-technical user isn’t going to be able to do anything about it. It’s rude to tell people, ‘ZOMG the sky is falling…. and you can’t do anything about it unless you’re uber geek.’ But, as many things are in FOSS, it’s a work-in-progress. It’s not where the vision behind it imagined it to be.

  32. It’s rather shocking to me that when I seek out critique on the design work I do, I don’t get nearly as much feedback and critique as when someone makes a blog post about a design talking about people getting flogged, fired, and shot. Where was all this commentary months ago when the design was originally proposed and feedback asked for?

    Why is this kind of hostility more effective at generating feedback than a friendly call for comments?

  33. It shows that you only used GNOME on GNU/Linux. KDE 4 supports the dashboard and Expose effects just fine: Plasma allows you to put widgets/applets/plasmoids on the desktop and show them as a dashboard with a key combo (appropriately named “Show Dashboard” and defaulting to Ctrl+F12), and KWin has a clone of Expose as one of its possible desktop effects.

  34. @Máirín: I can only speak for myself and the reason I never commented on it, is that I’m only an occasional Linux user and I wouldn’t see that unless it appears on planet like this.

    As you said, this is only meant to be shown to people that can act on it. If that’s not what’s happening, then it isn’t a flaw in the ui design, but somewhere in the implementation of the error handling.

    And to be fair, for those that can act on it and understand what’s happening, this is far more useful then some hexadecimal code with a blue background ;)

    (And I’m sure Luis, isn’t really promoting a flogging ;) )

  35. FWIW, expose and dashboard both exist under gnome.
    Setting up an applet layer takes a bit more work though, since you have to specify a pattern to the compiz plugin for applications to layer and it does not default to the pattern of the filenames of the applets.

    1. wrt various comments that say (basically) either ‘it is already available’ or ‘it is in KDE’… talk to me when it is production, end-user quality. (Hint: if you think KDE or the gnome dashboard/applet technology is of end-user quality we have nothing further to say to each other.) Yes, expose is there, but I’ve never had hardware that can reliably run it. (Another hint: if you think using non-free X drivers is acceptable, then just go ahead and buy a Mac already.)

      On the one hand, this is possibly the most commented post I’ve ever written, but on the other hand, I’m pretty sure that I’ve had more ‘completely not getting it’ comments on this post than I’ve gotten in the past several years combined. So maybe I’ll just close comments on the rest of the posts in this series.

  36. @Máirín Duffy:
    My feedback concerned the screen shot Luis posted (plus a few things I noticed when looking at basically the same alert on my up to date F12 machine).

  37. The software installation on Mac and Windows is retarded, compared to DPKG+APT.

    You want to discover new software on web sites – use apt:// URL’s. These can even specify repositories and you really get to check their safety locally. You want to find new software from a trusted source – Applications->Add/Remove Programs. Much simpler than the ‘go google it’ route of Mac/Windows. And much more secure.

    Game developers don’t have to package all 6+Gb of the game into the package – just package the 10 Mb binary and have the binary either download the data files or get them from the DVD you insert when request it or just ask you where you downloaded the files to. To be really cool also erase those files in a postrm.

    And the Linux developers don’t have to bundle all their libraries into their packages, like most Windows developers do, and don’t have to keep track of the security updates of all those bundled libraries.

    A .deb for Debian/Ubuntu and a .rpm for the latest Fedora/RedHat and you are in business. If Skype can do it with just a couple people in the whole Linux ‘division’ so can most other commercial software vendors. Others should just catch an ear of a Debian Developer to add their software to the Debian archive and the distribution will be done for them.

    As for other matters of the post:
    * I don’t like my desktop jumping around when my mouse accidentally hits a screen corner and I rather like having all my panel indicators right there at all times. Maybe I am just used to having a big screen. 1920×1080 is very cheap nowadays.
    * Having all kinds of crap in the system bites you in the ass in the long run, especially without a great auto-updater like APT, because the Rails version in OS X is ancient and can easily cause conflicts when you try installing something fresher on top of it.

    One thing I must agree on is the suspend/resume. It is a shame that hardware manufacturers still think that it is ok to release hardware that does all kinds of weird and brain-dead things in power management. If they all fully implemented ACPI in the same way, there would have been no problem. But no – they just release a piece of garbage that will not work half the time without their special Windows driver that hacks the ACPI subsystem to support their broken hardware.

    The working suspend/resume on Mac is a compliment to the Apple hardware designers and is not a software accomplishment.

  38. Yes Sean you did ramble on too much and without a lot of thought, an old MSI designed for Windows Xp may run and install on Vista Or Win 7 but the application may not necessarily work, I have proved this over and over, also the Xp installers will fail on VIsta sometimes, I have also proved this, you speak as though this process is guaranteed to work, (you should say; “may work”) what you are saying in this regard is complete nonsense, remember that most people that uses Linux has years of experience on Windows, so we know. Do not know why this would be needed in the first place, especially in the FOSS world. Also running new software on older installs is likely to cause problem on any operating system.

    The Central repository is superior to most other methods of getting software, it is not the repository that prevents new software from being included it is the application installation model used by the distro that dictates what can be done in the repository, when it is not that it is lazy pakagers or a lack of them, do not confuse the operating system’s application model with the software depot use by that operating system, for instance, there is nothing stopping Windows from having a central repository, the way windows works in terms of application installation would not change and you could have all the new software in its repository, so the problem is not the repository.

    As for scaling why use 6GB as example? If there is need for such a dependency it would best be preinstalled on a machine, no reason why an OEM supplying any of the operating systems could not include this, downloading such a large dependency could be an issue depending on the user and server resources of the distributor regardless of whether you use a repository or go to some other place.

    A repository is for smaller important libraries and applications that makes for a reasonably complete desktop, even though the author mentions here that a lot of things are preinstalled on the Mac it is doubtful that every thing an end user wants is there, they may just have to get something in another way dictated by the people who develops it.

    Yes some of what you are saying is true, the Gnome developers can be obstinate and downright arrogant at times and I do think the Linux application model needs to improve, this though has very little to do with the repository, which I think is a good thing.

    Linux tends to use libraries that are already available for the specific distribution hence the dependency issues that may prevent the end user from using the latest software that often times needs newer versions of the libraries, all is not lost in this case as sometimes a third party repository can be added that will update the dependencies and install the newer software, Windows on the other hand has a model that is called the side by side method(since Windows 2000) where an application’s dependencies can reside in the application’s install folder hence more than one version of the same deps. Can be installed on the same computer, this is not space efficient, but with storage so cheap nowadays this is not a big issue. The Linux model is more space efficient but has the above problem of having to add third party repos providing they are available, backporting is another method used.

    Installing new software on most Linux distributions can be a big problem and they must work to solve this issue the way Microsoft solves theirs with the side by side model as long as the application itself is compatible with that particular version of Windows, the ideal thing would be for Linux to have an application Model similar to Windows and still use the repositories. Yes Linux has many problems but using a repository is not one of them.

  39. “Let’s say you write an app. You decide to make it available to Linux users.”

    Oh, so you want Palm Pre and TiVo and Droid users to use it? Of course not. Linux isn’t an operating system. Ubuntu and Android and Fedora and WebOS are operating systems. Complaining that the same binary doesn’t work on more than one of them is exactly like complaining that a Mac OS X binary doesn’t work on FreeBSD.

    “the dialog is meant to be seen by administrators, not non-root / non-technical users”

    I almost envy you, Máirín, for being able to design your OS as if it shouldn’t be administered by its end users. Almost.

    1. James, Daniels: for me the primary issue was awesomebar being (apparently?) syncronous, and having lousy performance with large histories. It seems much, much better in the 3.6 nightlies, though.

      edgardo: if GNOME community members are not interested in how other OSes do things, we’re even more fucked than I think we are.

      mairin: (1) I’m sorry you didn’t get feedback on this earlier. If you’d like, I’d be happy to talk with you in some detail about the design feedback problem in our community and why I think something like this gets much more feedback than it should.

      (2) from a substantive perspective, the problem with the dialog is that there is no possible way an end user could make good use of any information that could possibly exist in that dialog. If it has to be shown to end users, it should follow the style of mac/windows crash dialogs, and just say ‘we’ve encountered a problem and are uploading information about it, sorry for the interruption.’ If it isn’t intended to be shown to end users, then implementation criteria #0 should be ‘make sure it never gets shown to end users.’ That’s not a feature you can tack on at the end; that absolutely must be baked in from the beginning. I’m really not sure where in the process that went wrong, but it is something QA should also have caught before it was released- that no one in the Fedora QA community stood up before release and said ‘wha?’ is (in my mind) at least as troubling as the design.

      (3) I apologize for the joke about flogging; I’m not a big fan of the absolute dictatorship school of organization, and that should have been more clear. But sometimes it is nice when the train runs on time.

  40. The current KDE 4 (4.3.4 at the time of this writing) is definitely of end-user quality. And no, I don’t think non-Free X drivers are OK. But KWin can do desktop effects with only XRender, even software XRender (vesa driver). And Intel integrated graphics don’t need non-Free drivers for OpenGL, either. Nor do AMD/ATI Radeons in Fedora 12 (see mesa-dri-drivers-experimental for the Radeon HD series).

  41. The good suspend/resume experience is part of controlling all hardware and only needing a smaller amount of drivers as well, by the way. Reduce the Linux kernel to 5% of its scurrently supported drivers, and hand-select which ones they are, and suspend/resume works just as well.

Comments are closed.