Modular, simple, composable. It's the only way we have found to build fast, correct and maintainable software. Modular means that we build software as a collection of independently useful and reusable parts. We ruthlessly refactor each part to keep it focused on a single purpose, making it simple. We deliver software fast by thinking about composability left right and centre, connecting parts together from whichever direction, like train wagons. Composability lets us express arbitrarily complex behaviours with less code.
Functional, typed, immutable. These are the key technologies for composable software. We build parts as functions, because functions compose where objects do not. We use types to describe functions, because one type is worth a thousand out-of-date comments. We keep data immutable, because immutability lets us focus on the business logic holistically without getting bogged down by hundreds of corner cases.
A journalist by training, managed a media ethics think-tank and agricultural research scholarships. I keep things ticking around here.
PhD (École Polytechnique) formal methods and compiler design. Dreams distributed systems.
Background in market research for new product innovations. MSc in International Business.
PhD (École Polytechnique) in homological algebra and dependent types. Core team of Coq proof assistant. Mathematician and software engineer. Wish Bear.
PhD (Radboud) in Natural Language Processing. Language engineer and data scientist. Occasional wrestler of neural networks.
MSc (Montevideo) in program fusion transformations. Software craftsman and engineer. Maintainer of Cloud Haskell. Dreams of ways to make software correct.
PhD (Saint Petersburg State) theoretical physics. Tying the knot between abstract problems and computer aided solutions. Gentoo developer.
Computer scientist, spare time hacking, few years Haddock maintainer, now distributed systems and production Haskell. I like Agda, nix, Haskell and other cool stuff.
PhD (UPMC Paris 6) medical informatics, knowledge engineering. NLP enthusiast. Cursing the typesystem when coding in Haskell and longing for it when coding in Clojure.
Fond of designing concurrent systems while drinking whisky.
I am a system control engineer. Fast, correct and maintainable code is too important to leave it to software engineers, so I entered the fray.
PhD (Oxford) Geometry and higher category theory. Likes trying to apply n-categories to software problems.
Managing infrastructures with code. And a healthy dose of stubborness.
Distributed systems and compiler design.