Upcoming Events

I don’t have anything scheduled right now. Would you like me to speak at an event? Send me a note.

Previous Events

July 2023 - Laracon US

How to Get Unstuck Video Slides

October 2021 - Longhorn PHP

Level Up Your Code Quality Slides

January 2018 - Chicago PHP meetup

Give Elm a Chance!

August 2017 - thatConference

Give Elm a Chance! Slides

March 2017 - NEW Code Camp

Give Elm a Chance! Slides

February 2017 - Milwaukee PHP User Group

Give Elm a Chance! Slides

April 2016 - Milwaukee Web Pro meetup

Elm - A New Approach to Building the Front End Slides

November 2015 - Milwaukee Functional Programming meetup

Elm - A New Approach to Building the Front End Slides

November 2015 - Madison PHP Conference

Hack - Why Should I Care? Slides

November 2015 - True North PHP conference

Property-based Testing: Work smarter, not harder Slides

November 2015 - True North PHP conference

Elm - A New Approach to Building the Front End Slides

September 2015 - Milwaukee JS meetup

Elm - A New Approach to Building the Front End Slides

July 2015 - Chicago PHP meetup

Hack - Why Should I Care? Slides

April 2015 - Nomad PHP webinar

Hack - Why Should I Care? Slides

March 2015 - Midwest PHP conference

Hack - Why Should I Care? Slides

January 2015 - Milwaukee PHP User Group

Hack - Why Should I Care? Slides

November 2014 - True North PHP conference

Hack - Why Should I Care? Slides

In March, Facebook released a new language called Hack. It adds static typing, generics and lambda expressions on top of the rest of the familiar PHP syntax. In addition, it allows for gradual adoption of these features and continued interoperability with existing PHP code. But why should you care? Do you need to work in a massive environment like Facebook to reap the rewards of learning a new language? I’ll make a strong case that Hack (and HHVM) are worth your time, give you a good demo of the language and show you how to get started. I don’t work for Facebook, but I dove into Hack the day it was announced and I’ve continued to follow its development with great interest. I have applications in production running on Hack and I’m eager to show PHP developers of all skill levels why it’s worth their time to give Hack a look.

September 2014 - REST Fest conference

IFPS - The Permanent Web Video

Link rot is a problem we’ve all encountered on the web. You read a blog post someone wrote last year, which links to a paper. That link is now dead. There are also issues with versioning. Technical content should be updated, but how do we know when this content was last changed? What did the previous version(s) look like? The Wayback Machine is a noble initiative from the Internet Archive, but it can’t solve this problem completely or efficiently.

Enter IPFS, the Interplanetary File System. This project is a protocol, a file system and a mechanism for distributing and browsing content. Leveraging existing technologies like BitTorrent, Git and Kademlia it aims to solve the problems mentioned above, along with several others.

I’ll give a whirlwind tour of the project, its goals and its current state, with hopes of inspiring you to check it out and contribute your ideas.

July 2014 - WordCamp Milwaukee conference

Avoid Deployment Surprises and Frustration with Vagrant Slides

We’ve all had that “works on my machine” moment. We coded and coded, got it working the way we want, went to deploy and … . errors. This talk will help WP developers learn how to use Vagrant and Ansible to quickly provision a consistent, isolated development environment that moves seamlessly to production and makes deployment a pain-free and surprise-free experience.

September 2013 - REST Fest conference

HTTP as a state machine - An intro to Erlang/Webmachine

Depending on who you talk to, HTTP is either described as simple or as complex. Personally, I think it’s conceptually simple, but complexity lurks in some of the details or implementations. Basho’s WebMachine starts by defining the HTTP specification as a finite state machine. Instead of hiding HTTP from you or making too many decisions for you, it strikes a nice balance. In this talk, I will dig a little deeper into why Webmachine is designed the way it is, how it works and why you might consider it for your next API project.

August 2013 - ThatConference

A Modern Approach to PHP Development Slides

There have been some great advancements in the PHP ecosystem in the last couple years. Come learn about two tools that could make your projects more productive and enjoyable. The first is Composer, a modern dependency manager for PHP. The second is Silex, a small, lightweight framework that gets out of your way, but also gives you a great upgrade path as your needs change and grow over time. I will also discuss Vagrant, a great tool for provisioning a reliable development environment for you and your team.

April 2013 - Tampa Bay PHP meetup

REST APIs: The “R” is not for religious

While my family was on vacation in SW Florida, I visited the Tampa Bay PHP group to give an updated version of my REST/Hypermedia API talk.

March 2013 - Midwest PHP Conference

Learning How to Learn Slides and feedback on joind.in

I gave this presentation as the opening keynote for the conference.

As developers, we are constantly faced with new things to learn. New versions of languages, new tooling, new best practices, and so on. How do you cope with it all? In this talk, I’ll get a bit meta and talk about learning how to learn. We like our code to be efficient, so why shouldn’t our learning be efficient as well?

January 2013 - Milwaukee Javascript User Group

A Real World Perspective on Using Knockout.js

December 2012 - Codeworks Madison

Building APIs with Silex

December 2012 - Milwaukee PHP User Group

MKEPUG’s December meetup is going to be a coding event, centered on the Composer project. To start, I will give a brief (20 minute) intro to Composer: what it is, how it works, why you should use it. Then I’ll give an overview of the night’s events. Our goal as a group will to be submit a few patches to the Composer project. It could be a bug fix, documentation contribution or new unit tests. This will not only help the project, but it will give everyone in the group some real-world experience in contributing to open source.

November 2012 - True North PHP conference

REST APIs: The “R” is not for religious Slides and feedback on joind.in

September 2012 - RubyMKE meetup / MobileMKE

RubyMotion - A New Approach to Building Native Apps

September 2012 - RESTFest 2012 conference

My Path to Hypermedia Enlightenment (video)

June 2012 - WordCamp Milwaukee 2012

Contributing to Open Source Slides

June 2012 - Lake / Kenosha PHP meetup

REST APIs: The “R” is not for religious

May 2012 - Milwaukee PHP User Group

REST APIs: The “R” is not for religious

August 2011 - Milwaukee PHP User Group

The Evils of 777

February 2011 - Milwaukee PHP User Group

Platform as a Service: The Future of PHP Hosting?

October 2010 - Milwaukee PHP User Group

What’s New and Exciting in PHP 5.3

July 2010 - Milwaukee PHP User Group

Understanding Version Control

March 2010 - Milwaukee PHP User Group

IDE Comparisons

January 2010 - Milwaukee PHP User Group

Intro to PHP Debugging