Archive for the ‘Usability’ Category

Near Field Communication (NFC) at JavaOne

Wednesday, May 7th, 2008

Talk was given by Jaana Majakangas, from Nokia Corporation. I’ve been interested in NFC ever since I heard about it, as its something Maxis has been trialling for a while in Malaysia. It reminds me of rewinding back many years (maybe a decade ago?) when Celcom was trying to allow people to purchase a Coke from select vending machines, using SMS (no cash!). That never took off, but maybe NFC will be right, soon… Current limitation? Lack of devices - one in market (Nokia 6131) and another announced, but not in market. Also, the standard (JSR 257) has been extended by Nokia, which is always an issue for other implementers.

Some quick notes:

  • JSR 257 is what this is all about.
  • Simple wireless protocol between NFC compliant tags and devices in close proximity. New business opportunities for mobile operators, banks, retailers, transport operators, etc.
  • You can share content between phones/pair devices like Bluetooth. You can get further information by “touching” smart posters. Your phone can be your credit card for payment… it can also be your travel card.
  • Service discovery. Nokia has got extensions to the JSR 257 standard for this in their implementations.
  • Think outside of the box, be innovative, the technology is there, there are many use cases
  • Contactless communication API has been around since 2004. RFID tag, smart card, visual tags. Java applications to access the hardware capabilities (RFID for instance).
    - NDEF tag (RFID tag, with NFC standard)
  • There is a dedicated Connection interface for different targets. You will get a notification when a transaction has happened.
  • When you discover a target, the application will get a notification. It has the URL that you will open the connection with. Communicate… then close connection.
  • Nokia 6131 NFC has extensions to JSR 257: get the SDK at Forum Nokia. The extension also includes the peer-to-peer communication framework. In a modified version of JSR 257, the P2P communication will exist soon as well.
  • Business cards that go to NFC devices and contact details are there? Wow, this is Business Card 2.0 :)
  • NFC works within less than 10cm. Its pretty “near”.
  • “Touch to share bookmark”… touch two devices together, and voila! there is instant sharing. I’m reminded of old Palm ads when they were pushing their IR technology and beaming business cards across trains between a man and a woman!
  • NFC enables new consumer services with mobile devices. Take away that you should just be creative, and lots can happen.

Who is the Dick on my site?

Thursday, April 17th, 2008

Who is the Dick on my site?
Dick Hardt

Most interesting keynote. About 1,000+ slides. Many slides per minute. Definitely a new way of presenting :)

  • What is identity? What is Identity 2.0?
  • Identity is a complicated topic, and you normally get the tip of the iceberg. Identity changes during your stages in life.
  • Works at SXIP Identity.
  • I wondered what the German’s thought about identity. Identat. “They’re German” <applause>
  • Answers.com had the best answers for identity.
  • There’s lots of different personas about a person. Women really are the masters of different personas (clothes, wife, mother, etc.). Reinventing oneself.
  • Identity allows you to predict behaviour…
  • When someone is in a “role” (fireman, etc.), you think you can predict behaviour. Is this identity? It’s who you are, not really, no.
  • blame.ca (his website)
  • Identity transactions… on where is identity used? Party identification, authorisation, profile exchange (information about a person so you know them better).
  • “Do you want to present ID at a bottle shop? If no, you can rollback the transaction!” <applause>
  • Photo ID is a reusable credential. This is an identity transaction.
  • Reputation built up on eBay? You can’t take it over to Craigslist. Identity 1.0 is site centric, its a walled garden.
  • identity20.com
  • Facebook is becoming a new silo. URIs enable things to be open (LinkedIn, Twitter, Flickr, etc.)
  • DataPortability.org - user centric
  • Kim Cameron - Laws of Identity (read it)
  • Device convergence - near field communication, phones doing more than make calls, etc.
  • Digital natives and immigrants. What are you? CNN == news source for natives, immigrants tend to use newspapers. I wouldn’t use CNN as an example myself, but the drift is there. Digital camera (immigrant) vs. just a “camera” (native). The younger generation are all digital natives…
  • OAuth spec - take a gander at this…
  • Reputation services: blogosphere (”pagerank”), open source contributions, wiki, “human” (so stop typing captchas!)
  • Viagra. You’re excited to take it. You can do new things!
  • myhealth.sg was mentioned. Singapore on the forefront of Identity 2.0 and OpenID? Or is it CardSpace (Microsoft) related?
  • What happens when you die? Your domain can be taken by someone else. Do they then become you, if that was your OpenID? Very interesting thought.
  • He flies Air Canada, and loves to talk about his Star Alliance Gold status :) Jives well with me, I’m Star Alliance Gold.

Technorati Tags: , , , , , , , , ,

Aza Raskin on Mozilla and User Interfaces

Sunday, April 13th, 2008

Aza Raskin from Mozilla, spoke largely about usability and user interface design. Judging from his Wikipedia entry, he’s been doing this for a long time and is very passionate about interfaces. It was very hard to see his slides (noted problem, too much sunlight), so I just attempted to make random bits of notes from his talk. His slides, may or may not be available, but he did mention that searching for a talk titled “Don’t Make Me Click”, was the basis for his LugRadio Live USA talk. Turns out, it was a Google Tech Talk, available on Youtube - Don’t Make Me Click (~65 minutes). Now for the sparse notes…

You already use a command line interface. Typed pine before? Or slrn? Now you just type gmail.com or nytimes.com. This is an interesting analogy… the command line and the location bar.

Intuitiveness vs. ease of use? There’s a difference. The iPhone interface isn’t exactly intuitive, but with all the advertising available around, when you got one, you knew what to do, and you got ease of use.

“Don’t copy, do something else”

1. Interface design is about how your software is used.
2. Usability is architectural (pretty interfaces/devices, you will use better)
3. Well designed command lines are good for usability. “Your users don’t know what features they want” - architect well, for your user. Learn a lot from Microsoft Word print dialog (which allows you to choose which pages to print)
4. Don’t blindly copy, find another box to think in
5. Don’t design separately for users and experts. Make things intuitive for all

Technorati Tags: , , , , ,

FriendFeed is Mugshot, with community

Saturday, March 1st, 2008

Today, I decided to start a FriendFeed account (I’m byte there). The first question that came to my mind was, how is this any better or different from Mugshot?

I first found out about it, through Jeremy Zawodny’s blog post. He mentioned he liked the fact that people could comment on activities. I see this as no different to how people can have conversations within Mugshot (also known as quips). And with the Mugshot client, these comments tend to become interactive, so it starts becoming an immediate conversation with people that are around.


FriendFeed, and what you can share

The striking similarity, between what FriendFeed offers (basically, a combination of all your feeds, with the ability to get comments on feeds, which promotes a conversation/social network kind of feel to it) is pretty much what Mugshot has been offering, with a desktop client (albeit, only on Windows and Linux). Mugshot’s desktop client can even be used as a Facebook Notifier, of sorts (when you get a message, you get notified by the client).


Mugshot, and what you can share

Hmm. Almost no difference, right? Now, you’re wondering if you can have a conversation? Yes, yes, you can as I said earlier, thanks to the idea of quips.


A quip, about a blog post

Notice that I was the only one online, for the group. If more were online, within that group, there could have been a bit of a chat, similar to what you get on IRC. Wow, so Mugshot allows you to group your friends. Not something I found, easily with FriendFeed.

What FriendFeed does, that Mugshot doesn’t do? Recommend new friends you might want to keep track of, i.e. folk that are popular among your friends. Honestly, the recommendations are nice (it recommended me to read Robert Scoble, for instance), but if FriendFeed wasn’t aiming to be a social networking tool, why bother with recommendations?

So, what made FriendFeed get money, in their recent Series A round? Could it be the strong recommendation by early Googlers? Early Gmail team members like Paul Buchheit and Sanjeev Singh, and some Google Maps engineers are on board, so do VCs see this as something big waiting to happen?

Maybe I’m missing something, unique and original, that FriendFeed has over Mugshot. I’ve tried reading a review on it, and still can’t see the value of yet another “life stream”.

Wait, I found it. It might be the stats that FriendFeed offers. It looks strinkingly similar to what Google Trends (in their Reader even), shows - people you find interesting, top sites used by your friends, my top sites, and so on… But really, doesn’t stats just wear out? How often do you look at your Google Reader Trends? Or Google Web History? Probably not a lot.

I think it all boils down to bad marketing/community creation from the Red Hat folk. Mugshot has been around for a substantial amount of time. The source code has been public as well. The idea of tying it with the online desktop (in fact, nowadays, a lot of Mugshot is running at online.gnome.org, pushing the GNOME Online Desktop) is a good one, but should not have been the only focus. Leaving it for the Linux geeks only, in general, might be a big mistake - a Mac OS X client should have been priority one, as OS X users seem to be early adopters. With Havoc having left to start LiTL, I do wonder if the online desktop, social networking site, Mugshot will continue getting the pushing that it needs.


The future of logins - mail, AIM, Facebook, and well… a password

Besides, Mugshot is filled with nothing but good ideas. It would be a shame to not see more good work and community acceptance and take up of Mugshot.

Technorati Tags: , , , ,

Why I liked Ubuntu (and my thoughts on Gutsy Werewolf, aka Fedora 8)

Thursday, November 8th, 2007

One of the reasons I like Ubuntu is because they have a really swanky commercial repository, and they make it easy for me to get some commercial software, without pulling an RMS-styled “Freedom is a feature” on me. Don’t get me wrong, I still love Fedora with all my heart, but when you get out of the distribution business per se, you feel that you might just want your primary machine to “Just Work”(tm). And long gone are the days where I carry 2-3 laptops when I travel - I just aim for one (I have lots of photo gear to worry about, instead).

The Feisty Fawn, was a pretty good Ubuntu release. That is, I got my commercial software fix - Sun’s JDK (moot these days, hello IcedTea in Fedora, for instance), VMWare Server (its free, kind of useful for running other distributions), and even Opera (sometimes I’m bored with Firefox, Galeon, Epiphany, I need to test things in another browser).

When Gutsy Gibbon got released, I couldn’t wait to update to the next, best thing. You expect things to move forward, never regress right?

Well, Sun’s software still works. As does Opera. But VMWare, has since, stopped working. Kernel 2.6.22-14 does not come with appropriate VMWare modules. Yes, that means, there’s no vmmon or vmnet loaded (or even, loadable, to be exact). Effectively, they’ve broken VMWare. I wondered why, so I hopped on to a package search, only to find out that VMWare has been removed from the commercial repository. No real explanation that I can find as to why it doesn’t exist.

So, my next option is to maybe build-my-own-package. There’s a guide titled VMWare in Ubuntu Gutsy - Kernel 2.6.22 that might be a good read for those that want to use this. Then I recall why I moved to using Ubuntu daily - I did it to get away from the frustration of having to build things myself. I did it, for the “Just Works”(tm) experience.

My options are to move to using some free software, quite obviously. There’s KVM, Xen, or even VirtualBox. Hey wait a minute, I can get all this in Fedora 8 too, can’t I?

The Gutsy Gibbon was supposed to come with a rocking new tool, displayconfig-gtk (i.e. System -> Administration -> Screen and Graphics). Unfortunately, it is broken beyond all thought. Then I remember an old friend, system-config-display, from Fedora - at least it works, and it has been around for ages (since what, Red Hat 8?). displayconfig-gtk is supposed to give me all the wonderful hotplug goodness of an external display, but it doesn’t. I can manually push xrandr to at least mirror my display (Intel chipset, might I add), which I’m sure I can also do in Fedora 8.

So I’ve come to the realisation that things are broken, and I’m going to have to do things manually, if I want them to work. This is irrespective of if I run Ubuntu or Fedora. Being just an “end user” is hard, to almost impossible.

My needs-to-work-list:

  • sleep/resume - this can also be kernel version dependant, Ubuntu has the advantage for a less aggressive release policy, but it seems Fedora is catching up with wanting to ensure laptop stuff, just works
  • wifi - ipw3945d is my poison, and it seems that both Fedora and Ubuntu have this working out of the box (a stark improvement to previous Fedora’s where you had to get the firmware yourself). Of course, repeated sleep/resumes tend to make WiFi die, and that just annoys me
  • video out - this is hacky at best, Ubuntu works if I tweak things manually, I wonder if Fedora 8 will have this any better. Nonetheless, xrandr should come to my rescue
  • sound - well, my laptop is my primary music listening device as well as video watching device. Ubuntu and Fedora should have this working just fine
  • codecs - I need to watch DivX, play MP3s, and so on. Ubuntu provides this via Medibuntu and Fedora via Livna
  • media keys - Ubuntu and Fedora should have this working fine, and GNOME in both environments is highly friendly
  • virtualization - I don’t care if I end up using KVM (which is looking like what I’m going for), or Xen (no ACPI, and obviously can’t sleep/resume), but I think I’ve had it with VMWare unless they have sensible packages. I have useless VMs sitting on my laptop now.
  • fully 64-bit OS - I plan on moving on from 2GB of RAM to 4GB of RAM (its kind of cheap nowadays), and want a fully 64-bit OS. Ubuntu works, sure, but I have to have ugly chroot hacks for a 32-bit environment. Fedora just works, some say because RPM is broken but I say, if that’s the case, its broken in a good way. Mixture of 32/64-bit rpms, are sweet
  • Skype, GizmoProject - closed source, install your own, works on Ubuntu and Fedora

My “it’ll be nice if it worked” list:

  • compiz effects - Doesn’t seem to work on Ubuntu, I wonder if Fedora will have it any better
  • hibernate - not quite suspend/resume, but it can be handy to have around
  • sd/mmc/memory stick card reader - Doesn’t seem to work on Ubuntu (Feisty, last I tried it)
  • tv out - Never tried, but if video out is this bad, I doubt s-video is any better

I take it that’s enough ranting for today. Congratulations to the Fedora Project for releasing Fedora 8 today. I think Werewolf will be a gutsy release alright.

And a happy Diwali/Deepavali to all Hindus. As an aside, the number 8 is interesting - in Chinese, it loosely translates to being lucky. And November 8 2007 seems to be the “festival of light”. The only way it could’ve been any more numerically lucky is if it were released on 08-08-2008 (a day for a lot of weddings, I assume).

I seem to enjoy asides today, so here’s another. I ran dict gutsy, and it has some interesting definitions:

  gutsy \gutsy\ adj.
     1. marked by courage and determination in the face of
        difficulties or danger.
       Syn: courageous, plucky.
      2. rough or plain; not sophisticated or refined; earthy.
        Opposite of {sophisticated}, or {refined}.
       Syn: earthy, lusty, robust.

I wonder if, definition-wise, Gutsy Werewolf is #1 and the Gutsy Gibbon is #2?

Technorati Tags: , , , , , , , , ,

Dual-display with the Intel 945GM on Gutsy Gibbon?

Sunday, October 21st, 2007

Resisting an upgrade, is hard, so I finished some work on Friday, and proposed to upgrade away to Gutsy Gibbon. I’ll talk about what I like and don’t later, but I still face a problem. I can’t seem to get X/xrandr working as well as I’d like it to. I also can’t get all the desktop effect bling going, but that is not as significant a problem as working VGA out.

lspci says, I have a Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03). I drive my laptop at 1440×900, and externally, I’ve got a 17″ LCD panel that can go 1280×1024 (FWIW, I tested against an external 19″ wide panel capable of 1440×900, but it made no difference). However, xrandr thinks I can only, at most, display 1440×1440, and I think that’s why I’m not being able to get a nice “stretch screen” (i.e. two desktops, not mirrored displays) experience going.

xrandr -q
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 1440 x 1440
VGA connected (normal left inverted right)
1280x1024 59.9
640x480 60.0
LVDS connected 1440x900+0+0 (normal left inverted right) 303mm x 190mm
1440x900 60.0*+
1280x800 60.0
1280x768 60.0
1024x768 60.0
800x600 60.3
640x480 59.9
TV disconnected (normal left inverted right)

So, mirroring works. My desktop looks a little shitty, but at 1280×1024, all is well and dandy. I have a feeling that when I plug it into an LCD projector, I might get away with things working, for a change. That alone, is impressive. So, how do I magically get a dual-display, stretched desktop experience? My xorg.conf file for reference, is tacked to the end of this.

My heart goes out to whomever decided to write displayconfig-gtk. This is a step in the right direction. End-users will want a GUI to choose external displays and stuff. I love the idea of location profiles (so, at home, maybe I’m tacked to an external 1280×1024 monitor, at another location maybe another, a roaming locating that just creates a 800×600 display, etc.). Of course, it would help if this utility actually worked. It doesn’t, and is currently broken, from my experience with it. Why is it included, under the guise like it might work?

Kudos to Intel, and their page on How to setup Dual Head for Intel Graphics with RandR 1.2. Everyone says, stick to Intel and you won’t go wrong with Linux. Why then, does such a page need to exist? Why is my out-of-the-box experience, still so bad?

If it helps, here’s the xorg.conf configuration file (I didn’t muck with it, its dpkg configured). Help appreciated, and remind me to buy you a beer when/if I see you next.

Section "Files"
EndSection

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection

Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "HorizEdgeScroll" "0"
EndSection

Section "InputDevice"
Driver "wacom"
Identifier "stylus"
Option "Device" "/dev/input/wacom"
Option "Type" "stylus"
EndSection

Section "InputDevice"
Driver "wacom"
Identifier "eraser"
Option "Device" "/dev/input/wacom"
Option "Type" "eraser"
EndSection

Section "InputDevice"
Driver "wacom"
Identifier "cursor"
Option "Device" "/dev/input/wacom"
Option "Type" "cursor"
EndSection

Section "Device"
Identifier "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Driver "intel"
BusID "PCI:0:2:0"
VideoRam 65536
EndSection

Section "Monitor"
Identifier "Generic Monitor"
Option "DPMS"
HorizSync 28-72
VertRefresh 43-60
EndSection

Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Modes "1440x900"
EndSubSection
EndSection

Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"

InputDevice "Synaptics Touchpad"
EndSection

Technorati Tags: , , , , , , , , , , ,

Tagging differentiation

Tuesday, September 25th, 2007

Standardisation is important.

Tagging in Uploadr involves writing tags in the format such that its:
    australia victoria melbourne “notting hill” clayton

Tagging in ScribeFire, involves writing tags that are parsed in a different way (for Technorati):
    australia, victoria, melbourne, notting hill, clayton

Notice the commas (”,”)? Without them, your tags are all lumped together. I’m wondering if I should change Uploadr to similar behaviour as ScribeFire (or vice versa)? What do other applications do for tagging in a field?

It should be trivial to make this change, the question is if my patch will be accepted upstream. I’m already using a patched version of Uploadr, as I await the author to implement my patch (which adds a description field, which the Flickr API supports). Incidentally, PyGTK is pretty easy to get around with, with superb documentation making it easy for anyone to get on the bandwagon. More on pygtk programming later…

Technorati Tags: , , , , , , , ,

Multiple pop-up dialogs

Tuesday, September 25th, 2007

Surely there must be a better way of handling this:


gnome-obex-server receiving lots of images from the phone
So, is this a bug or a feature? I need to see if OS X or Windows handles it differently? The smart thing to do would be to group it together, rather than having these many dialogs. Or maybe, just use the notification infrastructure and automatically accept it to a path of your choice (currently, it defaults to ~/Desktop so a quick mv operation has to happen later). The maintainer listed has switched to a Mac, so I wonder if this software is being enhanced further…