Hacker News new | ask | show | jobs
by pjmlp 1435 days ago
Or companies like Microsoft finally come out with a C++ Builder alternative (C++/CX), and a couple of WinDevs starts a mutiny, brings back the C++ developers experience 20 years back to their beloved VC++ 6.0 COM development tooling, paying customers be dammed.
2 comments

Microsoft are damned if they do and damned if they don't. One could just as well criticize C++/CX for being a proprietary language extension that only works with their proprietary compiler, and for not following C++'s zero overhead principle. A major selling point of C++/WinRT is that it's just standard C++. And like I've said before, thanks to modern C++, C++/WinRT is far better than libraries like ATL that were available for VC++ 6.0.

By developing and using C++/WinRT, the Windows developers are prioritizing what's best for their systems programming work, as they should. Convenient tooling for rapid application development is the job of IDE developers, like the Visual Studio team. I think one of the mistakes of Windows 8 and Windows 10 was that the Windows team tried to directly provide conveniences for high-level application developers, built into the platform. I'm glad they've backed away from that. I know VS already has some tooling for C++/WinRT. Maybe they just need to do more work on that. Personally (as someone who no longer works in the Windows org, or at Microsoft at all), I'm glad I can use C++/WinRT, which is just standard C++, with any build system I want, and presumably even with clang rather than VC.

I understand that for C++/WinRT movement, critics of paying customers left out in the cold are a bit harsh.

Well next time do a proper job, given that even ATL has better Visual Studio tooling.

The non standard extensions excuse apparently is only an issue for Microsoft compilers, as you are enjoying those clang extensions without problems.

The way management has dealt with WinRT ecosystem, it turned many of us that were hard advocates, into disgruntled developers that only wants it to implode as if it never happened.

In what concerns WinRT, "Developers, Developers, Developers" is long gone.

I'd be interested to learn more about this story.
Typing on the phone.

Short version story, a group of WinDev folks weren't happy with C++/CX and its C++/CLI extensions.

So they brought in Kenny Kerr, which was trying to create a C++ library without those extensions.

Out of that effort, C++/WinRT was born, they deprecated C++/CX (5 years ago) and told Microsoft customers to suck it up and wait for the day C++ gets reflection, because they couldn't otherwise provide the same level of tooling for C++/WinRT, as C++/CX enjoys on Visual Studio.

Nowadays they are having fun with Rust/WinRT, while every customer that has to deal with C++/WinRT enjoys editing IDL files without any VS tooling, and merging the generated C++ code manually, after every IDL change.

To the point of that even MFC has better tooling for dealing with COM.

A tiny group inside Microsoft is now happy, while all customers deal with the mess they left behind.

Thanks for typing this out. Wild.