Ian Dees's favorites

Open Source Bridge 2016

Favorite sessions for this user

* Real World Docker

Let’s deep dive into how New Relic transformed itself to run on Docker.
Jason Clark

* An Introduction to ClojureScript

ClojureScript is a fun, productive language that compiles to JavaScript. Though its syntax is a different its functional immutable nature lets you be productive when developing complex web applications.
Julio Barros

* Behind Closed Doors: Managing Passwords in a Dangerous World

A modern application has a lot of passwords and keys floating around. Encryption keys, database passwords, and API credentials; often typed in to text files and forgotten. Fortunately a new wave of tools are emerging to help manage, update, and audit these secrets. Come learn how to avoid being the next TechCrunch headline.
Noah Kantrowitz

* Bringing OOP Best Practices to the World of Functional Programming

I transitioned from writing software in imperative, object-oriented (OO) programming languages to doing functional programming (FP) full-time, and you can do it, too! In this talk, I'll make a case for FP in the corporate development environment, cover some cases where common FP language features substitute for design patterns and OOP structure, and provide some examples of translating traditional OO design patterns into functional code.
Elana Hashman

* Creating a Third Wave of Free/Open Source Software

The free/open source software movement is over thirty years old, and has gone through a number of changes in that time, spawning projects large and small (including OpenConferenceWare, which runs this site!). If Free Software is the first generation, and Open Source is the second, current efforts toward creating an inclusive and sustainable world make up a third generation that we can start to form into a broader plan.
Audrey Eschright

* Documentaries, Accessibility, and Open Culture

I've been making a documentary film about accessibility for almost a year now. What I've realized is that film is fundamentally hard to access. Let's talk about what that means for culture, creators, and consumers.
Chris Higgins

* Dodge Disasters and March to Triumph as a Mentor

Good engineers write good code, but the best engineers raise the skills of their junior colleagues, too. If you're a senior engineer, you must learn to mentor new hires. Besides, great mentors are critical to the careers of women and minorities in tech. I have failed at mentoring, then succeeded. Learn from me and march to mentorship triumph.
A. Jesse Jiryu Davis

* Exploring Mental Illness With Open Source

Julia Nguyen leads if me, an app to share mental health experiences with loved ones. In doing so, she has explored her insecurities with mental illness, learned how to engage diverse contributors, and developed better software practices with Ruby on Rails and JavaScript. She’ll share the lessons she has learned from transforming a passion project into an open source project. Inclusion takes on many forms in an open source project, including supporting contributors from all types of backgrounds, being empathetic to their project goals, and trusting them to take lead. As a mental health project, if me must also accommodate its contributors who face their own mental health challenges. All open source projects should do the same. Managing people is just as important as managing technical contributions in software.
Julia Nguyen

* Free Culture in an Expensive World

Money is a common worry, inside the open source community and out, but we often feel uncomfortable discussing it. We’ll talk about why that is and how our social norms around money impact who participates in open source and how they do so. The heart of this talk will be a series of case studies based on interviews with community members covering various economic models for open source, including worker co-ops, grant-funded and academic projects, for-profit business models, crowdfunding campaigns, and all-volunteer projects. We’ll explore the sustainability of each model as well as how they deal with the social pressures outlined in the first part of the talk.
Shauna Gordon-McKeon

* Great Asana!

Bring your stiff shoulders, sore wrists, tight hips, aching back, and busy mind and explore how Yoga can help bring you relief, rest, and focus. Leave with ideas on how to incorporate 5 minutes of practice into your busy day to care for your body and mind. This class is accessible to all levels of ability.
Sherri Koehler

* Hardware Hula Hoops and Flow

In psychology flow is the honed in energized focus you get when performing tasks that are challenging that can be experienced in hula hooping and programming.
Lindsey Bieda

* Hogwarts is a Terrible Learning Environment: Discuss

Like many young Muggles of the early 00's, I dreamed of receiving my Hogwarts letter. But re-reading the series with an eye toward learning lessons about creating a positive learning environment, it's clear that Hogwarts School of Witchcraft and Wizardry contains some unfortunate lessons in what NOT to do. When it comes to crafting an environment that encourages asking questions, fosters cooperation, and ensuring the success of its developers -- I mean, wizards -- we can learn a lot from the mistakes of the Hogwarts faculty. In this magical talk, you'll learn how to be a better mentor and help your workplace become a place where your junior developers can flourish.
Lacey Williams Henschel

* Inside Websockets

Protocol design is about tradeoffs, and if you pick the wrong tradeoff, you may regret it for a very long time. Any time you have one part of a program talk to another part of a program, you have a protocol. In this talk, we'll dig into the details of how WebSockets work and what decisions the designers made.
Leah Hanson

* Less Painful Legacy Code Replacement

Replacing legacy code is a challenge on every front, from managing stakeholder expectations to tackling the technical work. Thoughtful preparation and a pocket full of tools can make the experience a little less painful.
Jennifer Tu

* Little Leaks Sink Your Tests

"The tests pass on my machine." "Wait, it was working a minute ago." "Oh, that test is flaky sometimes." Unpredictable tests are toxic for our productivity. They undermine confidence in our code. They encourage us to wallpaper over the immediate problem, rather than fixing the underlying cause. In this presentation, we'll talk about a chief cause of flaky tests: leaky global state.
Ian Dees

* Micro-services provide some benefits, but at what cost?

Several years ago, there was an architectural paradigm shift toward "micro-services" and away from the "monolithic" application stack. A micro-service architecture comes with scalability and replaceability, among others, but is it worth the time and effort to build it? Is it worth debugging API calls gone wrong? If you're thinking about making this move, have already started, or have already deployed to production, this is an ideal venue to see what others are doing with micro-services.
Serge Domkowski

* Monitoring Asynchronous Applications

The lure of asynchronous programming is that it will make your application run faster and your code simpler to reason about. So we have our wonderfully efficient non-blocking app; how do we check that it's delivering the goods performance wise?
Amy Boyle

* Monoids, and Sketches, and CRDTs, oh my!

A (hopefully) accessible introduction to some of the key mathematical concepts that make distributed and streaming computation possible.
Kevin Scaldeferri

* Sustainable Career Development: Advancing While Still Having Free Time

In this talk, we'll examine the pressure in the tech industry to participate in work-related extracurriculars like side projects and meetups. We'll analyze where these expectations come from, what they're actually getting at, and talk about ideas for progressing in our careers without losing sight of the things in life that make us happy outside of work.
Noelle Daley

* The Key Of Chaos

We built an open-hardware random number generator. We'll tell you all about it.
Bart Massey

* Type Theory 101

Have you heard about type theory and always wanted to understand the principles behind it, but always thought it was too complicated since it has a lot of Lambda Calculus and algebras? This talk will approach these concepts in a friendly way.
Hanneli Tavante

* Unikernels and Containers: How to Even

Let's talk about what containers and unikernels -- two oft-compared technologies -- even are, how they work, and what problems they solve.
Mindy Preston

* Unraveling the Masculinization of Technology

Have you ever wondered where the perception that technology is a masculine pursuit comes from? Or why we have to explain that, "no really, women are interested in computers too"?
Audrey Eschright

* What Hath Von Neumann Wrought? Programming before programming languages

We program today in a rich environment, but that wasn't always the case. We celebrate the pioneers of programming languages: Grace Hopper (COBOL), John Backus (FORTRAN), John McCarthy (LISP), Kenneth Iverson (APL) and Peter Naur (ALGOL). But there was a time before programming languages. How did people program back then? I'll show you!
M. Edward (Ed) Borasky

Favorite proposals for this user

* Building Your World in WebVR

We will explore how we can utilize webvr to build amazing VR experience right into everyone's pocket, using their mobile phones they use right now. No need for expensive or closed source tools or solutions. Utilize the mobile phone with cardboard and uisng just javascript and html to build VR world. How using api's of webvr and Aframe we game developers and UI builders can build awesome experience.
Theory 2016-04-10 00:12:11 +0000
Rabimba Karanjai

* Can Online Interaction Match some of the Magic of Face-to-Face Collaboration?

Join this interactive session connecting what we know about face-to-face collaboration and how and why it works with what online dialog, games, berry-picking, wayfinding and other large scale activities can accomplish.
Theory 2016-04-17 17:20:06 +0000
Carie Fox

* Designing and Writing Secure Software

Attackers only need to be right once, but developers have to be right all the time. Secure software development practices are essential.
Practice 2016-04-13 23:34:56 +0000
Aaron Jensen

* Domain-Driven Data

There are many types of open source databases and data analysis tools from which to choose today. Should you use a relational database? How about a key-value store? Maybe a document database? Or is a graph database the right fit for your project? What about polyglot persistence? Help!
Practice 2016-04-13 22:03:19 +0000
Bradley Holt

* Exploring Functional Programming Through Games

How do you decide whether a new programming paradigm is worth learning or not? I ask myself a simple question: can I use it to make games in a simple way? Learning by playing is super fun. Allow me to take you on a thrilling journey to explore functional programming through JavaScript games. Let us dive deep into functional features that will help us approach complex problems from new directions and write bulletproof code.
Practice 2016-04-09 00:04:06 +0000
Khalid A

* From Mobile First to Offline First

It's all too easy assume that your web or mobile app will run on a fast and reliable network with great coverage. The reality for your app's users, though, is often a slow and unreliable network with spotty coverage. What happens when the network doesn't work, or when the device is in airplane mode? You get unhappy, frustrated users. Building on the principles of mobile first, offline first is an approach to application design in which a web, mobile, desktop, or Internet of Things (IoT) application is built for offline usage first and is then progressively enhanced to take advantage of network connectivity when available.
Practice 2016-04-14 19:20:48 +0000
Bradley Holt

* Hackers & Hearthstone & Humanity

Sometimes the tech community can feel like it is without soul so Hackers & Hearthstone was created to focus on the cool things people are doing within the technology world.
Culture 2016-03-30 15:24:46 +0000
Lindsey Bieda

* Lossless Emoji - Doing Emoji Right

Learn how difficult it can be to do emoji right and what you can do to preserve the message and emotions of your users. If you take user input, you owe it to the internet to attend this talk.
Practice 2016-04-13 07:21:09 +0000
Ryan Kennedy

* Made in the Machine: New Cultural Practices, Critical Analyses, and Techniques in Digital Fabrication, Making, and Manufacturing

I first knowingly witnessed the "Maker Movement" in 2010, heeded its siren call by joining the MIT Media Lab in 2011, and became disillusioned later that year. But I've been stubbornly making--and critiquing the notions of Making--ever since.
Culture 2016-04-11 00:20:51 +0000
Arlene Ducao

* Open Source Fan Service

What can you do when someone submits a bad patch to your project? To begin, we have to understand why people hunger to contribute code: they're fans. You hurt fans' feelings when you reject their patches, but you hurt your project if you accept them. You can get out of this bind! Give your fans other ways to be recognized. Showcase their plugins in your project’s wiki, or rewrite their patches while giving them credit, or feature their related projects on your site.
Culture 2016-03-26 21:59:46 +0000
A. Jesse Jiryu Davis

* Open Source Your Ideas: Why You Should Keep A Blog

Blogging is a great way for developers to share with the community the kind of things they've been learning and working on. By keeping a regularly updated blog, we force ourselves to continually evaluate the things we're learning, while sharing these ideas with the community at large.
Culture 2016-03-27 23:52:56 +0000
Andrew Pierce

* Our daily graphs with Neo4j

Have you ever noticed that many situations could it be expressed with a graph? Graphs are not only a boring subject into College, they can be really useful in many situations. This talk will show you some graph modelling with a nice graph database written mostly in Java: Neo4j. Through examples, we will see a little bit about graph theory, a quick introduction to Neo4j architecture, a handful tool called Cypher, non-trivial modelling and use cases.
Practice 2016-04-16 17:23:33 +0000
Hanneli Tavante

* Peeking into Ruby: Tracing Running Code

Your Ruby app is in production, but something isn’t quite right. It worked locally, it passed CI… why’s the running app acting weird?
Practice 2016-04-07 16:46:30 +0000
Jason Clark

* Technical writing as public service: working on open source in government

What if U.S. federal agencies decided to reuse and contribute to open source software projects built by other agencies, since agencies often have similar technology problems to solve? And what if they hired technical writers with open source community experience to write documentation for these projects? That would be pretty cool. Also, that’s my work. I'm part of 18F, a digital services consulting team within and for the federal government, and all of our work is open source.
Practice 2016-04-06 00:21:15 +0000
Britta Gustafson

* The JSON-Driven Schema

Learn how to use Postgres to explore a JSON data set.
Practice 2016-04-12 16:58:07 +0000
Jason Owen

* What Shipping Containers Can Teach Us About Digital Content Standards

Global trade wouldn’t be as efficient without the invention - and standardization - of shipping containers. Standardized containers have globalized our economy across the shipping industry in a way that wouldn’t have been possible otherwise. What can this earlier standardization effort teach us about the tools and systems we’re building today? What are the struggles of our digital age? How are the struggles of shipping goods in 1950s similar to our content struggles now - and how can we move forward?
Theory 2016-04-11 18:07:00 +0000
Kendra Skeene, Nikhil Deshpande

* When Harry Met Iannis 2016

Iannis Xenakis passed away on February 4, 2001. When he arrived in Heaven, he sought out his mentor, Olivier Messiaen. Messiaen said, “Iannis, there’s someone here I want you to meet.” The two walked over to a small sidewalk cafe, and there sat Harry Partch. And so from this fanciful meeting in Heaven, “When Harry Met Iannis” was born. Now I'm not a carpenter like Partch was, and I don't have access to conductors or orchestras like Xenakis did, so I'll have to synthesize instruments and performers. The software that makes this possible is an open-source language called ChucK. I'll talk a bit about the Partch music theory, Xenakis' use of game theory and the ChucK language. But mostly, this talk is about the music and not the tools that made it. And you'll be the first to hear "When Harry Met Iannis 2016" in its entirety.
Practice 2016-03-15 03:35:20 +0000
M. Edward (Ed) Borasky

Open Source Bridge 2015

Favorite sessions for this user

* "R" You Ready for Some Football? Hacking Fantasy Sports with Open Source Software

You've probably heard about "robot jounalism" - computers writing finance and sports stories. Well, there's just one teensy little problem with robots writing finance and sports stories: investors and fantasy sports gamers don't want the data turned into text! They want their data raw, right and fast. They need clean, timely data to make objective decisions using tried-and-true statistical methodologies. So I'm not going to talk about robot journalism - I'm going to talk about fantasy sports: getting the data, analyzing it and using statistical decision-making tools to enhance the probability of winning.
M. Edward (Ed) Borasky

* A Profile of Performance Profiling With pprof

When our code is slow, performance gains can often difficult to obtain. Our ideas of where to focus our attention are often wrong. pprof has become my go to tool, and it's easy to see why. Together we'll learn how to understand pprof's output to help us zero in on the parts of our code that need the most love.
Lauren Voswinkel

* Cat-herd's Crook: Enforcing Standards in 10 Programming Languages

At MongoDB we write open source database drivers in ten programming languages. Ideally, all behave the same. We also help developers in the MongoDB community replicate our libraries’ behavior in even more (and more exotic) languages. How can we herd these cats along the same track? For years we failed, but we’ve recently gained momentum on standardizing our libraries. Testable, machine-readable specs prove which code conforms and which does not.
Samantha Ritter, A. Jesse Jiryu Davis

* Consequences of an Insightful Algorithm

We have ethical responsibilities when coding. We're able to extract remarkably precise intuitions about an individual. But do we have a right to know what they didn't consent to share, even when they willingly shared the data that leads us there? How do we mitigate against unintended outcomes? In this talk, we'll learn how to build in systematic empathy, integrate practices for examining how our code might harm individuals, and net consequences that can be better for everyone.
Carina C. Zona

* Dog Food is for Dogs: Escape the Crate of Your Perspective with User Research

Dogfooding—using your own products—is nice, but is it sufficient to produce good design for people who aren’t you? Our familiarity with our projects and their quirks makes us poor substitutes for users in the wild. So just who are these users, and how do you incorporate them into design and development? In this workshop, we'll explore user experience design and research strategies that will help you design for people who aren’t you.
Rachel Shadoan, amelia abreu

* Email as Distributed Protocol Transport: How Meeting Invites Work and Ideas for the Future

Learn how meeting invites work and some crazy other ideas for distributed protocols built on email.
Christine Spang

* Fear Driven Development

Have you ever not made a much-needed change because you were afraid of breaking something? Caution is wise, but too much fear can leave even the most agile of software organizations with a crippling aversion to change. This talk will discuss what makes us scared, why it hurts us, and my experiences helping a team I managed get rid of some of our fears.
Ryan Kennedy

* Hacking Minecraft!

Minecraft is an incredibly popular game with developers. I'll give a brief tour of opportunities to practice your craft in the Minecraft world and walkthrough some tutorials using popular open source projects.
Jonan Scheffler

* How To Be A Great Developer

Being a great developer is much more than technical know-how. Empathy, communication, and reason are at least as important, but are undervalued in our industry. We'll examine the impact these skills can have and how to apply them to our work.
Ed Finkler

* How to Teach Git

Version control is a necessary piece of the open source community and git has an unfortunately steep learning curve. Here is what I have learned from teaching git to beginners, so you don’t have to make the same mistakes.
Georgia Reh

* How you tell the story matters: telling better stories and making better technologies

What happens when we tell stories? How do we tell stories about the technology we build, why do some stories get told over others? How do we talk about our successes, and how do we not talk about our failures? Whose stories get heard: how do women, people of color, disabled people, and “non-technical” workers get left out of the stories we hear? In this talk, I'll explore the role of storytelling in technology, and share what I've found about telling better stories.
amelia abreu

* HTTP Can Do That?!

I have explored weird corners of HTTP -- malformed requests that try to trick a site admin into clicking spam links in 404 logs, an API that responds to POST but not GET, and more. In this talk I'll walk you through those (using Python, netcat, and other tools you might have lying around the house).
Sumana Harihareswara

* Making the web fun again

When Geocities shut down, it did much more than delete a bunch of obnoxious dancing baby GIFs and Limp Bizkit MIDI files. It deleted the ability for people to easily create web sites, and learn how to be in complete control of the content and presentation they provide to their audience. To the economically and socially disenfranchised, it was a disaster that prevented countless people from learning programming. So we brought it back, and open sourced the entire thing (including our financial data). Leave your nostalgia at the door - let us show you our efforts to pave a better future for tech startups, the tech community, and the future of the web itself.
Kyle Drake, Victoria Wang

* Monads Made Semi-Understandable

The word monad is all around us. I've heard long explanations of it that seem to over complicate it or make it intimidating. At Hacker School one of my goals was to learn some category theory, and understand the beast. I finally got it, and it wasn't so bad. I wanted to explain monads in a way that would not intimidate people and that would so some solid examples so if they felt like i had before, I might be able to help.
libby kent

* Probably

If you want to understand probability better (and you should), this is the talk for you.
Bart Massey

* Project Fear

Project fear, not dissimilar to imposter syndrome, tends to affect all project leaders at some point (or many points) in their career. This session will tackle project fear by fully defining it, investigating its roots, noting its symptoms, and ultimately discussing a number of successful coping mechanisms.
Adam Edgerton

* Reinventing black boxes

Open source has a long history of reimplementing, and reverse engineering proprietary tools. This talk will integrate the tools needed to reverse engineer into stories of how it has been done before.
Daniel Johnson

* Stronger Than Fear: Mental Health in the Developer Community

Mental disorders are the largest contributor to disease burden in North America, but the developer community and those who employ us are afraid to face the problem head-on. In this talk, we'll examine the state of mental health awareness in the developer workplace, why most developers feel it isn't safe to talk about mental health, and what we can do to change the culture and save lives.
Ed Finkler

* Testing the Multiverse

It’s a basic principle of testing that minimizing dependencies will make you happier, faster, and more productive. But what happens when you can’t?
Jason Clark

* The Open Source Writing Stack

Open source makes writing and publishing much easier both online and in print — provided you know what tools to use. This talk covers those tools (from LaTeX to WordPress) and how to choose between them.
Thursday Bram

* Tricking Out the Terminal: An Introduction

A beginner-focused overview of the particulars and pitfalls of the command line and several common shells, with a focus on improving developer workflows, exposing common default tools, implementing useful open-source tools, and inserting emoji into prompts (pretty much the best part of customizing the terminal).
Lydia Katsamberis

* What's in a name? Phonetic Algorithms for Search and Similarity

Search can be as simple as returning a word or part of word based on character similarity. LIKE and wildcard matches can be sufficient, but can only account for character or string matching, and fail on misspelled words or names. Phonetic algorithms can help us find matches for misspellings and typo'd user data.
Mercedes Coyle

* When Your Codebase Is Nearly Old Enough To Vote

What do you do when your project is so old that technology has changed around you? (Or, how do you future-proof a project that you've just started so that when it gets that old, you'll be ready?) Come hear a case study of Dreamwidth Studios, a fifteen-year-old web app with a codebase consisting of a quarter million lines of legacy Perl and a mission to modernize ... if it doesn't break everything.
Denise Paolucci

* You Got Your Idris in My C++! A First Look at Denotational Design

Programmers gripe that we have two kinds of programming languages: the ones we write in for fun, and the ones we write in because we have to. We may enjoy coding that weekend project in Agda, but we have to leave that smile behind on Monday morning when we go back to Java or C++. But is that really the case? Or can we find a way of bringing the expressiveness, the rigor, or the fun of our favorite languages into our day jobs?
Ian Dees