ABSTRACT: Functional Concepts in Java
Functional programming has started (re)gaining prominence in recent years, and with good reason too. Functional programs lend an elegant solution to the concurrency problem, result in more modular systems, are more concise and are easier to test. While modern languages like Scala and Clojure have embraced the functional style whole-heartedly, Java has lagged a bit behind in its treatment of functions as first-class citizens. With the advent of Java 8 and its support for lambdas, however, Java programmers can finally start reaping the power of functional programs as well. Even without Java 8, it is possible to adopt a functional style with the aid of excellent libraries such as Guava.
This talk will explore how to apply functional concepts using the Java programming language and demonstrate how it can result in simpler, more elegant designs.
SPEAKER BIO: Prem Chandrasekaran
Premanand (Prem) Chandrasekaran serves the role of a Technical Principal at ThoughtWorks. Over the last decade and a half, Prem has worked on a variety of software projects, spanning varied functional and technical domains. He is passionate about the application of iterative methods to deliver software that enriches the lives of its end users and its maintainers alike.
His most recent assignment entailed architecting and leading the development of a large and complex mobile platform on Android. He is passionate about technical architecture, refactoring and performance tuning among others.
When not fiddling with his trusty laptop, he spends time with his son ripping beyblades and playing video games. He is also obsessed with playing and analyzing the nuances of the game of cricket.
Jorge Lee (co-presented)
Jorge Lee is a software craftsman and serves as a Senior Consultant at ThoughtWorks. He started to code in high school and he has been following this passion professionally over the past decade, where he has been exposed to a variety of platforms and technologies. All those experiences made him a full stack developer who is always eager to learn and do the best with the tools available. He joined ThoughtWorks not so long ago to work with and learn from some of best developers in our industry.