Did really well, unfortunately.

There is almost no dog fooding on Windows development since version 8, Typescript team rather rewrite the compiler in Go, Azure has plenty of Go, Rust and Java projects alongside .NET.

Microsoft does use Go/Rest/Java in places but they still have a ton of .Net.

Windows Development is not "We are not dogfooding", it's that incentives are misaligned with customer wants.

.Net team incentives are aligned with customer wants, provide a language that is highly performant and easy enough to write.

Oh, they really don't dogfood Windows development any longer, regardless of the incentives.

I have my WinRT 8, UAP 8.1, UWP 10, Project Reunion, .NET Native, C++/CX, C++/WinRT, XAML Islands, XAML Direct, WinUI 2.0, WinUi 3.0, WinAppSDK and what not scars to prove how they aren't dog fooding any piece of it in any meaningful manner.

Heck they keep talking about C++ support in WinUI 3, as if the team hasn't left the project and is now playing with Rust instead.

They managed that plenty of early WinRT advocates became their hardest critics, while not believing anything else they put out, like now this Windows K2 project.

Well, .NET is just not in the same class as Go and Rust.

Go is, essentially, nearly perfect at what it does - even if the language itself leaves much to be desired and would ideally be much safer.

Microsoft should up their game. They have a few research languages in development.

They've always been great with languages. Hopefully, they rise to the occassion.

The only thing Go has going for it was getting lucky with Docker and co, and UNIX/Plan 9/Inferno pedigree.

Now we're stuck with it in anything CNCF related.

I like my programming language flame wars just as much as the next guy but Go is a really easy language to get started with, while also being very fast. It's not just luck

> The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.

-- Rob Pike

Any reference to the biggest issues with Go in your opinion, and what are you comparing it to?

Basically complete disregard for the history of programming languages and learnt lessons.

Go fits well close to Oberon released in 1987, or Limbo in 1995, when exceptions and generics were still esoteric features.

Instead they had to reach out to Phil Wadler to help them, as he did previously with Java almost a decade earlier, panic/recover is clunky way to do exceptions, instead of doing enumerations like Pascal in 1976, it needs a a iota/const code pattern, hardcoded urls for source repos, if err all over the place like last century programming, many errors are plain strings, ah and nil interfaces what a great gotcha.

Thanks!

What? If you are talking web development, .Net is just about the same as Go. It's 100% Java OOP type writing but result is same, very performant API server.

Sure, Rust is completely different beast with different target system.

Java 1.5 kind of thing, with plenty error handling boilerplate, errors as strings, and SCM urls straight in the code...