Blog Post

Should 10.5 include Linux features?

If any of you have been paying attention to the Linux crowd lately, you may have noticed a couple of arcane sounding terms like XGL and compiz being passed around frequently. XGL+Compiz is the newest form of eyecandy available for the Linux desktop, and its quite impressive.

OS X has included most of the features Linux is now making available for years. But there are a couple of features making the rounds that I would love to see on my Mac.

The biggest feature I’d like to see is the ability to make any open item on the desktop transparent by pressing <alt> and using the mouse scroll wheel. Admittedly, we’ve got exposé, but how many times have you needed to type something while looking at a different window? Usually the window directly below the one you are using. If you’ve got a 13 inch MacBook screen like me this need for optimized screen real estate becomes even more apparent.

The other feature involves multiple desktops. I use VirtueDesktops to overcome this on OSX, but another cool feature of XGL is the ability to grab any window an pull it to another desktop with the keyboard. Am I the only one who would love to see a slick Apple spin on this idea?

We can only speculate (until the WWDC that is) about the features that will come in 10.5, but these two have just made my wish list.

19 Responses to “Should 10.5 include Linux features?”

  1. Mattias, I agree with Brad, Java is borderline evil… not to mention slow, bloated, etc etc, a million reasons not to use java, perhaps the most convincing issue is that Apple has stated that Java is being phased out of their Cocoa stuff, meaning the API isn’t being updated for java anymore so you’ll be stuck in 10.4 and I think even in some cases 10.3.

    Go with Python for Cocoa if you dont want to learn obj-c (which I think is a great language btw, I had no trouble going from C/C to Obj-C in just a month or two).

  2. Brad Allen

    Mattias: I don’t want to spend time learning Objective-C, either. It’s really only useful on one platform, namely Mac. But Java is a pain in the butt. Why not use a dynamic , open source, cross-platform language such as Python or Ruby? Those are worth learning! Python in particular is good for Cocoa programming due to the robust PyObjC bridge, but it can also be used for shell scripts, web development, and can even access Java libraries via Jython.

  3. l0ne:

    Oh I agree! My point was only that it’s not a massive leap / paradigm shift like the ‘original GUI’ that Anthony was suggesting.

    I agree it looks damn nice and is convenient for noobish users to have the window ‘stick’ to the size of another window and sort of stretch when ‘breaking’ it off and so on, definitely handy and nice looking, but by no means is it as revolutionary as going from CLI to GUI.

  4. Ryan, having the window stretch when minimizing or a Finder window zooming back to its parent folder icon when closing is an important visual clue for the beginners. It means, “whatever you had that you closed/minimized just went here”, implying you can go look in that position to find it again.

    Exposé is pure genius, as it clearly shows that the thumbnails you are viewing _are_ of the currently displayed windows without you having to guess. Again, great for beginners.

    The cube? Pure eye candy. :)

  5. JulesLt

    Jay – in my day job I’m a software developer (Unix and Java server side systems). At home I’m a user. I don’t really ‘feel’ a lack of Mac software, or Mac developers, and I’ll confess that I really like the fact that most of the apps I use on the Mac have been written by people who like the Mac – something I don’t feel can be said for Windows (no criticism of MS but most people are writing for it because it’s the dominant platform, rather than any love for Windows).

    And yes, I know there are a lot of Windows developers who love Visual Studio, but there were a lot of Windows developers when they preferred Borland.

    XGL – it’s controversial in the Linux community as it ‘breaks’ the Unix architecture in exactly the same way OS-X does. But it’s nice to see that Linux will be driving OS X forward with competition while we wait for Vista.

  6. I have to second WindowShade X. It’s been around for almost as long as OS X (which has supported transparency, if not always readily available to the end user, since the beginning – use it all the time in Terminal). Paid for it years ago, worth every penny. I’ve programed it so windows go transparent using the yellow traffic light button system wide (I have zero use for window minimizing, but can still get to it via command-m). Great program. Stable, extensive customizability, actively supported.

    Never needed multiple desktops either – Exposé works better for me, but that’s just the way I work.

  7. “Then you don’t get it, probably for the same reasons that some people never got it when the GUI was first invented.”


    I’m talking about the eye candy part not the window management part. See, on OSX we’ve had very similar (if not even a bit better) window management capabilities for years.

    The windows sort of flowing around and stretching and so on IS useless.

    There’s no benefit similar to the when the gui was ‘first invented’ becuase that was a whole new way of doing things and this is just some fancy pants gl graphics.

    If I ‘dont get it’ then PLEASE explain it to me!

  8. Apple needs to be very careful how the deploy their limited OS development resources. If they chase after every feature (especially eye candy) from competing platforms, we’ll end up with nothing but another Windows.

    Apple appears to be headed in a good direction. The Intel transiton has been incredibly smooth. Beyond that, Apple needs to continue with Kernel performance, application architecture, Cocoa framework, and development tools issues:

    Kernel performance: Apple has been working on, and needs to continue with improving kernel level parallelism. Particularly with Intel’s multi-core roadmap, improving kernel level parallism will pay off big time.

    Application architecture: The spinning beach ball is still too common. This comes from the UI thread blocking for too long. Apple needs to work on making it possible to invoke UI functions from multiple threads. There might be some things to learn from the BeOS here.

    Cocoa framework: Cocoa’s great, but it can be a lot more. Cocoa Bindings seems unnecessarily complicated to me. Way too many things are hidden in Cocoa. Coming from a Smalltalk background, where you have the source to the full class library, I’m a little spoiled. I don’t necessarily expect Apple to open up the Cocoa sources, but it would be good if they implemented more of Cocoa in a manner that made the workings visible to developers.

    Development tools: Again, Xcode is good, but it can be better. Object-oriented programming (as evidenced by Smalltalk and other OO environments) lend themselves to rapid development far more than Xcode currently allows. Tools for refactoring are desperately needed. Oh, and it drives me batty that I can’t see the contents of Core Foundation collection classes without dropping down into grungy GDB crap.

    Paying attention to very fundamental issues will pay bigger dividends than just chasing competing eye candy. Improving these issues are the things that will attract developers to the platform. Right now, Apple needs to do everything they can to increase development on the Mac OS X platform. Ultimately, it’s applications that will draw users to the platform.

  9. Anthony

    Ryan wrote, “Mmmmmm, XGL is so sexy… Yet so unnecessary…”

    Then you don’t get it, probably for the same reasons that some people never got it when the GUI was first invented.

  10. Brad Allen

    The biggest Linux feature missing on Mac is good package management.

    DarwinPorts and Fink still have a lot of problems and limitations. I think the open source community in the Linux world is far more active about doing things like maintaining package management repositories.

    If we had a good package management system on the Mac, it would make software more accessible to non-techie users. Instead of having to visit websites to hunt down software, the user could just view software items available in the package management GUI, and click checkboxes for the items they want installed. Similarly, the package management would handle updates as well.

  11. sparrowlegs

    After making the switch from Linux to OS X, the features I miss the most are the ones that allow the user to easily resize and move windows without having to click on a specific area of a window.

    In Linux, you can move a window by pressing Alt left_mouse_button anywhere in a window and then drag it around. Similarly, you can press Alt right_mouse_button to resize windows.

    I think Geekbind ( adds this behavior to OS X, but the project appears to be dead.

  12. actually, i am a linux user… but soon, my macbook will arrive ;)

    xgl is a very nice and impressive thing. but virtual deskops are standard for a long time, and they are very useful. on mac osx there are several tools to get more desktops, so this is not a problem…

    but hey, on a mac you got frontrow, this is pretty cool, too ;)

    or have a look at ilife… linux needs such type of apps, which are easy to handle…

    itunes – banshee
    imovie – hmm cinelerra?! never got it working :(
    idvd – ?
    iphoto – gqview and f-spot, but nothing “allinone”
    iweb – maybe nvu, but this is not as easy as iweb (ok, i don’t need it, got eclipse and gvim, but there are a lot of users who’d like to have such an app)

    so… the only really equivalent for me is banshee music player (or gmusicbrowser, too) but all in all, on a mac you can work faster without using $ man [app]

  13. Mmmmmm, XGL is so sexy… Yet so unnecessary… :)

    I’d like to see some fancy ui OPTIONS in 10.5 for sure though, and I love your idea of being able to move windows between desktops via a drag-and-drop-ish interface.

    The transparency thing I could do without since I have a cinema display but I can see how it would come in handy on a macbook.

    Can’t wait until wwdc!

    My wishlist is basically this “anything! give me whatever you want and I will worship you!!!” :p