Live data from Hacker News

This is what happens when you let programmers design interfaces (PNG)

codeproject.com

11–20 of 38 posts

Re: This is what happens when you let programmers design interfaces (PNG)

#11
post #3
post #2

Wow, that's pretty brutal... I think that an engineer can learn design, however. Certainly a standard CS education doesn't necessarily teach you those skills, but one can definitely develop them over time. It takes a good design sense and a good engineering capability to build great user experiences. Often you can't get that in one person, but when you can, one can accomplish that much more.

Isn't KISS always the key?

Very often it is. But it's not as simple as that.

Try to turn things around - there are a lot of designers (and kids and grandpas) that code something up. This usually ends up as a horrible mess, not following any programming paradigms, spaghetti code, non-existing security, etc. We've all seen it happen. But you only see this if you're a professional programmer. Non-professionals don't see the detail, the design decisions, the security measures, the scalability, etc. They just see a slow or buggy site. Or worst-case they see their credit cards exposed.

Design is the same, just to a larger degree - everyone thinks they can do it, because well done design seems so simple. When they try to do their own, however, it is never quite as good and they don't understand why. The reason is the exact same as why novice programmers create crappy programs. To do a great and simple design you need a lot of experience and a lot of knowledge. Certain things need to align, some colors match others don't, certain design elements send certain signals to the user, etc. Have you ever noticed the drop-shadow on the logo on Google's homepage? Chances are you haven't, but it is a core part of their design - you don't notice it, but it holds up the whole page.

As a novice designer you can only get so far until you start running into problems that require expert knowledge and experience. Just like programming.

And when you start talking about usability (which I think the flaws in the linked pic are) things get even worse. Read Jakob Nielsens useit(http://www.useit.com) if you want to learn more about it.

Re: This is what happens when you let programmers design interfaces (PNG)

#12
post #8

"This is what happens when you let someone who is lousy at designing interfaces, design interfaces." Fixed that for you.

Yah this pretty much is what you want to say. I know many programmers, including myself strive to be great at UI design :)

Re: This is what happens when you let programmers design interfaces (PNG)

#13
It is kind of unfair to say all programmers are bad at designing interfaces. I've never personally met one that was actually bad, and know several that are quite good- to the point where they could be professional UI designers if they wanted.

I've noticed a trend where hackers with good design sensibilities have migrated to working on web earlier than other developers. That might have something to do with it.

Re: This is what happens when you let programmers design interfaces (PNG)

#14
Sometimes the rule is even broader: this is what happens when you let your company design the UI (before bringing in a HCI/Ux (user-experience) consultancy to fix/transform it).

Aside from griping with them about the backend machinations/magic required to transform some of their wireframe mock-ups into running code, working with a well-known HCI/Ux firm made our product's UI cohesive, usable, and functional. They also helped us build reusable common UI components. This was a high-profile, multi-million dollar new product launch so the ($$$) money the firm cost was well invested.

Re: This is what happens when you let programmers design interfaces (PNG)

#16
post #2

Wow, that's pretty brutal... I think that an engineer can learn design, however. Certainly a standard CS education doesn't necessarily teach you those skills, but one can definitely develop them over time. It takes a good design sense and a good engineering capability to build great user experiences. Often you can't get that in one person, but when you can, one can accomplish that much more.

If they had added two additional widgets, that UI wouldn't be that bad. Collapse the top, and collapse the bottom, and it's pretty much exactly what you'd want in a task tracking system.

Re: This is what happens when you let programmers design interfaces (PNG)

#17
post #9

I think this is overly harsh. As far as I can tell, this is a program made by a single person in their spare time and was then open sourced. This is what happens when someone develops an application for themselves based around their own needs and then decided other people might want to use it - I'm sure the developer didn't set out to create a "great user experience". Controversially, despite its ugliness and widget…

Exactly. This is a ToDo list application. There are dozens of valid approaches to designing one. This looks like an app that could be very fast and effective once you got comfortable with it.

Re: This is what happens when you let programmers design interfaces (PNG)

#18
People who aren't specialists design interfaces they think they'd like. Programmers, therefore, design interfaces for programmers. This is going to suck for consumer apps, of course, because most people aren't programmers - but this is actually a good thing for other programmers. Take a look at Emacs or Vi - is there ANY way they can get more confusing and badly designed from a consumer-app point of view? Yet they're perfect for the programmer.

Re: This is what happens when you let programmers design interfaces (PNG)

#20
post #16
post #2

Wow, that's pretty brutal... I think that an engineer can learn design, however. Certainly a standard CS education doesn't necessarily teach you those skills, but one can definitely develop them over time. It takes a good design sense and a good engineering capability to build great user experiences. Often you can't get that in one person, but when you can, one can accomplish that much more.

If they had added two additional widgets, that UI wouldn't be that bad. Collapse the top, and collapse the bottom, and it's pretty much exactly what you'd want in a task tracking system.

Are you sure you know what I want in a task tracking system?

The one I made for myself was quite different and far simpler.

There were two listboxes and one text field for entering new items. You could open any item with a keypress and see a text box with more detailed notes. All the data was maintained in human-readable text files.

Post reply on HN