Language
A few considerations when choosing a language:
- community
- ease-of-use
- type-safety
- reasonable package and build system
Java
Java has all these qualities, more or less. The JVM has been tested for a billion years. IntelliJ is a powerful editor.
Maven is ubiquitous, but tedious. My favorite build system is Bazel, which fortunately supports Maven dependencies:
- https://docs.bazel.build/versions/master/be/workspace.html#maven_jar
- https://github.com/bazelbuild/examples/tree/master/java-maven
Setup
- Install per Bazel docs. Note 4GB RAM recommended.
- Install IntelliJ plugin