What does HackerNews think of akka?
Build highly concurrent, distributed, and resilient message-driven applications on the JVM
Right, because they didn't change it. So what would there be to share anyway? 'Go to https://github.com/akka/akka'?
> but it does mean that at least every user has access to the code to make their "Akka Service" as good as Amazon's.
That code is meaningless. In this scenario we already established that Amazon is selling an unmodified copy of Akka as a Service (which, by the way, we will revisit this point later). And we already established, in your own words, that it's not about the code:
> Their secret sauce is "we have a Borg Cube's worth of datacenters, so we can run the same code as you at a lower price".
So what would the SSPL require, they publish their deployment scripts to their cloud datacentres? Like I said, that's meaningless.
> "Akka Service"
Final point. There's no such thing as an 'Akka Service'. Akka is a bunch of libraries. You link it into your JVM application. You don't run Akka separately, so by definition you can't offer it as a service (even if you're Amazon).
Hence my suggestion of AGPL, and heck let's be generous, let's add a commercial use exception for businesses with less than $20m revenue, similar to what they're doing now with the BSL. Except with my suggestion the software would stay as strong copyleft, most businesses would be happy with the commercial use exception, and a few would have to pay their fair share.
- Akka https://github.com/akka/akka - Lucene https://github.com/apache/lucene-solr - Aeron https://github.com/real-logic/aeron - Retrofit https://github.com/square/retrofit
Not to mention projects like Apache Spark, Cassandra, Elasticsearch, Druid - Java projects. Many projects (Foundation DB, Scylla DB, I could find more) will have in-house support for Java and not .NET.
The .NET equivalents to these libraries tend to be playing catch up. Xamarin Android will always be playing catch-up to Android's Java/Kotlin APIs for Android. Big machine learning projects like PyTorch and TensorFlow tend to give first-class support of some fashion to a Java API (mostly due to Android). Is there a .NET equivalent to Deeplearning4j? Hadoop? Hive? Kakfa?
In Java there is a proliferation of web projects: Spring, Vert.x, Quarkus, Micronaut, Play 2, Spark Java; Netty, Jetty, Apache. In .NET all you ever hear about is Microsoft projects ASP.NET core; Kestrel, IIS.
Working as a .NET dev, when there is an SDK, if it's not from Microsoft, it's clear the .NET SDK is a lower priority for bug fixes and new features compared to e.g. the Java/Python/etc.
- https://github.com/jodal/pykka (Python)
- https://github.com/quantmind/pulsar (Python)
- https://github.com/akka/akka (Java)
- https://github.com/eclipse-vertx/vert.x (Java)
- etc.