It was the next logical step for Russia after they built their own GPS and their alternative to the World Bank, the BRICS bank. Their biggest enemy has proven that they cannot be trusted and they are the ones who invented the Internet. Anytime they have a disagreement with a nation, they take their ball and go home. Like what they were doing with Huawei. I won't be surprised if China and India are working on the same kind of project.
This world needs an alternative to anything built by the USA. That way superpowers will have to go to the negotiation table on an equal footing. We don't want one bully. We need at least 5 bullies.
Of course Russia has had its own version of GPS for decades. Those ICBMs need some way to find their destination. https://en.wikipedia.org/wiki/GLONASS
World Bank has never been important to Russia. You're right the US is dominating financial world right now which most of the world hates and its inevitable for something else to compete.
Really the world bank's role is to be the scapegoat for fiscal misrule as the lender of last resort. They may or may not be "fair" (a subjective standard) and there are legitimate things to disagree with such as assignment of debts from previous regimes but crucially they lack the power to do much. They are judges without ballifs or executioners. They wield no force but saying no to loans and telling others what they think.
If the countries could sustain themselves without credit from them then they have no need to be involved. The worst is essentially snarky comments pointing out that the current management goes against orthodoxy/still hasn't paid them back from 1977. If the country succeeds despite going against their judgement then they just look silly until either the world bank revises their conventional wisdom or they get to say "told ya so!" when the shoe drops.
Austerity may do worse than an open credit pipeline in terms of growth and human impact but there are no guarantees that the creditor wouldn't mess that up as well and solvency is required to function in their role. While nice they literally can't be an infinite credit that never needs paid back fountain.
The way you defeat bullies isn't another bully. Just look at the record of violent revolutions going full circle over and over again. The way you destroy bullies is the same as warrior elites (generic term for nobles, head warriors of tribes, generalismons, generic because it doesn't matter). Make them irrelevant.
Wealthy warrior elites are left with terrible dilemmas with merchants. If they let merchants grow then their position slips (less elite) but the military position stays the same or grows from taxes. If they don't then their holdings become backwards and they weaken, but they retain their hold on power internally. They can try to plunder but that means war and even if successful running out of prey to hunt. Seizing territory spreads them thinner and gives more administrative burden.
Peace is really a terrible weapon of attrition against warrior elites. It forces them to stab themselves with Morton's fork repeatably.
The funny thing is that economic bullies find themselves in the same role, as they either become warrior elite literally (using force for gain) or metaphorically (using their economic clout as a cudgel) vs new challengers who themselves may render them irrelevant if they fail to innovate.
US residents have to compete with prospective students from other countries. Some of those countries rank better than the US when coming to STEM subjects. They end up getting admission ahead of US residents.
Solution is to improve teaching of STEM subjects at primary and high school level. The problem will sort itself. Second option is protectionist in nature. Favour US residents ahead of international students, even when international students are way better. Second option will only drop the quality of PhD graduates coming from those colleges.
It is mostly C# that is keeping Java on their toes. Java competes with C# than any other language in this world. In the enterprise space, it is either Java or C#. If you check most of their improvements, they were done ion C# first, then they follow.
Now that is a good strategy. Copy directly from a language that is moving at a very fast pace and competing directly with the language you want to replace.
Checked Exceptions are the main reason I switched to C#.NET. I hated checked exception. I know the designers wanted to save us from ourselves but they ended up making the language verbose.
Whenever I see an article comparing a market leader with an underdog, I always know that the article will be biased against the market leader. It is human nature to root for the underdog. What was the reason for not starting with variables II? I suspect the author wanted to manipulate our minds right there. It is obvious that Java version is the better of the two but they decided to start with a variable with final. Ternary operator for Kotlin doesn't look like ternary to me. It is just an inline if\else.
Why is variables II better in Java? Its almost the same with advantage on Kotlin side with type inference. Also ternary operator isnt needed in Kotlin since if/else itself can return value, so its just example to show so people dont try to look for it in Kotlin. Overall its not even an article, its just a showcase of differences in syntax and idioms in both languages, i cant fathom how could you be manipulated with that.
Clear and concise to someone new to programming. Also less typing. Comparison of an a market leader to a new entrant is designed to make you switch from market leader to new entrant in the market.
They explain it here[1] on their discussion forum but still it doesn't make sense to me. If is a statement in every language I know and returns a value, but still those languages have ternary operator. I suspect they don't want to end up with a language similar to what we already have. They want to be different. Even when it isn't necessary.
Ternary operator is a C-ism. It's common in C, C++, C#, Java, PHP, Swift, Javascript, ActionScript, and related languages, but not present in most of the rest of the PL world. 'if' is an expression in Lisp, Haskell, ML, Scala, Ada, CoffeeScript, SQL etc. A modified form of the if-statement is an expression in Python 3 and Ruby. Go and Pascal have no related concept.
What's the difference between ternary operator and inline if/else? Is there even any reason for if/else that doesn't return a value (that may be void/unit/similar)?
It is also obvious that Java version of the variable syntax is awful and just asking for unintentional modification.
> What's the difference between ternary operator and inline if/else?
There is no difference. Ternary operator is a syntactic sugar for if/else.
> Is there even any reason for if/else that doesn't return a value (that may be void/unit/similar)?
Main reason why an if statement returns a value is because it is used to test if condition is true or false. If it returns other values, it was going to make it more complicated. Especially when you have an if statement with multiple conditions that must be ORed or ANDed.
What is awful about the variable syntax? This syntax was copied directly from C language.
> Main reason why an if statement returns a value is because it is used to test if condition is true or false.
Uh, no. The condition itself is true or false. The return value is useful for assigning, passing as parameter, etc. Non-returning if requires dealing with temporary variable, which itself is verbose, doesn't automatically get assigned in both branches, doesn't play nice with C++-style move semantics, etc.
> What is awful about the variable syntax? This syntax was copied directly from C language.
C language is awful, but at least they have the excuse that nobody knew better in the 70s and const kind of works even the syntax is a bit complicated.
> making our amazing designer create a Shopify site that he/she can manage him/herself
This statement sounds like your co-founder is just getting rid of you because he realised a designer can do better than you and won't need shares of the company. You validated the market for him and he doesn't need you. This is the reason I always tell idea guys to pay me or go and learn programming themselves and implement their ideas.
Maybe they are saying it is much easier to enter the country? I will give an example with my own country -> South Africa. We have more white people than all other Africa countries combined. We have more Chinese people than all other African countries combined. We have more Indians than all other African countries combined. I won't even be surprised if we have more Indians than US percentage-wise. That sounds like a country that is more open to the rest of the world according to me.
However, there are nationalists who aren't welcoming if you are from a poor African country. They only welcome other races expect their own race -> African. It is mostly poor African people who think other Africans are coming to take their jobs. Good thing is that they don't have government support. Unlike in the US where it is the head of state telling people not to come to their country.
I suspect we even make our border to be porous just to allow other people to freely enter the country.
Even though South Africa has 11 official languages, English is the most official language in South Africa. When speeches are delivered by public officials, they are 99% in English. All official documents have English in it. Even the government official website is in English [1]. It is the only compulsory language at school. All private and urban schools teach English as a first language, then other languages as additional languages. Parents this side make sure their kids can speak English before they speak their own indigenous languages. Not mine though.
For that to happen, functional languages have to take over. Most people are just not into functional programming languages. They prefer imperative programming languages. I feel Microsoft is doing a great job of slowly forcing C#.NET Developers to learn F#. It was so easy for me to learn F#. It was so strange that I was able to understand a functional programming language. I didn't have luck learning other functional languages.
I have been programming in C# for 13 years now. Majority of new features are just syntactic sugar. Code I wrote in 2009 is still running even in 2019. I don't rewrite my applications in a newer version each time there is a new release of .NET Framework. I only use the latest language features on new projects. Problem starts when I am in a support and maintenance job because I quickly fall behind. When I go for interviews, I get asked questions about new features of the language, which I feel is unfair.
I feel sorry for new Developers because I learnt those features bit-by-bit over the years and they are expected to learn them at a go. It is also hard to understand why a syntatic was introduced when you never used the way it used to be done.
Visual Studio itself also does that (I forget when it was introduced; a few versions back I think?). I haven't used Resharper in a long time, so I'm not sure how it compares now, though.
This world needs an alternative to anything built by the USA. That way superpowers will have to go to the negotiation table on an equal footing. We don't want one bully. We need at least 5 bullies.