News for hackers. Stuff that matters.
Re:Imaginary Problems Are the Root of Bad Software by pavlov on Sunday June 18, 2023 @01:15PM (#36382179)
> “No designer is given promotion for sticking to conventional designs. It's their creative & clever designs that get them attention and career incentives.”

This is a massive change from my first software industry job in 1997.

I was essentially a “design intern who knows HTML” on a team that built a shrinkwrap Windows application for enterprises. The core of the design team was a graphic designer, a cognitive scientist, an industrial designer, and a product manager with industry experience in the customer domain.

The application was Windows native. User research was conducted on site with scientific rigor. Adhering to platform guidelines and conventions was a priority. I think I spent a few weeks redrawing hundreds of toolbar icons so they’d be in line with the Office 97 look (the kind of boring job you give to the junior). If the app stood out on the Windows desktop, that would have been considered problematic.

Today a similar design team would only have a graphic designer and a PM, and neither of them would care the slightest about platform guidelines or customer domain. The UI is primarily an extension of the corporate brand. Hiring a cognitive scientist? Forget about it…

Everything certainly wasn’t perfect in the Windows/Mac desktop golden era. But the rise of the web wiped out a lot of good industry practices too.

Re:Imaginary Problems Are the Root of Bad Software by lewisjoe on Sunday June 18, 2023 @01:30PM (#36382328)
From a person who started using computers from the early 2000s era:

THANK YOU!

None of the current SaaS apps I use can come close to the experience of using softwares from that era.

Take a simple list view of a typical Windows/Mac software?

1. Command clicking selected multiple objects

2. Shift clicking selected a range.

3. Right clicking brought up selection actions.

4. Double clicking opened an object.

This pattern was followed in almost list views and there was no re-learning and surprises.

Now can you say the same about the list views of modern web apps?

Can you apply the same list selection experience across Google Drive and Microsoft OneDrive and Apple iCloud? Nope.

That's were we failed as an industry. We let a lot of designers run too wild with their ideas, to put it bluntly.

Re:Imaginary Problems Are the Root of Bad Software by lfowles on Sunday June 18, 2023 @01:33PM (#36382359)
Those four actions worked for me on the Google Drive web interface
Re:Imaginary Problems Are the Root of Bad Software by lewisjoe on Sunday June 18, 2023 @01:39PM (#36382414)
Great! Now try it in any other list view in any other app.

Maybe the list of docs in https://docs.google.com?

Re:Imaginary Problems Are the Root of Bad Software by evandale on Sunday June 18, 2023 @03:35PM (#36383592)
On my phone so it's hard to check, but Gmail's ctrl and shift clicks work really well and is intuitive to me. I'm shocked they wouldn't use the same mechanics everywhere.

Best example: Gmail is one of the only webapps I'll ctrl click a few items at the top of the list, ctrl click a few in the middle, and then shift click to the bottom and it works exactly how I'd expect - everything stays selected and the shift+click selects from your previous click to the next item. I think it gets wonky if you change directions but I can't imagine how I'd expect ctrl+click item 1, 2, 9, 10, then shift click on 4 would work.

Re:Imaginary Problems Are the Root of Bad Software by cwillu on Monday June 19, 2023 @12:32AM (#36387356)
For myself, I'd expect the items between 4 and 10 to be added to the selection: everything but 3 would be selected.

Having just checked, this is indeed what the file explorer on my desktop does, and I'm pretty sure windows file explorer does the same.

Re:Imaginary Problems Are the Root of Bad Software by ilyt on Sunday June 18, 2023 @01:57PM (#36382597)
And everything had a keybind so if you worked in software every day you could be as fast as cli nerds.
Re:Imaginary Problems Are the Root of Bad Software by someweirdperson on Sunday June 18, 2023 @05:46PM (#36384845)
And not even be slowed down by animations.
Re:Imaginary Problems Are the Root of Bad Software by MonkeyClub on Monday June 19, 2023 @01:10AM (#36387520)
I read "even" as "ever" - still made complete sense.

Animations may seem fine and fun the first time you encounter one, but when you think you'll have to suffer through it every time an action is taken, it becomes a whole different story.

Re:Imaginary Problems Are the Root of Bad Software by tuhriel on Friday June 30, 2023 @12:10PM (#36537544)
Absolutely...closing a popup with 'esc'? Naah, wasn't requested so tha message stays up
Re:Imaginary Problems Are the Root of Bad Software by bombolo on Sunday June 18, 2023 @01:59PM (#36382612)
The problem with the controls is mostly because they don't want to pay for Qt (multiplatform toolkit), so instead every company (badly) implements their own controls in HTML to save money. I suspect ultimately they waste much more money than they save.
Re:Imaginary Problems Are the Root of Bad Software by whstl on Sunday June 18, 2023 @05:03PM (#36384437)
Qt isn't even in the radar of most companies currently building multi-platform applications in HTML. And it won't be soon, for two main reasons: developers able to use it are expensive, and Qt applications have the "uncanny valley" look and feel about them on every OS but Linux.

Not to mention that with SaaS being more profitable than selling, a lot of apps also have backends, and webapp versions, which can share a lot of HTML/CSS/JS code with the desktop version. Sure: Qt, Flutter, etc have web versions, but they just don't look/feel good.

If you want a "Premium" native look and feel, people gotta go directly to the source and Qt won't cut without a lot of work. Lots of companies have separate Android and iOS teams. Or they go directly to HTML (or things like Flutter, which look ok in mobile). High-quality macOS apps, like those made by Panic, Rogue Amoeba, etc, use Cocoa directly.

Standardized controls and shortcuts are a secondary concern to all this.

Re:Imaginary Problems Are the Root of Bad Software by throwaway2037 on Sunday June 18, 2023 @09:04PM (#36386138)
All this sounds great from the perspective of retail shrink wrap software. Today, the major use cases for Qt on the desktop are in-house corporate software. And, no one cares about "uncanny valley". Only HN and online nerds care about that stuff. Average, non-technical, corporate users care about functions, not form. Hell, they are happy with a VBA app! Also, lots of in-car and in-seat (aeroplane) entertainment systems are built in Qt.

    If you want a "Premium" native look and feel
Who is doing this in 2023? No one outside my examples above.
Re:Imaginary Problems Are the Root of Bad Software by whstl on Monday June 19, 2023 @02:22AM (#36387892)
There's a reason in-house corporate software started becoming web based 15-or-so years ago: web is cheaper, easier to hire for, faster to develop and deploy, doesn't require installation or updates, easier to troubleshoot, doesn't need special pipes for communicating with the server (yeah I remember the days of DCOM, CORBA, WCF and other weird protocols instead of HTTP).

It is things like Qt that only HN and online nerds care about.

Don't get me wrong: I really like well made native apps and I think they're great. But Qt isn't as great as software made with native toolkits directly.

Re:Imaginary Problems Are the Root of Bad Software by throwaway2037 on Monday June 19, 2023 @08:44PM (#36398317)
No, long term, web apps are more expensive because the front end needs to be completely re-written ever few years. A desktop app written in Qt can be kept running for a decade with very little work. (This assumes no Qt library upgrades, which for in-house apps, are most unnecessary.)

The primary advantage of web apps is "zero install", which is a major point of friction at large corps.

Re:Imaginary Problems Are the Root of Bad Software by whstl on Wednesday June 21, 2023 @06:32AM (#36416770)
“because the front end needs to be completely re-written ever few years”

Citation needed. Currently working in a jQuery+Coffeescript app that still works like a charm.

Re:Imaginary Problems Are the Root of Bad Software by jpc0 on Wednesday June 21, 2023 @06:34AM (#36416790)
> ...needs to be completely re-written ever few years.

No it doesn't, the HTML spec hasn't changed, whereas QT has. The issue is how the webapps were built in the first place. You don't need Nextjs and all it's friends to post a form to a backend once an hour but somehow that is becoming the standard approach...

Re:Imaginary Problems Are the Root of Bad Software by whstl on Monday June 19, 2023 @06:41AM (#36389486)
> Who is doing this in 2023? No one outside my examples above.

For macOS check apps made by Apple (Logic, Final Cut), Panic, Rogue Amoeba, or apps like Pixelmator, Affinity, Pixelmator, TablePlus, Tower, Dash... there's more.

There's even open source ones like IINA providing a premium look+feel.

Re:Imaginary Problems Are the Root of Bad Software by bombolo on Sunday June 18, 2023 @11:55PM (#36387155)
Qt has uncanney valley... do you think people using HTML care to make things look native then?
Re:Imaginary Problems Are the Root of Bad Software by whstl on Monday June 19, 2023 @02:14AM (#36387849)
HTML doesn't suffer from the uncanny valley problem because it doesn't look native at all, it's just something totally different. Yeah, sometimes it sucks, but it's not because it looks "almost but not quite there".

Perhaps Cordova/Ionic, when it tried to imitate the look iOS/Android's native controls.

Re:Imaginary Problems Are the Root of Bad Software by jstimpfle on Monday June 19, 2023 @04:22AM (#36388608)
> If you want a "Premium" native look and feel, people gotta go directly to the source: native APIs.

I've seen this regurgitated a hundred times, but I don't really know any more what that "native look and feel" is. On Windows, it might be the old Windows 95 controls, but those are quite limited. What system today is made of dropdowns, checkboxes and OK buttons?

Re:Imaginary Problems Are the Root of Bad Software by whstl on Monday June 19, 2023 @06:33AM (#36389450)
Well, yeah. Windows is... special. Even Microsoft stopped using the normal controls. But the problem is that Qt looks like an uncanny valley version of this.

But by Premium yeah, I'm talking more about macOS, iOS and Android here.

For macOS apps made by Apple, Panic, Rogue Amoeba, or apps like Pixelmator, Affinity, Pixelmator, TablePlus, Tower, Dash.

Re:Imaginary Problems Are the Root of Bad Software by mavhc on Monday June 19, 2023 @05:39AM (#36389095)
According to Microsoft, native look and feel includes tiny tiny dialog boxes with even smaller panes inside that can't be resized, so yeah, not going to bother with that
Re:Imaginary Problems Are the Root of Bad Software by chii on Sunday June 18, 2023 @11:16PM (#36386944)
The problem isn't really with designers per se (tho they played a role). The problem is with the web as an application delivery platform - it was never designed for this.

Windows, or MacOS, both have design guidelines that was produced, and they expected native apps to follow. Most native apps do (the few that doesn't have either good reason, or were unique enough that their customers don't care - think photoshop).

With the advent of the web, such a guideline for software no longer mattered, because the controls and UI elements are all custom - since html is not an application GUI library!

So every man and their dog has a different UX and UI interaction built for their own app, because the web encourages it. The designers are also at fault for not standardizing on a set of common UI widgets, but i cannot blame them as this isn't the easiest path.

Re:Imaginary Problems Are the Root of Bad Software by heresie-dabord on Monday June 19, 2023 @05:54AM (#36389195)
> design guidelines that was produced, and they expected native apps to follow.

It almost sounds old-fashioned in 2023 to talk about usability, affordance, and user-experience.

Part of being a native application was/is for the application to look and behave like the rest of the user interface. Standards are important because learning how to use a tool is important. Users are important.

Software has become a way to make users miserable. Oh, and while confusing them, throw some advertising at them too. ^_^

Re:Imaginary Problems Are the Root of Bad Software by montjoy on Monday June 19, 2023 @12:24AM (#36387324)
I can’t help but feel that Agile is at least partly to blame for this. Things like you are describing usually don’t come under the “minimum viable product” purview and thus get pushed out indefinitely until the product is at the “very mature” stage. At that point there’s the risk that the product will be re-written and the cycle reset again.
Re:Imaginary Problems Are the Root of Bad Software by lmm on Monday June 19, 2023 @02:18AM (#36387864)
Nah. If anything a lot of these trends are directly anti-agile, e.g. avoiding labels and using icons so that it's easier to translate your app, even though the icons take longer initially and you're never actually going to translate your app.
Re:Imaginary Problems Are the Root of Bad Software by montjoy on Monday June 19, 2023 @03:05AM (#36388147)
I’m not really arguing that. I’m saying there is a trade-off between having the common OS feature set described above (Ctrl/Cmd-select, etc) and implementing/iterating a web/mobile product quickly. Often standard UI paradigms are never implemented or implemented inconsistently. AWS, widely known for their Agile practices, might be the epitome of this with their web console. Sometimes I can sort columns by clicking on them, sometimes I can’t. Some products allow shift or control click and some do not. Etc etc. I can only assume the product teams are doing their best within their constraints but as an end user it’s a piece of suck.
Re:Imaginary Problems Are the Root of Bad Software by bambax on Monday June 19, 2023 @01:17AM (#36387550)
Also:

CTRL+A selects all

CTRL+Shift+End selects all from where you are to the end

CTRL+Shift+Home selects all from where you are to the top

One of the (many) problems of web UIs is they often ignore the keyboard completely.

Re:Imaginary Problems Are the Root of Bad Software by bostik on Monday June 19, 2023 @03:01AM (#36388115)
Or as is increasingly the case: they actively hijack what should be system-wide keybindings - making it even worse.
Re:Imaginary Problems Are the Root of Bad Software by Dalewyn on Monday June 19, 2023 @04:39AM (#36388725)
>CTRL+Shift+End selects all from where you are to the end

>CTRL+Shift+Home selects all from where you are to the top

Those two don't need CTRL, just so you know.

>One of the (many) problems of web UIs is they often ignore the keyboard completely.

They are also starting to ignore the mouse.

Re:Imaginary Problems Are the Root of Bad Software by bambax on Monday June 19, 2023 @07:55AM (#36389998)
> Those two don't need CTRL, just so you know

Well, yes they do, only it's different with and without CTRL. For example in a text editor (or a normal webpage without any fancy JS):

- Shift+End goes to the end of the line

- CTRL+Shift+End goes to the end of the document

and the same is true for Home (substitute "end" with "beginning").

I have seen people, even "technical" people, select a text with the mouse from the middle of a large Word document to the end, because they didn't know this.

They also had to do it often (several times a day) and it had become a significant part of their workload...

Re:Imaginary Problems Are the Root of Bad Software by andsoitis on Monday June 19, 2023 @10:04AM (#36391224)
Emacs would like to have a word.
Re:Imaginary Problems Are the Root of Bad Software by skydhash on Monday June 19, 2023 @10:17AM (#36391358)
Emacs is a text ecosystem. And it's trivial to add these shortcuts. Evil[0] basically rewires everything to be Vim.

[0]: https://github.com/emacs-evil/evil

Re:Imaginary Problems Are the Root of Bad Software by andsoitis on Monday June 19, 2023 @10:34AM (#36391493)
It is a desktop application that doesn't adhere to the user experience guidelines of the OS it runs on. I'm an emacs user and fan.
Re:Imaginary Problems Are the Root of Bad Software by rewmie on Monday June 19, 2023 @05:11PM (#36396516)
> None of the current SaaS apps I use can come close to the experience of using softwares from that era.

I'm afraid you're looking at the past with rose-tinted glasses. In general software back then sucked hard. User experience did not existed at all. Developers bundled stuff around, and users were expected to learn how to use software. Books were sold to guide desperate users through simple user flows. Forms forms forms forms everywhere, and they all sucked, no exception. Forget about localization or internationalization. Forget about accessibility. Developers tweaked fonts to be smaller to shove more controls into the same screen real estate, and you either picked up a magnifying glass to read what they said or you just risked it and clicked on it anyway.

Software back then sucked, and sucked hard. Atrocities like Gimp were sold as usability champions. That's how bad things were.

Re:Imaginary Problems Are the Root of Bad Software by aldanor on Sunday June 18, 2023 @01:21PM (#36382250)
Today they might have a psychologist on the team to research which buttons may serve as dopamine triggers so you're a lot more likely to upgrade to Premium before thinking it over
Re:Imaginary Problems Are the Root of Bad Software by pavlov on Sunday June 18, 2023 @01:35PM (#36382369)
Right. Making people click on things they didn’t mean to and buy things they didn’t want — those goals were not even a part of the 1990s UI paradigm.
Re:Imaginary Problems Are the Root of Bad Software by hnlmorg on Sunday June 18, 2023 @02:08PM (#36382693)
1990s design was all about preventing people from accidentally doing actions they might not have wanted to. Even down to the “Are you sure you want to quit” dialogues that were all the rage.

It’s sad just where we are now compared to the design goals of old.

Re:Imaginary Problems Are the Root of Bad Software by ilyt on Sunday June 18, 2023 @01:56PM (#36382593)
Remember times where you could change the theme and all of the apps followed suit ?

Even in Linux there were tools to sync gnome with QT look so you could have one theme applied to every app for nice and consistent look, all the way to how the common icons look.

Nowadays ? Every fucking app gotta have their own different styling. Will the setting icon be three dots, gear, or honey badger ? WHO FUCKING KNOWS. You'd be lucky if you even get a choice between light and dark theme

But hey, we can write same code to work on windows, mac and mobile ! It will work shit in all of them and be slow but we don't care!

Re:Imaginary Problems Are the Root of Bad Software by thwarted on Sunday June 18, 2023 @03:17PM (#36383398)
And it got worse with client side decorations. Now even window interactions are app-specific and don't adhere to global settings.
Re:Imaginary Problems Are the Root of Bad Software by nicoco on Sunday June 18, 2023 @04:05PM (#36383908)
> Even in Linux there were tools to sync gnome with QT look

There are still such tools, you don't have to use the past tense here.

Re:Imaginary Problems Are the Root of Bad Software by pdntspa on Sunday June 18, 2023 @04:11PM (#36383964)
Even better, every app is doing their own styling so they can all look like Discord
Re:Imaginary Problems Are the Root of Bad Software by noisy_boy on Sunday June 18, 2023 @11:20PM (#36386958)
Is it just me or there are others who find discords handling of threads terrible?! I mean Slack is far from my favourite but at least they treat a thread like a thread where I can see the entire conversation in one place instead of visually parsing questions and replies while frantically scrolling up and down.
Re:Imaginary Problems Are the Root of Bad Software by farhanhubble on Sunday June 18, 2023 @11:28PM (#36387004)
Discord and Teams both have terrible UX. Discord has the look and feel of a poorly designed game and Teams can't even get highlight and focus right.
Re:Imaginary Problems Are the Root of Bad Software by mavhc on Monday June 19, 2023 @05:36AM (#36389080)
Threads in Discord appear in the sidebar usually. Are you thinking of replies?
Re:Imaginary Problems Are the Root of Bad Software by noisy_boy on Monday June 19, 2023 @12:36PM (#36393066)
I was thinking more like seeing all the replies to a comment as a thread without the explicit "create thread" which mostly people don't. E.g. I right-click on a comment that has replies and I see the root comment along with the replies in the sidebar.
Re:Imaginary Problems Are the Root of Bad Software by AndrewKemendo on Sunday June 18, 2023 @05:18PM (#36384588)
Oh man I totally forgot about that. Thank you for the reminder.

Total flashbacks to windows 95 and every so often changing the windows color, text font etc. for the entire system

Good times

Re:Imaginary Problems Are the Root of Bad Software by balder1991 on Sunday June 18, 2023 @07:34PM (#36385643)
A lot of native apps on iOS still at least follow the light/dark theme and global font sizes. But I’m not sure if that works by default with Flutter or React Native etc. or if they’d have to implement it explicitly.
Re:Imaginary Problems Are the Root of Bad Software by wheybags on Sunday June 18, 2023 @06:25PM (#36385165)
I remember that theory. I also remember the reality that if you changed your background colour to anything but white, some app, somewhere, was going to become an unreadable black text on black background mess.
Re:Imaginary Problems Are the Root of Bad Software by hnzix on Sunday June 18, 2023 @07:14PM (#36385519)
> Will the setting icon be three dots?

Multiple hamburger menus with a scattering of cryptic icons stuck at arbitrary places on the screen. What does the swirly icon with up arrow do? No text label for you!

Oh and let's move the next button to the top left of the screen and not highlight it. Mmmm that's some good UI design.

Re:Imaginary Problems Are the Root of Bad Software by foobarbecue on Monday June 19, 2023 @01:08AM (#36387500)
Might be a coincidence, but that's a weirdly accurate description of MS Teams.
Re:Imaginary Problems Are the Root of Bad Software by n3storm on Monday June 19, 2023 @01:54AM (#36387739)
Not mentioning about the wording (at least in spanish) is awful too.
Re:Imaginary Problems Are the Root of Bad Software by eitland on Monday June 19, 2023 @07:03AM (#36389630)
It is also a good description of Mac applications last I used Mac back in 2012. Only it wasn't hamburger or three dots but one or two gear icons.
Re:Imaginary Problems Are the Root of Bad Software by sublinear on Monday June 19, 2023 @12:03AM (#36387210)
> Every fucking app gotta have their own different styling

Have you considered that the average user never cared and never will?

Having ultra consistent styling across all apps ruins the ability to... you know... sell the software. It gives far too much power to some group of annoying elitist nerds in denial of their opinions preaching UI/UX pseudoscience.

> But hey, we can write same code to work on windows, mac and mobile ! It will work shit in all of them and be slow but we don't care!

Ain't nobody got time for reading even shittier documentation for badly written OS APIs.

Re:Imaginary Problems Are the Root of Bad Software by rewmie on Monday June 19, 2023 @05:03PM (#36396431)
> Nowadays ? Every fucking app gotta have their own different styling.

This has more to do with the current state of GUI frameworks than with developer mindset. Microsoft is between GUI frameworks and rumoured to have deprecated everything between win32 and WPF, and in the meantime they are pushing React Native. Apple doesn't seem to know what to do with desktop environments and is stuck between their legacy objective C frameworks which they seem to purposely hide any form of documentation and swift-based frameworks which are broken out of the box. Linux has a couple of options which are ugly as sin since ever. There's Qt, but their licensing scares away anyone with two brain cells to rub together.

So where are we left?

Well, with webview-based frameworks, which is the worst of both worlds but at least they don't look half bad.

Except that webview-based frameworks are a far lower-level abstraction than any native widget-based framework. Developers are forced to reinvent the wheel, and this means dropping any standard look-and-feel because that's already ugly to start with but takes even more work to get into a working state.

And all you want to do is to provide a GUI for users to click around.

Re:Imaginary Problems Are the Root of Bad Software by WinLychee on Sunday June 18, 2023 @03:11PM (#36383337)
There's been a large influx of people chasing dollars and status, they could not care less about the product or who uses it. You can still find orgs that do care, but they're swiftly pushed out by the VC-funded "growth at any cost" model or are acquired into oblivion.

The indie scene is looking excellent however, a lot of programmers who have already made their money seem to be pushing excellent hobby projects out.

Re:Imaginary Problems Are the Root of Bad Software by jakubmazanec on Sunday June 18, 2023 @04:56PM (#36384369)
I have another theory: it's all about the screen size. When you had only 320x240—1014x768, you simply MUST have thought about UX (in the sense of "How can I fit all this info in this little space?"

Now you don't have to. So no one does.

Re:Imaginary Problems Are the Root of Bad Software by selcuka on Sunday June 18, 2023 @10:05PM (#36386537)
This is true in a sense, but we now have a different restriction, called a mobile view.
Re:Imaginary Problems Are the Root of Bad Software by SanderNL on Monday June 19, 2023 @01:00AM (#36387463)
That sounds expensive AF though. Was that really necessary?

I’m all for craftsmanship, but having four top guys fiddling with design.. it all depends on the domain I guess.

Re:Imaginary Problems Are the Root of Bad Software by Dalewyn on Monday June 19, 2023 @04:41AM (#36388731)
Considering most of us here are ready to murder a few designers for wasting so much of our time now?

Yes, absolutely necessary cost.

Re:Imaginary Problems Are the Root of Bad Software by Sakos on Monday June 19, 2023 @04:54AM (#36388807)
Uh ... plenty of companies have a UX team. They're mostly all graphic designers. "four guys fiddling with design" is nothing. Either you care about having a well-designed UI or you just want a pretty one with a high conversion rate, and who you hire reflects what you really value.
Re:Imaginary Problems Are the Root of Bad Software by PeterStuer on Monday June 19, 2023 @02:22AM (#36387891)
There is a fundamental difference between working on software products vs bespoke software development:

In the former you make money from selling the result, in the latter you make money from selling the hours spent creating the thing.

If the former is unusable it will lead to bad sales. In the latter it might even lead to additional hours sold in change requests.

The former is bought often after evaluation and comparison by the user of the software. The latter is sold to an executive that will never have to use the software as a project.

Re:Imaginary Problems Are the Root of Bad Software by Sakos on Monday June 19, 2023 @04:32AM (#36388667)
Microsoft basically used to do this too. We can see that they clearly don't anymore.