Hacker News new | past | comments | ask | show | jobs | submit login

The Windows desktop is "mostly broken"? That's news to me.



It’s broken insofar as there isn’t a complete and coherent “developer story” for building a Windows desktop application that doesn’t look like it came from the 1990s.

I call it “the Photoshop test”: Pretend you’re Adobe and you just invented Photoshop in 2018. How do you build the GUI for each desktop operating system?

...considering you need to do things like OpenGL hardware acceleration, 30-bit color, support binary plugins, and access certain low-level hardware features (e.g. supporting TWAIN, Pro-level broadcast media devices and interfaces, etc).

On Windows it’s an unfortunate situation because all of the “new” application frameworks since 1998 are unsuitable: WPF is .NET only, UWP requires your application to run in a sandbox, you can’t even use MFC because it’s tightly coupled to User32 with its lack of support for 30-bit color. The only choice is the long hard road of doing almost everything by yourself through low-level interfaces with the DWM. Not pretty.

The sad thing is that UWP is very capable - if it weren’t for the sandboxing then it would be perfect (that, and you would need to build your own widget library as UWP’s stock set is almost entirely touch-first controls that are utterly inappropriate for a mouse-first desktop UI)


Why is the sandboxing such a big issue in the case of a “Photoshop” app? The UWP api seem to cover most OS services that the devs would need, or am I missing something?


UWP with its XAML framework forces you to use Direct3D, there’s no way to use OpenGL efficiently - you also are forced to surrender a lot of control to the OS, for example, all Windows Store games must use Direct3D and were forced to use VSync until very recently. As a developer it means you can’t do anything cutting-edge until after both Microsoft and NVIDIA/AMD say-so and officially support some feature. This is the unfortunate consequence of UWP’s style of API sandboxing (compared to, for example, a hypervisor approach with end-user approved red-pilling). If you were Adobe it would be difficult to maintain your reputation as the leading vendor for desktop graphics and media software if you were artificially constrained by other companies who haven’t demonstrated commitment to supporting novel platforms beyond a couple of release cycles (see: WinJS, WinRT, Windows 8 XAML, etc).


What I meant was, if you look at the state of non-expert users' PCs, they're unusable by power user standards.

There's so much malware, anti-virus that slows down all I/O, browser toolbars, etc. Just open Internet Explorer and see how long it takes. On my computer it takes <1s. On many computers I've used in peoples' homes, small offices, etc. it's more like 10.

Calling that anything but "broken" seems like a misnomer. Look at the 99% of computer users, not the 1% power users/people at companies with good IT groups.


This is an exaggeration, especially on modern Windows. I have a decent anecdotal sample size of average people whose PCs run fine and have no apparent infestations, including someone in their 70s with a laptop running Vista.




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: