Long time no post!


Well its been a while since I blogged, I’m thankfully now back in the UK working for Codethink, being creatively stimulated by an (architecture) dancing Rob Taylor and developing on Wizbit… Amongst some other things :D

So, what have I been holding back? Oh, where do I start?!

First up, Tomboy with 200% more awesome


click for ogg theora video

Source for this is available tomboy here, wizbit here and notes on getting it working can be found here
This is tomboy with wizbit as a storage backend, unfortunately tomboy doesn’t allow pluggable storage backends so this is fairly hairily hacked into the code, John Carr has been beavering away at this too over time so its essentially the combined works of everyone at codethink…

You’ll get to see a presentation we’re working on for Boston so I hope to see lots of you there!

. . . Next up there’s a couple of mockups

I worked on these as a result of lots of ideas that were buzzing around inside my skull, some things that got mentioned on p.g.o like this from Federico and some of the things that were happening with wizbit.


click for full size

As you can see, I really do like the idea of a universal dock, I suppose the taskbar is just so 1995. Along side it, I wanted to give an impression of GNOME being the desktop, the GNOME menu item isn’t really intended to be a final but its when I think of MacOSX’s finder being the the default running application on the OSX global menu I thought GNOME would be a nice word to have on the default desktop. There’s also these little corner widgets I’ve been thinking of, a sort-of-rotating-journaly-thingy and maybe a sort-of-rotating-presencey-thingy-similar-to-the-repurposing-of-the-ubuntu-screen-corner-thingy.


click for full size

This, hmm, well I’d like to be honest, I do have some pretty clear influences from that large fruit company up in Cupertino, and we should all look at what they’ve done and go “AWESOME”, I’m not going to spend my time being a fanboi but paying homage to them is fair to say the least. Now that we’re over the overall look of the mockup, the features involved are what I imagine the next generation file management type thing to really be concerned with. Lets call it, 20,000 leagues into the future (anyone get that joke or was it just too obscure?)

Firstly, no-sodding-hierarchy-for-me-to-loose-my-files-in paradigm is what I’m going for. Wizbit makes this pretty easy to achieve, along with some tracker style tagging and various other bits of additional wizardry would let us get there quite easily. I suppose the drawing actually explains everything pretty nicely, but pay close attention to the file timeline, it makes for a blinding future when you think long and hard enough about it. I also want to see some discreet artificial intelligence in the desktop thinking about syntax of emails, notes etc… If anyone has seen the iWish video from *ahem* *muble*microsoft*mumble* then I think you’ll get closer to the idea that’s dancing around in my head.

. . . And a quick and dirty python dock


click to download the source

I wanted something here that was lightweight and simply provided me everything that Mac OSX Tiger provided, there’s a lot of missing features and I haven’t really had any time to hack on it, but it was only a couple of days of lazy hacking to get it to where it is now. I always thought it would be better to write a dock in python rather than C, simply because it would make it easier to implement certain features like plugins etc… I have Rob Taylor telling me that I should re-write it in vala… I’m torn :/

This user experience hackfesty thing

Well I’d really love to be there, but it’s not exactly on the itinerary of codethink, we’re arriving in Boston on Friday (I think?) that’s if everything goes well and I don’t get pulled out of the visa line up by a guy called Bruno with really big hands and latex gloves…

There’s actually a lot to discuss with this, and its going to be interesting to see what people blog about it, I mean its perfectly feasible to one-up the competition without putting too much work in, for a start we’ve got a couple of years in order to come up with fruit-company-beating-concepts as “Snow Leopard” is purely concerned with performance and lessening the memory load rather than adding more features to the already good UI. I suppose when you have polish like they do already it gives you time to sit back in comfort and go, lets just make it quicker and less bloated, this gives us the opportunity to get new features which will beat Apple to a pulp (bom bom).

One last thing, currently only in planning stages…

Another thing that I’ll be working on is a collaborative white board. We’re gonna be wizbit powering this if John Carr gets his way, this was initially Rob Taylor’s idea, partly because we couldn’t find anything out there which does it, and partly because he loves his thinkpad tablet so much he wants to use it for something cool. A shared whiteboard is something that we’re lacking in GNOME and I’d like to think that this project will be easy to start out with something in a working form, then move on to plugging it into empathy or something so white board sessions can just be initiated… Its a cool idea overall, and I really want to get started on this one…

I have a few other things on the horizon too, and I’ll try and get round to blogging on my developments more often.

*Dear laziweb*

I’m looking for a 150gm, A5 unruled-plain white notebook for doing sketches in, anyone know a company in the UK that stocks 150gm sketch notebooks that aren’t on crappy recycled paper (which is horrific to draw on and just isn’t white) please get in touch, I’ve looked around in a few places but haven’t been able to get one that would fit the bill.

  1. #1 by Clark on October 7th, 2008

    These mockups look terrific. I really hope some of these ideas will gain traction and soon.

    GNOME is my desktop of choice and I’m very pleased with it, but I’d love to see it do some leap frogging in terms of innovative UI.

  2. #2 by .. on October 7th, 2008

    Awesome mockups. If this can be done for Gnome 3 (along with stuff on a “wishlist” laying around somewhere) that would be amazing.

  3. #3 by Ian McKellar on October 7th, 2008

    Technically a universal dock is very 1989

  4. #4 by Pierre on October 7th, 2008

    Have a look at Gnome-Global-menu (on google code) and at Gloobus (on Launchpad)

  5. #5 by Karl Lattimer on October 7th, 2008

    @ian: Thats a wharf i think… :P

  6. #6 by Karl Lattimer on October 7th, 2008

    @Pierre: Surprisingly, I’m on the CC list for the bug…

  7. #7 by Dread Knight on October 7th, 2008

    I am a KDE4 user.

    But i like this one http://www.wine-doors.org/screens/browsing-filesystem.thumb.png
    especially the upper part. I think Nautilus GUI rather sucks and needs and overhaul with those ideas (more like Dolphin).

  8. #8 by Chris on October 7th, 2008

    Awesome stuff!

    I really hope some of your ideas will be incorporated in Gnome.

    The dock is nice though I wish it could take up less space – hard I know.

  9. #9 by Steve on October 7th, 2008

    Regarding a collaborative whiteboard app: Have you looked at Inkscape? I haven’t actually tried it, but there is a shared whiteboard feature in that program. I believe it uses XMPP up to a client called Pedro.

  10. #10 by Mark Lee on October 7th, 2008

    Hi,

    I’m a developer for Awn/Awn Extras. I may be a bit biased, but we need a new dock as much as we need yet another clock widget for screenlets/gdesklets/Awn/cairo-dock/etc. You should say hi in irc://irc.freenode.net/#awn, particularly when Neil is around (he’s currently at the UI hackfest) to see if any of your dock ideas fit in with his vision of the next version of Awn. Yes, Awn *is* written in C, but I’m trying to get Neil to convert at least some of it to Vala… :) At the very least, we’ve implemented support for Vala applets.

    -malept

  11. #11 by Nick on October 7th, 2008

    Great post – The journal corner idea really caught my imagination when you look at Federico’s ideas alongside.
    Imagine the mouse hovering around the outside for todays files and the further you push into the bottom right the larger the journal grows showing the previous 7 days, push again and you get start to ‘pulse’ back to a few weeks etc.

    An additional ? button could be provided to provide tags/hints to the journal with which to refine the search ‘pdf’ ‘work’ ‘ongoing’ ‘january’ etc.

  12. #12 by Karl Lattimer on October 7th, 2008

    @Dread Knight, funnily enough I’ve never seen dolphin, maybe I should take a look

    @Mark Lee, AWN to me is like using a sledgehammer to swat a fly, sorry but the UI is jerky its difficult to know which zones of it are clickable, its over done IMHO and that’s why I wrote this, because I want a dock, but I really don’t want something like AWN, I mean in all seriousness its too complicated and clunky. The idea with this is to have something smooth and simple.

    @Nick, some interesting ideas there… let me chew on them for a while :)

  13. #13 by Chris on October 7th, 2008

    Does the dock work without compositing?

    I am using radeonhd drivers, can’t get compositing to work here.

  14. #14 by Karl Lattimer on October 7th, 2008

    @Chris, you can get compositing to work on radeonhd by setting the metacity compositing gconf key to true or using xcompmgr, unforunately I don’t want to bother implementing a screenshotting thing for it because that’s a bit silly with compositing working overall soon

  15. #15 by Ketil on October 7th, 2008

    Wow. I have to say, when you come out with something, you really deliver. Now, if someone would make this a reality, I’ll be using the screen as the main decoration piece in my living room.

  16. #16 by garrett on October 7th, 2008

    Some of this stuff looks quite interesting… are you sure you’re not here at the hackfest? (:

    Hopefully we’ll have something to show soon based on what we’ve been talking about and sketching up. (Somewhat polished mockups and writeups.)

  17. #17 by Andreas on October 7th, 2008

    I’ve always wondered why everyone is in love with those docks. I have not used one for an extended period of time myself, so maybe I’m missing something. To me, they just take up too much space. I’m on a laptop with a 1280×800 display. It seems to me that all websites and documents are built vertically while screens are built horizontally. Right now, I have two gnome-panels and epiphany open (with no bookmark bar and the address bar right next to the back and forward buttons) and i still only have about 3/4 of the screen space for the actual website. The last 1/4 is taken up by the panels, the status bar, the menu bar, the title bar and the toolbar. I just dont want an even larger dock at the bottom of my screen.

    Besides, I like being able to see what windows I have open without any actions. At this moment I can scan my applicationlist in my gnome-panel and see several epiphany-windows, a few pidgin-windows, a few terminals and some nautilus windows and still be able to know what they all contain. How will this ever be possible with a dock with just icons that doesnt even go from one edge of the screen to the other?

    Please, tell me what I’m missing here. Do I sound like someone who has never actually seen one of these docks or is this just less important to everyone else?

  18. #18 by Mark Lee on October 7th, 2008

    @Karl: If you had read Neil’s latest post on Planet GNOME, you’d know that he’s knee-deep in a rewrite of the entire dock, from top to bottom. We’d appreciate any input you have on the direction of the rewrite, such as which specific features of Awn you think are “clunky”.

    Having taken a second look at your dock (i.e., glancing at the code), it appears that you’re in the camp that wants a launcher-only dock. Awn can do that (kind of :) – see http://wiki.awn-project.org/FAQ#How_do_I_turn_Awn_into_a_launcher-only_dock.3F for details – at the very least, it will definitely be in the next major version, in a more usable form).

    BTW, your comments need mail notification :)

  19. #19 by Rob on October 7th, 2008

    @Mark Lee: Have you tried running it yet? I’m a big fan of awn, but it does seem Karl’s algorithms beat the socks off Awn’s, both speed and usability-wise. Maybe you guys could use this code or take some hints from it for the big Awn rewrite?

  20. #20 by Mark Lee on October 7th, 2008

    OK, at third glance (at the suggestion of Neil), you *do* try to associate tasks with launchers. Sorry about mischaracterizing your dock. The Awn developers have learned from experience (i.e., a myriad of bug reports) that task matching is an art, not a science – there are more edge cases than not, particularly when an app is launched using a wrapper script (I’m looking at you, Firefox).

  21. #21 by Matt on October 8th, 2008

    Hi,

    I don’t really know if i’ve fully grasped what wizbit is all about, but according to ars its some kinda git-based version control filesystem. So i am immediately wondering… could you make nautilus save file revisions like Dropbox? If you could that would be so killer and i would love Codethink till the end of time!!!!

  22. #22 by Neil J. Patel on October 8th, 2008

    Cool stuff Karl, can’t wait to see this in action, especially the Wizbit stuff. It’s amazing how many times revisioned files and auto-save have cropped up this week (at the UI hackfest), so it would have been cool to see you guys here (although I know it’s easier said than done!).

    Re: Awn, I think your right that, for what your doing, writing a simple dock is quicker. You don’t want to deal with panel-esq problems, OOP applets, multiple effects, dbus etc. I’ll definitely take a closer look once I get back as per Rob’s suggestion and see if we can share some code.

    Anyway, once again, awesome work!

  23. #23 by Babets on October 8th, 2008

    The dock is very similar to wbar :D http://freshmeat.net/projects/wbar/

  24. #24 by airtonix on October 8th, 2008

    andre,

    the idea is that you remove all of gnome-panel and use awn instead.

    something that will be easier to consider when awn becomes alot more stable and it’s menu applets provide a 1:1 clone of the gnome menu and its functionalities.

  25. #25 by Mike H on October 8th, 2008

    Quick search on google for 150gsm pad pointed me to this:
    http://www.chromosart.co.uk/catalog/spiral-bound-sketch-winsor-newton-150gsm-p-5102.html

    :D

  26. #26 by Karl Lattimer on October 8th, 2008

    @garret: I really would like to be at the UI hackfest, and the idea’s I’ve got here are just sort of my own mental ramblings that rob kinda made me post to my blog, non of it is polished, and I should really be presenting them at the hackfest but we’ll catch up on saturday/sunday and discuss?

    @andreas, i think you have missed the point… application oriented workspaces are far more productive than task oriented workspaces, I mean jesus, why the hell would i want to bring forward one window of gimp at a time on a crowded desktop? seriously, the gnome desktop in all its glory is sitting in the past with the task management, we really need to actually think about why the apple dock is good and using the extensive usability testing that apple have done to our advantage.

    @Matt, wizbit isn’t really a file system, in robs words “wizbit is a loose object store with revision control” which is probably the best way of describing it even if it isn’t very descriptive, essentially what we’re talking about is a whole revision control system for data objects, now of course those objects can be files, but they can also be things like tomboy notes, calendar entries, contacts and much much more. So you’ve got kinda the right idea about what we’re doing but you’ve only seen part of the picture, wizbit is much more :D but sure, sync across devices is one of the things that John and Mark at codethink have been beavering away on and it would be perfectly conceivable for you to sync to a secure backup location, but of course not just sync, but sync histories :)

    @airtonix, replacing all of the panel features on a dock wouldn’t be my plan, but the task manager/launcher and some other minor things definitely. I suppose you really have to use the osx dock for a little while to “get it” but

    @neil, thanks for your support :) I mean, if you can strip back AWN to a basic core of code that’s pluggable then that would be great, in the mean time I wrote this to be smooth and usable for an application oriented desktop (as metacity fails at this).

  27. #27 by Karl Lattimer on October 8th, 2008

    @Mike H, awesome googling dude!

  28. #28 by Gaute Lindkvist on October 8th, 2008

    The zoom feature of the dock was one of the first things I disabled when I started using OS X a few years ago.

    It is an annoying piece of eye candy with little benefit and the detrimental side effect of making items shift back and forwards and making them harder to hit.

    Now that the patent for the expanding dock has been granted to Apple (http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=7,434,177), maybe we can put this expanding dock dead end behind us and perhaps focus on aspects of a universal dock that could actually make it more user friendly and effective.

  29. #29 by Chris on October 8th, 2008

    Got your dock to work with compositing.

    Great work!

  30. #30 by Claudio on October 8th, 2008

    Hi Karl, i like some of ideas in your post but i think that there is too much dock project around the web, all the project are similar and no one work like they do. We don’ t need another dock project we need a a dock that finally work and if it’s possible we want a dock that work better than osx dock maybe with new usability features. So why all you coders involved in docks get together in a unique great dock project?

    thanks for your free work and your passion in free software
    bye

  31. #31 by Karl Lattimer on October 8th, 2008

    @Claudio, I know what you mean about the multitude of docks, what you do have to remember though is that this was two days of work, its a hack so I had something that works for me. The important points here are, that firstly its application oriented rather than task oriented. This is the way we should be heading. Secondly, it was fun to work on the scaling algorithm :) it was simply a bit of a time killer for me, and the second time i’ve worked on such a thing, this time in a different language.

  32. #32 by Claudio on October 8th, 2008

    @Karl, I understand what do you mean, but, you know, i’m a little bit sorry about all this work spent in free software without a real unique goal. I’m talking about the great anarchy freedom in open source, that i love but sometimes i think is “dangerous” for getting thing done. I’m not talking about you in particular, i’ m talking about the comunity. We have a lot of similar software ( text editors for example) that works so and so, for me it’s would be better to have 3 similar software that works geat, wat do you think about?
    I have understand that your dock is such an style exercise in coding and I’m sure you have good ideas, so i would like to see you involved in a existing dock project ( awn for example ) for make it growing better.
    Thanks for your answers and sorry for the OT.

  33. #33 by Nick on October 8th, 2008

    What about integrating the dock idea with the document/people centric desktop idea? The journowheel could do that quite nicely (bottom centre, bottom left, top right etc). Current apps/conversations/open docs on the outer, then recent conversations/visited links/documents etc – Similar to the extension I proposed above with dynamic history interaction. Even split the circle into apps/docs/people and each section expanding. I should mock/code up something to get my point across better but it’s here as food for thought. I think the MacOS dock has been done to death, and besides, it’s now patented in the US (groan!) so time to leap ahead of the game a bit methinks.

  34. #34 by bastianazzo on October 8th, 2008

    I’m sure that small things make big differences, but is there any true innovation over OS X?

    I don’t see it, and in my honest opinion, I think that by trying to realize something that is already there, we will always be in late.

    on the contrary, innovation is to realize something that maybe doesn’t make all that sense, but leads us somewhere nobody else went… do you want the simplest and less useful example? compiz!

    from there, we are leading, others are re-doing

    here I see re-doing things that others already did

    my 2 cents… didn’t mean to be destructive, though! keep up the good work

  35. #35 by Karl Lattimer on October 8th, 2008

    Can we please not have a debate on OSX here please. save it for an appropriate forum of someone who gives a rats arse, and I’m talking to the one’s that just didn’t get published.

  36. #36 by bastianazzo on October 9th, 2008

    i’m very sorry, but my comment wasn’t focused on OSX, rather on putting innovating ideas into our world.

    in fact, I didn’t express any preference for one over the other…

  37. #37 by Allan Day on October 9th, 2008

    Great to see some UI discussion going on. Nice work, Karl! A few thoughts about your mockup…

    Love the GNOME menu item in the top-left hand corner. Very simple and classy.

    One thing that I really dislike about docks is the way they don’t use screen corners. You seem to have got around that by using a dock and at the same time adding items into each of the bottom corners – an interesting approach. Do you really need the actions menu in the bottom right, though? You seem to be reproducing the functionality of the GNOME menu. Why not use that corner to trigger some kind of window management operation, like Scale/Expose?

    Let’s reduce the number of icons in the notification area. I mean, do I really need a Bluetooth applet?! In a previous lifetime, I put some ideas about redesigning the notifications UI on GNOME Live: http://live.gnome.org/AlternativeNotificationsUI

    I see no main menu of any kind. How can that be?! Please, let’s not let the dock become THE location for launching applications. I’m bored of wading my way through a gazillion icons (stored in no particular order) to find what I’m looking for.

    Are you saying one icon per application, irrespective of the number of windows that application has open? The inevitable question – what happens when you have LOTS of windows open with the same application?

    I agree that it is well worth learning from Apple’s usability studies. GNOME just doesn’t have the resources in that area. Still, we also need to be a little careful in how we interpret their results. This isn’t neutral research – Apple have a particular set of interests which might not tally with our own.

  38. #38 by Karl Lattimer on October 9th, 2008

    @allan, the GNOME menu thing as I said was me farting ideas, and was by no means final. We should probably use it for something like the gnome-main-menu thing instead… but I’m not sure.

    with application orientation you’d raise all of the windows in the order they are currently in at the same time, that’s why it’s ideal to use expose along side them… remember though this is mental ramblings and a source of ideas rather than a final concept.

    It would probably be useful to discuss these ideas with the rest of the ui-hackfest people before I dig myself any deeper.

  39. #39 by Allan Day on October 9th, 2008

    karl – sure, I realise I’m getting a bit carried away… it’s fun to play around with UI ideas! I wasn’t wanting to put you on the spot. ;)

  40. #40 by Zeeshan Ali on October 9th, 2008

    You boss knows better, avoid creating a pile of python poo when Vala is there for the rescue. :) /me runs to the Lappish mountains :)

  41. #41 by David on October 10th, 2008

    I have mixed feelings about docks. As Allan pointed out, they fail to take advantage of Fitts’ Law. A bigger issue is the way they seem to fight muscle memory, since the location of any given object is always in flux. Making the dock take up the entire width of the screen and giving objects on the dock a set location would solve these problems. In effect, the dock would need to be more panel-like. There are many other usability problems that would need to be solved, as Tog pointed out many years ago when he wrote ‘Top Nine Reasons the Apple Dock Still Sucks’ .

    My biggest problem with the dock is that is seems to go in the wrong direction: shouldn’t the “desktop” be moving towards more of a document-centric direction? The dock is heavily application-centred, and that bothers me a great deal. Even the Xerox Alto didn’t expose the concept of ‘application’ to the user, and, yet, we keep forcing users to deal with this artificial concept all the time. We should be figuring out how to get rid of that concept as much as possible, not adding more of it. If anything, I think the Gimmie/Mayanna dock offers a better organization paradigm than does the Mac OS X dock.

  42. #42 by António Lima on January 6th, 2009

    I, nice work with you mockups! I’m trying to run your pydock but just executing the dock.py file just creates screnshots of my desktop. Running it with “python dock.py I get this error: File “dock.py”, line 181, in __init__
    self._item_surface = cairo.ImageSurface.create_from_png(self._image_file)
    cairo.Error: file not found

    Any idea if I’m missing anything here? Thanks!

  43. #43 by Andrew on January 7th, 2009

    Hi There,

    I’ve just stumbled over to your blog – firstly, may i say that some of your mock-ups look awesome.

    Appreciating the fact that they are mock-ups, are you able to tell me where you acquired the theme/icons/wallpaper for the below mock-up please:

    http://www.wine-doors.org/screens/desktop3000.thumb.png

    Great work, love your blog!

  44. #44 by Karl Lattimer on January 17th, 2009

    I got this too when testing on ubuntu, I think it’ll be related to a missing image file or something… Not too sure, maybe I’ll get some work done on it soon and fix that and a bunch of other problems I’ve faced… Remember though it was just a hack!

(will not be published)