Live data from Hacker News

GUIs are built at least 2.5 times

patricia.no

21–30 of 155 posts

Re: GUIs are built at least 2.5 times

#21
UI concerns need to be in service to the full set of requirements and the data model.

UIs are easily accessible to end-users and product-managers, and can allow people to focus on a subset of the requirements. The trap is to allow the UI perspective to direct the development process.

It is vital to set an expectation with customers that allows discussion about UI matters as part of requirements discovery, but where they expect it to churn. During early development UI should be rough and should churn constantly in response to changes of more foundational matters: the business requirements, the data model, concurrency matters, interactions with other systems and the deployment.

Re: GUIs are built at least 2.5 times

#22

This part is genius: > I have made GUIs many, many times and my best case scenario goes something like: > 1. A design has been made, everyone loves it. Detailed drawings have been made. > 2. The devs are told to Make It > 3. The devs Make It, exactly to spec > 4. Everyone looks at it and everyone hates it > 5. So many meetings. So much stress. This Is Terrible! What To Do? > 6. A new design is made. So much better! D…

I refer to it as "designed by programmers". It's so prevalent that the Silicon Valley TV show used this as one of it's story lines.

When I worked for a consultancy in early internet days I also often repeated "the customer doesn't know what they want until they see what they don't want". People weren't used to web GUIs and there weren't the common patterns we see today, so it wasn't until they had a half working version they could actually give feedback, so getting early feedback was essential to reduce the frustrating of building something that is immediately changed. It still applies today but less to do with usage patterns and more to do with missing requirements the customer forgot to tell you about.

Re: GUIs are built at least 2.5 times

#23

This part is genius: > I have made GUIs many, many times and my best case scenario goes something like: > 1. A design has been made, everyone loves it. Detailed drawings have been made. > 2. The devs are told to Make It > 3. The devs Make It, exactly to spec > 4. Everyone looks at it and everyone hates it > 5. So many meetings. So much stress. This Is Terrible! What To Do? > 6. A new design is made. So much better! D…

The issue is that step 2 is wrong. Step 1 is to make a design, step 2 is to test it. Make a paper prototype and have your customer simulate working with it. If you feel fancy make a pretty prototype in Figma.

If you have a good designer and cooperative costumer you can even combine step 1 and 2 with a whiteboard prototype. Ask the customer what a common task is. Draw the interface the whiteboard and ask the consumer where they would click or interact, then draw the next UI state, and so on.

After a couple rounds of iterating that way you can start writing actual code. You will still need a couple iterations once people can try the actual software but you will have a much better starting point

Re: GUIs are built at least 2.5 times

#24
post #9

The only metaphor I’ve come across that is relatable to non-software people is building a house(in particular Australia because we do it so badly). As mentioned humans are terrible at imagining things that don’t exist yet.

Any engineering surely works as an analogy - be it mechanical, electrical, chemical or anything else.

I feel like building a house and programming are the only kinds of engineering where the customer can change the project halfway through and not get laughed out the room

Re: GUIs are built at least 2.5 times

#25
A tight iteration loop is the only solution I've seen for building high quality UI/UX. Embrace that it's going to be terrible the first few times and plan for this.

We could save on cost per iteration by avoiding the layout and styling pass until the very end. These interfaces are about communicating information. Plain text and basic form submissions work just as well as anything else when you're still trying to design site map and purpose of each page.

There's a direct correlation between the customer-developer distance and the number of iterations required to achieve an acceptable result. You can dramatically reduce the churn by requiring daily builds or screenshots to the customer. If your development process can't support the idea of iterating like this, you need to find one that can. If the actual customer can't handle that amount of traffic, create internal proxies or advocates.

Re: GUIs are built at least 2.5 times

#26
post #6
post #2

I have only skimmed the text but regarding GUIs specifically the list in the end is spot on. With that being said, I firmly believe that all software (given that one is not already deeply familiar with the domain) is/can/should be written three times to end up with a good product: 1. Minimal prototype. You throw something together fast to see it can be done, taking shortcuts and leaving out features which you know yo…

"Plan to throw one away. You will anyhow."- Fred Brooks, _Mythical Man Month_ A software engineering book written decades before I was born- my college assigned us the 25th Anniversary Edition- and yet I re-read it every few years and find some new way to apply its lessons to my current problems.

"If you plan to throw away one, you will throw away two" -- Craig Zerouni, via Programming Pearls: Bumper Sticker Computer Science

https://moss.cs.iit.edu/cs100/Bentley_BumperSticker.pdf

Re: GUIs are built at least 2.5 times

#27
post #24

Earlier quoted context omitted.

Any engineering surely works as an analogy - be it mechanical, electrical, chemical or anything else.

I feel like building a house and programming are the only kinds of engineering where the customer can change the project halfway through and not get laughed out the room

It’s not only customer requirements that it works well for.

Ever started prepping a site for a concrete foundation and run into rock as your levelling?

Re: GUIs are built at least 2.5 times

#28

This part is genius: > I have made GUIs many, many times and my best case scenario goes something like: > 1. A design has been made, everyone loves it. Detailed drawings have been made. > 2. The devs are told to Make It > 3. The devs Make It, exactly to spec > 4. Everyone looks at it and everyone hates it > 5. So many meetings. So much stress. This Is Terrible! What To Do? > 6. A new design is made. So much better! D…

[deleted]

Re: GUIs are built at least 2.5 times

#29
post #22

This part is genius: > I have made GUIs many, many times and my best case scenario goes something like: > 1. A design has been made, everyone loves it. Detailed drawings have been made. > 2. The devs are told to Make It > 3. The devs Make It, exactly to spec > 4. Everyone looks at it and everyone hates it > 5. So many meetings. So much stress. This Is Terrible! What To Do? > 6. A new design is made. So much better! D…

I refer to it as "designed by programmers". It's so prevalent that the Silicon Valley TV show used this as one of it's story lines. When I worked for a consultancy in early internet days I also often repeated "the customer doesn't know what they want until they see what they don't want". People weren't used to web GUIs and there weren't the common patterns we see today, so it wasn't until they had a half working vers…

Conversely, I've seen way too many designed-by-designers GUIs and UX flows that can be best characterized as a glittery, polished turd. They sure look nice in Figma but often only have one well-specified happy path from which the end user will surely deviate. Managers will easily greenlight broken designs because they can only see the visuals, not the complete picture.

If you find a talented designer, they are valued so much they will only get assigned to design tasks. If you have a rockstar 10x developer, their mind just cannot comprehend the average 0.1x end user.

What you need is someone who understands design but dislikes it enough to not focus on aligning single pixels or fixing the kerning. They need to be able to code but hate it with passion, because hard-working programmers create software for hard-working end users and the end user is not hard-working.

Re: GUIs are built at least 2.5 times

#30
post #22

This part is genius: > I have made GUIs many, many times and my best case scenario goes something like: > 1. A design has been made, everyone loves it. Detailed drawings have been made. > 2. The devs are told to Make It > 3. The devs Make It, exactly to spec > 4. Everyone looks at it and everyone hates it > 5. So many meetings. So much stress. This Is Terrible! What To Do? > 6. A new design is made. So much better! D…

I refer to it as "designed by programmers". It's so prevalent that the Silicon Valley TV show used this as one of it's story lines. When I worked for a consultancy in early internet days I also often repeated "the customer doesn't know what they want until they see what they don't want". People weren't used to web GUIs and there weren't the common patterns we see today, so it wasn't until they had a half working vers…

> "the customer doesn't know what they want until they see what they don't want".

like all good NP-complete problems, the issue of making a good GUI is verifiable easily by a customer, but they cannot tell you what a good GUI is.

Post reply on HN