Saturday, September 13th, 2014
Functional programming. Some see that term and think "functions? You mean procedural programming. I've been doing that for years." Others see it and think "you mean that crazy academic nonsense that no one understands? Pfft!" In truth, functional programming is fundamentally an approach to software development, not a particular language or syntax. With PHP 5.3, it is an approach that is now more readily available and powerful than ever before. Even if you're not writing in Erlang or ML, there is still much to learn from the principles of functional programming to help write better code. This session will discuss the history of functional programming and how it compares to other programming paradigms (procedural and object-oriented). We will then discuss by example how functional concepts and techniques, plus new language capabilities in PHP 5.3 such as anonymous functions, can make our code more robust, maintainable, and bug-free. Even without a truly functional language, there is much we can learn from functional programming as a technique.
Larry Garfield has been building web sites since he was a sophomore in high school, which is longer ago than he'd like to admit. As a freelancer he worked mostly for Chicago-area politicians before graduating to full time consulting with Palantir.net.
At Palantir, Larry is a Senior Architect and Community Lead, developing solutions for medium to large cultural and educational institutions. He also works to represent both Palantir and Drupal in the broader developer community.
Larry is an active Drupal core contributor, including the principle architect of the Drupal 7 database system and the Drupal 8 Web Services Lead. He is also a member of the Advisory Board of the Drupal Association and the Drupal representative to the Framework Interoperability Group. Larry holds a Master’s degree in Computer Science from DePaul University.
Larry is a co-author of "Drupal 7 Module Development" from Packt Publishing. He blogs at both http://www.palantir.net/ and http://www.garfieldtech.com/.