strugee.net

Talks

All of these presentations were built with <3 with Bespoke.js with the exception of "Introduction to Arch Linux" and "Pulling back the curtain with SeaGL's Tech team" (which were written with <3 using LibreOffice Impress).

Introduction to Arch Linux

An introduction to Arch Linux - why it's awesome, how to use the tools that it provides, and how to interact with the community.

The presentation will roughly cover:

  • The Arch Way (basic philosophy of the distro, etc.)
  • A basic outline of the system installation procedure
  • How to use pacman, the PACkage MANager, and the AUR, the Arch User Repository (where you get software not in the official repos)
  • How to engage with the community/get help (and not get flamed)

Presented at LinuxFest Northwest 2014.


Just Do It: The Approachability of Free Software for Beginners

We all know that one of free software's greatest strengths is the ability to do whatever you're interested in, without asking for permission. But even though we all know, we don't talk about it that much, and in particular, we don't talk about the significance of what that strength means for those who are just beginning their programming careers.

"Just Do It - The Approachability of Free Software for Beginners" will put forth the idea that the only tools that are approachable for beginners while still leading to the ability to produce what we would call "high quality" software are all free software tools. It will talk about the ability of free and open source software to inspire curiosity and interest and the role of that curiosity in bringing new programmers into our community. Finally, it will explore some of the areas that this model fails in, and what we can do to fix it.

Presented at SeaGL 2015.

Available in slide form and source form.


I've written several longer presentations for workshops run at the Recurse Center. All of the following were written for Security Club, which I ran weekly on Thursdays for three batches. "Security design" in particular was originally presented as a part of Beginner Club, which was the genesis for Security Club.

Security design

How to design programs securely

Webapp security

How to secure webapps

Operational security

How to run a secure production environment

HTTPS deployment

Basics of HTTPS and how to deploy it

Cryptography basics

Basics of cryptographic protocol design


Pump.io + Community = ♥

Pump.io is a promising project to create a federated social network. It was abandoned for a while, but its maintainer has recently started transferring governance and code maintenance to the community. Come to this talk to learn details about what Pump.io is, why it's awesome, and the future plans for it.

This was originally a lightning talk dealing mostly with the community, but was expanded to a full session. The extra time was used to talk a little about the history of where pump.io comes from and its API.

Original LinuxFest Northwest 2016 version available in slide form, source form, and on MediaGoblin and YouTube.

Also presented at LibrePlanet 2017; available in slide form, source form, and on MediaGoblin.


More presentations for workshops run or co-run at the Recurse Center, mostly as a part of Beginner Club. I have omitted workshops on intermediate Git usage (parts 1 and 2), operating systems, and the Linux command line because these workshops didn't have slides.

Webapp performance

Making webapps fast

Publishing

How to publish a web app

Intro to free software/open source

Crash course on the basics of contributing to free software/open source


Stratic - the (super-modular) streaming static site generator

Do you like the idea of static site generators - programs that spit out HTML files that can be served by any old webserver, without invoking a huge steaming pile of PHP - but find that Jekyll is way overcomplicated? Wintersmith too monolithic? Perhaps Pelican isn't flexible enough?

If the above sounds like you, and you appreciate Node.js and the npm ecosystem's preference for small modules (aka the Unix Philosophy), you'll love working with Stratic. This talk will teach you about a new kind of static site generator that, instead of reinventing the world (or wrapping it with brand-new plugins), builds on top of existing npm modules in order to provide you with greater modularity, flexibility, and clarity than any monolithic static site generator can hope to offer. Best of all, there's no steep learning curve: if you already know Gulp.js - and it isn't that hard to pick up - then you already know how to use Stratic.

Presented at LinuxFest Northwest 2017.

Available in slide form and source form, as well as on YouTube.


Chaos in the System

Why simple solutions don't work when they should

This talk will critically examine the current state of computing through the lens of a highly-portable POSIX shell script I wrote, filter-other-days. The problem that filter-other-days is solving is seemingly simple: find all log entries on the entire system from the current date. But because of modern systems' complexity as well as applications' tendency to use disparate logging systems, we need to turn to a counter-intuitive solution: filtering out all other dates from the logs, which is what filter-other-days does.

This seems perverse. I supposedly control most boxes on which I run filter-other-days, and yet I don't have enough control over them to solve this problem without the backwards approach filter-other-days takes. Using examples from filter-other-days we will briefly discuss the broader problem of UNIX portability and how hard it is to make a shell script reliably run everywhere before diving into an even larger problem that filter-other-days is emblematic of: our inability to understand and control the complexity of our own computing systems. At the end of the session I will present some ideas for possible ways to start thinking about the portability and complexity problems, and then facilitate an audience discussion around the same. Active participation is highly encouraged.

Presented at SeaGL 2019.

Available in slide form and source form, as well as in video on the Internet Archive.


Pulling back the curtain with SeaGL Tech

Ever been curious how SeaGL has produced a conference for 10+ years - first in-person, then virtual and hybrid? It takes a lot of hard work, but also a lot of tech!

This talk will give a whirlwind introduction to the free software projects we use to run SeaGL. We'll talk about how the Tech team works with - and benefits greatly from - the broader free software community and maybe even meet some of the humans behind your favorite grassroots conference!

Presented at SeaGL 2023.

Available in slide form. Video coming soon!


CryptoParty Seattle

CryptoParties are a global movement of people who get together to teach each other basic privacy tools, in order to ensure their right to privacy from spying eyes like Internet Service Providers, corporations like Google and Facebook, and the government (including the NSA!).

Participants will learn how to protect themselves against mass surveillance with technologies like:

  • Tor Browser Bundle
  • Tor Messenger
  • Signal

No prior experience is required.

Presented at TA3M Seattle's August 2014, June 2015, and December 2016 meetings. (The above description was written for the most recent event; earlier CryptoParties covered PGP, used Pidgin instead of Tor Messenger, and had different honorable mentions.)

All three versions available in slide form.


There are also a couple smaller/less interesting presentations written as 10-minute topic introductions for Seattle Academy's robotics program.

RobotC basics

Introductory presentation on RobotC (back when FTC used RobotC - thank god those days are over!).

Sensors

An overview of sensors available in robotics. Also written during the NXT/RobotC days.

~