Deep down inside every software developer, there's a budding graphic designer waiting to get out. And if you let that happen, you're in trouble. Or at least your users will be, anyway:
Joseph Cooney calls this The Dialog:
A developer needed a screen for something, one or two text boxes and not much more, so they created "the dialog", maybe just to "try something out" and always with the intention of removing it before the product ships. They discovered they needed a few more parameters, so a couple more controls were added in a fairly haphazard fassion. "The dialog" exposes "the feature", something cool or quite useful. Admittedly "the feature" is more tailored towards power users, but it's still pretty cool. The developer thinks of new parameters that would make "the feature" even more powerful and so adds them to the dialog. Maybe a few other developers or power users see "the dialog" and also like "the feature". But why doesn't it expose this parameter? New controls are added. Pretty soon the technical team are so used to seeing "the dialog" the way it is that they become blind to its strange appearance. Ship time approaches and the product goes through more thorough testing, and "the dialog" is discovered, but it is too late to be heavily re-worked. Instead it is given a cursory spruce-up.
If you let your developers create your UI, hilarity ensues, as in this classic OK/Cancel strip. But when The FileMatrix is unleashed upon unsuspecting users, it's more like a horror movie. I still get chills. And like a bad horror movie franchise, the FileMatrix is still alive and kicking, folks.
Friends don't let friends produce Developer UI.
Part of being a good software developer is knowing your limits. Either copy something that's already well designed, or have the good sense to stick to coding and leave the graphic design to the experts.
Wow.
The homepage for wgetgui says: "The easy to use Graphical User Interface (GUI)"
I think perhaps they are unaware of the meaning of the word "easy".
=)
The Geek on November 28, 2006 9:41 AMIf you've got UI problems, I feel bad for you son.
I've got 99 problems, but design ain't one.
Unbelievable!
jd on November 28, 2006 9:50 AMJeff, you have a habit of using the word "developer" wayyyy to loosely. Just because it compiles and has an event, does not necessarily qualify the person.
Some people are GREAT algorithm writers. Some are great at getting data efficiently. Some at writing components. Some at UI.
At what point does a person become a developer? I don't know. Maybe when it is almost as good as a shrink wrap product? Who knows anymore?
Another example - the GUI for putty. While having a Windows ssh2 client is very handy, the UI sucks big time.
Spruce Moose on November 28, 2006 10:18 AMYou assume that these UI's were actually "designed."
If the developer of something like that spent as little time designing his software as he did his GUI, the product would have never made it out the door.
The problem is that UI's are mocked up for testing purposes and then deprioritized until there is no time left for them. Designing an easy to use UI takes exactly the same process as designing the rest of the system - talk to the users, do some research, build, test, and repeat. A developer or a graphic artist/designer will do just as well there.
Now, if you want it to be PRETTY as well as functional... yeah, get yourself to an artist.
I speak as a programmer who used to design UI's a bit - I as a developer was the first person on the project who suggested we might as the people who would be most likely to use the software how they expected things to work :P
Mike Ford on November 28, 2006 10:33 AMI found this out while developing my first commercial application. I always wondered "man, how do professional software developers include so many options for customization so quickly?" And then I found out, in a rather horrid way. My first win forms application (that was meant to pull binary files from a database) had 18 textboxes in it and six buttons. Needless to say, the lesson was learned after I showed it to my boss and he told me to go "think about what you've done."
Also, that Jay-Z line has had me laughing for the past five minutes.
David Sokol on November 28, 2006 10:43 AMI think UIs are extremely difficult to "code". When was the last time you created a web page or a UI and then got someone else's feedback? "Shouldn't that line be a little bigger", "What about a different shade of blue". It came become extremely frustrating trying to code the UI and maintain it as people keep changing their minds.
And even if the best UI design for an application was to have 2000 elements on 1 page, you know that is going to cause performance issues and you have compromise from time to time.
We all have ID10T users out there, if you can build it so they can use it without screwing something up then go back and work on that UI a bit more.
Tim on November 28, 2006 10:49 AMSo based on that screenshot, you're saying that it is a good thing to let developers design GUIs, right? Because that is total hotness!
Haacked on November 28, 2006 11:09 AMWhat I find most amusing is that there is a 'Pro Mode' button on that dialog!
Henry on November 28, 2006 11:12 AMI'm amazed at all the comments defending this from 'wget users'. I'm a wget user and this interface sucks. It's no better than wget --help, just a list of options in GUI form.
The functionality should be split up in tabs or something... the main url bar and some other things like 'continue download' in the main tab, spidering in another tab, cookies/http headers in another tab... etc.
This will allow both a novice user and an expert to use the tool, and help you to find the options you need fairly quickly.
Nobody wants to look at that POS every time they download a file.
Mike on November 29, 2006 1:00 AMSeriously: That's sad. I'm developing for a number of companies and even though I've never had any UI classes common sense is enough to get you through it on top. When in doubt, look at some software that many claim to have a "good" GUI (iTunes for myself) and determine what makes it so "good". It boils down to simplicity, cleanliness, and power features embedded in easy to get to places that aren't on the surface.
Brent on November 29, 2006 1:03 AM'leave the graphic design to the experts.'
it's probably more interaction design than graphic design that's at stake here... I'd hazard to suggest that a lot of graphic designers would probably make quite a hash of it too.
An interaction designer should be able to understand what the user is trying to achieve and then design an interface to best enable those objectives. Then a graphic designer can make it look beautiful :)
leisa on November 29, 2006 1:04 AMat least it is better, than 15 dialog boxes hided somewhere.
Frankco on November 29, 2006 1:05 AMI really think the title should be changed to "If you've got UI problems, I feel bad for you son."
engtech on November 29, 2006 1:09 AMThat's remind me the bad joke of the Properties dialog of the Novel Client. Take a look on it:
http://www.novell.com/coolsolutions/img/15773-2.gif
Actually thats the best wget gui I've ever seen. After much experience with wget from the command line, its nice to see such a full featured and simple to use GUI. I think you have a classic case of VB (now '.net') form over function syndrome.
Cheers.
MrDez on November 29, 2006 1:18 AMGraphic designers should never be allowed near inputs that have to be read or otherwise identified. They have a hideous habit of use bunches of pretty colours. This makes it impossible for some of us to identify the details. This also makes captchas a massive pain (yours, I actually like).
Kevin on November 29, 2006 1:22 AMAs a programmer, I often conceive similar front-end for my test apps, but these are *for internal use only* (and when I had to code similar dialog boxes I relied heavily on tabbed dialogs with a nice icon -- courtesy of kde-look.org -- on each tab)
When I have to "design" something, I shamelessly steal the best layout I can find...
:-)
MaxL on November 29, 2006 1:27 AMI like it. I've kind-of avoided wget because I couldn't be bothered learning all the command line options (and I use a Unix command line in my job most days a week). I'm going to download this.
OK, I guess some people won't cope with a GUI like this. But then some people can't program, or learn by reading a manual. Me, I like it.
David on November 29, 2006 1:45 AMI think this dude is a good thinker but damn, i can imagine the poor user or should i say victim running for cover.
ayo on November 29, 2006 1:45 AM"I have to say that a big dialog with loads of controls on it is prolly the best type of design for a wget gui."
I think that basically bouys Jeff's point. :p You don't see FTP clients all centering around that idea, despite the being the same in concept! Nor gui-based spider engines come to think of it, like black widow, sitescan, etc. I wouldn't hold them up as paragons of great UI, but at least it isn't so horrifying.
Thr big problem with a bag of checkboxes, dropdowns, and textboxes, is it doesn't highlight the most important changes, it doesn't hide non-imporant options, it doesn't have any attempt at a logical flow in setting up a run, and most importantly it simply overwhelms.
I think many developers actually understand the issue, they simply have no UI training, nor the imagination and desire to come up with radically different workflows once they settle on one. If nothing else, they'll try to conform it to the way IDEs and other power user tools work, thus the much more common mediocre tree-and-toolbar-based design. A lot of software I use or see would be right at home in the Windows 3.1 school of design.
(I pray that now that linux is starting to get some really good distros and attracting corporations to the desktop, it'll stop being so enslaved to cheapest-and-quickest UI. I don't care if making something easier is dumbing it down, scanning source code to see what a checkbox does got old real fast.)
Foxyshadis on November 29, 2006 1:48 AMGreat, *another* fool that thinks that all developers can't do design. They're just as bad as the ones that think they all can. Assess the individual and stop generalising you banana tree you.
Bob Holness on November 29, 2006 1:49 AMYea, developers' UIs are crap. Websites "designed" by "webmasters" (php, asp coders et al) are even bigger turds.
Graphic Designer on November 29, 2006 1:50 AMIt could be the Marketing Department's fault.
Poor guy needed a test harness and wrote what you see. Marketing upped the ship date a month and the rest is history!
well if any of you craptards had ever used wget you'd what a pain it is. So i guess this tool actually a nice gui for wget. Oh sorry, i forgot, you'd rather have 50-step wizard..
waxor on November 29, 2006 1:53 AMThis is pretty good actually.
dani koolio on November 29, 2006 2:00 AMI'm coding some UI for living. I saw how specially trained UI designers ruins one too many products.
Which becomes flashy, slick and annoyingly impotent.
I don't like many things in both Linux and Windows UI worlds.
When I have to click thru 15 'stupid user'-friendly wizards. And still have to hack registry.
Gimme my checkboxes in one place. Wget UI is good, back off.
UI developer on November 29, 2006 2:06 AMI THINK EVERYONE IS PICKING ON WGET BECAUSE THEY AREN'T READING THE ENTIRE ARTICLE.
CLICK THE "The FileMatrix" LINK!!!
Who here would be really tempted to hit the "Pro Mode" button to get even more options?
picciano on November 29, 2006 2:11 AMHonestly, my experience has been worse with "designers" than developers. As someone earlier mentioned, at least the UI a developer creates works for _someone_.
Photoshop is NOT appropriate for UI design. Please get a tool that generates something that could be implemented in the technology to be used, not fiction.
And please save me from designers who know nothing about human factors. They're far more dangerous to UI than any other beast.
Designloper on November 29, 2006 2:16 AMthat's an UI for wget - who the hell needs GUI for wget, it's natural environment is shell..
anonymous coward on November 29, 2006 2:25 AMYou know there is nothing wrong with this. So it's not pretty who cares. Just be thankful you don't have fifteen tabs, cascading dialog boxes, and icons you stare at trying to figure out what they mean.
If you want an example of horrible UI look at outlook options.
malcontent on November 29, 2006 2:38 AMApple UI design on Windows s-u-c-k-s.
There, I said it.
That being said, I'm pretty darn good at UI design, even if I say so myself. Coding, not so much.
AndyToo on November 29, 2006 2:44 AMhaha thats nothing. Download the beryl-settings tool (debs available for ubuntu) and check it out. Has more options than all of GNOME or KDE... combined. Quite handy for development since all the options are procedurally generated from the plugins, but man does it ever confuse the heck out of our users.
DBO on November 29, 2006 2:44 AMThat's it. I've gone blind now. Thank you.
Mats Gefvert on November 29, 2006 2:48 AMSo, what's your proposal for good design UI?
Complaining is way easier to proposing.
Dareu on November 29, 2006 2:54 AMI think the resource editor has done more harm to UI design than good. In particular, it enables a kind of thoughtless drag and drop that results in the kind of VB-looking horror described above.
I'm old enough to have been at this prior to the advent of resource editors, and while they are useful for some things, I still go back to handcoding UI, because, particularly with modern layout-managed frameworks, the code forces one to think through the hierarchy and containership, and to visualize what's going to occur at runtime.
In short, instead of obfuscating the relationship between UI and the code that creates it, handcoding illuminates it.
I'll admit that there are some developers that wouldn't create quality UI either way, but I'd argue that choosing a developer who has the proper perspective on usability is the key.
David Watson on November 29, 2006 2:55 AMSeriously, it's not that bad. The options are all clearly labelled and reasonably grouped. It's ugly sure, but it could be oh-so-much-worse.
Here's the thing. If the goal is to pop up the gui and click as many options as you need and hit go, that's about as good as the gui is going to get. Do I want to flip through a dozen menus to grab some data? No. This gui would work fine for me. This isn't a word processor, it's a frontend for wget.
Erik on November 29, 2006 2:56 AM"have the good sense to stick to coding and leave the graphic design to the experts"
I beg to differ here, GUI programming is not any different than other types of programming. There are sets of rules and principles documented, lots of books about it, it's not a black art.
The problem here is most developers look down on their users and think that GUI programming is inferior work.
Fbio on November 29, 2006 3:10 AMnice
Mark on November 29, 2006 3:11 AMActually that is a pretty good interface. It comes close to being modeless and stateless, except for that frightening pro-mode button. (If this mode isn't pro mode, then pro mode might have too many options.)
Nothing is hidden, nothing requires multiple clicks, nothing requires remembering if "view source code" is on the edit menu or the tools menu.
This is why I've got my "inner graphic designer" permanently stashed away in Gitmo. The horrors it would unleash upon the world....
Mark on November 29, 2006 3:27 AMIt shouldn't be TOO too easy to snarf websites. If this complicated GUI turns n00bs away, then rightly so.
Developers FTW! designers should stick to making funny tshirts and barbie doll packaging.
Joey Narfy on November 29, 2006 3:33 AMthis wget UI is great.. yeah i know, its too confusing for people that are looking for pretty flowers that say "PRESS ME", but damn, i would seriously question why i was using a wget gui that was chrome plated and decorated with gay andy warholish abominations.. who but people that don't care about how much lipstick is on a UI is using wget anyway? go cry more noobs!
kferron on November 29, 2006 3:33 AMI dont know, the wgetui sure is ugly, but the UI was probably made in some hours work, or rather as fast as the controls can be dragged. You got the functionalities you need and yes maybe the user dont find the application easy, but it would probably be more easy then wget from command line. And who knows, if the user learns to use the application, it might be easy? Rounded corners and pretty colors dont make an application more usefull.
Other Applications are just as ugly to look at:
http://www.codinghorror.com/blog/images/word-all-toolbars-small.png
and I am sure the user base is quite different.
I am not saying that I like wgetgui, but at least the UI is honest and directly layed out. The developer has not added any help functionalities , tutorial, tooltips?, etc. so I cant see that the application is aimed on anybody else then expert users.
You cant say developers are bad designers if they design an application for them self and other developers. The problem is more when developers think they know the users or cant understand that people think different.
There are alot of good ui developers and alot of good ui artists, but very few good ui designers..
/Peter
Peter Palludan on November 29, 2006 3:36 AMIt's free software. It doesn't have a corporate hierarchy enforcing certain tasks to certain people. This is what you get.
heroineworshipper on November 29, 2006 3:43 AMI'd add that the converse is true. Don't let graphic designers and HCI experts do your coding.
But of course as others have pointed out its all shades of grey. Personally I'm a strong coder, average at designing UI in terms of layout and function, but awful at choosing colours and drawing icons and images. Where possible I prefer to leave the appropriate area to the appropriate expert - but of course thats not always possible.
Regarding the wgetgui. I'd consider myself an expert user and I wouldn't use something that looks like that. It makes my eyes bleed and there are always alternatives.
James Randall on November 29, 2006 3:48 AMThe perfect application doesn't require a GUI at all. It just needs to be ESP enabled.
Billy on November 29, 2006 4:09 AMLeave UI to Information Architects. Even Graphic Designers aren't experts on UI design. Graphic Designers try to make things look "pretty" while Information Architects focus on structuring content and usability so the UI can be meaningful to the end-user.
Matthew Villa on November 29, 2006 4:41 AMOk - so I found this page via del.icio.us (You're on the front page as a "popular link"). The screenshot you've posted reminds me of numerous conversations I've had with staunch supporters of edge-case design or "developer logic."
They look something like this:
Designer/UI person: "We're designing a widget so individuals can automatically post their del.icio.us links to their blog automatically. It should be easy and intuitive."
Developer: "OK! Let's make it look like a stack of form-fields with horrible names and make everyone do some sort of magical time zone conversion so they have to specify the time they want the job processed in GMT. And, let's call the link to this blog posting service..."add new thingy."
Designer: "..."
http://static.flickr.com/121/309869942_7760f4c06e_o.gif
adrienne on November 29, 2006 4:49 AMPoint taken, however:
- In the perfect world we alyways have specialists in req. engineering, architecture, testing etc. however my organization does not have the means to hire someone just for the UI-work.
- Most developers have some sort of intuition and can come to a decent result by means of prototyping.
- Your example screen dump does not adequately reflect professional software development but rather some high school/hobby project.
Casper: agreed. I design GUIs not because I want to, but because we're not even close to having an "interaction designer".
I do the best I can by sketching a design out beforehand, and always keeping the user (not me) in mind, but GUI design is just a necessary evil for me.
Bill Mill on November 29, 2006 5:25 AMThere is one thing, much, much worse then having the UI designed by a developer: having the UI designed by a graphic designer.
UI-design is a speciality most graphics people don't get, but think they do. The UI displayed here is perfectly usable for it's intended audience, but a clueless graphic designer can render such an application utterly and completely useless.
Hence the poor usability 90% of all commercial websites...
(BTW, the example here is kind of lame, since this is an app geared at techie powerusers, I wouldn't want any fancy userfriendly UI stand in the way of me and wget parameters, which is why I use the commandline version. Basic rule of UI-design: know your audience. Having user-friendly interfaces for stuff that's only used by peoply like coders and sysadmins is not userfriendly, it's just annoying... So is hiding options for people who need them.)
Jesus H. Christ. I don't even want to know what the "Pro Mode" button does....
Fernando on November 29, 2006 5:52 AMWhat is wrong with ok-cancel.com? Every page is blank, even the home page.
Sam on November 29, 2006 5:53 AMPoint taken, but to buck the stereotype: some developers excel at creating UI, and this is their main focus. It's part of the reason why the label developer has become popular, as people tend not to be just programmers but also specialize in other things such as a business domain, a technical niche, or UI.
There is something of a culture of interesting software development on the OS X platform. Of course great things are being done on all the other platforms too. However, there are a lot of indie developers on OS X shipping well thought out and nicely crafted UIs. Worth a look.
John on November 29, 2006 5:54 AMAt least, GNU wget got Windows *has* a GUI. In UNIX, you don't get to use a GUI (come to think of it, better than having one like the above, I'd rather not have one).
JJ on November 29, 2006 6:14 AMI have to say that a big dialog with loads of controls on it is prolly the best type of design
Even though this one looks ugly (just the old Win98 look), it's infinitely preferable to a "Dialog", oh so common, that goes one step at a time. Imagine setting up this Wget as a stepped process:
Do you want ABC? OK CANCEL
OK, ARE YOU SURE?
Do you want DEF? OK CANCEL
OK, ARE YOU SURE?
=8^B
taterhead on November 29, 2006 6:16 AMBad developer! Nineties nightmare.
vanjulio on November 29, 2006 6:20 AMI'd be lying if I said I hadn't produced abominations like that one. I've learned my lesson, but others have not. My current project, where I have no control over the UI, is eerily similar.
Randolpho on November 29, 2006 6:22 AMLooks almost as bad as rational clearquest.
toastr on November 29, 2006 6:37 AMA good developer will give the GUI the same treatment as they give their code. Well commented, good refactoring, no smells.
Yes.
David Grant on November 29, 2006 6:37 AMAs a long time wget user at the command line, this gui interface makes sense as it shows all the options at once. It reminds me of the putty interface for ssh connections, which can be equally daunting until you are familiar with whats going on.
LV on November 29, 2006 6:40 AMWhat's wrong with this UI? It presents the options, lets you choose. What more do you need?
I hate UIs that hide stuff. Show it all to me.
Even worse is colors. No "graphic designer" ever thinks of the colorblind when make things pretty.
sewiv on November 29, 2006 6:42 AMIt would be more accurate to say this demonstrates what you get when you graft a GUI onto a perfectly fine command-line program. And it's not really surprising or blogworthy.
Goran Zec on November 29, 2006 6:43 AMmaybe he doesn't know how to use the "tab control" ?
matelot on November 29, 2006 6:53 AMDitto the comment about the 'Pro Mode' button. I want to see what that does.
It's a matter of attention. The GUI needs the same attention as the rest of the project. It doesn't matter if you make a better mouse trap; the mouse trap has to be usable.
shaitan on November 29, 2006 6:54 AMIf 'Pro Mode' doesn't take you to the command prompt, well, let's just say I'd be deeply disappointed.
C:\
mikefoo on November 29, 2006 6:59 AMGoran, do you honestly think this is the best user interface we can possibly come up with for wget? So you're saying this is as good as it gets?
it's probably more interaction design than graphic design that's at stake here...
Sorry, I should have been more specific. You're right.
I think many developers actually understand the issue, they simply have no UI training, nor the imagination and desire to come up with radically different workflows once they settle on one
Totally agree. Developers are already so very good at the technical stuff by definition. That's why they became software developers in the first place. I wish they would focus on other complementary skills like HCI rather than digging themselves in deeper and deeper to the technical stuff.
Jeff Atwood on November 29, 2006 7:00 AMwget has a 126 lines long help message.. the UI presented here seems to have everything included on just one screen.
Let's face it, wget is supposed to be called from the command line, it's a usefull little program, but you have to read the help message the first many times you use it. This UI will let you use the command in 1 minute, I don't see the problem? :-)
(IAAD - I Am a Developer)
The homepage for wgetgui says: "The easy to use Graphical User Interface (GUI)"
I think there are a couple of letters missing. Shouldn't it be "The *sl*eazy to use Graphical User Interface (GUI)"? :-)
Do you guys ever read the $#*^! comments first? How about contributing to what could be a worthwhile discussion on the merits of different styles of UI design, and spending a few minutes to consider ways in which it might be improved as an exercise, instead of leaving mindless droppings on someone's corner of the internet? The reason most UI design sucks is that no one practices or thinks first! That goes for those who just comment to say it's so bad.
Augh, I give up, I'm wasting my time, no one will read this either.
Foxyshadis on November 29, 2006 7:13 AMAs a developer, I would actually like to see more interfaces like this. Thought out better, sure... for example, you should have - by default - a more abstracted interface with fewer options. But to have an advanced interface you can switch to with every possible option and tooltips for each one would be a dream. No more man pages to look up, or wondering about what format or options are available in a config file.
Martin Alak on November 29, 2006 7:15 AMThese needs to be more OpenSource HCI usability people. In addition, CS people need to take at least one HCI course, I know GaTech does this, but I don't think there are many more.
Until these things happen, you're just stuck with what you get.
shane on November 29, 2006 7:18 AMIt looks like what happened here is the author of this front end to wget just dumped every single wget option into the dialog without much user-oriented organization. wget has a ton of options, but really only a few that you use often.
To make a workable GUI frontend to wget I'd take the typical tasks (which are to quickly download one or more files whose URLs you know, and to recursively download a whole site) and put those options on the main page, then hide the rest in tabs or expanding panes or whatever.
Reed on November 29, 2006 7:19 AMIt's real easy to criticize someone else's attempt to freely share a their own solution to a problem they've encountered. If Human Factors expert Jeff Atwood believes this is so bad, then it would be most beneficial to everyone to provide and alternative UI to demonstrate a "better" way to do so. Even more so to explain why Mr. Atwood's solution is better. At the very least provide constructive criticism.
Don't be a coward, Mr. Jeff Atwood.
Luke on November 29, 2006 7:21 AMTake a look at the website, that's the GUI 'expanded,' not even in 'PRO Mode.'
http://www.jensroesner.de/wgetgui/#screen
1 Textbox and 5 buttons doesn't seem horrible ... that it uses a .bat file to run wget seems like a worse offense.
opello on November 29, 2006 7:24 AMI've seen plenty of poor user interfaces, and I certainly don't want to dispute the premise, but this is a very poor example, especially if you don't understand what's going on.
"wget" is a command line program to recursively snarf web pages. It has been arround a long time, it is very solid, and among the command line set, it is very popular.
It is clear that this program is nothing more than a front end that does nothing more than build a set of command line options. This is the kind of thing that can be thrown together in just a few hours with a GUI development tool, and really, I don't see anything wrong with that.
It would be a completely different matter if someone spent months developing a "GUI web snarfing tool" and this is the UI they came up with, but this is clearly not the case.
This is a quick and dirty hack to mollify the set that can't deal with a shell prompt and man pages, and in *THAT* respect it is a good example of efficient code re-use.
BTW, I've seen other Windows programs that do something similar with a slick and more sensible interface, yet don't have a fraction of the capabilities of wget. In my mind, that is the true coding horror here.
Yes, in a perfect world, I'm sure that the wget codebase could be adapted into a much more intuitive GUI-based application. No question about that. But this guy *DID* it, and he is giving it away.
If you can make something better and give it away, by all means have at it!
nobody on November 29, 2006 7:24 AMPretty good gui,just getting used may take few minutes.
Stuffing all controls in tabs,or usermode is worse.
DISCLAIMER: I'm *not* calling out the wgetgui programmer. I mean no offense. It's a single example of a larger phenomenon, nothing more, nothing less.
To make a workable GUI frontend to wget I'd take the typical tasks (which are to quickly download one or more files whose URLs you know, and to recursively download a whole site) and put those options on the main page, then hide the rest in tabs or expanding panes or whatever.
Well said. Why not start by thinking about what a typical user would want to do? Or you could just put every command line switch on a massive dialog..
Jeff Atwood on November 29, 2006 7:42 AMFoxyshadis, I feel you dogg.
What is _scarier_ than the UI (shame on all the critics!) are the _number_ of posts on such a topic as this (including mine). Is Jeff's readership a "normal" cross-section of humanity?
The trivia of the web is downright frightening. If there was a post: "Gee, we lost a few more Constitutional rights today because we Americans, like, don't care enough", how many comments would be get?
The more I look at the UI the more I like it.
Steve on November 29, 2006 7:43 AMWith respect...
Some software developers happen to be excellent designers as well. You can't discriminate.
What you should have said was, "look at what THIS DEVELOPER did with UI..clearly HE cannot design as well as he can code".
Kevin on November 29, 2006 7:44 AMThe wget command line interface is also an interface - and one that suffers from just the same problem as this GUI. Take a look at the man page for GNU ls to see even more option overload. If not for backwards compatibility, these could and should have been radically redesigned a long time ago. So it's no excuse to say that this interface just mimics wget's command line, when the design of that very command line is atrocious! Let's face it: command line configuration doesn't scale.
AlexG on November 29, 2006 7:54 AMI have to agree with nobody? and say that the UI is simply a frontend to a very good commandline tool, and in that respect is actually quite good - it is a WYSIWYG interface to wget - no hidden options, no drilling down through menus etc. If you use wget you will appreciate how immediate everything is in that UI. If you don't know wget this UI will look a bit busy but I would assume it is aimed at people who already use and understand wget.
bob on November 29, 2006 7:57 AMhmm I can't see the problem :P well no it sucks that's true but half of it's ugliness comes from VB's standard controls, the other little problem is that it assumes the user to be competent but that kind of thing happens to everyone in it's first steps, I think everyone has the potential to become whatever it wants to, I'm basically a logical type of person (developer) but I'm trying to be more artistic and it's hard yeah but it's not impossible at all.
about this dialog, I should first change the way controls look, and then organize the options in tabs and lastly put all the tabs in a "advanced mode" checkbox and let the "simple mode" to be handled by a few presets.
Samus_ on November 29, 2006 8:02 AMIf you dimwits actually learn how to interact with the commandline then you don't need something like is displayed.
Hmm on November 29, 2006 8:16 AMWith respect...
Some software developers happen to be excellent designers as well. You can't discriminate.
What you should have said was, "look at what THIS DEVELOPER did with UI..clearly HE cannot design as well as he can code".
Aaah... but is he a developer that can design or a designer that can develop?
mars on November 29, 2006 8:24 AMPart of the probelm is this is a quick GUI skin over a command line app. When I was in college in the 90's my professors advocated that strategy for development. (Build a general purpose command line app then skin it with a gui).
It does provide an easy test harness in the command line tool. The only problem is you typically get a really horrible GUI that you don't want to learn if you already know the command line app, and is unlearnable and unusable if you don't.
I'm not sure why this was what was taught rather than an approach grounded in HCI. It might have been my school (MIT), or a general academic thing. Hopefully it has gotten better - does anyone know? It might also be a Unix thing with the command line is king mentality.
Steve Steiner on November 29, 2006 8:26 AMhehehe
I've used an earlier version of that program, it's what inspired me to actually learn wgets command line arguments.
You don't mention that this is the author's first Visual Basic program.
You make no comment on the friendliness or otherwise of the wget command line.
You make no comment about whether this GUI is more usable.
You give no credit to the author for trying.
You offer no alternatives.
Where is your (presumably excellent) work?
By the way, see that little "-" button to the right of the URL text box? That's a minus sign. Guess what it does.
Have a think about what you are proposing the author do. Are you going to provide your design services to this person for free? What's your timeframe?
Busy expert commentators - hate 'em.
wth, there is nothing wrong with that UI!
:D
It's mathematically "complete"
Jay Liew on November 29, 2006 8:48 AM"If you can make something better and give it away, by all means have at it!"
Spot on.
As an occasional wget user who struggles to remember the plethora of wget command line options, I must thank you for bringing this useful GUI to my attention.
nobody too on November 29, 2006 8:53 AMLooks ok to me.
Patrick on November 29, 2006 8:53 AMlol @ button "Pro Mode"
iamah on November 29, 2006 9:35 AMLet me say, for someone who knows wget, this is not a horrible interface.
A tabbed interface sucks here because I have to click through each tab anyway to see how the defaults are set, or I have to internalize the defaults for the gui - more work for me.
There's no need to search for anything here - all the options are right up front, no more 'press F1 for help, search the index, come up empty and have to click all the damn tabs anyway'.
I might move some of these controls around a bit, to make them easier to target, but I like them all on one page like this. All I want the GUI for is so I don't have to read the man pages. Again, that's assuming I know what these options are for.
Now, if I didn't know wget, or this app was supposed to be "wget for dummies" then yeah, sure, make a wizard, or tabs, or whatever so a n00b can learn it.
But put a user of this ugly gui would have a much easier time moving back and forth between gui and cli versions of wget than a user of a pretty, dumbed-down, colorful version would.
Matt V on November 29, 2006 9:49 AMArgh! Argh! Argh!
Ok, programmers can produce awful UI, and usually do. Can't argue there. But for the sweet hairy love of Jesus, don't hand the job over to "graphic designers". At least a programmer will produce a UI that *someone* can use, if only the programmer themself.
UI design is a specialty unto itself. It helps to have graphic design (and programming) skills, but that sure as doesn't make graphic designers into UI designers. Please don't contribute to the continuing mass delusion that they are.
Jeff on November 29, 2006 9:53 AMInterface design is all about expectations. You need to give your users what they expect. That defines a "good" interface. Users complain more about _how_ things should work and look, not so much that they don't like _what_ it does.
I will argue that the interface design should be figured out first before any development.
After all, to the user, the product is what they see and interact with. It doesn't matter how great the engine is if the car doesn't have the steering wheel in the right spot. Design what your users expect first, then code to meet that design.
Of course, I am a developer that designs and am surely guilty of some "poor" interfaces. Well...I like to think of myself as a designer that developers - but what have you...
Brian on November 29, 2006 9:56 AMThere's nothing wrong with this. Remember, this is a UI for wget! It actually has all those options and no UI is going to educate you on how to use them withing reading the manual.
The natural interface to a terminal is a keyboard. If you simplify down to one button, people might say "wow that's simple" but they're not going to get much work done.
I think I see some hasty condescension here and that's the ugly thing on this page.
A few points that have been mentioned I'd like to echo and expand upon.
For small companies there is no 'graphic designer'. Or more specifically, the 'graphic designer' is anyone who can use Paint Shop. I've also used a number of programs more than likely created by a whole team of graphic designers with simply terribly UIs. If you had that example UI designed by one of those you'd no doubt get a good looking interface that would be unusable in the required context.
Speaking of which...the context of the program is important. The above example in context of being a simple and quick UI to access a command line program is perfectly fine as it is in my eyes. That same UI as the options screen in a popular consumer level software product, howevver, is not fine. I know I've made similarily dense options screens but they were for a limited in-house audience or for a technically minded audience.
I do not apply the same level of interface esign to a quick 'one-off' utility used by a dozen people as I would a shrink wrapped software distributed to millions.
Dave on November 29, 2006 10:10 AMThe comments to this entry are closed.
|
|
Traffic Stats |