Everyone is talking about how Project Loom will make concurrency child’s play. Instead of reactive or asynchronous systems, we make a gazillion virtual threads. This should be simpler, but it also has dangers. For example, what happens if one task takes longer than expected? Or if it blocks forever? How can we force a task to stop? Has Project Loom made the ordinary ConcurrentHashMap slower? In this talk, we will show a brief introduction to Project Loom. We then look at how we can prepare our code bases so that the migration to Loom is easier. We show how long-running tasks impact the liveness of our system. We look at what type of code we will need to refactor so that it is ready when Loom lands.