Rust is more questionable, after all they haven't reached 1.0 yet. But I'm cheering for them -- IMO, they're the more interesting language and I like the choices they made.
Go puts programmer productivity on top, thus fast compilation, "zero-thinking" memory management (thus global GC). They want the best from both fast but hard C++ and elegant but slow Python.
Rust aims at low level, close to hardware, as fast as possible programs, thus fine tuning for memory management (arenas, isolated GCs, choice between GC and non-gc allocation), thus disallowance of implicit copying even at cost of making language a bit harder etc. They want to fix memory unsafety and bad concurrency problems of C and C++ while keeping all the perks which are the reasons why those languages are still used for new software.
I imagine the choice will be like between C++11 and Java today: one's a bit faster and less memory greedy, the other's a bit easier, and each will have niches where the other is strongly unwanted.
I personally am very interested in Go and I think it's a great choice for all my future projects.
Will Go become popular after 5 years? I honestly don't know, but I think it's a great tool and I want to use it. And honestly, I'd be weary of a language/platform if its popularity was based primarily on hype (for example, node.js) rather than usefulness.
Also, there's no reason that only one of Rust or Go can become popular. They could both become popular, just like Ruby and Python are both popular these days.
http://stackoverflow.com/questions/9339560/erlang-versus-go-...
Which is why I don't doubt that there'll be quite a few people using Rust and/or Go. But I'm really not sure whether either of them will move beyond this tier into the PHP/Python/Ruby territory. A framework like Ruby would certanly help, and that can come out of nowhere. But I wonder whether the day of killer-feature frameworks aren't numbered, i.e. whether something like this can happen again.
So I think in the end it comes down to which of the two will do better in the Haskell/Ocaml/Erlang tier. Go has some rabid fanboys and quite a decent designer pedigree, good libraries and a bit of a headstart, whereas Mozilla is ripe with dumped applications and failed projects. So unless they're rewriting major parts of their infrastructure with Rust and actually release stuff, I'd bet on Go.
Mozzila giving out broken products? - well, dont you use firefox?
There actually might be more renewed interest in C++ (in its current C++11 reincarnation) than actually new interest in Go/Rust. (Chances of someone reviving Modula-3 or creating a killer framework for Ada will remain low)
Sure, you don't have the legacy libraries and architectural styles of C++ in Rust/Go, but that's a pretty moot point if we're talking about new projects. Go wild with generics, lambdas, concurrency, type inference etc..
http://shootout.alioth.debian.org/u64q/which-programming-lan...