Nilanjan Raychaudhuri
Author of "Scala in Action"
Nilanjan Raychaudhuri currently works for Livingsocial. Previously, Nilanjan worked for Pillar technology and Thoughtworks. He has managed and developed software solutions for more than 12 years and specializes in integrated multi-tiered web and server applications.
Nilanjan believes in high-discipline agile methodologies, customer focus, simple tools applied elegantly, and continuous improvement. Since he enjoys creating things and solving problems, Nilanjan also write software on my pastime. Currently he is working on scala-webmachine (restful resource framework). In past Nilanjan worked on other open source projects like Panopticode, scala-inline, autotest4j and many open source libraries. Currently, Nilanjan is writing a book on Scala programming language called “Scala in Action” for Manning publication.
Presentations
Akka: A framework to build Scalable, Concurrent and Fault Tolerance applications in Scala and Java
In this presentation I will introduce an open source tool called Akka. This tool is written in Scala and provides the right abstract level we need to write fault tolerant and scalable application both in Scala and Java. Akka framework comes with three different approaches that we could use to build concurrent applications: Actors, STM (Software Transaction Memory) and Agent. I will discuss each of these approaches with code examples so that audience could see how these approaches works and some of its use cases.
Akka is the only framework that I think is able to provide the right set of tools that we need to build correctly a scalable and concurrent application. And knowing Akka will help audience to select the right abstraction when they build their next concurrent application.
Having fun building web application with Play
The Play 2.0 web framework bundles all these features in a nice developer friendly framework where you can actually have fun building web applications again.
In this presentation I will show audience how easy it is to build scalable web applications in Play using Scala and Java in matter of minutes without any hassle. And then take a dive to understand various components of playframework and why playframework is such a powerful tool for building scalable web applications. At the end of the presentation it will be clear using playframework you can build web applications for fun and profit. And combination of Play and Scala meets the demand we have from our web applications these days.
Scala Koans - A new and fun way to learn a Scala programming language
Have you looked into Scala? Scala is a new object-functional JVM language. It is statically typed and type inferred. It is multi-paradigm and supports both object oriented and functional programming. And it happens to be my favorite programming language.
If you are interested in Scala, how you are planning to learn Scala? You probably are going to pick up a book or two and follow through some examples. And hopefully some point down the line you will learn the language, its syntax and if you get excited enough maybe build large applications using it. But what if I tell you that there is a better path to enlightenment in order to learn Scala?
Scala Koans, a set of test cases that will teach you Scala language. The Scala koans will help the audience learn the language, syntax and the structure of the language through test cases. It will also teach the functional programming and object oriented features of the language. Since learning is guided by failing tests it allows developers to think and play with the language while they are learning.
Solving integration problems with Apache Camel
Enterprise integration is a hard problem. Not only you have deal with multiple applications build using various programming languages and deployed in various platforms, they also speak different protocols. In this presentation we will introduce you to an open source tool integration framework called Apache Camel. This tool implements all the well know integration patterns from "Enterprise Integration Patterns" book by Gregor Hohpe and Bobby Woolf and provides you with a nice DSL to integration heterogeneous systems.
Here is the outline of the presentation
- What is Camel?
- Talk about enterprise integration patterns
- Camel under the hood
- Code example integrating 2-3 applications using Camel
- Synchronous vs Asynchronous application
- Designing application based on message passing using Camel
Programming Concurrency with Akka
I call the JDK concurrency API as the synchronize and suffer model. Fortunately, you don't have to endure that today. You have some nice options, brought to prominence on the JVM by Scala and Clojure.
In this workshop, learn how to program with Actors and STM using Akka, a powerful and popular library created using Scala but usable from any language on the JVM. You have a choice to pick the language you like in this workshop, and learn how to use these powerful concurrency models.



