Program for Seattle GNU/Linux Conference 2018


TUTORIAL: Learn Kubernetes & Habitat

presented by expohall

Interested in Kubernetes? Curious about Habitat? You're in luck! Thanks to IBM and Chef you can learn them for free!

Join us on November 8th, the day before SeaGL starts, for a workshop at hosted in the Chef offices in Seattle. You'll learn the basics of Kubernetes and how to get great results with Habitat in a Kubernetes cluster. Ideall...


10:00 - 15:00 Chef Seattle Offices
Elizabeth K. Joseph

Open Source Today: Individuals Need Not Apply?

presented by Elizabeth K. Joseph

The open source software ecosystem has seen major changes since the term "open source" was coined and adopted 20 years ago. The scale and complexity of open source projects have increased, professional development practices like software testing at the project level have been introduced, and the infusion of money into development has created a different landscape for contributors and companies....


09:30 - 09:55 Theatre
Molly de Blanc

Insecure Connections: Love and mental health in our digital lives

presented by Molly de Blanc

The lens through which we view--and know--what it means to love, to be ourselves, and to connect with others is now backed by microchips and millions of lines of code. As our lives continue to become increasingly managed by our devices, we need to ask ourselves what we're gaining--and what we're giving up--by allowing technology into the spaces that make our hearts ache and that keep us up at n...


10:00 - 10:25 Theatre
Hailey Buckingham

Intro to Machine Learning with Scikit-learn

presented by Hailey Buckingham


This talk will give a tour of the scikit-learn project, an open source python platform for doing most types of modern machine learning. Scikit-learn is used in all corners of the machine learning world, from early prototypes to production models, both in academia and industry. This powerful tool kit has been carefully maintained to provide high quality, thoroughly documented ...


10:45 - 11:35 Room 3180 Data, AI, ML
Paul Berg

Basic Licensing Considerations and Compliance for Projects and Companies

presented by Paul Berg

Technology projects do not happen in isolation and often interface with, include or have dependencies on a plethora of other projects which may be licensed under a variety of Open Source, Libre or even proprietary licenses, and possibly include even patent and trademark concerns. Ensuring that a project is compliant with the requirements of all of these licenses can seem like a daunting proposi...


10:45 - 11:35 Room 3184 Legal, Licensing
garrett honeycutt

Intro to Sensu - A monitoring and alerting framework

presented by garrett honeycutt

Sensu is an open source monitoring solution built for today's environments. Sensu allows you to get complete visibility of your infrastructure and software. Besides monitoring, it also does alerts and metrics routing and ties into tools you might already use. You will leave understanding how Sensu works and how to quickly get started using it.

10:45 - 11:35 Room 3183 Systems, sysadmin, ops, DevOps
Walter Mankowski

A punch card ate my program!

presented by Walter Mankowski

COBOL is the Rodney Dangerfield of programming languages — it doesn't get any respect. COBOL is routinely denigrated for its verbosity and dismissed as archaic, and for good reason: COBOL bears little to no resemblance to modern programming languages. Yet COBOL is far from a dead language. It processes an estimated 85% of all business transactions, and 5 billion lines of new COBOL code are wri...


10:45 - 11:35 Room 3179 Something different
Michaela (Miki) Demeter

Securing Your Projects by Choosing Better Open Source Packages

presented by Michaela (Miki) Demeter

Industry statistics show that ~57% of codebases are open source this is up from ~36% one year ago. Many applications now contain more open source than proprietary source code.

How can you determine what you can and cannot trust? Can you trust popularity, if it is popular does that make it safe? It is on the internet and everyone is using it. Does that make it safe?

This talk will give you...


13:00 - 13:20 Room 3183 Security, Information Security
Jaime Lopez

I’m Lazy So I Write Tests

presented by Jaime Lopez

Does your team deal with bugs that could have been caught earlier in the development cycle? Wish you could get the benefits of Test-driven development (TDD) but are worried that your dev team might revolt or that stakeholders will think that you're being unproductive? In this talk, we'll discuss an approach I've taken to balance the concerns of developers and stakeholders while simultaneously i...


13:00 - 13:20 Room 3184 Programming
Megan Guiney

Working Non-Remote: a Guide to Reacclimating to Human Society

presented by Megan Guiney

Unpopular opinion: remote work may be one of the best "perks" to ever be popularized by the tech industry, but it is also one of the worst.

On one hand, it allows employers access to a more diverse pool of employees, and employees greater schedule flexibility and the ability to customize their working conditions to better fit their needs. On the other, it presents a complex and often frustr...


13:00 - 13:20 Room 3178 People
Hailey Buckingham

Easy Microservices with Python, Flask, and Docker

presented by Hailey Buckingham

This talk will give an overview of how to quickly build and deploy RESTful microservices using Python, Flask, and Docker. These open source tools make it very easy to build scalable microservices that are easy to write and maintain, and that can be quickly deployed in most linux (and linux-related) environments.

We'll cover the following:

  1. Using Flask to build a basic py...

13:30 - 14:20 Room 3184 Programming

Hack your clothes: Merging and patching textiles

presented by edunham

Many FLOSS enthusiasts exact perfect control of every bit and byte in their digital lives, but feel helpless at the mercy of clothing manufacturers to mass-produce garments for them. Sewing is an under-appreciated technology which allows you to modify, resize, and even duplicate your proprietary garments, or design your own!

This talk will take a quick spin through the underlying principles ...


13:30 - 14:20 Room 3180 Something different
John Harris

Setting Sail: Introduction to Kubernetes Concepts and Architecture

presented by John Harris

Description: Linux containers have exploded in popularity and usage over the last 5 years and Kubernetes is the leading container orchestration platform. It was originally created at Google but is open-source and home to thousands of contributors, yet is often cited as being overly complex or unfriendly to understand, install and operate.

This talk assumes only that the audience know wh...


13:30 - 14:20 Room 3183 Systems, sysadmin, ops, DevOps

So you want to be a kernel developer -- moving beyond checkpatch

presented by labbott

Many people are interested in kernel development but struggle to get involved. After making a single contribution many people don't know what to do next. Some contributors don't know how to hone their skills, others can't figure out a good project. The focus of this talk is to discuss some of the issues facing new contributors to the Linux kernel who want to take a 'next step' after a first pat...


13:30 - 14:20 Room 3179 Programming
Brian Raiter

Bootstrapping Understanding: An Introduction to Reverse Engineering

presented by Brian Raiter

Most people associate reverse engineering with software exploits and malware. But reverse engineering encompasses a broad range of tools and techniques that have application anywhere you need to understand a program without being able to read the original source. Reverse engineering is a lot like applying the scientific method: make observations, formulate a hypothesis, test, refine ... and rep...


13:30 - 14:20 Room 3178 Programming
Brian MacDonald

Continuous Learning for Developers

presented by Brian MacDonald

The world of technology never stops moving, and developers are frequently told that they have to be constantly learning in order to keep up. Entire industries are devoted to helping developers stay on the cutting edge, and they offer a multitude of options and formats: books, video, online interactive programs. There's live training, both on-site and remote, small groups and large, and mixes of...


15:00 - 15:50 Room 3184 Education
Kevron Rees

Smart Greenhouses with IoT, Machine Learning, and sometimes plants

presented by Kevron Rees

What does it take to grow food all year round in the Pacific North West when you are a lazy software engineer? This talk walks through the journey of one who has taken up the challenge of growing food with as much technology and as little effort as possible. The end-result of this journey is one of the most advanced greenhouses in the PNW. Topics include supplemental greenhouse lighting control...


15:00 - 15:50 Room 3180 Hardware, IoT
Nathan Handler

Terraform all the things

presented by Nathan Handler

Many companies continue to manually create and manage their cloud infrastructure via web consoles. Documenting these procedures is challenging, especially since the interfaces are always evolving. Reviewing the changes is also difficult and often involves having a coworker watching over your shoulder. Rolling back a bad change requires deleting your current work and attempting to manually recre...


15:00 - 15:50 Room 3183 Systems, sysadmin, ops, DevOps
Nell Shamrell

Open Source Governance: The Hard Parts

presented by Nell Shamrell

So you’ve released an open source project to the world, people are using it …the hard part is done, right? No, far from it. Open sourcing a project is only a fraction of the effort that will go into it over time. Come to this talk to learn about the hard parts of Open Source Governance and lessons learned from using, contributing, and governing dozens of Open Source projects. Learn how to triag...


15:00 - 15:50 Room 3178 People
Rachel Kelly

A Long Day's Journey into Backups

presented by Rachel Kelly

This is a story of the journey taken to have effective, safe backups in customer environments. Part history, part prescriptivism, part actual technical solutions, let's talk about the thousand solutions we tried, and what is really and truly working for the company and for me (and you!), the operations engineer. This is a talk in three parts - the why, the what, and the future of our backups....


15:00 - 15:50 Room 3179 Systems, sysadmin, ops, DevOps
Deb Nicholson

Run More Effective Meetings

presented by Deb Nicholson

Team meetings set the stage for your work as a group, but unfortunately many of us attend meetings that feel like a complete waste of time. Meetings that meander off-topic, that repeatedly drift back to the same unresolved topic, or end up turning into a monologue don't foster great team work. Once poor habits are established, it can feel difficult to reclaim a weekly wasteful meeting.



16:00 - 16:20 Room 3178 People
Christina Zhu

The Intersection of Tech x Social Good

presented by Christina Zhu

The history of programming is filled with examples of how even the most regular developers discovered how to use their skills to transform the world. With big data, machine learning, and thousands of tutorials at every developer’s fingertips, it is easier than ever to go help causes that we care about. We’ll journey through some incredible projects that were actually very simple ideas that impa...


16:00 - 16:20 Room 3179 Education
Omar Ravenhurst

Centralized Syslog Made Easy

presented by Omar Ravenhurst

If you have a lot of servers, then you have a lot of logfiles. If you have a lot of logfiles, then you probably want one place to look at all of them.

This talk will cover:

  • How to set up a centralized syslog server
  • How to point your other servers' syslog daemons to the centralized server
  • Security implications of centralizing syslog
  • Security advantages of centralizing syslog
  • ...

16:00 - 16:20 Room 3183 Systems, sysadmin, ops, DevOps
Shea Newton

It's properties all the way down! Narrowing in on a property test's input space.

presented by Shea Newton

One of the strengths of property testing is its potential to automate testing scenarios for what might otherwise be infeasible or even impossible to write for a project one by one. Writing property tests however, isn't always intuitive. It can be difficult to work out what a project or a function's properties are (not to mention how to arbitrarily explore them). This talk will tackle strategies...


16:00 - 16:20 Room 3180 Something different
Carla Schroder

You Are Never Too Old to Change to a Tech Career

presented by Carla Schroder

_Dear Abby, I have always wanted to get into tech, but I'm afraid I am too old to start now. There is a training program I want to enroll in that looks really good and interesting, but it takes a year, and I know I will need continual training to develop meaningful skills. I'm already 50, so spending five or ten years learning a new career may not make sense. What should I do? Signed, Feeling D...


16:00 - 16:20 Room 3184 People
Amanda Sopkin

Computational Randomness: Controlled Chaos in an Ordered Machine

presented by Amanda Sopkin

There are many computational needs for randomness, from virtual card shuffling to creating a cryptographically secure id. Generally, using the default random libraries to create random numbers is sufficient, but for secure cases we might need to use something better. Come learn about the best methods for common scenarios that require random number generation. Attendees will learn how to evalua...


16:30 - 17:20 Room 3184 Security, Information Security
Ruben Rodriguez

Freedom and privacy in the Web
Fighting licensing, tracking, fingerprinting and other issues, from both sides of the cable

presented by Ruben Rodriguez

Websites and the technologies they are built on continue to evolve from the static text documents of old (with the occasional image, tiled background and blinking marquee) to very elaborate pieces of interactive software, with both local and remote code execution that brings all kinds of overlooked privacy and user freedom concerns. Fueled by practicality and monetization incentives, web develo...


16:30 - 17:20 Room 3180 Legal, Licensing
Benno Rice

WebAuthn: Multi-factor Auth for Everyone

presented by Benno Rice

Everyone generally agrees that passwords have problems. Many of the solutions tend to involve multi-factor authentication of some kind but that's always been a pain to implement in the browser, requiring custom backends or other tricky things.

Until now!

The WebAuthn standard, now at Candidate Review stage at W3C, allows for great ease of accessing extra authentication factors, Yubikeys, ...


16:30 - 17:20 Room 3183 Security, Information Security

etckeeper - revision control for configuration files

presented by der.hans

etckeeper tracks changes in /etc/ with version control. It ties into package management systems for automagic checkins after updates. It also records important metadata such as permissions and ownership that version control systems (VCS) usually do not track.

Use the VCS you know and let etckeeper help you with some of the oddities found in /etc/.

An imporatant feature is detecting inadve...


16:30 - 17:20 Room 3179 Systems, sysadmin, ops, DevOps
Stephen Walli

The Democratization of Software

presented by Stephen Walli

In 1995 everything changed with the creation of the World Wide Web. Anything that could be digitized was digitized and entire industries changed. And with the digitization came tools to help everyone become a producer of digital content. From music to video, books to journalism, we pulled all the friction out of the content pipeline and democratized entire industries.

But the industry we nev...


09:30 - 09:55 Theatre
Tameika Reed

Making the mental shift from System Administration to System Architect/Team Lead

presented by Tameika Reed

Most of the system admins of the past started with being the only IT person and team. So the knowledge level of seeing the overall architecture and need for growth just a part of the everyday thought process. What was not really both forth was you were doing System Architecture just on small level. What happens as the team grows? You not only have you to worry about but others and their roles. ...


10:00 - 10:25 Theatre
Steve Meyers

PHP isn't just for the web anymore: Daemonizing PHP

presented by Steve Meyers

A long time ago, it wasn't smart to run PHP daemons. Memory management issues made long-running processes impractical, and PHP "daemons" were often just frequently-restarted cron jobs. Since PHP 5, it's become more and more common to use PHP from the command line, and some are even brave enough to daemonize their PHP scripts. We'll discuss different useful ways to run PHP from the command line,...


10:45 - 11:35 Room 3179 Programming
Susan Harris

Preparing Lesson Plans - Teaching Yourself, Training Others

presented by Susan Harris

Being a teacher for 30 years, Lesson Plans are a basic necessity before entering the classroom. I'll explain why and how we create them. I recently started training as a Pilates instructor for my personal growth. When creating lesson plans, my trainer was effusive about how I had devised them. This comes from many years of teaching - it's almost second nature for me. In this talk, I'll exp...


10:45 - 11:35 Room 3184 Education
Lucy Wyman

What Not to Automate

presented by Lucy Wyman

During a talk at DevOps Days Seattle the speaker stated "Automate as much as you can". While this seems like an obvious statement at first blush, on further inspection there are a number of exceptions to this rule, begging the question: What shouldn't I automate? This talk will give you a framework for deciding whether something is worth automating. We'll discuss:

  • The return on investm...

10:45 - 11:35 Room 3178 Something different
Tiberius Hefflin

Personal Threat Modelling for Fun and Peace of Mind

presented by Tiberius Hefflin

It’s easy to see what being secure means in an enterprise setting, but what about personal security? In a world where technology and the goal posts for security are constantly changing, understanding what threats you face and what risk they pose is the first step. In this talk, I will discuss what a threat model is, and walk you through the process of making a threat model relevant to your pers...


10:45 - 11:35 Room 3183 Security, Information Security
Jose Antonio Rey

Introduction to Identity Management

presented by Jose Antonio Rey

You might be working on an open source project, and it seems that you will require people to sign up to use for your service. Seems easy enough, right? But, what happens when you start collecting user information? What are the implications? How do you keep the information secure? How do regulations like GDPR impact the service that you will be providing?

The top concern of many open source u...


10:45 - 11:35 Room 3180 Security, Information Security
Duane O’Brien

No, Your GitHub Is Not Your Resume

presented by Duane O’Brien

You are hiring to fill a position, and you have two great candidates. One has a robust GitHub profile, and the other has no profile at all. Is this an easy choice?

You have heard that having a GitHub profile can help when job hunting. Is it true? How can you get started? What if you don’t have the time?

In this session, we will look at the implications of working in open source, from the ...


13:00 - 13:20 Room 3178 People
Johannes Ernst

How I automate my pool pumps with a Raspberry Pi and some open-source software

presented by Johannes Ernst

Most Internet-of-Things devices you can buy today tend to be completely proprietary, inflexible, and tied into some would-be data overlord's cloud. But it can be different: in this talk I will to a show-and-tell on my project to automate my swimming pool's pumps using a Raspberry Pi and some open-source software. I now can schedule and monitor what's happening with my pool from the living room ...


13:00 - 13:20 Room 3184 Hardware, IoT
Michael Krotscheck

Keeping Secrets in your Code

presented by Michael Krotscheck

While in general it's a bad idea to add passwords and other secrets to your version control system, it's a reasonably common practice in the world of "Infrastructure as Code". This talk will provide a brief introduction to Gnu Privacy Guard (gpg), and how it can be used to safely encrypt secrets only shared with a select audience.

Whether you choose to commit those secrets to your version co...


13:00 - 13:20 Room 3183 Security, Information Security
Chris Marusich

Everyday Use of GNU Guix

presented by Chris Marusich


In this talk, I will introduce GNU Guix: a liberating, dependable, and hackable package manager that follows the "purely functional software deployment model" pioneered by Nix.

I will demonstrate some common use cases of Guix and show you how I use it in my everyday life. In addition, ...


13:30 - 14:20 Room 3183 Systems, sysadmin, ops, DevOps
Emmanuel Morales

Qubes OS: A reasonably secure operating system

presented by Emmanuel Morales

All operating systems, both free and non-free, are vulnerable to attacks from bad people. Just a simple action – opening random PDFs or Word/LibreOffice docs, running bash one-liners from Reddit, plugging in a cute USB stick shaped like a penguin you found on the sidewalk – and it could spell game over for your computer. Even if an attacker doesn’t gain root access to your computer, your files ...


13:30 - 14:20 Room 3180 Security, Information Security

How to learn Arduino by playing with fire

presented by zebular13

An intro to computer science for pyromaniacs.

My goal was to create a propane fire poofer to impress my friends. I ended up building a control system with buttons, solenoids, and LEDs, and levelling up my arduino skills along the way.

I'll take you on my journey as I go from simple Arduino sketch to fully optimized control system. I’ll share what I learned about helpful libraries for de...


13:30 - 14:20 Room 3184 Hardware, IoT
Carla Schroder

Documentation is Teaching, and Teaching is Everything

presented by Carla Schroder

Everyone is a newbie at 99% of everything, so teaching is the most important and noble task of all. Creating and maintaining documentation is not easy, but it is necessary. Documentation is recording your accumulated experiences and creating your institutional memory. Documentation is building a library of knowledge, and adding to the total store of recorded human knowledge. Documentation is a ...


13:30 - 14:20 Room 3178 Documentation
Adam Harvey

A case study in incrementing a language's major version: PHP

presented by Adam Harvey

In 2015, the PHP project released version 7.0 of the PHP language. Doing so was the culmination of several years of discussion and hard work to resolve what a new major version would look like, what would be included, and most importantly, what would be broken for existing users.

In the end, PHP 7 was released with almost no backward compatibility breaks for well written, modern PHP 5 co...


13:30 - 14:20 Room 3179 Programming

TeaGL: Tea Time at SeaGL

presented by expohall

This year we're pleased to introduce TeaGL, the SeaGL Tea Swap!

If there's any tea you particularly enjoy, bring it along to SeaGL on Saturday and bring enough for a few other people. Share your tea with the SeaGL community and try some interesting teas brought by others.

Black, green, white, herbal, whatever! All teas are welcome at TeaGL.

The sharing happens all day, so bring your te...


14:20 - 15:00 Expo Hall
Ben Kero

Exploring Security of IoT Devices

presented by Ben Kero

Internet of Things devices are becoming increasingly common in our lives and in our homes. Connected sensors and controls are inexpensive and popular to buy online and in stores. Their sleek plastic shells promise a well designed package, but these devices can harbor surprising secrets.

With a 4-star rating from hundreds of reviewers on Amazon, a slick mobile app, and $99 price tag, the Reol...


15:00 - 15:50 Room 3184 Hardware, IoT
Megan Slater

Client Side Video Editing - Lessons in WebAssembly and FFmpeg

presented by Megan Slater

There's a lot of hype about the potentials of WebAssembly in the browser right now. It elicits hopes about everything from importing new functionalities into browser based applications, to the potential (and in some circles hoped for) death of JavaScript. This talk is for folks who are curious about the real world applications and limitations of WebAssembly as it exists today. Or perhaps for in...


15:00 - 15:50 Room 3180 Programming
John SJ Anderson

You got chocolate in my peanut butter! .NET on Mac & Linux

presented by John SJ Anderson

For most people, the idea of .NET development brings to mind a Visual Studio window, laden with toolbars and wizards, driven by a programmer who makes just as much use of her mouse as her keyboard. The idea of learning C# is more daunting than other languages, because in addition to the language itself, it seems like you also have to learn the correct way to make use of the massive Visual Studi...


15:00 - 15:50 Room 3179 Programming
Adam Michael Wood

Open Source DocOps: How Open Data Kit Writes, Tests, and Publishes Documentation

presented by Adam Michael Wood

Free and Open Source projects are notorious for incomplete and poorly written documentation.

GitHub's 2017 Open Source Survey found that "documentation is highly valued, but often overlooked" with 93% of respondents agreeing that "incomplete or outdated documentation is a pervasive problem."

In attempt to solve that problem, many FOSS projects try to ...


15:00 - 15:50 Room 3178 Documentation
Amanda Sopkin

Monitoring and Alerting: Knowing the Unknown

presented by Amanda Sopkin

Successful monitoring and alerting systems can detect all known points of failure and include alerts that will quickly escalate these problems to the appropriate parties.

The meat of this talk will focus on addressing the problems in a system that have not been thought of specifically. What about the monsters lurking in the dark to strike when your team is out? How do you find those unknown...


15:00 - 15:50 Room 3183 Systems, sysadmin, ops, DevOps
Trevor Menagh

Convincing engineers big business believes in Open Source

presented by Trevor Menagh

My company has not always embraced open source and the ideals it espouses, and in the last few years we have endeavored to radically alter this by embracing open source contributions whole-heartedly at a company-wide level. That being said, change is hard and takes time to sink in. It is our jobs as open source advocates to spread this idea of open source as a first class citizen in the way all...


16:00 - 16:20 Room 3184 Education
Daniel Ramsayer

Accessibility in Front End Environments

presented by Daniel Ramsayer

There are currently over 4 billion internet users world wide. With roughly 19% of the world population experiencing some kind of accessibility limitation, the need for developers who are aware of their limitations and trained in best practices for how to limit the impact those limitations have on users is more important than ever.

In this presentation I am going to give a brief overview of ...


16:00 - 16:20 Room 3178 Design, UX, UI, Accessibility
Laurie Barth

An Intermediate Vocabulary of Tech

presented by Laurie Barth

It is often said that the hardest problem to solve is when two people are talking about different things but believe they are talking about the same thing. As you grow in your engineering career being able communicate about problems effectively is perhaps your single most important skill. This talk exists to distill the breadth of engineering verticals into a quick hit of common vocabulary.



16:00 - 16:20 Room 3179 Education
Jeff Silverman

The impact of lossy networks on TCP performance

presented by Jeff Silverman

TCP guarantees that bytes that go in one end of a network connection emerge at the other end in the same order. This guarantee holds true even if the network is "lossy" or has jitter. To do that, TCP has to be able to detect packets that arrive out of sequence or are lost.

In this presentation, I describe:

  1. How to create a testbed to do network experiments using virtual machines.
  2. ...

16:00 - 16:20 Room 3183 Systems, sysadmin, ops, DevOps
Andy Schwartzmeyer

Take Back Your Data

presented by Andy Schwartzmeyer


This talk is aimed at those with a beginner to intermediate level of experience using technology, and falls under the category of (personal) "Information Security."

In today's world, users have lost control over their personal data. A massive industry has been created by companies such as Google, Amazon, Facebook, Microsoft, a...


16:00 - 16:20 Room 3180 Security, Information Security
Sasha Reid

Structured Playbooks
How to design Ansible Playbooks and applications for reusability

presented by Sasha Reid

Ansible is a powerful and flexible deployment toolkit, but that freedom without structure can often leave you swimming in a sea of playbooks that deploy very similar applications.

When building multiple applications that share structure, those applications can share a "meta-playbook" to deploy them - for instance, your Rails applications probably have environment configuration files, an Apac...


16:30 - 17:20 Room 3179 Systems, sysadmin, ops, DevOps
Benno Rice

The Tragedy of systemd

presented by Benno Rice

systemd is, to put it mildly, controversial. As a FreeBSD developer I decided I wanted to know why.

I delved into the history of bootstrap systems, and even the history of UNIX and other contemporary operating systems, to try and work out why something like systemd was seem as necessary, if not desirable. I also tried to work out why so many people found it so upsetting, annoying, or otherwi...


16:30 - 17:20 Room 3183 Something different
Lyndsey Padget

Push it (Push it Real Good)

presented by Lyndsey Padget

Git. It can be intimidating if you're accustomed to other kinds of source control management. Even if you're already using it and comfortable with the basics, situations can arise where you wish you understood it better. Developers often just want to write code and tell everyone else to take a hike, but the reality is that most of us work on teams where the feature-based code we write must be i...


16:30 - 17:20 Room 3184 Systems, sysadmin, ops, DevOps
James Cooper

Robust image resizing

presented by James Cooper

If your application handles images you've probably written something to crop and resize them. It's simple enough to execute ImageMagick with the appropriate flags, but is that sufficient?

In this talk we will:

  • Explore common pitfalls of naive image resizing implementations
    • Native binary versioning differences (which version of ImageMagick am I using?)
    • Uncapped RAM usage ...

16:30 - 17:20 Room 3180 Programming
Jim Hall

Usability testing in open source software

presented by Jim Hall

Is your program easy to use? Generally, a program has good usability if it is easy for new users to learn, easy for them to use, and easy for them to remember when they use the program again. Usability is not the same as user experience (UX) but they are related. You may think that usability is difficult, but it only takes a little time and effort to make your program easier to use. In this tal...


16:30 - 17:20 Room 3178 Design, UX, UI, Accessibility
Adam Monsen

Conference Reception
At the Silver Cloud

presented by Adam Monsen

The conference reception will include lightning talks, snacks, drinks -- both alcoholic and non-alcoholic and networking and relaxing with your fellow conference attendees. There will be a few door prizes and some gushing about our amazing volunteers. This event is all-ages, although consumers of alcoholic beverages should bring ID.

18:00 - 22:00 Silver Cloud Inn