Christin Gorman is currently working for a software consultancy called Kodemaker. She has been writing software for a living for over 15 years, the last 10 years she has focused mainly on java and mostly backend. From startups to large enterprises, maintenance to greenfield, she has experienced a lot of different ways of working and writing code. What works in one area absolutely does not in another. Given her diverse experience, she loves to challenge and make people question their beliefs and ways of working with code.
Async and non-blocking are the concepts du jour when it comes to concurrency on the JVM. If you want to go web scale, if you want to maximize concurrent performance, you just cannot afford to block.
But why? Blocking is not a problem in Erlang. Nor is it a problem in Go. How come we can't block on the JVM? And how does a non blocking request for data from a remote service actually work? I'll illustrate the whys, whens and hows with some simple code examples in plain java. Then I'll show you some practical examples of how to solve common programming problems in non-blocking frameworks like Vertx.io, Akka and Quasar.
Is the future non-blocking, or should we all start learning Erlang? Come find out!