Mutating the Enterprise to FP: Revolution or Evolution?
If you are at this conference, you probably understand the benefits of functional programming and like me, would love to see it more widely adopted. Despite all the advanced topics at this conference, functional programming is not new. Yet, more than 80 years after the introduction of lambda calculus it is still a “niche” skill, practiced rarely in enterprise software development, requested rarely in job adverts, found in few developers, even less in senior developers, and frankly viewed with suspicion and dread amongst engineering managers and CTOs. Why is that, and can we change it?
Three and a half years ago, I was an experienced, productive Senior OO Developer, the master of several mainstream languages, proud of the quality production software written by my team. In fact, I was just the sort of developer least likely to embark on the significant FP learning curve.
But then I was fortunate enough to find myself at REA Group just as some brave pioneers experimented with the company’s first foray into the FP programming paradigm.
Three years later, we can declare their efforts hugely successful, with functional programming fast becoming ubiquitous at REA Group, ever more widely practiced, understood and appreciated. More importantly, this momentum is ensured by the mutation of senior developers such as myself into powerful advocates for FP.
So what were the key ingredients to this success, and how can you replicate it at your organization? How did they manage to mutate us immutable senior developers, and convince managers that the considerable learning investment was justified?
This talk will look at both REA’s journey, and my own personal journey to answer these questions. It wasn’t all plain sailing, and I will identify the key ingredients of this success as well as the obstacles with the strategies that ensured they were conquered.
developers, Technical leads and Architects,programmers, testers, business analysts and product owners,programmers, testers, business analysts and product owners and product owners