> There was a time when people would get excited about choosing Go for a new project, regardless of it being a CLI tool, a Web application, or some system-level infrastructure. Looks like all three are getting well-covered by Rust these days. On the other hand, good old stacks like Java and .NET are not sleeping either, and improving all the time.<p>YMMV, obviously, but in companies within my personal bubble Go is still the go-to (heh) tool for creating both CLI tools and all kinds of API services. These kinds of choices, in my experience, mostly boil down to what kind of personnel a company has at the time, as well as personal preferences of the tech leads. And while some of them do appreciate Rust, finding good Rust devs still seems harder than good Go devs.<p>> Will people be as excited in building new applications with it, or will it niche itself into "that cloud and microservice thing" made by Google that we have to maintain, because a few large projects decided to use it a decade ago?<p>I love Go, and has been working with it for about ten years now, but I don't think it was ever an “exciting” language, once you remove the initial hype. Go has always been reductive and boring, and that has always been its greatest strength (and, in the eyes of many, its greatest weakness). You've mentioned Java and .NET, and I feel like Go has almost entered that company of languages. Boring technology, with good tooling and lots of libraries, supported by large corporations, that can deliver results within predictable time scales.<p>So if I had to predict the future of Go based on the current trends, I'd say it's almost definitely “more of the same”, which is, in a way, the “bright future” for the language. The tooling is going to be improved. The type system is going to get improvements too, but very slowly (my personal prediction is that we'll get sum types around 1.22–1.24; long overdue, imo). The stdlib is going to be expanded to accommodate these changes. Nothing exciting, but that's how a lot of people want it.