Learning Functional Programming Through Construction with Cameron Presley



Sponsored by Beacon Hill Staffing Group

You may want to join and install Microsoft Teams for free when possible.

5:30pm - Open for Remote Connections

Short Link to MS Teams: https://bit.ly/3cGfCUn

6:00pm - Announcements, Sponsor Give-Away

6:10pm - Lightning Talk

What every developer needs to know about Lean & Agile with Clint Edmonson

6:30pm - Main Talk

Learning Functional Programming Through Construction with Cameron Presley

In the past five years, functional programming has increased dramatically in popularity which has lead to an explosion of resources in learning these concepts. But, between languages (Haskell, Elm, PureScript, F#), libraries (Ramda, fp-ts), and concepts (Monads, Monoids, Functors), it can be overwhelming in determining where to start and how to begin.

In this talk, I'm going to show you three fundamental concepts of functional programming: pure functions, immutability, and composition by not only explanation but we will walk through building these concepts into your code and applications. As we explore each concept, I'll show you the advantages of following these principles, how they will improve your development experience, and how they will set the stage for more advanced ideas.

Intended for those who have experience with TypeScript or C#, by the end of this presentation, you will understand how pure functions lead to easier to test code, how immutability makes debugging easier, and how the power of compositions allows us to build bigger applications by combining smaller applications.

Cameron Presley is a Lead Software Engineer for SentryOne (https://www.sentryone.com), a speaker, a Microsoft MVP, Director of Speaker Relations for CodeStock (@CodeStock) and co-organizer of FunctionalKnox (@FunctionalKnox).

Based out of Charlotte, North Carolina, Cameron has ten years of experience working with start-ups and large enterprises both publicly and privately held to architect solutions, implement solutions, and training developers to be better today than what they were yesterday!