Cooking track

How did you get something to work? Show us how to write the script, configure the utility, debug the code. Share your best recipes.
From the beginner to the advanced level, we’re looking for tips, tutorials, best practices, and collaborative development sessions. Share what you know about your favorite tools, programming languages, and development techniques. Example topics from the past include “Data Science in the Open” and “Hands-on Virtualization with Ganeti.”

Sessions for this track

* Come Make a Map: Completely Custom, Open Source Maps with TileMill

Map making doesn't have to be hard. Anyone can do it. And we'll show you how, using the open source design studio TileMill. Come make a map!
Cooking
Justin Miller

* Cool Features of the Z Shell (zsh)

Z Shell is a UNIX shell with a bunch of cool features. Learn about installing and configuring zsh with some of my favorite features.
Cooking
Michael Pigg

* Data & Applications Across the Void :: Distributing Systems

I'll be covering the technology that is now being used for the largest scale systems and how that technology is used, how it is connected, and how it keeps large volumes of data available for everything from genomic research, mass e-commerce processing or keeping medical data safe from loss.
Cooking
Adron Hall

* Database Change Management

Survey of Open Source Java based tools for managing database changes with emphasis on automation using dbdeploy, Flyway, and Liquibase.
Cooking
Todd Lisonbee

* debugging without borders

Debuggers are great when you have intimate access to your codebase, server, and network. Sometimes, all you have is a web browser and some intuition, and you still have a problem to solve. What then?
Cooking
chris mccraw

* Firefox Bug Rodeo!

Hands-on Bugzilla wrassling, Firefox busting, barrel riding showdown. Enter the dazzling gladiatorial arena of BUG TRIAGE with MOZILLA! We will make bugzilla.mozilla.org accounts, practice reading and understanding bug reports, discuss why and how to investigate and add information to bugs, explore searches and reports, and feel the glorious feeling of contributing to open access to information and awesome browsers for all!
Cooking
Liz Henry

* FiveUI: Open-source UX tests for the common good

Testing User Interfaces is hard! FiveUI [1] is here to help. While FiveUI happens to provide a handy framework for doing headless and interactive UI testing; it is really intended for sharing tests and sharing a framework for executing them. FiveUI consists of a browser extension (for Firefox and Google Chrome), a headless batch system, and a set of UI consistency guidelines. The guidelines are written in JSON and Javascript such that they remain readable and understandable to human developers, without being tied to a specific application. The guidelines can be checked on an individual web page by hand using the browser extensions, or on an entire website using the headless system. [1] http://galoisinc.github.com/FiveUI/
Cooking
Benjamin Jones, Rogan Creswick

* Innovating Faster with a Micro-Service Architecture using SBT, Continuous Delivery, and LXC

A case study of the tools and techniques used at Gilt Groupe to develop and deploy a system composed of over 200 micro-services.
Cooking
Kevin Scaldeferri

* Intel Atom for Makers and the DIY Community

Learn about the MinnowBoard, a new open source embedded hardware platform for hackers and makers.
Cooking
Scott Garman

* Let The Internet Work For You

Creating a successful Open Source project isn’t intuitive, or easy. Converting a brilliant idea into a working code base, then publishing it to Github (with significant adoption) is hard enough, nevermind building an ideal development and release workflow. Sometimes, getting your OSS code out to the community is the easy part -- then the real work ensues. Juggling between the roles of; creator, maintainer and contributor while managing the interests of the group effort (IRC, mailing lists etc) and issue trackers can quickly scale from simple and exciting, to a time consuming full time job. I plan to take you on a ride, demonstrating how Open Source developers can leverage free service offerings (for open source) to make your life as a project maintainer easier and more rewarding; from development and QA automation through to continuous deployment.
Cooking
Sebastian Tiedtke

* Library of the future: building the Multnomah County Library website

The Multnomah County Library website has combined Drupal, Solr Search, Nginx, Varnish and a host of other technologies to build a highly scalable web infrastructure. The site takes advantage of responsive design techniques to provide patrons—the people who check out the books—with an impressive mobile experience.
Cooking
Joshua Mitchell

* Literate Programming for the 21st Century

Knuth advocated writing programs for people, not computers. How does crafting code with literate programming play with quick iterative development? Example heavy session using org-mode's Babel project and progrmming languages with succinct syntax, like Scala and Clojure.
Cooking
Howard Abrams

* Low-Friction Personal Data Collection

Have you ever wanted to track your movements, sleep, what you eat, who you spend time with, and all sorts of other personal data? In this talk I'll describe the tools I've been able to successfully use to track aspects of my life.
Cooking
Aaron Parecki

* Metrics - What's your code actually doing?

Metrics tell us what our code and our systems are doing and how well they are performing. Proper instrumentation of our systems allows developers and sysadmins to have a better understanding of how code works in production settings.
Cooking
James Burkhart

* Mod your Android

Take control of your hardware by installing an open build of Android. Learn about what is involved in installing a third-party OS on your phone or tablet. Bring your own device to hack on in a supportive environment.
Cooking
Jesse Hallett

* More Code, More Problems

Some people will tell you that you need a large, full-stack framework to do web development The Right Way. These people are wrong.
Cooking
Edward Finkler

* PHP for Pirates: pillaging interactive debugging from Ruby and JavaScript.

It's sad that in 2013, var_dump and die are still two of the most common debugging and reflection techniques in PHP. Let's explore the state of interactive debugging in PHP, compare it with what's available in other languages, and apply this with practical tools and techniques which can be used today.
Cooking
Justin Hileman

* Polling: It's Good Enough for the WWW & It's Good Enough for You

Lately everyone loves pushing: you get push notifications on your iOS device, cloud to device messages on your Android device, and something about web sockets. Pushing seems natural. "Hey! I have some data for you, let me send it to you," says the pusher. Too bad it doesn't scale effectively.
Cooking
Jessica Lynn Suttles

* Programming Is Debugging, So Debug Better

Debugging: The schedule destroyer, the confidence sapper, the mire in which thousands of working hours are lost every day. It's time to stop staring at those four lines of code, desperately willing the bug to appear. This session is about the philosophies that will steer you around bugs, strategies for dealing with them, and tools that can shorten a four-hour debugging session to five minutes.
Cooking
Yoz Grahame

* Quick Cure for the Shame of Untested Software

As the founder of a company focused on software testing, I speak often to developers who admit in private: "Yes, testing is important... but we don't test." Reasons vary, but the basic problem is that testing is seen as too difficult and time-consuming with no apparent value for the effort. In this talk I hope to convince you that this problem is a false dilemma and show you how to get started testing software quickly and easily.
Cooking
Daniel Nichter

* Remote Pair Programming

Remote Pair Programming: my setup, some advice, and a live demo^H^H stress test
Cooking
Sam Livingston-Gray

* Rust: A Friendly Introduction

Conventional wisdom says that writing high-performance code means working without the safety net of credible compile-time safety checks. Mozilla Research (a community of researchers, engineers, and volunteers) is trying to prove that conventional wisdom wrong by building Rust, a new systems programming language. Rust takes advantage of well-understood programming language technology to combine aggressive compile-time error checking with the high degree of direct control over the machine necessary to write efficient systems programs. By way of examples, I'll teach you how to use Rust to write fast and trustworthy code.
Cooking
Tim Chevalier

* Search-first writing for non-writers

Search-first writing makes you think about the structure of your document and product as a series of topics, instead of a big book. The days of linear documentation are over, or at least numbered. Users are much more likely to come to documentation through searches. As an open source creator, you may not have a writer to help you out with this, so how can you maximize their return on your minimal investment?
Cooking
Heidi Waterhouse

* Taming Your Inner Cowboy Coder - A Simple And Sane DevOps Workflow

Moving sites from your development environment to a staging or production server can be time-consuming and challenging. This session will provide you with easy-to-use tools and workflow to bridge the gap between development and operations.
Cooking
Greg Lund-Chaix, Evan Heidtmann

* Test Driven Development with AngularJS

Learn how to practice test driven development in JavaScript using AngularJS
Cooking
Joe Eames

* Training the trainers

This long session is a tutorial, with exercises, on how to run welcoming, effective outreach events targeted at bringing newcomers into your communities.
Cooking
Asheesh Laroia

* Unicode Best Practices

Developing applications to handle the natural languages and written scripts of the world—or even a small handful of them—is an impressively large task. Fortunately, Unicode provides tools to do just that. It’s more than just a character set, it’s a collection of standards for working with the world’s textual data. The problem is: Unicode itself is complex!
Cooking
Nova Patch

Proposals for this track

* A Year with Mojolicious, the Perl Web Framework

Mojolicious is a relatively new web framework written in Perl, but I've been using it for a year to power a REST API, two web apps, and a website. In this talk I introduce Mojo and discuss its fun and not so fun parts, particularly in view of using it as the sole backend for a real SaaS-based, PaaS-deployed business. Join this talk and learn about Mojolicious--a fun, new Perl web framework--from someone who's spent a year in the field with it.
Cooking 2013-03-09 01:37:51 +0000
Daniel Nichter

* A/B Testing How-To for Web Applications

Multivariate Testing (also called A/B or Split Testing) lets you determine the best "choice" by showing each choice to a subset of your customers and measuring the results. Of course, you've already heard about it since Google has been doing these sorts of experiments for years, but how to begin? I'll show you the tools you'll need and code you'll write, with plenty of examples. I'll share tips and tricks from the trenches to improving your customer experiments.
Cooking 2013-02-25 19:18:55 +0000
Howard Abrams

* Automating Java Managed Beans

Java supports exposing management interfaces through JMX beans. Traditionally using these beans requires connecting to a Java process using JConsole and manually interacting with the beans. In this talk we look at using an open-source tool called cjmx along with scripting tools such as expect to automate this process.
Cooking 2013-03-23 11:09:32 +0000
Michael Pigg

* Building Google Voice with Rails, Backbone, and Twilio

Google Voice may seem like it's performing black magic, but every developer can integrate the same features into their applications today.
Cooking 2013-03-05 21:56:11 +0000
Kevin Whinnery

* Come Make a Map: Completely Custom, Open Source Maps with TileMill

Map making doesn't have to be hard. Anyone can do it. And we'll show you how, using the open source design studio TileMill. Come make a map!
Cooking 2013-03-22 19:03:44 +0000
Justin Miller

* Cryptography: Demystified

Understanding and Trusting Cryptography
Cooking 2013-02-17 23:26:22 +0000
Renning Bruns

* Developing For the Cloud...In The Cloud!

We give an indepth introduction to the cloud based developers tool kit. This allows the developer to develop code in the cloud with the code (almost) never touching the hard drive.
Cooking 2013-03-11 15:00:34 +0000
David Duggins

* Digital Nomad: How to stay connected anywhere in the world

For some of us staying connected to the internet is an imperative, and while traveling to foreign lands it can sometimes be difficult to remain connected. Let me share with you some of the techniques that I've discovered for remaining connected while abroad.
Cooking 2013-03-10 04:48:51 +0000
Benjamin Kero

* Getting More out of Git

Git has a complicated UI, but tremendous power once you understand the simple data model at its core. Learn how Git thinks and some versatile, less-well-known features that give you new insight into the code you use and help you better collaborate on code you write.
Cooking 2013-03-10 09:10:53 +0000
Greg Price

* Git & GitHub for Ninjas

You're a git user, and you love what it does for you. Learn how to take it to the next level, straight from the experts at GitHub.
Cooking 2013-03-06 18:29:41 +0000
Ben Straub

* Git Going with Github

Git is hard. There's no way around that. But it's also incredibly powerful. Github is not all of git. It's not even most of git. But it's (mostly!) friendly, and getting a handle on it opens up worlds of possibilities, from contributing to projects to saving your own work. And it's a great stepping-stone if you want to go on and learn more git.
Cooking 2013-03-08 20:07:48 +0000
Noirin Plunkett

* Gitolite: Git on the server

Gitolite is next generation git server software. In this talk you'll learn about basic setup and advanced configuration. Awesome things such as branch-specific access controls, ldap/puppet integration, git hook madness and integration with redmine.
Cooking 2013-03-19 02:15:31 +0000
Spencer Krum

* Introduction to Linux Containers

Need to isolate an application but don't want to spend the resources for virtualization? Linux Containers allow you to create quick isolated environments with minimal resources
Cooking 2013-03-22 20:34:36 +0000
Brian Martin

* Let's hack the web, 1 API at a time!

If you ever wanted to implement your own DOM API but were afraid, fear not! The power is within your grasp at last!
Cooking 2013-02-14 02:09:24 +0000
Jeff Griffiths

* Linux Containers: You probably didn't need a VM anyway

Containerization is an often overlooked option for when one needs to solve a problem typically involving the need to create temporary machines to test things or to logically separate machines. I'm here to show you how you can do all this from your laptop without burning your lap, requiring an hour and a half for installation, or filing bugs against IT folks or forking over cash for more cloud instances. Let me explain why LXC is the best option for testing new software and is also an excellent option for taking advantage of production hardware. Topics covered will be basic concepts, installing, cloning, and destroying containers as well as advanced concepts and stupid tricks.
Cooking 2013-03-10 04:26:42 +0000
Benjamin Kero

* Linux Logical Volume Management in 3 Commands

/var too small? /home too big? Want to try out a new file system like btrfs without repartitioning your disk? The Linux logical volume manager makes this easy, and I'll show you how to use it in just three commands.
Cooking 2013-03-22 20:21:07 +0000
Brian Martin

* Moving web development from server-side to client-side with Sidecar

Moving from the world of thick server-side web applications to the new age of JS based client side apps.
Cooking 2013-02-01 13:58:25 +0000
John Mertic

* My experience of Working with Wikimedia Foundation

I am an intern of OPW, doing my internship under Wikimedia Foundation. My talk will be about the work I have been doing as an intern in Wikimedia which is not only interesting and challenging in itself, but could also help other people understand what is there that can be done to make all the Wikipedias more user-friendly for developers as well as editors.
Cooking 2013-03-08 19:13:30 +0000
Priyanka Nag

* Network Science for Fun and Profit

As data become more abundant, the relationships between data elements become more valuable. Network science is an interdisciplinary study of network representations which allow us to explain, predict and otherwise extract value from relationships in data. I will provide a brief overview of network science, with examples and illustrations using open source tools such as R, Gephi, and GraphChi.
Cooking 2013-03-22 18:04:49 +0000
John Taylor

* NoSQL & Big Data, The No “BS” Edition

A lot of companies are checking the NOSQL conversation box these days but end up getting confused by the sheer amount of information that is available on the Internet.
Cooking 2013-03-07 20:48:02 +0000
Sam Bisbee

* Publishing & Consuming microformats2

I will talk about the process of developing a microformats2 parser and how to use the tools that already exist to start publishing and consuming them today.
Cooking 2013-03-24 05:31:24 +0000
Jessica Lynn Suttles

* Pure object orientation from the backend to frontend with Rails and MongoDB

As the nature of building software evolves to favor agile development, the infrastructure programmers rely on must also change. This presentation will walk through the advantages of a document database using a Rails app backed by MongoDB as an example.
Cooking 2013-02-01 04:57:54 +0000
Emily Stolfo

* Pushing new products faster: Deploying and Managing Enterprise Applications

At AppNexus, we strongly believe that frequent releases are best for our users. As our team grew, we had to develop a process that allowed us to quickly push out code without sacrificing quality. I will share how we test any branch in our sandbox at any time and how we incrementally roll out new features to our clients. I will dig into the development process we follow, our custom deployment tool Maestro, how we measure performance across versions, and the nginx configurations that allow us to quickly and safely develop and iterate with a large team.
Cooking 2013-03-08 21:46:27 +0000
Travis Johnson

* Python in an evolving enterprise system: Integration solutions with Hadoop

In 2011, we moved our data pipeline to a Hadoop stack in order to enable horizontal scalability for future growth. However, our optimization tools used for data exploration, aggregations, and general data hackery are built in Python. Over the past few months, we evaluated multiple solutions for integrating Python with Hadoop. In our talk, we'll explore the different Python-Hadoop integration options, share our evaluation process and best practices, and invite an interactive dialogue of lessons learned.
Cooking 2013-03-08 22:28:36 +0000
Angelica Pando, Dave Himrod, Steve Kannan

* Responsive Facets with Apache Solr

Capturing and converting the interest of your eCommerce customers requires putting the most relevant information before them as quickly as possible. Faceted navigation has become the most recognizable way to gather and organize product features within the eCommerce catalog. Apache Solr provides out of the box features to dig deep into your product set and organize data in a relevant manner.
Cooking 2013-03-11 20:24:33 +0000
Brent Lemons

* Sane Database Change Management with Sqitch

Database change management has always sucked. This talk introduces Sqitch, the SQL change management application that doesn’t suck. Come see how it works, learn the few simple rules you need to get the most out of it, and liberate yourself from the suckitude.
Cooking 2013-03-22 06:48:01 +0000
David Wheeler

* Scientific Computing With Perl

Perl is use widely by scientists and engineers to solve various scientific computing problems, including linear algebra, differential equations and various kinds of minimization problems. In this talk, we will show how to solve various common problems with CPAN modules along with suggestions for best practices. This allows rapid development while avoiding the need to manage memory.
Cooking 2013-03-24 03:49:29 +0000
Duke Leto

* Survey of Percona Toolkit: Command-line Tools for MySQL

Percona Toolkit is a collection of more then 30 command-line tools for MySQL that automate a variety of MySQL and system tasks. If you use MySQL and haven't tried Percona Toolkit, come learn about some free, widely-used and mature tools that could make your job a lot easier.
Cooking 2013-03-09 02:32:32 +0000
Daniel Nichter

* The Spock Guide To Think Out of The Vagrant Box

This session will discuss how a developer, administrator(operator) or both, can take advantage from Vagrant and how it helps in modern days multi­environments server provisioning.
Cooking 2013-03-09 10:10:16 +0000
Errazudin Ishak

* The Wonders and Terrors of Dynamic iFrame Content: How iFrames Can Make Your Life More Interesting

Imagine separating the development lifecycle around sections of your UI into a set of features and releasing them to clients independently. Your reporting interface and your data management interface may live in the same screen, but their development can proceed independent of one another. This presentation can be achieved by leveraging dynamically generated iframes to deliver sets of UI functionality to users iteratively rather than as a monolithic release. Creating these iFrames and managing their contents in a cross-platform, cross-browser way is full of pitfalls. AppNexus will unveil a new jQuery plugin that makes dynamic iFrame generation and management simpler and easier.
Cooking 2013-03-08 22:13:10 +0000
Eric Anderson

* Thinking inside the box: Using Things of the Internet to monitor the Internet of Things.

Why use closed source or closed platform tools to monitor the "Internet of Things" when the sysadmin community has been using open source monitoring tools for years?
Cooking 2013-03-24 04:29:14 +0000
Donald Delmar Davis

* Validating JSON the Easy Way

Learn how to use a simple Ruby DSL to validate patterns in JSON.
Cooking 2013-03-10 00:24:48 +0000
Lyle Kopnicky

* Vim versus Emacs? Why Sysadmins Should Be Looking At Eclipse

Will the nuclear arms race of of vim vs emacs ever end? Perhaps the only solution is not to play.
Cooking 2013-02-07 07:52:13 +0000
Justin Dugger

* You Can't Do That at Wordpress.com

An in-depth comparison the differences between WordPress.com hosted sites and self-hosted WordPress-powered sites from the experience of testing on self-hosted then trying to migrate changes to WordPress.com.
Cooking 2013-02-17 02:27:40 +0000
Susan Langenes, Faddah Wolf