Sessions at Open Source Bridge 2009 on Thursday 18th June

Your current filters are…

  • Thursday Keynotes

    by Audrey, Selena Deckelmann and Ward Cunningham

    Portland Mayor Sam Adams

    Ward Cunningham

    At 9:00am to 9:45am, Thursday 18th June

    Coverage note

  • 5 things to know about MySQL if you don't have a DBA

    by sarahnovotny

    Many organizations begin their lives with a developer wearing multiple hats including SA and DBA. In those early days there are a few key things that should be considered and decided or implemented and only one of them is a backup/recovery strategy.

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • Firefox Switchblade

    by dietrich ayala

    So, you've made a Firefox add-on. You've modified web page content, or added a button to the toolbar. But where to go next? What APIs and technologies are available to help your application or add-on surprise and inspire? And once you've got a great idea, how can you make the implementation fast, responsive and respectful of system resource constraints?

    I'll talk about tips, tricks and best practices for extending Firefox to the edge:

    • Create multimedia extravaganzas with the audio, video and canvas tags
    • Tight and polite integration of internet services into the browsing experience
    • Writing lean and performant code
    • Interacting with the host operating system
    • Busting out of the browser with standalone applications

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • How Idealist.org uses technology to change the world

    by Michel Pelletier

    Idealist.org was started in 1995 by Ami Dar as a simple one-page website that cataloged links to other non-profits. In the last 14 years, the site has gone from that simple list of links to a highly scalable dynamic website with over a million users, providing them and their communities with a forum to connect and communicate. Many thousands of people over the years have gotten their jobs or volunteer opportunities through Idealist, and soon we will be rolling out the third generation of our site to provide even more power to people interested in changing the world into a better place. Our talk will present a short history of the open source technology that drives our site, what our future plans are, and how we are releasing several of our Python web technologies as open source products for other members of our community to use and share.

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • Introduction to Parrot

    by chromatic

    Parrot hit 1.0 in March of this year. A virtual machine like no other, Parrot targets dynamic languages such as Python, Perl, PHP, and Ruby, it hosts a powerful suite of compiler tools tailored to dynamic languages and a next generation regular expression engine. This talk briefly explains the overall architecture of Parrot and teaches the skills needed to get started hacking in Parrot.

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • Scala for recovering Java developers

    by Shawn Spooner

    During this session we will develop a simple Scala application from the ground up and examine the differences from Java that enable us to be more productive and expressive while still writing type-safe performant applications.

    This session is for anyone interested in learning about the Scala language, especially those who come from a Java background( and perhaps find the Java language a bit stale)

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • The Linux Kernel Development model

    by Greg K-H

    This talk will go into how the Linux kernel development model works, harnessing the energy of thousands of different developers, moving at a faster rate than any other software project ever has, yet at the same time, producing a stable and reliable kernel release every 3 months for many years.

    The different kernel trees will be explained, how people get involved and are encouraged by others, and how regressions are handled and tested for.

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • Unit Test Your Database!

    by David E. Wheeler

    We're all used to unit testing our applications by now. The Extreme and Agile programming movements have done a great deal to promote unit testing, to the extent that many of us are now dependent on tests to assure that our applications work reliably. But how often do we test the database underlying our applications? Given that the database, as the repository for all of the knowledge and data for an application, just might be the single most important part of that application, the time for standardized database unit testing has come.

    This talk promotes the practice of writing and running unit tests that directly test the schema, storage, and functionality of application databases. Following a review of the available PostgreSQL unit testing frameworks, we'll review examples of testing tables, views, columns, constraints, indexes, triggers, and functions. The idea is to promote complete test coverage every aspect of a database, independent of application unit tests, to ensure reliably canonical data integrity.

    At 10:00am to 10:45am, Thursday 18th June

    Coverage note

  • Coffee break

    At 11:00am to 11:15am, Thursday 18th June

  • Android location services from social networks to games

    by Don Park

    This talk will give a summary of the unique location characteristics of the Android platform, and how those traits are being used in mobile applications from social networking to games. Some examples are icecondor (social network), skymap (astronomy), and zombie run (location game).

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Ask Forgiveness not Permission

    by Emma K McGrattan

    As the economy has gone into freefall, funding for new projects has dried up overnight. Developers need to be creative about sourcing a no or low cost technology stack that they can use as a platform for innovation. The first thing that often goes out the door are the fun side projects that lead to innovation and advancement. Instead, resources are allocated conservatively to the older, more mainstream projects. In this session we will explore many of the ways to innovate without the need for a significant budget by using open source software to try new things under the radar and on a shoestring budget. This session will be packed with success stories of business-critical applications built entirely on open source. Attendees will leave the room armed with what they need to know to calm their CIO’s concerns about business critical open source so no apology will ever be necessary.

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Building a SQL Database That Works

    by fuzzychef

    Application developers and programmers everywhere need SQL databases, but find their actual database an albatross. Data is duplicated, hard to find, or missing. Performance is terrible. And you find yourself writing too much SQL and not your chosen language. ORMs promised to take this pain away, but, well ... nice try.

    As a developer, what you really need are some simple recipes for how to think about designing your SQL databases so that they are simple, maintainable, expandable and easy to troubleshoot. I’ll introduce some easy basic rules hard-learned over 15 years of SQL database design and how to avoid some of the most common simple mistakes which take dozens of hours to fix in production.
    Content will include:

    • Data modeling for normal humans
    • The Atomic Age
    • Where are my keys?
    • The embarrassment of premature optimization
    • Data extensibility and EAVil

    Slides are available at http://www.pgexperts.com/present...

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Effective code sprinting

    by Igal Koshevoy, Reid Beels and Audrey

    • How to get the most out of code sprints as a participant and organizer?
    • How do you organize a sprint?
    • How do you run a sprint?
    • How do you maintain momentum after a sprint?
    • Challenges to effective code sprints
    • Questions and answers

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • RubySpec: What does my Ruby do?

    by Brian Ford

    What do RubyVM, Rubinius, JRuby, IronRuby, MacRuby, and MagLev all have in common? They all aspire to run your Ruby programs. But how do you know whether your programs will run as expected?

    The RubySpec project aims to write a complete executable specification for the entire Ruby programming language and its core and standard libraries.

    This talk will discuss the purpose, history, and status of the project. It will also describe the specialized spec runner, MSpec, and look at how its architecture and features assist in using RubySpec both to help drive development of Ruby implementations and to verify that an implementation is correct and compatible.

    Since RubySpec looks at every nook and cranny of Ruby, there is plenty of opportunity to have a participatory conversation about Ruby and Ruby programming. Also, since RubySpec is a nexus of effort among many competing and sometimes complementary projects, we can also discuss issues surrounding organizing a project like RubySpec.

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Social network supermarkets and how to defeat them

    by Chris Messina™

    The open source ecosystem operates at human scale, and yet the most popular social networks today are mammoths, where an open source citizen has limited agency with little to no ability to change her environment. Furthermore, efforts like OpenSocial serve to further limit what independents can build outside of the major networks, culminating in a threat the very essence of what makes the open/open source community thrive: choice and marketplace competition guaranteed through the ability to fork.

    In this talk, I will look at how the DiSo Project is intending to address this situation, and to catalog some of the successes that we've found with OpenID, OAuth, Portable Contacts and Activity Streams, while also identifying some of the lingering challenges and rhetorical issues with efforts such as OpenSocial that beg the question: what really does an *open, social* network look like? And what freedoms should it guarantee?

    As a co-founder of BarCamp and coworking, I've strived to create simple, reusable, social technologies that are freely available to be mixed and matched and reinterpreted. With the future of the open web at stake, what can we do to ensure that it does remains free and open?

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Ubiquitous Angels

    by Anselm

    We live in dense urban landscapes that have crisis at many different scales. A crisis may be a large event such as a tsunami, an earthquake, a terrorist attack or other large scale disaster. A crisis may be something smaller such as a house fire, or a pileup on the freeway, a gas leak or a road out. A crisis may be something relatively minor, a crisis only to one person, such as being locked out of ones car, or trying to find a lost pet, or needing help sharing babysitting duties.

    For the purpose of this talk I am interested in the far end of the long tail of crisis response - and what open source technology we can strap together to build tactical systems for helping tackle such crisis. I have been developing an approach using off the shelf tools that can help resolve local crisis - the smaller more personal crisis that interrupts peoples lives.

    If we watch messages over a city, and provide analytic views for interested parties, then a role for "angels" to participate emerges. Interested individuals can act in a matchmaking capacity to connect complementary interests together. We can collaboratively up-score or down-score public comments aggregated from a variety of geo local sources. We can filter away noise so that responders can more easily decide what to respond to. In sum we can make it possible for people on the ground, in the area, to volunteer to help out by providing clarity.

    I consider these class of services to be a kind of ubiquitous angel. They are not something that you have to even know exist until they help you.

    The tools that we can leverage today to build such services are worth knowing - having many applications. In particular solr ( an enterprise search engine ) and carrot2 ( a topic clustering engine ) can play a powerful role in helping filter noise. Other related projects in particular Ushahidi and Swift have a high degree of overlap and those technologies will be discussed as well.

    Beyond today there's a role for such technology to help us deal with new kinds of crisis in the future. Over the next decades we may be facing economic and environmental concerns that are granular, evenly distributed and problematic in resolution. These kinds of tools and approaches may be useful there as well.

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Virtualize vs Containerize: Fight!

    by Andy de la Lucha and Irving Popovetsky

    This talk presents a point-counterpoint argument comparing Virtualization and Containerization technologies. The purpose of this talk is to provide the audience, including decision makers and techies, with the real-life experience of two systems engineers who have extensively compared, evaluated and used these technologies.

    At 11:20am to 12:05pm, Thursday 18th June

    Coverage note

  • Lunch break

    At 12:10pm to 1:40pm, Thursday 18th June

  • Command-Line Kung Fu: White Belt

    by Hal Pomeranz

    I teach Linux/Unix skills to hundreds of students every year. Many of them are relatively inexperienced with the Unix command line and I see them getting frustrated or taking round-about approaches to solving problems, when in reality just knowing a few simple tricks would make them vastly more productive.

    Topics covered include:
    -- Command line history and tab completion skills
    -- Fun with find and xargs
    -- Loop constructs
    -- cut vs. awk
    -- sort and uniq

    The talk is interactive and full of live demos. Students can bring their own laptops and play along.

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Configuration Management Panel

    by Adam Jacob, Narayan Desai, James Turnbull, Luke Kanies, Igal Koshevoy and Brendan Strejcek

    A panel discussing the landscape and evolution of open source configuration management tools like cfengine, Puppet, AutomateIT, Chef and bcfg2.

    Tentative panel members are:

    • Luke Kanies from Reductive Labs for "Puppet":http://reductivelabs.com/products/puppet/
    • Brendan Strejcek of "Cfengine":http://www.cfengine.org/
    • Adam Jacob from Opscode for "Chef":http://wiki.opscode.com/display/chef/Home
    • Narayan Desai of "bcfg2":http://trac.mcs.anl.gov/projects/bcfg2
    • Igal Koshevoy of "AutomateIt":http://automateit.org/

    Engage with the creators and maintainers of these tools. Understand how they've chosen to develop their tools and why. Explore the operational models, methodologies and philosophies behind their approach to managing infrastructure.

    Come and learn from the combined expertise of some of the best minds in the system administration and development communities. This promises to a lively and informative discussion about the cutting-edge of systems administration and infrastructure management tools and techniques.

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Introduction to Lift

    by David Pollak

    The Lift Web Framework provides an advanced set of tools for quickly and easily building real-time, multi-users, interactive web applications.

    Scala is a hybrid Object Oriented and Functional language that runs at native speeds on the JVM and fully interoperates with Java code. Lift is a hybrid web framework built on Scala.

    Lift derives its features and idioms from the best of existing web frameworks as well as the functional and OO features in Scala.

    Please join David as he builds a couple of applications in Lift right in front of you. These applications include a multi-user chat app and an HTML based Pong game

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Is the Web Down: a Practical Tutorial on How the Web Works

    by Joshua Keroes and Schwern

    Most users have only a vague idea of how the web works. They click on a link and their precious pictures of baby zoo animals come up... somehow. Something about HTTP or HTML... there's a server somewhere... and some magic rainbow ponies to carry all the data around. Without knowing how it works, you can't solve even the most basic problems. This is why you'll hear other people ask, "is Google down for anyone else?"

    We'll explain it all. You'll learn enough to know how it all works and what might have broken. We'll explain how your web browser talks to web servers, how web pages show up on your screen, and what you can do to take control of your browser. How your computer knows what server to talk to and how the Internet gets information from point A to point B without anyone "owning" the Internet. We'll explain lots of acronyms you might have heard before and what they do: HTML, HTTP, DNS, TCP, and UDP all on the PDQ with extra TLC and a touch of LOL to boot.

    After this talk you'll have a broad understanding of how the web and its plumbing works.

    At 1:45pm to 2:30pm, Thursday 18th June

    Coverage note

  • PHP - Architecting and Profiling for performance

    by Rasmus Lerdorf

    My yearly talk on architecting, profiling and optimizing web applications. It primarily focuses on applications written in PHP although many of the observations really apply to applications written in any language.

    I sometimes tack XSS and security onto the end of this talk. I could also do that as a separate talk if there is interest. My conference party trick of finding XSS holes in the conference site first, then in sites brave audience members offer up, is always a lot of fun.

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Python for Teachers

    by Kirby Urner

    Portland is at the cutting edge when it comes to pioneering a world class 21st century education for its students. "The Silicon Forest":http://worldgame.blogspot.com/2009/03/pps-has-friends-in-silicon-forest.html is stepping up to the plate. Python plays a role in the action.

    Starting with West Precinct, Hillsboro Police Department, "Saturday Academy":http://www.saturda... has been teaching FOSS concepts (free and open source software), later morphing into a more mainstream form of "Pythonic Math". Winterhaven (Portland Public, a "geek hogwarts") has also gotten in on the "pilot studies":http://www.4dsolutions.net/ocn/winterhaven/

    Kirby Urner, former math teacher and consultant to McGraw-Hill, veteran of OSCON, EuroPython and Pycon circuits, will give you the inside story on all of the above, having been an active player in helping Portland remain a "FOSS capital" ("Christian Science Monitor, 2005":http://www.csmonitor.com/2005/1128/p03s02-ussc.html). Kirby is a curriculum writer for "4D Solutions":http://www.4dsol..., also CMO for a FOSS project involving "coffee shops":http://coffeeshopsne.... He is also "an IEEE member":http://worldgame.blogspot.com/2008/11/ieee-presentation.html and past web wrangler for the Buckminster Fuller Institute ("BFI.org":http://www.bfi.org).

    Bring your laptop with Python installed and follow along as we go through examples from a 21st century high school mathematics curriculum, such as we're currently prototyping and implementing in niche markets.

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Trust the Vote: An Open Source Digital Public Works Project

    by gregory miller

    The cornerstone of our democracy is the vote. In a digital democracy the substance of that cornerstone is technology. The free market enterprise experiment brought about by the Help America Vote Act of 2002 has essentially failed. No longer can the most vital process of our democracy be delivered by proprietary technology. The very thing supposed to deliver us from the hanging chad has all but dissolved trust in how our votes are cast and counted. It's time to shift away from black box voting, and move toward glass box voting.

    To restore trust in how America votes, the underlying technology of elections must be put into a public technology trust, because voting technology itself is becoming critical democracy infrastructure. For over two years an under-the-radar Silicon Valley project has been working on precisely that. Starting with a clean slate, the Open Source Digital Voting Foundation has been re-thinking the entire ballot ecosystem. That project, called TrustTheVote, is making steady progress and is now expanding, thanks to substantial financial backing and support from well-known tech sector philanthropists.

    This talk will present the TrustTheVote project and the "I count!" movement. It will cover the technology roadmap, progress so far, and next steps, including expansion of development efforts and opportunities for involvement in design and construction of trustworthy voting technology that everyone will be able to see, touch, and try—technology that will be fully federally certified and have the endorsement of the States' elections directors through a unique approach that can ensure widespread adoption.

    At 1:45pm to 2:30pm, Thursday 18th June

    Coverage note

  • Write your own Bayesian Classifier: An Introduction to Machine Learning

    by John Melesky

    Through the implementation of an honest-to-goodness Bayesian classifier, we'll tour the major topics of supervised machine learning: tokenization, feature selection and vectorization, model training and tuning, and execution. Time permitting, we'll touch on other techniques and topics.

    Bring a laptop and an editor -- at the end of the session, you should have your own classifier, understand how it works, and have some ideas for how to make it better.

    At 1:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Drop ACID and think about data

    by Bob Ippolito

    At 2:45pm to 3:30pm, Thursday 18th June

  • Practical Paper Prototyping

    by Randall Hansen

    *Paper prototyping is important*

    In user interface design we want to make lots of mistakes, and we want to make them early where they're cheapest to fix. Just about the cheapest fix you can make is drawing a large X over your sketch, turning over the piece of paper, and starting again on the other side.

    A paper prototype can be used for:
    * Design discussions: "I think these elements work much better side-by-side.
    * Client communication: "Is this what you mean?"
    * Developer scoping: "We have five screens with 14 interaction points, only three of which are non-trivial."
    * Usability tests: "What do you expect to happen if you click that?"

    *Paper prototyping is easy*

    Can you draw a box on a piece of paper with a pen? Can you write? The hardest thing about paper prototyping is the problem you're solving; the process itself is rapid, iterative, and transparent. We'll talk about the most important aspects, with efficiency tips born of years of experience. We'll also walk through several rounds of prototyping and testing a small application.

    At 2:45pm to 3:30pm, Thursday 18th June

    Coverage note

  • Coffee break

    At 3:35pm to 3:45pm, Thursday 18th June

  • An Introduction to Computer Vision

    by Matthew Dockrey

    Computer vision has started to achieve some very impressive results over the last 5-10 years. It is now possible to quickly and reliably detect faces, recognize and localize target images, and even classify pictures of objects into generic categories. Unfortunately, knowledge of these techniques remains largely confined to academia. In this session we'll go over some of the tools available, placing an emphasis on exploring the ideas and algorithms behind their design.

    To show how these components can be put together, a sample system will be developed over the course of the presentation. Starting with standard image descriptors, we'll first see how to do direct image recognition. We'll then extend that into a simple object classifier, which will be able to distinguish (for example) between images which contain a bicycle and those that don't.

    Topics covered will include:

    • Image descriptors (Scale-Invariant Feature Transform)
    • Bag-of-words classification
    • Machine learning (Support Vector Machines, boosting)
    • Training datasets
    • Viola-Jones face detection (if time allows)

    Python code for the sample SIFT-matching and bag-of-words classifier applications can be found "here":http://www.cs.ubc.ca/~mrd/OSB/OSB.zip .
    The slides can be found "here":http://www.cs.ubc.ca/~mrd/OSB/OSB09-slides.odp and in PDF format "here":http://www.cs.ubc.ca/~mrd/OSB/OSB09-slides.pdf .

    At 3:50pm to 4:35pm, Thursday 18th June

    Coverage note

Schedule incomplete?

Add a new session

Filter by Day

Filter by coverage

Filter by Topic