James Sinclair

The algebraic structure of functions, illustrated using React components

James Sinclair Senior Software Engineer Atlassian

James (@jrsinclair) is a Senior Software Engineer with Atlassian. He works with JavaScript (in various flavours) on both the front and back-end. He's passionate about functional programming, and good software-engineering practice in general. Over the years he's worked on web projects for Ford Motor Company, Bendigo Bank, The Australian Broadcasting Corporation, Monash University, and the Prime Minister of Australia. Somewhere along the way, he picked up a PhD in Information Architecture, but decided building stuff on the web was more fun than being an academic.

The algebraic structure of functions, illustrated using React components

Did you know there’s an algebraic structure for functions? Apparently, functions can be monads. And that means they’re also applicative functors, and covariant functors. Not only that, but they also happen to be profunctors too… All of which may sound like a load of gobbledygook. And that’s OK. But since React components happen to be functions, we can apply some of these mathematical tricks to manipulate them in interesting ways. And it may even change the way you think about functions in the process.

Don't miss your chance to see James Sinclair and many other inspiring speakers at Summit.

Tickets start at $1395.

Register Now

A conference for the whole digital team

Register Now

Code of Conduct

For over a decade, we've worked hard to create inclusive, fun, inspring and safe events for the Web Industry.

As part of our commitment to these values, we've adopted a code of conduct for all involved: ourselves, our speakers, our partners and our audience.

If you have any concern or feedback, please don't hesitate to contact us.