30.9.12
Three remarkable films
This week I saw three films at the Take One Action film festival. Studies that are deeply personal and political, all three are relevant, riveting, and remarkable,
This is Not a Film:Jafar Panahi, an Iranian filmmaker, is under house arrest and under court order not to act or direct. So without acting or directing, he documents his life, claiming that the result is not a film to comply with his court order. This film, the result, was smuggled into Cannes in a cake.
1/2 Revolution: the story of the Tahrir Square in Cairo and the ouster of Mubarak, from the point of view of five friends of mixed Arabic and European heritage.
5 Broken Cameras: Emad Burnat buys a camera to video his newborn fourth son, then feels compelled to document the struggle of his village Bil'in, to oppose the barrier erected by the Israeli's that cuts them off from the land they use for the livelihood. His camera is destroyed by a bullet from an Israeli soldier's gun, so he buys another, and the story continues through protests, arrests, deaths, and five broken cameras. Emad himself attended the screening, and after the events of the film I was moved to see him present, now with a head of greying hair, still devoted to non-violence. The audience welcomed him with something I rarely see among stoic Scots, a standing ovation.
Clay Shirky: How the Internet will (one day) transform government
28.9.12
Brian Goetz on the future of Java
Brian Goetz, author of Java Concurrency in Practice, is leading Project Lambda, Oracle's effort to add lambda expressions to Java. Below is an excerpt from comments he posted last year on the design.
Oracle's position is that Java must evolve -- carefully, of course -- in order to remain competitive. This is, of course, a difficult balancing act. It is my belief that the best direction for evolving Java is to encourage a more functional style of programming. The role of Lambda is primarily to support the development and consumption of more functional-like libraries; I've offered examples such as filter-map-reduce to illustrate this direction. There is plenty of evidence in the ecosystem to support the hypothesis that, if given the tools to do so easily, object-oriented programmers are ready to embrace functional techniques (such as immutability) and work them into an object-oriented view of the world, and will write better, less error-prone code as a result. Simply put, we believe the best thing we can do for Java developers is to give them a gentle push towards a more functional style of programming. We're not going to turn Java into Haskell, nor even into Scala. But the direction is clear.Thanks to Maurice Naftalin for pointing me to these comments, in response to some questions I raised regarding his FAQ.
27.9.12
Lambda for Java: the FAQ
Java 8 will, at long last, contain lambda expressions. Maurice Naftalin, my co-author on Java Generics and Collections, has started a Lambda FAQ. Have a look, your comments may feed into the 2nd edition of JGaC.