This Is What Happens When You Let Developers Create UI

wget is very useful program, I use it almost every day even on my Macs (from bash of course). It is a little complicated, but the man page is well written and the program is extremely effective at accomplish what you ask it.

Let’s face it: recursively snagging web pages is a difficult task; the number of options is born of necessity not of some designer sadism.

I use GUI tools when they’re most effective, and CLI tools when they’re most effective. The two user interface paradigms don’t necessarily translate to each other, and effort shouldn’t be made to force it. However, being adept at both will make you into a far more efficient user, able to pick the best tool for any given task.

If it takes you 10 minutes to find something on this example, perhaps it’s time for a new career?

If you’re only using two controls, why are you using the gui? Learn those two controls and use the command-line.

I agree… I’m afraid of “Pro Mode”.

In defense of the person that created this UI… I am positive that no requirements or wireframes were provided. Heck, there was probably no design process whatsoever.

For the record, this UI is hideous.

Wha? I don’t get it. What’s so bad about this? It’s so user-friendly. Oh wait, I see. It’s missing a POKE statement. -EOF- Seriously, though, why do utilities have to look different than apps? I think all utilities ought to look like Songbird, but without the black areas. Very clean.

I feel sorry for people that cannot use it, this UI is just great, just RTFM you may learn to you it.

BTW wget is a GNU utility if you feel you can make better, grab the source and do it yourself.

This certainly is my kind of GUI, not the kind of GUI I code, though. Absolutely not. The thing that sucks about this is the layout, it’s a little sloppy. But other than that, it’s perfect for me.

When doing GUI design, I tend to keep things simple. No redundant nonsense, just what’s needed to keep applications easy to use. Doing with as few controls as possible, making sure each control is needed for correct functioning of the application. Should do.

As a software developer who has spent years writing front ends, backends and middle tier code I can say that my GUIs are always very usable. There is nothing difficult or challenging to a programmer in producing a decent user interface if you actually think about your work and have a brain in your head. Some programmers even read books on the topic you know.

What is far more pernicious is designers who think they can program! That is what is more likely likely to lead us to hell in a handcart.

Ironically, this IS easier to use than plain old wget for one-off gets, so technically the description is accurate.

I don’t think the scenario that lead to this is accurate though - I think the developer really believes they’ve made a good UI here. You have to think like a developer to understand - there’s features and code behind all those widgets. One feature, one widget. And it’s all one program, so it’s all one screen. It makes sense to him, because to him this screen is far less complicated than the code behind it. It just doesn’t make sense to anyone else.

It is easy to understand if you are a normal wget user. besides if you don’t like it you’re free to make improvements to it.

Hi, it’s me, the bad boy having written wgetgui. Thanks for the constructive comments quite a few of you made. I’ll try to incorporate those that are easy to do (I’m not a developer after all…) into one of the next releases. I never thought people would count pixels to determine whether boxes are aligned! :wink:
For those who wondered: Pro mode lets you edit the bat file yourself.
Those who assume I wrote it for myself are right. I needed to learn a bit of VB for a project and the only idea I had was this. (Yeah, lame, I know.) After I received some interest I released it into the public, for anyone to change and adapt it. Maybe the project I learned for can become “Today’s worst GUI” tomorrow? It is called SolExl and can be found via google easily…
To those who think that it is not abstract enough for a GUI: I agree partly, for example, there’d be no need to name the buttons with wgetstart.bat! Using “File List” or similar would make more sense.
To those who think using wget directly is easier: I can imagine this, but for_me it is much easier to use the GUI than a command line tool. Especially as it works really fast using dragdrop with links (works best in Mozilla).
It feels kinda funny when I read “developers should not design”. I’m neither and I had noone to help me, this wasn’t a team effort between a programmer and designer and whatnot. I had no real choice but do everything myself with software I had never used before. And yes, I thought quite a bit about what I should do. I know I often decided wrongly.
But I still think that using tabs would be wrooong with wget. :wink:


I would add … don’t let the marketting decide when it’s ready :slight_smile:

You dont understand how true this is. I am SO bad at web design that I started using smarty because I am just SO bad at design. I let the other guys who are better at web design do it.

I am the founder of the Open Education Software Foundation

I like the UI. The designer just might have thought like me to give everything at a single click and single view :wink:

wget’s native GUI is called “man wget”. Operation of wget is split between comprehension and command execute modes.

…and just for the record, I am posting this just as a 8 hour long, +3GB recursive wget complets.

Oh… and BTW, the thing that this “GUI” is missing (yes, it’s actually missing someting very critical) is the feedback pane that displays the results of the issued wget (yes, there is a ‘recursive’ check box… so this is most definetly needed).

…so, yeah, this GUI is fscked in the head, but not for the reasons that you think it is…

Hi Jens - I was the one that originally wrote about this. I’m not sure of your background, but when I saw the UI for wGetGUI it just reminded me a lot of different screens I’ve seen designed by developers (and probably a few I’ve designed myself). I know as an open-source thing wGetGUI is probably something you do in your spare time and I commend you on that. Because of that I actually tried to “obfuscate” the name of your app in my original post. Clearly I didn’t do a good enough job (I suppose it is on some of those buttons at the bottom). Please think of my post as not a criticism of your particular application, but rather a comment on the difficulty of designing good UI in general, and the vanishingly small chance of coming up with a good design if you just let the buttons and checkboxes fall where they may.

Hi Joseph,
I’m a mechanical engineer and started wgetgui as a way to learn for a project (SolExl) while I was studying abroad. The project was to use VB - which I hadn’t touched before.
I then found wgetgui to be actually useful for me. So, more controls were added step by step: Just as I needed them.
So your initial “dialog” comment is drastic but not far from the truth. :wink:
I do quite a bit of programming (for a MechEng) and programming is taught not enough in university. The little time that is used for that is surely not used to teach about good UIs. Also, I’m basically programming only for myself, so the motivation to refine the UI is not there. That’s fine for my use, but sometimes I get asked to provide code or make the application public - that’s when things get dangerous as I just noticed :wink:


Fantastic example! Thanks for sharing. Let me know what else you’re finding.

Also, I can recommend the classic book “GUI Bloopers” for lots of great examples. (Even though some of the examples are outdated).

I agree that often graphic designers can make far worse GUIs than bad developers can. The thing that I’ve found that works - talk to your users! Get feedback either from your users or from customer support team (if one exists) who has to deal with users. Still, in my home projects, I’ve been known to jack with the Windows API to create things like “Yes/No/Maybe” messageboxes.

Maybe its because its written by linux folks? At least they got a UI! From command line with hundreds of switches or flags to a UI! That’s Revolutionary! :wink:

I see way too much confusion in these comments.

There are a number of different skills being discussed here. Interaction design is about how a user can interact with the application, how it makes sense and flows (among other things). UI is more nebulous and seems to be used in all kinds of ways, though most people I know who talk about UI are talking about a combination of interaction design and graphic design. And graphic design is more about layout, colors, fonts, etc.

I think developers get a bad rap for designing crappy UIs when it’s often not their specialty to do so. What about the loser management who thinks these aspects are unimportant and that it’s like finger painting for kindergarten kids to design a UI? So they spend lots of money on developers but skimp on or ignore the interface?

I see developers being pushed into interaction design way more than the other way around. Developers have lots of criticism leveled at them for bad designs. Would the software be any better if UI designers were pushed into writing code after they’d already worked a full day and as an afterthought by the management? Especially without having the skills or interest in doing so?

As far as the comment “stick to coding and leave the graphic design to the experts,” I agree that it’s best to have people that are really good at an area of expertise. But if anyone wants to put the time in to really learn and understand, they could become at least baseline-competent in either of these areas. It’s not like either UI design or development are impossible to learn. But each DOES require training and practice to become good.

The thing that would actually help the most in many business settings would be for management to hire the right staff to do the job. If they can’t do that, then it would at least help to train people and get them the information, skills and resources they need to do their jobs. Oh, and yes, set realistic deadlines.

As far as their being many more developers involved in open source projects than designers. Maybe more designers need to get involved instead of whining about how out-of-touch the developers are.