In our business where everything is evolving so fast, its interesting to see that most use a keyboard today that was created not because they where great to type on, but because type writers looked like that....
Scala.JS is an alternative if you write Scala, a compile target for the browser (or Node of course) that also can use most Typescript libraries via the Scalablytyped plugin
Bitcoin holders don’t want Bitcoin to be useful for spending or transacting, or even selling. Previous attempts to increase the block size, a trivial modification, have failed to gain traction.
They only want Bitcoin useful for two things: Buying and holding. These actions drive the price up. As long as no one is using or selling Bitcoin, the price stays high.
Between the high transaction fees ($8 right now), the deflationary nature, and the “HODL” narrative, everything about Bitcoin was designed to disincentivize actually using it. It’s designed for hoarding and speculating.
A Kickstarter is not the same thing as ordering it on Amazon, this is a highly complex project that takes a lot of choreography to get right, even if they shipped units before.
That stability comes with a huge cost, for example, Value types, desperately needed, has been going on FOREVER (7 years and counting) with no end in sight ..
If you've been following the development progress, they've gotten the VM side largely ironed out and under testing. Nothing on the language side has been polished yet though.
As an honest estimate, I'd give about 2-4 more years. But it's definitely further along than I thought it would be.
Value types and Loom (lightweight threads) are two things that will shape Java in profound ways for years to come.
2-4 years for value types seems quite long but the changes to the spec to accommodate value type is much more broader in scope so that’s understandable.
If it’s an OS thread, then that won’t scale and defeats the point of using Loom (though it does still reduce the overall system load).
If it’s a Loom-thread then doing `.join()` is the same thing as doing an `await` - in which case it’s silly to not just have a `.dontJoinJustYet()` method that’s available for every Loom promise.
You pick the thread implementation, but clearly a virtual thread would be more appropriate. And yes, join is semantically the same as await, but it fits with the design of the platform. And also yes, there are convenience methods for spawning threads and joining them, such as ExecutorService.invokeAll/invokeAny.
I don't know. Those who genuinely enjoy reactive frameworks will still be able to use them, but those that don't won't need to to get similar scalability benefits.
Atlas is a fully managed instance. Whats being referenced to here is running your own Cassandra cluster, which is by all accounts, heck of a lot harder than running a Postgres instance.
I never noticed this, but after thinking about it for a few minutes it seems that in standard usage there is a difference between attributive adjectives and predicative adjectives.
As an attributive adjective, "foot" is indeed correct, e.g. "a 130 foot yacht."
As a predicative adjective, "feet" is correct, e.g. "the yacht was 130 feet long."
Occasionally, in certain regional variations, you may hear "foot" used in the second case: "the yacht was 130 foot long."