This is a little experiment I made playing around with Spark (http://sparkjava.com).
The theory is: would it be possible to develop a Java-based application server that is fun and easy to maintain, and also fun and easy to use? For now, I think the answer is a clear and resoundable "yes!". Here are my conclusions thus far:
- Java is very different from what it used to be (not really as bad as I wrote about in this blog post; I think I'll need to revisit that in a while since it's a bit too negative to Java given how the language is actually evolving nowadays). Things are changing to the better with Java 8 and 9:
- Lambdas/closures. Very nice; we've had it for years in other languages but it's good that we're also seeing it in Java now.
- Visual Studio Code has great Java support, thanks to our friends at Red Hat. As many of us know, VSCode is a great editor for programmers; a lot nicer and easier to get started with than Netbeans, Eclipse etc. With a good editor, the pain of using a language like Java definitely decreases.
You can even write the dynamic part in TypeScript instead of Java, to get a totally awesome editing experience (as long as you prepare
.d.ts files for the non-TypeScript parts); this, to me, seems like the optimal approach.