Monday, November 19, 2012

2012 JAX London series Lambda keynote

This is the first post of a series of quick short posts about the sessions and keynotes of the 2012 Jax London. I hope you find good and practical information.



Keynote 9:30 - 10:15: The Road to Lambda by Brian Goetz (Oracle)

Lambda expressions come to make developers live easier, after years of fighting against the hardware and not going too long, in general, now is coming a new way to develop efficient code for the future "cloudish" hardware. 

No long ago, and I was one of those, some developers where advocating that in order to be a good developer you should have a good knowledge about how the hardware operates. Well, looks like the cloud and new fancy powerful super hardware makes that way a bit hard, so we need to improve our languages in order to allow developers to write good efficient code. 

Its is simple, Lambda come to provide the user with full control on WHAT while the libraries / language features will control HOW. 

The idea here with Lambda project is not only to provide a bunch of good abstraction libraries, but also provide good mechanisms (language features) to allow users to create good libraries at the same time. Better libraries allow better abstractions and easier final results. Here applies all well known ideas like "Don't repeat yourself", "Reinventing the weel", ... . In words of Brain Goetz he said 'Lambda enable better API's'

Specifically speaking, with Lambda comes a new and hopefully easier way for parallel programing. Basically the language will take responsibility about how to compute in parallel, and the developer just needs to express what needs to be computed. Here Brian Goetz provided a good reference to better understand this idea, its the talk 'How to Think about Parallel Programming: Not!' Presented by Guy Steele on Jan 14, 2011

In summary, it was a really good keynote. I am looking forward to start using Lambda expressions as soon as I find a good enough reason to give it a try in any of our projects. I am just starting now with functional programming, so I think it will help to understand those Lambda expressions and the mindset that I need as a developer in order to efficiently use them.

Posted by Marc Andreu.

No comments: