Schedule: Tutorial sessions

On Monday and Tuesday OSCON offers two full days of tutorials led by experts and innovators. Be sure to register for tutorials in addition to the sessions and keynotes of Wednesday-Friday.

Add to your personal schedule
Location: E143/E144
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.00, 11 ratings)
In this tutorial, Sebastian Bergmann, a pioneer in the field of quality assurance in PHP projects and creator of PHPUnit, imparts comprehensive knowledge and experience about testing and quality assurance in PHP-based software projects. Read more.
Add to your personal schedule
Location: E145/E146
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.34, 32 ratings)
Learn how to develop mobile apps for Android platform in this quick tutorial. Assuming you are familiar with Java or similar OOP, this hands-on example-driven tutorial will show you how Android uses Java and how you can quickly pick it up to start programming for mobile devices. Read more.
Add to your personal schedule
Location: Portland 255
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.16, 51 ratings)
Git is a new distributed version control system that is fast, flexible, works offline and supports powerful local branching and easy merging that encourages non-linear workflows and makes developers far more productive and efficient. This tutorial will introduce you to Git, rid you of your SVN sins, and teach you how to become more efficient and productive as a programmer. Read more.
Add to your personal schedule
Location: D136
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.50, 12 ratings)
This talk will introduce the world of 3D animation to novices and beginner users. Using Blender, users will learn how to perform many tasks, including modelling (mesh editing, subsurfing, etc), texturing (procedural and image-based), material design, animation, and lighting. Intermediate users will also learn a lot from this tutorial, as the new version of Blender, 2.6, has significantly changed. Read more.
Add to your personal schedule
Location: Portland 251
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.33, 28 ratings)
As application complexity increases, observing it in action becomes harder. Traditional tools are not very useful when going across programing languages. DTrace is a revolutionary tool that allows you to observe applications in AMP stack and those written in languages like PHP, Ruby, Python, Java, C, C++ and much more. This session will teach you DTrace and demonstrate techniques of using it. Read more.
Add to your personal schedule
Location: D135
Please note: to attend, your registration must include Tutorials.
Emil Eifrem (Neo Technology / Neo4j)
Average rating: ***..
(3.77, 22 ratings)
This workshop will show you how to build a high-performance social network backend based on the open source Neo4j graph database. We will investigate the implementation of a small but working social network backend with simple but powerful APIs to find paths between people and analyze the social graph. Finally, we will show how it outperforms a relational backend by a factor of 1000x or more. Read more.
Add to your personal schedule
Location: D139/140
Tags: ruby, java, jruby
Please note: to attend, your registration must include Tutorials.
Neal Ford (ThoughtWorks)
Average rating: *****
(5.00, 1 rating)
JRuby allows you to truly explore the potential of the Java virtual machine. This tutorial shows you concrete examples of why JRuby is the most powerful yet practical language for the JVM. It covers syntax, conventions, meta-programming, and other unique features of this elegant yet robust language. Read more.
Add to your personal schedule
Location: D137/138
Tags: perl
Please note: to attend, your registration must include Tutorials.
brian d foy (The Perl Review, LLC)
In this tutorial, brian d foy will cover aspects of his latest book, Mastering Perl, which is practical advice for working programmers on creating professional, enterprise-quality Perl programs. He will cover four major topics: modules as programs, profiling Perl programs, modifying and jury-rigging third party code, and secure programming techniques. Read more.
Add to your personal schedule
Location: Portland 256
Please note: to attend, your registration must include Tutorials.
Chander Ganesan (Open Technology Group, Inc)
Average rating: ***..
(3.94, 16 ratings)
The Django framework is a fast, flexible, easy to learn, and easy to use framework for designing and deploying web sites and services using Python. In this session, we'll cover the fundamentals of development with Django, generate a Django data model, and put together a simple web site using the framework. Read more.
Add to your personal schedule
Location: Portland 252
Please note: to attend, your registration must include Tutorials.
David Wheeler (iovation)
Average rating: **...
(2.94, 16 ratings)
Learn how to apply the principals of test-driven development to developing a database schema. Read more.
Add to your personal schedule
Location: E141/E142
Tags: cloud, hadoop
Please note: to attend, your registration must include Tutorials.
Aaron Kimball (Cloudera, Inc.)
Average rating: ***..
(3.29, 17 ratings)
Cloudera's Introduction to Hadoop provides a solid foundation for those seeking to understand large scale data processing with MapReduce and Hadoop. This session is appropriate for attendees who are new to Hadoop and are seeking to understand where Hadoop is appropriate and how it fits with existing systems. Read more.
Add to your personal schedule
Location: Portland 255
Please note: to attend, your registration must include Tutorials.
Kevin Whinnery (Appcelerator)
Average rating: ***..
(3.10, 21 ratings)
HTML, CSS and JavaScript are quickly becoming the development languages of choice for creating native mobile applications. By using the open source Titanium platform, web developers can create apps for iPhone, Android and Blackberry using a single code base. Read more.
Add to your personal schedule
Location: Portland 252
Please note: to attend, your registration must include Tutorials.
Josh Berkus (PostgreSQL Experts, Inc.)
Average rating: ***..
(3.75, 8 ratings)
Have you given your database server a checkup lately? If not, you probably should. "Sick" database servers are easy to prevent if you take a few simple steps <i>before</i> your server comes down with something. Read more.
Add to your personal schedule
Location: E143/E144
Please note: to attend, your registration must include Tutorials.
Ricardo Signes (Pobox.com)
Average rating: ****.
(4.40, 20 ratings)
Moose continues to emerge as the new standard for writing OO libraries in Perl. It provides a powerful, consistent API for building classes with a minimum of code. It can be customized with reusable components, making it easier to refactor your code as you go. This tutorial will explain what Moose is, how its parts work together, and how to start using Moose today to get more done with less. Read more.
Add to your personal schedule
Location: D135
Please note: to attend, your registration must include Tutorials.
The best, most effective presentations capture the audience quickly, hold their interest effortlessly, educate and entertain them in equal measure, and sometimes even inspire them. This tutorial explores seven basic principles (and dozens of specific techniques) for achieving those goals in any kind of technical presentation. Read more.
Add to your personal schedule
Location: D139/140
Please note: to attend, your registration must include Tutorials.
Eric Day (craigslist), Brian Aker (HP)
Average rating: ***..
(3.87, 15 ratings)
Many people view topics like Map/Reduce and queue systems as advanced concepts that require in-depth knowledge and time consuming software setup. Gearman is changing all that by making this barrier to entry as low as possible with an open source, distributed job queuing system. This session dives into advanced use cases that demonstrate the power and flexibility of distributed architectures. Read more.
Add to your personal schedule
Location: Portland 256
Please note: to attend, your registration must include Tutorials.
Neal Ford (ThoughtWorks)
Average rating: ***..
(3.57, 35 ratings)
My latest book The Productive Programmer shows developers how to supercharge their effectiveness. It consists of two parts: mechanics and practice. The mechanics section covers productivity principles like acceleration, canonicality, focus, and automation. The practice section shows how productive thinking and questioning assumptions makes you a better developer. Read more.
Add to your personal schedule
Location: E145/E146
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.09, 22 ratings)
This tutorial explores new concepts in web security. After a solid grounding in well-known exploits, I'll demonstrate how traditional exploits are being combined together and with other technologies to launch sophisticated attacks that penetrate firewalls, target users, and spread like worms. I'll then discuss some ideas for the future to help you provide a better, more secure user experience. Read more.
Add to your personal schedule
Location: D136
Please note: to attend, your registration must include Tutorials.
Philip Lindsay (rancidbacon.com), Brian Jepson (O'Reilly Media, Inc.)
Average rating: ****.
(4.64, 14 ratings)
The success of the Arduino physical computing toolkit has lead to a surge of interest in the world of hardware from both software and non-technical people. This workshop will provide an overview of what physical computing is, how Arduino works and how it can be used to add an interactive element to your projects. There will also be an opportunity to set up and use an Arduino board and software. Read more.
Add to your personal schedule
Location: D137/138
Please note: to attend, your registration must include Tutorials.
Dean Wampler (Typesafe)
Average rating: ***..
(3.90, 20 ratings)
Scala is a hybrid object-functional language for the JVM. Java programmers can easily migrate to Scala as an improved Java, then learn to exploit its powerful support for Functional Programming. Developers from other languages can exploit the JVM's power and rich libraries using a state-of-the-art language. Come learn why Scala is seductive; why it meets the needs of the modern developer. Read more.
Add to your personal schedule
Location: Portland 251
Please note: to attend, your registration must include Tutorials.
Jacob Kaplan-Moss (Revolution Systems, LLC), Frank Wiles (Revolution Systems, LLC)
Average rating: ****.
(4.29, 14 ratings)
So you've written a Django site... now what? Writing the application is just the beginning; now you've got to put it into production! In this hands-on workshop we'll walk through the creation of a full Django deployment environment running on a cluster of (virtual) machines. Read more.
Add to your personal schedule
Location: E141/E142
Tags: cloud, hadoop
Please note: to attend, your registration must include Tutorials.
Aaron Kimball (Cloudera, Inc.)
Average rating: ***..
(3.38, 16 ratings)
Cloudera's Introduction to Hadoop provides a solid foundation for those seeking to understand large scale data processing with MapReduce and Hadoop. This session is appropriate for attendees who need to use Hadoop to analyze data with Hadoop's MapReduce paradigm. Read more.
Add to your personal schedule
Location: Portland 256
Please note: to attend, your registration must include Tutorials.
Theo Schlossnagle (OmniTI/Circonus)
Average rating: ****.
(4.24, 29 ratings)
Internet traffic spikes aren't what they used to be. It is now evident that even the smallest sites can suffer the attention of the global audience. This presentation dives into techniques to avoid collapse under dire circumstances. Looking at some real traffic spikes, we'll pinpoint what part of the architecture is crumbling under the load; then, walk though stop-gaps and complete solutions. Read more.
Add to your personal schedule
Location: D135
Please note: to attend, your registration must include Tutorials.
Graham Weldon (Cake Development Corporation)
Average rating: **...
(2.40, 5 ratings)
A complete application build from concept through design, modelling, development and deployment in a three hour session. Lead by a Core CakePHP developer, this session is a combination of CakePHP overview of capabilities as well as an introduction to improvements and changes in the recently released CakePHP 1.3 beta. Take this opportunity to learn rapid development from a CakePHP developer Read more.
Add to your personal schedule
Location: E143/E144
Please note: to attend, your registration must include Tutorials.
Chander Ganesan (Open Technology Group, Inc)
Average rating: ****.
(4.00, 11 ratings)
The PostgreSQL Open Source Databases upcoming release includes several ground-breaking new features that allows database administrators to "take things to the next level". In this tutorial you will learn how to architect and implement PostgreSQL's Warm Standby, Hot Standby, and Streaming replication capabilities. Read more.
Add to your personal schedule
Location: Portland 252
Please note: to attend, your registration must include Tutorials.
Gregg Pollack (Envy Labs), Nathaniel Bibler (Envy Labs), Thomas Meeks (Envy Labs), Jacob Swanner (Envy Labs)
Average rating: ****.
(4.90, 10 ratings)
For this ropes course, members of the Envy Labs team will march you through the core concepts of Rails 3 while taking you through the development of a new Rails application. At the end of this course you will come away with a better understanding what’s new in Rails 3, and equally as important, what has changed since Rails 2. Read more.
Add to your personal schedule
Location: D137/138
Please note: to attend, your registration must include Tutorials.
Mike Mueller (Python Academy)
Average rating: **...
(2.88, 17 ratings)
Although Python programs may be slow for certain types of tasks, there are many different ways to improve performance. This tutorial will introduce optimization strategies and demonstrate techniques to implement them. Participants will learn how to decide what might be the optimal solution for a certain performance problem. Participants are strongly recommended to bring laptops. Read more.
Add to your personal schedule
Location: D136
Please note: to attend, your registration must include Tutorials.
James Turnbull (Docker), Jeff McCune (Puppet Labs)
Average rating: ***..
(3.91, 11 ratings)
Puppet is a powerful configuration management tool that makes life easier for people managing systems and applications. This tutorial gives you an in-depth and hands-on introduction to Puppet that is ideal for beginners to Puppet and configuration management. Read more.
Add to your personal schedule
Location: D139/140
Please note: to attend, your registration must include Tutorials.
Francesco Cesarini (Erlang Solutions Ltd)
Average rating: ****.
(4.59, 17 ratings)
This hands on tutorial will give you an introduction to the Erlang programming language. You will learn the basics of how to read, write and structure Erlang programs. We start with an insight into the theory and concepts behind sequential and concurrent Erlang, allowing you to get acquainted with the Erlang syntax and semantics. Read more.
Add to your personal schedule
Location: Portland 251
Please note: to attend, your registration must include Tutorials.
Krishna Sankar (Tata America International)
Average rating: **...
(2.42, 26 ratings)
This tutorial will provide an in-depth tutorial on various forms of NOSQL (NotOnlySQL) datastores (key/value, data structure store, document store and wide column stores) for working with semi- structured data. The data ranges from web logs to social and knowledge graphs to configuration data stores for cloud infrastructures and other domains. Read more.
Add to your personal schedule
Ikai Lan (Google, Inc.)
Average rating: **...
(2.89, 19 ratings)
Google App Engine is an development & hosting platform that lets you build & deploy web applications on Google's high-traffic infrastructure. You only need to upload your code: no more worrying about machines, storage, scalability! This tutorial introduces attendees to its architecture & various service APIs. In the hands-on lab, you'll build+deploy a real app to the cloud using Python in minutes! Read more.
Add to your personal schedule
Location: E141/E142
Please note: to attend, your registration must include Tutorials.
Aaron Kimball (Cloudera, Inc.)
Hive is a powerful data warehousing application built on top of Hadoop which allows you to use SQL to access your data. This tutorial is appropriate for people that have experience with SQL and want to analyze large data sets using Hadoop and HiveQL. Read more.
Add to your personal schedule
Location: E145/E146
Please note: to attend, your registration must include Tutorials.
Brian LeRoux (Nitobi Inc.), Filip Maj (Nitobi)
Average rating: *....
(1.67, 6 ratings)
In this hands-on tutorial you'll discover how to use your HTML/JavaScript skills to build applications for mobile platforms including iPhone, Google Android, Blackberry, Symbian and Palm. Learn how to use PhoneGap, an open source mobile development framework, to create platform-neutral mobile applications with HTML, CSS and JavaScript. Read more.
Add to your personal schedule
Location: D139/140
Please note: to attend, your registration must include Tutorials.
Randal L. Schwartz (FLOSS Weekly podcast), Tom Phoenix (Stonehenge Consulting Services, Inc.)
Average rating: ****.
(4.33, 6 ratings)
Smalltalk is easy to learn, rapid to develop, many implementations to choose from. With Seaside, you can build large complex web applications easily. In this fast-paced course, learn the basics of Smalltalk, and the best parts of Seaside (new for Seaside 3.0!). Read more.
Add to your personal schedule
Location: D137/138
Please note: to attend, your registration must include Tutorials.
Average rating: **...
(2.00, 6 ratings)
Drizzle is a fork of the MySQL server focused on modularity, improved performance, and community development. This tutorial will give an overview of the current state of Drizzle, the tools around it, and the various language APIs available. The tutorial will go through the steps to install Drizzle, how to get started with management, writing simple applications, and porting existing applications. Read more.
Add to your personal schedule
Location: E143/E144
Tags: rt
Please note: to attend, your registration must include Tutorials.
Jesse Vincent (Best Practical)
Average rating: ****.
(4.80, 5 ratings)
Request Tracker (RT) is an enterprise-grade ticketing system. It's designed to help your organization track what needs to get done and what still needs doing. From basic customer service to advanced back-office workflows, RT is flexible enough to keep your processes smooth and effective. This tutorial will cover deployment and day to day use of RT as well as basic customization. Read more.
Add to your personal schedule
Location: D135
Tags: google, python, wave
Please note: to attend, your registration must include Tutorials.
Average rating: ****.
(4.00, 6 ratings)
This hands on tutorial will walk you through the steps of building a Wave robot, from setting up the Python client library through to using the major APIs that Wave provides. Read more.
Add to your personal schedule
Location: Portland 255
Tags: java, web, groovy, grails
Please note: to attend, your registration must include Tutorials.
Dave Klein (Independent)
Average rating: ***..
(3.44, 9 ratings)
Developers around the world, from boutique web development shops to fortune 100 corporations, are discovering how they can get more done in less time with Grails. In this hands-on tutorial we'll see why. We'll work together to build and a deploy an Ajax enabled, database backed web application and have fun doing it! Read more.
Add to your personal schedule
Location: Portland 252
Please note: to attend, your registration must include Tutorials.
Matt Trout (Shadowcat Systems Limited)
Average rating: ***..
(3.91, 11 ratings)
Catalyst 5.80 is the first major release to use the Moose metamodel; this tutorial will provide an overview of Catalyst 5.8, a guide for forward porting, and advice on new features and updated best practices in a cleaner, more extensible new age of Catalyst. Read more.
Add to your personal schedule
Location: Portland 251
Please note: to attend, your registration must include Tutorials.
Mike Hostetler (appendTo), Jonathan Sharp (appendTo LLC.)
Average rating: ***..
(3.03, 30 ratings)
JavaScript is not a dirty word. The language itself is quite elegant. However, competing implementations by differing browsers has given it a bad rap. Yet, in this age of Ajax it is a must-have for any successful web application. Join this group of JavaScript gurus, who co-authored the O'Reilly jQuery Cookbook, for a tutorial session covering reliable techniques: intermediate to advanced. Read more.
Add to your personal schedule
Location: D136
Please note: to attend, your registration must include Tutorials.
Joshua Timberman (Opscode, Inc.), Aaron Peterson (Opscode)
Average rating: **...
(2.67, 15 ratings)
This tutorial will teach how to automate infrastructures using Chef, including real examples of application deployment and system integration of infrastructure components such as load balancers, application servers and monitoring systems. Read more.
Add to your personal schedule
Location: E145/E146
Please note: to attend, your registration must include Tutorials.
Average rating: ***..
(3.62, 21 ratings)
Design patterns can be very useful in Python (as in any other language) but there are right ways and wrong ways to choose which ones to implement, and how to implement. This advanced tutorial offers many practical examples of "the good, the bad, and the beautiful" ("the ugly" doesn't apply to Python!-) and some theoretical underpinnings for them. Read more.
Add to your personal schedule
Location: Portland 256
Please note: to attend, your registration must include Tutorials.
Eric Evans (Rackspace)
Average rating: ***..
(3.08, 25 ratings)
Moore's Law has run its course, yet despite the growing demands placed on databases, traditional solutions offer little alternative to vertical scaling. Come learn step-by-step how to use Apache Cassandra to turn a cluster of inexpensive commodity servers in to a massively scalable distributed datastore. Read more.
Add to your personal schedule
Location: E141/E142
Please note: to attend, your registration must include Tutorials.
Aaron Kimball (Cloudera, Inc.)
HBase is a distributed, sparse column-oriented store modeled after Google's BigTable and built on Hadoop's Distributed File System (HDFS). This talk will explain the use cases for using HBase and how to use it. Read more.
Add to your personal schedule
Location: F150
Tags: mobile, symbian
Please note: this sponsored tutorial is open to all OSCON attendees with a badge.
Lars Kurth (Citrix Systems Ltd), Paul Beusterien (Symbian Foundation)
Average rating: **...
(2.75, 4 ratings)
During this tutorial, we will discuss the global platform opportunities at Symbian, along with how to best create, develop and deploy a web app using our Symbian Web Tools. Then we will explore Qt, a cross platform application and UI framework. Using Qt you can deploy apps across desktop, mobile and embedded operating systems without rewriting the source code. Read more.
  • Intel
  • Microsoft
  • Google
  • Facebook
  • Rackspace Hosting
  • (mt) Media Temple, Inc.
  • ActiveState
  • CommonPlaces
  • DB Relay
  • FireHost
  • GoDaddy
  • HP
  • HTSQL by Prometheus Research
  • Impetus Technologies Inc.
  • Infobright, Inc
  • JasperSoft
  • Kaltura
  • Marvell
  • Mashery
  • NorthScale, Inc.
  • Open Invention Network
  • OpSource
  • Oracle
  • Parallels
  • PayPal
  • Percona
  • Qualcomm Innovation Center, Inc.
  • Rhomobile
  • Schooner Information Technology
  • Silicon Mechanics
  • SourceGear
  • Symbian
  • VoltDB
  • WSO2
  • Linux Pro Magazine

Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at scordesse@oreilly.com

Download the OSCON Sponsor/Exhibitor Prospectus

Media Partner Opportunities

Download the Media & Promotional Partner Brochure (PDF) for information on trade opportunities with O'Reilly conferences or contact mediapartners@ oreilly.com

Press and Media

For media-related inquiries, contact Maureen Jennings at maureen@oreilly.com

OSCON Newsletter

To stay abreast of conference news and to receive email notification when registration opens, please sign up for the OSCON Newsletter (login required)

OSCON 2.0 Ideas

Have an idea for OSCON to share? oscon-idea@oreilly.com

Contact Us

View a complete list of OSCON contacts