Put open source to work
July 16–17, 2018: Training & Tutorials
July 18–19, 2018: Conference
Portland, OR

Live coding

Want to get deeper into some actual coding—no slides allowed? Then this track is for you. From minute one, these sessions are actual coding best practices and new ways of getting the most out of languages like Python, R, Java, and C#. Attendees will use Jupyter Notebook, complete with runnable coding examples, to follow along and have a takeaway. Be prepared to cast off the crutch of slides and get your hands dirty coding…mistakes included.

9:00am12:30pm Monday, July 16, 2018
Location: Portland 256
Level: Intermediate
Jess Portnoy (Kaltura)
Average rating: ***..
(3.43, 7 ratings)
Prometheus is an open source monitoring and alerting toolkit, while Grafana is the leading open source software for time series analytics. Jess Portnoy explores the Prometheus architecture and its various tools and walks you through erecting an end-to-end monitoring and alerting infrastructure with the Prometheus stack. Read more.
9:00am12:30pm Monday, July 16, 2018
Location: C123/124
Level: Intermediate
Ian James (FamilySearch), Matthew Larson (FamilySearch)
Average rating: ***..
(3.67, 3 ratings)
Many popular services like Uber and Google Docs employ real-time data to engage users, but traditional web technologies like REST and Ajax were not designed for the real-time web. Ian James and Matthew Larson share an alternative approach to real-time data using Redux and WebSockets that is straightforward and scalable. And just to spice things up, you'll learn it by building a multiplayer game. Read more.
1:30pm5:00pm Monday, July 16, 2018
Location: D139/140
Level: Intermediate
Catherine Nikolovski (Hack Oregon), Michael Lange (CIVIC Software Foundation), Jaron Heard (CIVIC Software Foundation)
Average rating: ***..
(3.00, 1 rating)
Catherine Nikolovski, Michael Lange, and Jaron Heard offer an overview of Hack Oregon's CIVIC, a new approach to interactive computing inspired by complex information challenges in the civic space, which packages real-world data into universal standards and provides integration tools and powerful cloud computing to anyone with an internet connection. Read more.
9:00am12:30pm Tuesday, July 17, 2018
Location: Portland 255
Level: Intermediate
Robert Aboukhalil (Invitae)
Average rating: ***..
(3.83, 6 ratings)
On most days, bash is a great tool for quick-and-dirty file manipulation and system management. Join Robert Aboukhalil to learn how the command line allows you to do a whole lot more, including arrays, functions, parsing JSON, and process substitution. Read more.
9:00am12:30pm Tuesday, July 17, 2018
Location: B110-112
Level: Intermediate
Rabimba Karanjai (Rice University | Mozilla)
Average rating: **...
(2.50, 2 ratings)
Excited about augmented reality? Waiting to get your hands on that new shiny Magic Leap device? Think ARKit and ARCore are the best things to happen to mobile AR? Rabimba Karanjaiall explores all these examples in detail and explains how you can build your own mixed reality experiences using them together in an open platform—the web—running directly from the browser in your mobile device. Read more.
1:30pm5:00pm Tuesday, July 17, 2018
Location: B110-112
Level: Intermediate
Alyssa Columbus (University of California, Irvine)
Average rating: ****.
(4.33, 6 ratings)
Alyssa Columbus walks you through building data visualizations using the R Shiny web framework. You'll learn how to build simple Shiny applications with interactive elements and customized layouts and discover best practices to make these applications suitable for production deployment. Read more.
11:00am11:40am Wednesday, July 18, 2018
Location: Portland 252
Tara Z. Manicsic (Progress)
Average rating: ***..
(3.67, 3 ratings)
Tara Manicsic walks you through coding out a system for your plants that updates you on light and moisture levels using a Tessel board and React UI and demonstrates how to retrieve and utilize sensor data. May another plant never die on your watch. Read more.
11:50am12:30pm Wednesday, July 18, 2018
Location: Portland 252
Level: Beginner
Anjana Vakil (Mapbox)
Average rating: ****.
(4.36, 11 ratings)
The lambda calculus lets you represent your programs—all their logic and data—as pure, anonymous functions. Booleans, numbers, operators, control flow, data structures. . .lambda can do it all. Anjana Vakil leads a live-coding deep dive into the lambda calculus, demonstrating the computational power of the almighty little lambda, an abstraction fundamental to functional programming. Read more.
1:45pm2:25pm Wednesday, July 18, 2018
Location: Portland 252
Level: Intermediate
Matt Sullivan (Google), Emily Fortuna (Google)
Average rating: *****
(5.00, 5 ratings)
Flutter is a new, open source, mobile SDK. Matt Sullivan and Emily Fortuna walk you through live-coding a Flutter app from scratch. You'll learn how to design a UI using Flutter's subsecond hot reload, pull in live data over a network, manage that data using streams, and even access some native code for those tricky platform-specific APIs. Read more.
2:35pm3:15pm Wednesday, July 18, 2018
Location: Portland 252
Level: Intermediate
Joel Grus (Allen Institute for Artificial Intelligence)
Average rating: ****.
(4.57, 7 ratings)
Joel Grus live-codes a deep learning library from scratch—well, from NumPy—and trains some demonstration models, placing particular emphasis on writing readable code, creating a usable library, and using good abstractions. You'll learn a good bit about both deep learning and library design. Read more.
4:15pm4:55pm Wednesday, July 18, 2018
Location: Portland 252
Level: Beginner
Eve Porcello (Moon Highway)
Average rating: ****.
(4.78, 9 ratings)
Are you interested in GraphQL but aren't sure where to get started? Eve Porcello offers a live-coding walk-through of GraphQL, giving you the foundation to build your own GraphQL servers. Starting with an empty folder, you'll learn how to stand up and query a GraphQL server. Along the way, Eve covers GraphQL schemas and explains how to incrementally adopt GraphQL at your organization. Read more.
5:05pm5:45pm Wednesday, July 18, 2018
Location: Portland 252
Level: Beginner
Lachlan Evenson (Microsoft)
Average rating: ****.
(4.50, 2 ratings)
Building complex or even simple event-driven pipelines on Kubernetes has always been somewhat of an elusive task—until now. Enter Brigade, a lightweight open source event-driven tool that accepts a JavaScript expression of a pipeline that gets seamlessly converted into the associated Kubernetes runtime objects. Lachlan Evenson demonstrates how to build event-driven pipelines on Kubernetes. Read more.
11:00am11:40am Thursday, July 19, 2018
Location: Portland 252
Level: Intermediate
Josh Butikofer (Adobe)
Average rating: ****.
(4.83, 6 ratings)
Blockchain == buzzword * 10^10. By now, most of us have heard something about blockchains. Josh Butikofer walks you through building a very basic blockchain to demonstrate how the underlying technologies work and what they might be good for besides the cryptocurrency use case. Join in to go beyond yet another alt-coin to invest in and dig deeper into the tech. Read more.
11:50am12:30pm Thursday, July 19, 2018
Location: Portland 252
Level: Beginner
Josh Long (Pivotal)
Average rating: *****
(5.00, 5 ratings)
Spring Framework 5 is here. It introduces Java developers to growing support for reactive programming, starting with a new Netty-based web runtime called Spring WebFlux and continuing with Spring Data Kay, Spring Security 5.0, Spring Boot 2.0, and Spring Cloud Finchley. Join Josh Long to learn how to build reactive, resilient microservices with Spring. Read more.
1:45pm2:25pm Thursday, July 19, 2018
Location: Portland 252
Level: Beginner
Pierre DeBois ( Zimana Analytics )
Average rating: ****.
(4.00, 1 rating)
Sentiment analysis can reveal how people are truly responding to a product, service, or social issue. Pierre DeBois demonstrates how to conduct a sentiment analysis in R programming using Twitter. Read more.
2:35pm3:15pm Thursday, July 19, 2018
Location: Portland 252
Level: Intermediate
Jess Portnoy (Kaltura)
Average rating: ****.
(4.00, 5 ratings)
FFmpeg is a FOSS, cross-platform solution to record, convert, and stream audio and video. Jess Portnoy explains how to use the CLI tools included in this project (ffmpeg and ffprobe) to accomplish everyday video manipulation and streaming tasks. Read more.
4:15pm4:55pm Thursday, July 19, 2018
Location: Portland 252
Level: Beginner
Paris Buttfield-Addison (Secret Lab Pty. Ltd.), Tim Nugent (lonely.coffee), Mars Geldard (University of Tasmania)
Average rating: ****.
(4.86, 7 ratings)
Live coding is the future of programmer learning, and Swift is the open source future of programming for Apple’s platforms. Join Paris Buttfield-Addison, Tim Nugent, and Mars Geldard to learn Swift with live coding in Apple’s Playgrounds environment and find out why Swift is one of the funnest, most engaging, and most thoughtful languages. Read more.
5:05pm5:45pm Thursday, July 19, 2018
Location: Portland 252
Level: Intermediate
Josh Deprez (Google Australia)
Average rating: ****.
(4.20, 5 ratings)
Many utilities are about prettifying text-based code, but what if a program was written "diagram first"? (This isn't a new idea.) Goroutines and channels make sense on a canvas. Josh Deprez leads a live demonstration of Shenzhen Go, a pragmatic blend of visual and textual programming. Read more.