Hi there,
I just discovered your repo. You've got interesting stuff there! Congrats!!!
While reading the examples I found two examples for challenge 1 using Java and CompletableFuture
https://github.com/ReactiveMeetupLucerne/AsyncNonBlockingExamplesJVM/blob/master/src/main/java/challenge1/java8/CompletableFutureExample.java
and
https://github.com/ReactiveMeetupLucerne/AsyncNonBlockingExamplesJVM/blob/master/src/main/java/challenge1/java8/GmoCompletableFutureDemo.java
Why do you have two examples? The first one seems a bit non-idomatic regarding collecting the prices in a synchronized method, this smells like "shared mutual state"...
What do you think?
Best regards,
Fred