Hacker News new | ask | show | jobs
by pcwalton 2311 days ago
> They have obstacles to overcome, and then there is just the glaring fact that they had so much momentum with Win32.

Do you feel the same about the macOS Carbon-Cocoa transition? Nobody misses Carbon anymore, and Win32 is as old as the classic Mac Toolbox.

Eventually they have to shed the old API.

5 comments

Major Win32-only applications like Microsoft Office, SAP and countless in-house applications written over the last 25 years are the reason that many companies use Windows.

Microsoft understands that the Windows API "is so deeply embedded in the source code of many Windows apps that there is a huge switching cost to using a different operating system instead".[1] If they force companies to incur that cost by dropping Win32 support, that gives companies the chance to make their application cross-platform at a much smaller additional cost, and shed their reliance on Windows.

Windows licensing fees are still quite a large chunk of Microsoft's revenues, so I think that they will not make this move any time soon.

1. https://www.zdnet.com/article/microsoft-wed-have-been-dead-a...

Win32 support will be there until Microsoft's desktop operating system is no longer called "Windows."

The comparison between Apple and Microsoft vis-à-vis backward compatibility is illuminating, but not in the way you seem to believe it is.

Cocoa was an improvement though, while UWP is a regression and a massive PITA to work with. Win32 isn't a great API either, and some corners are downright ugly, but when a successor needs more lines of code to get a window on screen but only delivers a small fraction of the features of the old system, something went seriously wrong.
I can't answer your question exactly. I came around only after Cocoa was established.

This does make me wonder if the transition from Carbon to Cocoa is analogous though. Win32 comes off as more of a "functional" approach to programming (C) and UWP is looking more object oriented (as to C++). It makes me wonder what kinds of conceptual advantages are being brought on board by moving from win32 to UWP. I think that conceptually I am in favor of the transition, and I'd wager that all the issues that arise are common to a functional to object-oriented transition.

But that real questions: What are the benefits? Is it conceptually easier to grasp thus promoting more developer interaction? Are we expecting speed benefits (are the performance losses expected and in range?) Is it a false dichotomy to only look at Functional vs OO? Maybe a context-oriented data approach is more appropriate?

Dunno.

Win32 is fast and reliable.
And frozen in a Windows XP vision of the world.
And Wine. Don't forget Wine.