Programming concurrency has turned into a herculean task. I call the traditional approach the synchronized and suffer model. Fortunately, there are other approaches to concurrency, and you can reach out to those directly from your Java code. In this presentation, we will discuss the actor based concurrency, and also the software transaction memory. We will then develop examples using AKKA, and compare the power of these approaches in contrast to the traditional approach.