Fueling innovative software
July 15-18, 2019
Portland, OR

Tutorials

These expert-led presentations on July 15-16 give you a chance to dive deep into the subject matter. Please note: to attend tutorials, you must register for a Gold or Silver pass; does not include access to training courses on Monday or Tuesday.

Monday, July 15

Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: C120-122
Secondary topics:  Customer Centered
VM Brasseur (Juniper Networks)
From unresponsive recruiters to pointless interview questions, a job hunt can be a demoralizing and dehumanizing process, but VM Brasseur walks you through what you can do to make it more productive and less stressful. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: D138/139/140
Nathan Stocks (GitHub)
Join Nathan Stocks for a fast-paced, entertaining, and curiously informative hands-on crash course in the Rust programming language. You’ll explore Rust fundamentals as Nathan walks you through creating a fully functional, multithreaded, graphical, networked game client in Rust, updated for Rust 2018 for maximum learning and fun. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: Portland 252
Secondary topics:  Cloud Native
Sébastien Goasguen (TriggerMesh), Priyanka Sharma (GitLab)
Break the shackles of vendor lock-in. Sébastien Goasguen and Priyanka Sharma walk you through deploying serverless functions to any cloud provider of your choice. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: Portland 255
Secondary topics:  Cloud Native
Lorenzo Fontana (Sysdig), David Calavera (Netlify)
Lorenzo Fontana and David Calavera dive into how to understand and use extended Berkeley Packet Filters (eBPF) programs on Linux. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: Portland 251
Secondary topics:  Open Source
Ken Kousen (Kousen IT)
The Spring Framework is the leading open source project in the Java world. Build applications with Ken Kousen in the Spring Framework, including web applications, RESTful web services, and more. Use Spring Boot to initialize and autoconfigure an application, customize it, and generate an executable jar file suitable for deployment. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: C123-124
Secondary topics:  Open Source
Kevin Hoffman (Capital One)
Get your hands dirty with Kevin Hoffman as he teaches you how to build WebAssembly modules in text format (wast), JavaScript integration, and nonbrowser hosting. Read more.
Add to your personal schedule
9:00am12:30pm Monday, July 15, 2019
Location: Portland 256
Neal Ford (ThoughtWorks)
Neal Ford explores the foundational topics of software architecture and illustrates his points through examples. Unsure about the basics of software architecture? Neal walks you through architecture characteristics, deriving components, architecture patterns and selection, and documentation. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: C123-124
Sander Mak (Luminis Technologies)
Java's moving faster than ever, but Sander Mak catches you up with everything that's happened between Java 8 and Java 12 with hands-on examples. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: Portland 251
Secondary topics:  AI Enhanced
Get hands-on experience with Justina Petraityte in developing intelligent AI assistants based entirely on machine learning and using only the open source tools Rasa NLU and Rasa Core. Take in the fundamentals of conversational AI and the best practices of developing AI assistants that scale and learn from real conversational data. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: D138/139/140
Secondary topics:  Cloud Native
Josh Berkus (Red Hat)
Get your hands dirty with Josh Berkus and learn how to run your database platforms on Kubernetes. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: Portland 256
Secondary topics:  AI Enhanced
Paris Buttfield-Addison (Secret Lab), Mars Geldard (University of Tasmania), Tim Nugent (lonely.coffee)
Whether you're a scientist wanting to test a problem without building costly real-world rigs, a self-driving car engineer wanting to test AI logic in a constrained virtual world, or a data scientist needing to solve a thorny real-world problem without a production environment, Paris Buttfield-Addison, Mars Geldard, and Tim Nugent teach you how to use AI problem-solving using game engines. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: Portland 252
Stuart Williams (Investors Group | Mackenzie Investments)
Get a very fast introduction to Python for software developers with experience in other languages. Instead of a traditional top-down presentation of Python's features, syntax, and semantics, Stuart Williams immerses you in the language from the bottom-up with hundreds of small examples using the interactive interpreter to quickly gain familiarity with most of the core language features. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: C120-122
Secondary topics:  Open Source
Alyssa Columbus (Pacific Life)
Though computational reproducibility seems more straightforward than replicating physical experiments, the complex and rapidly changing nature of computer environments makes being able to reproduce and extend code a serious challenge. Alyssa Columbus explores computational reproducibility and teaches you how to execute production-ready, robust, and reproducible R code with Docker. Read more.
Add to your personal schedule
1:30pm5:00pm Monday, July 15, 2019
Location: Portland 255
Secondary topics:  Data Driven
Jamiel Sheikh (Chainhaus)
Jamiel Sheikh walks you through building an Ethereum decentralized application (DApp) using Solidity, and learn some basic Solidity syntax, how to send ether to a smart contract, how gas works, programmatically compile and deploy Solidity code, and invoke the smart contract from Remix. Read more.

Tuesday, July 16

Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: C120-122
Emily Xie (Sotheby's)
Get drawn in by Emily Xie as she explores how to make algorithmic art using p5.js, an emerging open source visual programming framework built for the web. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: Portland 251
Secondary topics:  Open Source
Brent Laster (SAS)
Brent Laster offers a brief, practical introduction to Jenkins as well as a guide to leveraging its automation and integration with other open source technologies to create a simple, working build/deployment pipeline that implements principles of continuous integration and continuous delivery. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: C123-124
Secondary topics:  Open Source
Russ Miles (ChaosIQ)
Russ Miles and Lorinda Brandon walk you through establishing effective chaos engineering teams at scale. You'll learn how chaos experiments and chaos APIs based on open standards provide the foundation for organizational, and industry, learning when it comes to improving system resilience. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: D138/139/140
Secondary topics:  Open Source
You've got the code part down, but now there's a problem. How do you get people interested in your project and attract contributors? Or if you have contributors, how do you express your vision and intent? Alison Spittel explains why you need documentation and blog posts. Workshop a content strategy for your open source project from audience targeting to an outline of a blog post. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: Portland 256
Secondary topics:  Customer Centered
Elmer Thomas (Twilio SendGrid)
Elmer Thomas and Ashley Roach dive deep into how to design, build, and deploy a Python-powered application within a microservices architecture deployed to AWS. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: Portland 252
Secondary topics:  Data Driven
Tim Berglund (Confluent)
Get your hands dirty with Tim Berglund while you produce and consume a Kafka topic, integrate Kafka with a database using Kafka Connect, and perform real-time stream processing on Kafka data. Read more.
Add to your personal schedule
9:00am12:30pm Tuesday, July 16, 2019
Location: Portland 255
Secondary topics:  AI Enhanced
Grishma Jena (IBM)
With the advent of voice-based assistants and chatbots in our homes, our phones, and our computers, businesses, stakeholders, and developers want to learn about language processing. Grishma Jena introduces you to natural language processing (NLP) using Python. Start off with textual data and learn how to process it to derive useful insights that can be used in real-world applications. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: Portland 256
Secondary topics:  AI Enhanced
Given a growing demand for fairness, accountability, and transparency from machine learning (ML) systems, Animesh Singh, Svetlana Levitan, and Tommy Li examine open source projects to build an ML pipeline that is open, secure, and fair and that fully integrates into the AI lifecycle. They explore AI Fairness 360 (AIF360) and Adversarial Robustness Toolbox (ART), among others. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: Portland 251
Secondary topics:  Cloud Native
Anubhav Mishra (HashiCorp)
Kubernetes is a popular application delivery platform, but its built-in secret management system does not serve the diverse needs of many organizations. Anubhav Mishra demonstrates how to run HashiCorp Vault on Kubernetes and use Vault to store and retrieve secrets for applications running on Kubernetes. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: D138/139/140
Secondary topics:  Open Source
Tim Nugent (lonely.coffee), Jon Manning (Secret Lab), Paris Buttfield-Addison (Secret Lab)
Using Another Tool for Language Recognition (ANTLR) Tim Nugent, Jon Manning, and Paris Buttfield-Addison build an entirely new programming language starting from nothing and ending up with a working interpreter; it will probably be a bad language, but it'll be ours and no one can take that from us. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: Portland 255
Secondary topics:  AI Enhanced
Dan Anghel (Google)
The Kubeflow project is dedicated to making deployments of machine learning (ML) workflows on Kubernetes simple, portable and scalable. You'll get a hands-on introduction to Kubeflow and Kubeflow Pipelines for ML, both from the command line and from a notebook. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: C123-124
Secondary topics:  Open Source
Bridget Kromhout (Microsoft)
What’s after Kubernetes 101? Going to production with Kubernetes means new considerations that come with many acronyms. Bridget Kromhout walks you through role-based access control, custom resource definitions, and pod disruption budgets; Kubernetes is configurable to meet your needs while open source tooling such as Helm, Brigade, and Duffle enables better ongoing operability. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: Portland 252
Secondary topics:  Cloud Native
Eve Porcello (Moon Highway), Alex Banks (Moon Highway)
Have you been wanting to work with GraphQL but you’re not sure where to get started? Then this is for you. No matter where you fit into the stack, Eve Porcello and Alex Banks give you everything you need to start building powerful GraphQL services that sit on top of any kind of data sources. Read more.
Add to your personal schedule
1:30pm5:00pm Tuesday, July 16, 2019
Location: C120-122
Secondary topics:  Open Source
Simona Cotin (Microsoft)
Get your hands dirty with Simona Cotin as she teaches you to master VS Code, the most popular open source code editor that can help improve your day-to-day productivity. Read more.