Talks

Pursuing the Strong, Not So Silent Type: A Haskell Story

In recent months Katie’s Facebook team has completely replaced an in-house interpreted language, moving to a strong and statically typed Haskell DSL called Haxl. Dozens of Facebook developers have become functional programmers, using the open-source Haxl framework to battle spam at scale. This talk will explain how Haskell shines in this context, bust a few myths about the language, and highlight lessons Rubyists and Haskellers could learn from each other.

Event: RubyConf Australia, February 2016

Slides: SlideShare

Video: Eventer

Haskell is Not For Production and Other Tales (keynote)

Some say it was written exclusively for Unix-bearded wizards with PhDs. Some say only 10x programmers and unicorns can decipher its many operators. Some say any coding problem it touches will be saved from callback hell and find everlasting peace. The Haskell programming language has long been the subject of myths and misconceptions. Nonetheless it has been adopted by a slew of companies big and small, including Facebook, which has a large Haskell deployment and dozens of engineers using the language.

In this keynote, Katie will explore some of the pervasive stereotypes about the poster child of statically typed functional programming and compare and contrast them with her experiences working as a Haskell developer on the open-source Haxl project, which is used to fight spam at Facebook. As the former journalist investigates which stories stack up, she’ll share insights on what functional programming and Haskell have to offer, the challenges that come with their use, and where the ecosystem could be improved.

Event: Linux.conf.au Functional Programming MiniConf, February 2016

Slides: SlideShare

Video: YouTube; WebM

Connecting Containers: Building a PaaS with Docker and Kubernetes

Learn how Red Hat is using Docker and Google’s Kubernetes project to redefine modern application platform services. New container-centric tools for managing resources in the cloud have helped to establish new best practices, prompting a redesign of Red Hat’s open source OpenShift Platform as a Service. This talk will give an overview of Docker, Kubernetes and the container-focused Atomic OS, and explain how these open source building blocks have been used to create the next generation OpenShift V3 PaaS.

Event: Linux.conf.au, January 2015

Slides: http://containers.codemiller.com

Video: YouTube

Welcome to the Fold

Reduce, accumulate, compress or fold – whatever you call it, this higher-order function family is a set of power tools every programmer should have in their arsenal. However, it can take some time and effort to master them. This presentation will step you through what you need to know to use fold effectively as a JavaScript programmer, and shed some light on how it shines in other contexts.

Event: Web Directions South, October 2014

Slides: http://fold.codemiller.com

Cloud Craft for Spatial Cadets

All over the web people are doing amazing things with spatial; this session will give you the necessary know-how to get started with your own cloud-based mapping app project. The talk will cover the basics of Platform as a Service and introduce the open source OpenShift PaaS. There will be a demonstration of how to fire up an auto-scaling spatial app with PHP/Python and MongoDB on OpenShift. We will then hit the app with some load to experiment with the scaling spatial goodness.

Events: Open Source Developers’ Conference, November 2014; Kiwi PyCon, September 2014; New Zealand PHP Conference, August 2014

Slides: http://cadets.codemiller.com (OSDC); http://cloudcraft.codemiller.com (Kiwi PyCon); http://spatial.codemiller.com (NZ PHP Conf)

Video: YouTube (OSDC); YouTube (Kiwi PyCon)

Coder Decoder: Functional Programmer Lingo Explained, with Pictures

For the uninitiated, a conversation with functional programmers can feel like ground zero of a jargon explosion. This talk will help you to defend against the blah-blah blast by demystifying several terms commonly used by FP fans with bite-sized Haskell examples and friendly pictures. The presentation will also offer a glimpse of how some of these concepts can be applied in a simple Haskell web application. Expect appearances by Curry, Lens, and the infamous M-word, among others.

Events: Strange Loop, September 2014; WDCNZ, July 2014; OSCON, July 2014

Slides: http://decoder.codemiller.com

Video: YouTube (Strange Loop); Vimeo (WDCNZ)

Composing a Functional Community (keynote)

We know the wonderful benefits of functional programming, but when it comes to sharing the lambda love we often do a poor job. In this presentation, Katie will draw on her experiences as a journalist, workshop instructor, functional programming student and women’s group founder to take you back to that time before you knew what jargon such as monad meant, and offer ideas and inspiration for helping people of all kinds and categories along the path to FP enlightenment. Be warned, content may challenge the status quo and your mind: be prepared for code in an unfamiliar syntax.

Event: Erlang User Conference, June 2014

Slides: http://community.codemiller.com

Video: Vimeo; YouTube

Make Haste: Fast Track To Functional Thinking

It has often been said that Haskell is a fantastic playground for learning functional programming concepts that can then be applied in other arenas. This is true, but it does not mean the purely functional language cannot be used for practical tasks. For example, you can create web applications in Haskell; this presentation will explain how. It will step through a simple web app running in the cloud that has been coded entirely with Haskell – this includes the server-side code, the HTML and CSS, and yes, even the JavaScript, which will be generated with the Haste compiler. Katie will discuss the merits of this approach and what JavaScript programmers can learn from Haskell.

Event: CampJS III, May 2014

Slides: http://haste.codemiller.com

Video: YouTube

Lambda Lessons

In order to expand the functional programming community we must be able to effectively educate people about our craft; this presentation will offer some ideas for doing so. Possible teaching languages and approaches will be discussed generally before two experience reports are presented from FP workshops run this year: the NICTA Lambda Ladies Brisbane event and the Functional Programming in the Cloud session at Codemania New Zealand. The talk will touch on the use of cloud technologies for education and include a demonstration of creating a simple Haskell web application in the cloud.

Event: YOW! Lambda Jam Conference, May 2014

Slides: http://lessons.codemiller.com

Video: YouTube

Programming Elixir: The Magic of Today’s Tonic

Elixir is a new arrival on the programming language scene but many of the features that have its devotees raving are actually old favourites for functional fans. Pragmatic Programmer Dave Thomas has lauded the open-source language as a means of demonstrating functional programming concepts without being overly academic. The eye-catching language, influenced by Clojure and Ruby, supports meta-programming with macros and takes advantage of the battle-hardened Erlang ecosystem to simplify the creation of concurrent, distributed applications – all with functional flair. This presentation will examine the spellbinding elements of Elixir, the origins of these ingredients, and where developers can find and use them for their own sprinkling of open sorcery.

Events: Brisbane Functional Programming Group Meetup, February 2014; Linux.conf.au, January 2014

Slides: http://elixir.codemiller.com

Video: YouTube; MP4

Get Your PaaS Into Gear: An Introduction to OpenShift

If you’re a developer who would rather spend your time coding than configuring servers it’s worth getting up to speed with Platform as a Service (PaaS) technology. This presentation will give an introduction to PaaS, where it fits into the cloud ecosystem and how it can make you a happier and more productive programmer. It will include a demonstration of how to get an app up and running in the cloud in a couple of minutes with Red Hat’s open source PaaS, OpenShift.

Events: Brisbane Ruby and Rails Meetup, February 2014; Linux.conf.au Open Programming MiniConf, January 2014; Melbourne Developer Meetup, November 2013

Slides: http://paas.codemiller.com

Video: YouTube; MP4

Higher-Order Fun: An Introduction to Functional Programming

If you’ve noticed fellow coders babbling about functional programming but it all sounds like gobbledygook, this is the talk for you. Katie will give a gentle introduction to FP focusing on one of its core idioms – higher-order functions. Come along to learn more about the functional approach to problem solving, meet the ‘Three Musketeers’ every programmer should have on their side and witness some live coding frivolity.

Events: RuPy, October 2013; CampJS II, August 2013; Brisbane Functional Programming Group Meetup, September 2013

Slides: http://hof.codemiller.com

Video: YouTube

Monads to the Rescue

Monads are sometimes spoken of like villains with an evil plan to turn programmers’ brains to mush. This talk will reveal that monads are actually superheroes and show how they can save your Hello World and beyond from great perils. The presentation will cover some of the basics of the functional programming paradigm before focusing on a select squad of monadic heroes. There will be examples shown in Java 8 as well as Haskell.

Events: Codemania, April 2013; Brisbane Functional Programming Group Meetup, March 2013

Slides: http://monads.codemiller.com

Video: YouTube

Educating Girls About FOSS, With FOSS

Many believe that a key strategy for increasing the number of women in IT and open source is to educate girls about computing at a young age. One opportunity to do so is the annual IBM EXITE (Exploring Interests in Technology and Engineering) camps for teenage girls. Last year Katie ran a workshop at two Queensland camps, tackling the subject of open source using open source tools. In this talk she will share her experiences and the lessons learnt through the two workshop sessions, as well as demonstrating some of the tools used.

Event: Linux.conf.au Haecksen MiniConf, January 2013

Slides: http://fossgirls.codemiller.com

Video: YouTube; MP4; Ogg; WebM

Making Code More Functional: Lambda Land in Layperson’s Language

Functional programming (FP) has escaped from the ivory tower and is rising in popularity with software developers around the world. This presentation explains some of the reasons for the buzz around FP and attempts to demystify a few of the paradigm’s esoteric terms. It will include examples of how FP techniques can be applied in a variety of open source programming languages that are not traditionally considered functional, including Java, Python and Perl. The aim of the presentation is to give every developer a few techniques they can apply, no matter what language they code in.



Event: Linux.conf.au Open Programming MiniConf, January 2013

Slides: http://lambdaland.codemiller.com

Video: YouTube; MP4; Ogg; WebM