Expert Review of KNetworkManager 0.7
Although I didn’t get around to reviewing all of the KDE User Research Profiles this weekend, I did spend some time collecting and rewriting some notes I had for the KDE4 HIG and doing an expert review on KNetworkManager 0.7.
KNetworkManager had a few UI changes as well as some old usability problems. The expert review contains comments about these issues, how to fix them, some mockups of my recommendations and other UI changes I think will improve KNetworkManager. None of the recommendations involved a huge level of redesign, but I’m always unsure of what the coding level of effort is for things like this. Surprisingly I didn’t know what every option in the menu did, and so I made some assumptions while doing the review (noted in the document). Comments and questions are welcome.
Expert Review of KNetworkManager 0.7 (PDF 867KB), July 20 2008
seele :: Jul.20.2008 :: General, KDE/Kubuntu, Usability :: 39 Comments »
Nice job and very thorough. One question: is there a reason why you wouldn’t always “Refresh Automatically” and just remove this option as selectable by the user?
just one thing to say: we need more “celestes” on KDE.
great work. congrats ;)
Well done! Hope this get some attention from the KNM dev(s).
Very nicely done. I have to say most of the stuff there looks obvious but only after you said it :-)
I agree mostly.
+1 for DeKay’s comment. Remove the “Refresh Automatically” checkbox.
I am not a fan of sub-menus, even lesser of sub-sub menus. Isn’t there a way to change the ui without having submenus at all? I think most users just want to “connect” and to do that one needs to use sub menu. Also, Wireless->Connect to saved network->Name of networks is I think very cumbersome.
Hi, when I read the tip about renaming “Edit connections” to “Edit Saved Connection”, a few things came to mind. I don’t know what happens if I would’ve clicked it, but the name change implies that you no longer edit “all saved connections”, but rather “the saved connection”.
A much more useful approach to me is to make the connection line a sub-menu an have “Edit Connection”, “Disconnect” etc in that submenu for that particular connection. If the connection was not saved when you connected, a “Save Connection” option would be nice as well, if it turns out to be a useful connection.
So, I say, move the signalstrength bar a little to left, add a triangular point to show it’s a menu and display the options of what to use with the given connection in a submenu.
Cheers, Jonas Lihnell
In your mockups, you’ve omitted the “Connect without Saving” option. As you said, if you’re on the move and need to try to connect to 15 different networks to find one that works, you _dont_ want those 15 saved. have a save button, and a connect button, separate?
Nice work! I would love for you to have a swing at SpeedCrunch, this type of input in invaluable to all software projects - especially those with a more scientific approach…
out of curiosity, why do labels should be right aligned on pages 22 to 24 but not on pages 25 and26? when do labels should be right aligned?
Very nice work! I have just a few “metacomments”:
1. Why bury your content in a PDF? HTML in very good format for that kind of documents
2. I understand that “Expert Review” may be a technical term… but don’t you think that self-qualifying ourselves as “experts” is a bit outside of the hacker culture? Hackers never reach of point when they qualify as “experts”… imagine Torvalds calling himself a “kernel expert”, it would be plain hilarious.
Great work.
I’d agree to almost everything in the PDF. Just one more comment:
What’s the purpose of the “refresh automatically” list? In this dialogl, I always want to see the most current list of wireless networks. Is there a case where I don’t want that list to be up-to-date? I can’t think of one and therefore would remove this checkbox completely.
David
I have an issue with page 39, the mockup of the wireless menu.
You are opening 2 sub menus to the right. This will look very awkward, since most of the times KNetworkManager will be on the right side of the screen and the menus will be opened to the left. I am seeing this in a lot of applications.
Is there any plan to address this global issue?
Also, the wireless network should be the default, or preferred network, not the last (think, you go to a coffee shop, connect and then go back home: which network would you like to see? the last or preferred?)
In page 41, how will you address the issue you find in your home? Where you have 14 wireless networks on that menu?
Thanks for your work! I will be really happy to use this software in the next future :)
BTW: am I the only one who does not like the right align labels…?
Great job! Making a nice NetworkManager UI is a hard problem indeed, so it’s no surprise you found a lot of room for improvement.
My only comment would be that the suggestion that “Wireless should always try to connect to last connected essid or whatever essid is currently available.” is probably not a good idea.
Last connected ESSID is OK, but connecting to random other AP’s is a bad move and potentially, in some jurisdictions, illegal.
Great job!. I think everybody agrees at this point.
But, I’ll go further and I’d propose an complete revamp of the app. I consider that for the average user Networkmanager interface is simply too much. Things like “eth0″ means nothing for computer agnostics. I see this at home where 4 computer use Linux and only me can be considered a “computer literate”. Explain how to add and connect to a wifi or change from wireless to some specific wired connections is a bit complicated and used to be cause for some headaches. This is specially because networks are not visible unless you add them (am I wrong here?).
Generally agree with all the criticisms - when testing kde4 on opensuse one of the things i found most off-putting was what to me looked like a 90s network config (eth0? what?). Theres too many options when you consider the tasks you actually do regularly - like how often do you actually need to “configure notifications”? Does its really need to right there with your available networks? Surely a single “configure” option would be best.
One thing i really didn’t like was the triple sub menu in the mockup. You don’t want such a complicated menu coming from a simple task bar app. Also, surely if you have a network saved its because you probably use it regularly, so why bury it in 2 submenus?
I think the mockup suffers from still being to complex. I don’t want to get stuck into a “do it like this OS or that OS” mentality but in this case i think you should go either “windows like” or “gnome like”. GNOME puts everything you use regularly into a single popup menu and everything else goes into config dialogues - so all available and saved wireless connection come up straight away, and there’s pretty much no sub menus on the popup. Windows (wireless) puts pretty much everything into a dialogue with the task bar icon just giving the status.
Personally i think the best thing would be to pretty much make a QT/KDE version of the GNOME applet and menu with config dialogues to fit the KDE style (Big icons down the side to choose what to configure and the options on the left).
Final thing - why aren’t the wireless options part of systemsettings? It’s slick and has a unified look so its easy to know where to start with the config design. You just have a single dialogue with options for wired, wireless, notifications, and an extra option could turn up if you have an HSDPA modem or something. The wireless options would give you a choice between “wizard mode” and “Advanced mode”, with wizard mode hiding any confusing options (thinking of page 22 of the pdf and the advanced settings that most people, i.e. the ones using wizards, wouldn’t want to know about).
Also, seeing as this is kde4 shouldn’t the taskbar applet be replaced by a plasmoid?
Anyway, this is all very inspiring and i’ll try to throw together a mockup and put it on my website if anyone is interested.
I think it’s me but I don’t like right aligned labels :3
I don’t agree with the right-alignment on slide 23 and some others.
Now, I looked at the kde3 hig for some backup on this, but it turned out to be quite skimpy and didn’t mention anything about alignment. Or I couldn’t find it under the “text” section. And the kde4 hig simply has an empty section under alignment.
So… looking at the gnome hig, it says “Left-align components and labels, unless all the labels in a group have very different lengths. If they do, right-align the labels instead, to ensure that no controls end up too far away from their corresponding labels.”, and the page 23 doesn’t fit the “very different lengths” requirement.
My 2 cents:
* On page 46: Better to make the ESSID field always enabled and move the option as soon as the user types something in that field.
* Maybe the quite technical term ESSID should be replaced with Network Name (ESSID) at most places.
* I disagree with always showing the Expert Options. Even to me the pages 22 to 24 look highly confusing because there are so many, well, expert options of which I have no clue what they are supposed to do while all I want to do is entering the password.
My suggestion for the latter:
- In most cases all users have to do is choose an ESSID and enter a password. So make that the two things 99% of the users see. No UI clutter with advanced options per default. A two-step wizard as it currently seems to be or even a single dialog (see below).
- Don’t add a “Use encryption” check mark but use the drop down box instead, with an entry “None”.
- If the connection is done live, the needed encryption can often be determined automatically. make the drop down box a label in that case.
- If the credentials are entered offline, add an entry “Auto” to the list box. The type of encryption will be determined automatically the first time you connect.
- Show a single password line in case of WEP and WPA Personal.
- Even when WEP is used, in most cases only password 1 is used. Try that one first and hide the rest in the advanced dialog, maybe try to connect with the password as password 2 etc if the first fails.
- Actually, maybe just combine the Connect to Other Wireless Network dialog from KNM 0.2.2 minus the device selector and plus a list of networks. I haven’t seen KNM 0.7 yet, but judging from the screenshots I prefer the KNM 0.2.2 dialog.
Very well done review! Thanks for all the good work you’re doing on KDE!
DeKay: I didn’t know if there were reasons why you wouldn’t want it to refresh all the time. If you do, then removing the option and having the function enabled makes sense.
Jonas: Typo on my end. It ought to say Edit Saved Connections.
Sergio: Since I stated the problem once, I didn’t repeat it. The labels should be right aligned for all form elements, including those in 25 and 26.
Flavio: PDF was easier to generate from an ODF than making the page HTML. The review already took me about 12-14 hours. “Expert Review” is industry the name of the activity, when I do this during my day job, that is the line item that goes in the proposals and invoices. They can also be called a “Heuristic Review”, but that implies basing findings from one of 10 usability heuristics while I review UIs against many more considerations.
elcuco and Jonathan: There are two UI solutions for the wireless menu. Option 1 hides saved connections in a submenu, which would be more appropriate if you 1) have lots of saved connections, and 2) tend to only have one connection per location and automatically connect to it anyway. So you would hardly go to the data in the menu and it is out of the way of the other options. Option 2 pulls the save connections up a level. This is better if 1) you don’t have lots of saved connections (3-4 instead of ~10), and 2) you switch between networks often, either because there are multiple connections in a location or you don’t connect automatically. There are pros and cons to both and I like providing multiple possible solutions. It seems like people prefer option 2.
elucuco: As for my long list of essids, I think the list is just fine. Filtering for the name or signal quality was all I think is necessary and search was overkill.
Chris: I will clarify in the wireframes — I meant last connected essid that is in your saved list. Not a random essid you may have connected to at some point.
Miguel: There is a KDE4 version under development we began discussing in January. I imagine that will have the complete redesign you are looking for.
Jonathan: Probably because no one has converted KNM to a KCM module.
Malte: Can QT automatically set a parent option if a child element is in focus? I also have to admit I don’t know a lot about every encryption protocol available which effected my ability to come up with use cases. I think security needs a better look at in general and I didn’t spend too much time on it, so these can be considerations for the KDE4 design.
speaking as a KDE user rather than developer, it’s great to see work like this being done. well done.
One thing that’s bugged me about Knetworkmanager (and this may be fixed in 0.7) is that clicking on a network connection will always try and activate it, even if it is activated. If it’s activated, clicking on it should bring up the network connection details ro deactivate it. If it’s deactivated, clicking it should activate it.
thanks!
Yikes. That was throughoutly done. Looking on your mockups make me understand how much better stuff can become. We need more of this! I have a friend who is really good at this stuff (works with it - and makes a lot of money as a freelancer). I’ll try to bribe him to kde with chocolate.
Wonderful to see this kind of work being done. Would love to have you sitting on my shoulder constantly.
You have performed an excellent translation of what regular users normally put forward as “????”. On many occations it seems like there is a contradiction between advanced tools/functionality and sophisticated GUI’s.
More often than not that’s not the case - well designed GUI’s enriches the quality of applications. I believe that KDE 4.X has followed this concept to great extent, and hopefully your comments will enable Knetworkmanager developers to follow suite.
Sadly, Networkmanager 0.7 still appears to be problematic with HSDPA (UMTSmon) - Firefox , Evolution and so on - starts in Offline mode.
I think you missed one important flaw in knm’s usability. having to create a connection at all is a huge flaw in usability. I travel alot. I want to see available networks and connect to one I click on. nm-applet has useability down. I think that largely knm should mimic nm-applet, i use kde and want kwalletmanager integration. to me that’s where knm has its main benefit / use case. right now it is completely un-useable and your recommendations don’t fix it.
[…] special thanks to Celeste Lyn Paul. Share this post: Share this post with the […]
How about “Connect” and “Disconnect” instead of “New connection” and “Deactivate connection”?
The abolition of eth* and wlan* is a necesstity as an arbritrary number does not define a physical device by any means, it is probably best to get shut of them completely even between paranthesis and have it like the old network manager was. Infact what was wrong with the old network manager, it was much simpler, the new one is considerably more complicated than the Windows one which we should set as a bar to exceed, if you can’t beat it then copy it.
I was very skeptical when I saw “expert review”, but I was left feeling very impressed. I agreed with 90% + of the points you made, pointing out really “obvious” things, that I hadn’t noticed before.
It might be worth trying to learn how to use Qt-Designer for your mockups. That way they’ll look KDE-ish, and more importantly the developers can just use the designs you’ve sketched up, rather than work being duplicated.
Great job!
Now, out of curiosity, how is this done in OS X?
Shouldn’t we take a look over there?
Regards Harry
@Spockfish: Definitely no. We’re humans too and capable of analyzing ourselves just fine too.
Dennis: sure, but like I said, I am trying to work within the existing design concept so the small improvements have a higher chance of being implemented sooner. There is a KDE4 UI (i.e. not a port of KDE3) under development which will be a much different experience.
Martin: yes, those are much simpler labels, I will add that to my list of updates to the wireframes.
David: I wish I knew how to use QT Designer better, I just haven’t spent enough time with it to design efficiently. Once I had my ideas down on paper (sketches) the wireframes took me about 2 hours. It would have been at least twice that in QT Designer and these were relatively easy wireframes.
I have KNetworkManager 0.2.2 and it looks good compared to the one you used as an example in your pdf xD
One thing I’ve always thought that KNetworkManager needs is an “Edit current connection” option, currently you do it with “new connection” with is not very intuative.
In the mockup I can’t help feeling that “Edit Saved Connection” should be “Edit saved Network” to correspond to “Connect to Saved Network”
The mockups look a lot more manageable. One thing you forgot though, “ESSID” is an abbreviation and should be all capitals. Although, I agree that “Network Name (ESSID)” might be even better in most places.
[…] help! In the mean time I managed to figure it out myself, by reading the GUI flaws reported here: obso1337.org » Expert Review of KNetworkManager 0.7 I have to say the GUI is kind of counter intuitive… This is on my wife’s laptop, she has little […]
One more thing that has always stuck me as odd is that when you disable your wireless connection via the “Deactivate Connections” and you want to enable it again you have to go back into the “Deactivate Connection” menu and select “Enable Connection”. A better name for the menu would be “Manage Network Devices”.
[…] aggiungere questa recensione approfondita di KNetworkManager da parte di Celeste Lyn Paul: “Expert Review of KNetworkManager 0.7” [↩]OOXML OpenSolaris Open source OpenSUSE Ottimizzare Oxygen PackageKit Parigi […]
I would say “Refresh Automatically” is useful only if your workstation is on, and you’re waiting for your access point to become available later–like if there’s something wrong with the access point, and you’re trying different things hoping to make it appear.
You would then keep polling the network and listing the access points over and over until the access point you’re looking for becomes available, at which point you click it and go on your way.
This is an uncommon scenario.
For most purposes, you would want to poll the network once, list the access points, and then wait for the network user to make a decision. Since access points aren’t expected to appear and disappear while the user is making his choice, there’s little benefit in rebuilding the list over and over again.
If re-polling the network were the default, there is the possibility of confusion, especially for the marginal user, as he tries to make a choice from the list as it is being re-drawn.
Drawing the list once and stopping is safer.