Conference Talks and Appearances

If you would like to have me deliver a keynote or other talk at your conference, please contact me.

Current Talks

Metaphors are similes. Similes are like metaphors.

Language matters more than you think. And the more you think, the more you need language. This talk explores the connections between language and problem solving, how the metaphors that we use can expand or constrain our thinking, and how it all relates to our identities as software developers and as human beings. Along the way we'll learn about linguistics, category theory, Russian colors, gigantic bridges in France, and how to pronounce the word "lacuna". And you'll definitely have some things to think about. Hopefully, in new ways.

Video Available

The Broken Promise of Open Source

The open source movement has fallen far short of the idealism of its earliest proponents. What began as a utopian vision of programmers creating free software for free distribution in practice reflects the same significant cultural issues prevalent throughout the software industry: problems of unequal access and oppressive power structures enabling a privileged few to act as gatekeepers of access and arbiters of value. This talk explores the fundamental principles upon which open source was based and how each in turn has been subverted by the reality of human nature.

Video Available

How Graph Databases Saved My Relationship

Relational databases have come a long way in the past decade, but sometimes complex data models (a map of network infrastructure, or a quantum-entangled network of social relationships) call for a different approach. How can we address these sorts of modeling challenges? This talk will explore practical uses of Neo4J, a graph database designed to solve the problems of connections and relations that are too complex for traditional relational databases. We'll learn about managing and querying highly connected data and explore the power of graph databases in taming our complex data problems.

The talk starts with a discussion of what graph databases are and the common problems that they solve. It focuses on several real-world use cases, including examples from network infrastructure, social media and artificial intelligence. It also covers specifics of using the Neo4j ORM in Ruby and Rails and explore fully populated data sets with complex relations to demonstrate the power and flexibility of graph databases for storage and querying.

Video Available

Alice's Adventures in AI-Land

Many programmers enjoy making useful chat bots that execute simple commands, enforce rules of a community, and even do deployments via chat-ops. But what if your bot could go beyond these capabilities and interact with people in conversation?

Introducing Alice, a friendly, smart, and sometimes smart-ass companion that makes online communities more interactive and personable. Alice seems genuinely intelligent. She remembers facts about people (including pronouns, history, trivia, and bios), lets them play a text-based Zork-like dungeon game, and— most interestingly— comprehends simple English!

She's also complex: built on a custom natural language processing (NLP) framework complete with grammar parsers to understand simple sentences, context stacks that track conversation topics, and a pipeline architecture inspired by functional programming. This talk includes an interactive demonstration of a unique approach to artificial intelligence that will inspire you to take your own bots beyond the realm of triggering animated gifs, providing practical and entertaining functionality with personality and charm.

2017 Conferences

  • Ruby Fuza
    "Metaphors are similes. Similes are like metaphors." (Keynote)
    February 2-4
  • Penguicon
    Guest of Honor
    April 28-30
  • Portland Ruby Brigade
    "Metaphors are similes. Similes are like metaphors."
    August 1
  • Strange Loop
    "Alice's Adventures in AI-Land"
    September 28-30
  • RubyConf Brazil
    "Metaphors are similes. Similes are like metaphors." (Keynote)
    November 17-18

2016 Conferences

2015 Conferences

2014 Conferences