It's time to begin on Rust--, which only has the minimum set of types, operators, and functionality to build everything else with without causing ambiguity (looking at you, operator overloading). Like a hardened version of C.
If Rust is to have a good future it's time for them to learn from the Python people. Python has a bunch of wierd stuff; functional programming; comprehension, introspection and so on going on. However the main good thing that they do is being slightly embarrassed about the complexity.
Look at the language disasters - C++, Perl and perhaps even Scala, for example. What lots of them have in common is that they boast about their "sophistication" - it's summarized in the Perl motto "there's more than one way to do it". Compare that with the Python
"There should be one—and preferably only one—obvious way to do it,"
(my emphasis on obvious - this is not about lack of choice - it's about making it easy to decide)
What the fat that there's one obvious way to do it means is that if you select the obvious way then 90% of other people who do the same thing will also do it in the same way you do which means that when something goes wrong you are not alone and normally someone else has already solved your problem and even if they haven't, they are interested in solving the same problem and will work with you to help solve it together.
When you have infinite choice and no obvious correct solution, like in C++ or Perl, you end up with a unique solution that nobody else is using and if you have a problem then you don't get any of the benefits of F/OSS collaboration. That's a disaster.