<?xml version="1.0" encoding="UTF-8"?>
<records type="array">
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Linux Kernel Development model</title>
    <submitted-at>03/11/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">33</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/11/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How to build a successful open source software consulting company</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">234</id>
    <description>In this talk, I will share my experience growing a open source consulting company from a one man freelance operation to a global corporation employing 20 persons in 8 countries. We will explore some of the challenges that a business owner will face, and the unique issues that a company building open source software must embrace. 

What does it take to be an open source consultant? It's usually not enough to be a good developer. You need to know about the business side of software development, including sales and marketing and legal and accounting. Fret not - just like programming, these are skills that can be learned!

How do you find work and how do you determine how much to charge? We will discuss the merits of time and materials billing, optional scope contracts vs. fixed bid contracts. Blogging, speaking at local tech events and search engine optimization are some inventive ways to attract new customers.

How do you compete against commercial proprietary software vendors and dispel the myths around open source. What are the unique selling points that can help catapult your company to the shortlist? Positioning your services and finding a niche are essential to differentiate yourself from other competing vendors.

How do you structure contracts to allow for the software you create to be GPL licensed? The legal issues cannot be overlooked if you want to ensure your software remains open source. Education of your customers is important to get them to think of software not as an asset, but a liability.

How do you recruit and retain talented developers? The transparency of open source software provides you with developer footprints that reveal far more about a developer's technical skills than any resume. I have recruited some of my best developers solely by reading their code and their blog posts to get a sense for how they communicate.

Open source software is often developed by distributed teams, in which the leaders and developers are geographically dispersed. Can this team dynamic work for consulting projects? We've learned through many failed attempts what works and what doesn't, navigating timezones, multi-currency payments, remote pair programming, and global conference calls.

How can you be a profitable company and still be a good citizen of the open source community? Where do you draw the line between paid customer work and unpaid community work? If structured properly, the community work can complement the billable work and vice versa.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>05/15/2009</updated-at>
    <biography nil="true"></biography>
    <title>Drop ACID and think about data</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">100</id>
    <description>http://bitbucket.org/etrepum/drop_acid_pycon_2009/</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Cultivating Open Source</title>
    <submitted-at>04/05/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">167</id>
    <description>Building an Open Source community is an art, but when it's done correctly it can become a very powerful force. Most of the best practices for building a community are pretty obvious, but it never hurts to think a little more about what works.

h3. Projects

* Chandler / Cosmo
* Windmill / Mozmill
* Fleegix
* Hudson

h3. Start That Project
* Scratch the itch
* Keep the goals reasonable
* Document and comment like it'll be front page NY Times
* Use tools that can easily translate to a community
 - Source code repository
 - Wiki / Homepage
 - Email List / IRC
* *WRITE TESTS*
* Don't be embarrassed, get it out there!

h3. Building Community
 
* Don't get discouraged
* Continually iterate and improve
 - Docs, Tests, Code, Communication
* *Evangelize*!
  - Twitter, Conferences, User Groups, Blog
* Collaborate with other OSS Projects
* Quickly respond to early adopters
* Respond even faster to new contributors
* Listen to user feedback and act
* Carefully review patches to ensure quality, and/or LEARN something!
* Know about similar projects, and the people building them (get a beer with said people)
* Contribute back to projects you use, be vocal
* Set milestones (and actually attempt to hit them)
* *RELEASE!*

h3. Sustaining Community
* Continually iterate and improve
  - Docs, Tests, Code, Communication
* Keep evangelizing, ALWAYS (btw you should check out Windmill)
* Don't be afraid to solve the hard problems
* Be proactive, lead the community
 - Consider adding top contributors as commiters
 - Build cool new projects
 - Log bugs
* Don't forget why you started the project (is your itch scratched)
* Keep an open mind for new ideas and directions (rails/merb)
* Competing tools are great, embrace them
* Seek wise council, learn from others (Apache, Mozilla, Django, jQuery etc.)
* Be part of the industry
* *Trust the process*

h3. Questions and Discussion</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/05/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Critique, how Open Source does feedback right.</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">201</id>
    <description>This talk will discuss specific aspects of feedback including:

- A description of the feedback cycle
- The benefits of feedback
- How to give constructive feedback 
- How to receive feedback 
- How to implement feedback in your own projects

Please bring your projects, after the talk there will be an open forum 
for further discussion and a chance to use the skills learned.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Concrete... It's not just for sidewalks, anymore...</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">67</id>
    <description>I've spent years trying to train non-techies to keep their websites up to date, but it's always been an exercise in frustration.

Then I tried Concrete5.

It's not fancy, but there are several great built-in content block types to keep most small business owners happy. Templating (built with CSS) is a snap. And there's even a decent WYSIWYG editor and drag-and-drop content organization. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>People Hacking</title>
    <submitted-at>04/11/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">268</id>
    <description>We probably have the common language of what it takes to hack a computer.  We will be looking at what it takes to hack a person, and when it is a good idea to do it.

Here are the tools we will be looking at:

* Using emotions to your mutual advantage
* How to diffuse difficult scenarios
* Getting folks interested in your work
* A bit about ethics - is it really ethical to muck about with people?

By the end, you should be able to hack your way through this conference and the larger community with a bit more ease than when we started.

Open Source developers are their own best, or worst, advocates.  How do you influence people to use your software?  How do you get folks interested in your work?  How do you get folks interested in running open source apps?  Simple, you hack them. 
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/11/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Virtualize vs Containerize: Fight!</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">134</id>
    <description>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.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Python for Teachers</title>
    <submitted-at>03/12/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">34</id>
    <description>Portland is at the cutting edge when it comes to pioneering a world class 21st century education for its students.  &quot;The Silicon Forest&quot;: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, &quot;Saturday Academy&quot;:http://www.saturdayacademy.org has been teaching FOSS concepts (free and open source software), later morphing into a more mainstream form of &quot;Pythonic Math&quot;.  Winterhaven (Portland Public, a &quot;geek hogwarts&quot;) has also gotten in on the &quot;pilot studies&quot;: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 &quot;FOSS capital&quot; (&quot;Christian Science Monitor, 2005&quot;:http://www.csmonitor.com/2005/1128/p03s02-ussc.html).  Kirby is a curriculum writer for &quot;4D Solutions&quot;:http://www.4dsolutions.net, also CMO for a FOSS project involving &quot;coffee shops&quot;:http://coffeeshopsnet.blogspot.com.  He is also &quot;an IEEE member&quot;:http://worldgame.blogspot.com/2008/11/ieee-presentation.html and past web wrangler for the Buckminster Fuller Institute (&quot;BFI.org&quot;: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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/12/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Plone in the Cloud - deploying open source applications to Amazon EC2</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">235</id>
    <description>After introducing Amazon Web Services (AWS) and the pros/cons of using it instead of traditional hosting services, I will explain how to actual get started using it with examples of programatically launching new EC2 instances, mounting volumes and associating elastic IP addresses to those instances. I will also demonstrate some useful tools for managing the instances such as the Amazon Web Console, ElasticFox and Canonical's Landscape.

Then we will look at PondCMS, a hosted CMS solution based on Plone, the popular open source content management system. We will discuss the reasons why we chose to use EC2 as the hosting platform and some of the issues we encountered, and how we overcame them.

This talk is for anyone who is curious about Amazon Web Services and wants to learn more about how one can leverage AWS to cut costs, reduce hosting complexity and build scalable and streamlined hosted solutions.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Stability. Security. Community. Inside the Aspen grove.</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">101</id>
    <description>In this session we&#8217;ll introduce using some of the most interesting features of the Aspen framework. We&#8217;ll discuss creating modules and containing functionality within those modules, and sharing them between your own projects, or with other developers. We&#8217;ll discuss how you can use, and how we&#8217;ve used the framework to create a wide range of amazing tools for clients.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Tools In Computational Finance</title>
    <submitted-at>04/05/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">168</id>
    <description>Computational finance is a topic on many peoples' minds in the current economic climate. Over the years, an impressive body of open source software has been developed in computational finance. In this talk, I'll review the major open source CF tools and demonstrate an application of them to some financial time series taken from recent market activity.

The technologies used include

* R,
* Perl,
* QuantLib,
* PostgreSQL,
* Linux, and
* Xen.

I'll demonstrate an open source &quot;virtual appliance&quot; integrating these technologies, using a dataset taken from recent market time series. If participants are interested, I will make copies of this appliance available for hacking sessions during the conference.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/05/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How To Hack on Rakudo Perl 6</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">202</id>
    <description>As can be seen from the graph of passing tests [1], Rakudo development is gaining speed, but still has a while to go before it is used widely in production. Now is a perfect time to get involved! 

This talk will provide an short overview of what Perl 6 is and a tour of the Perl 6 Test Suite [2] which compares different Perl 6 implementations and which features they support. 

The majority of the talk will focus on providing &quot;easy onramps&quot; for people to get involved, such as suggesting areas that need work but don't require a large knowledge of the system and ideas for small Perl 6 projects that would benefit the community. Since Rakudo is on Github [3] as well ( but still uses patches as a final submission medium), basic instructions for how to fork, hack on and submit patches will be covered.


The November Wiki engine [3] will also be mentioned, since it is one of the first open source projects to use Rakudo and is still under active development.

[1] http://rakudo.org/status
[2] http://svn.pugscode.org/pugs/t/spec
[3] http://github.com/rakudo/rakudo/tree/master
[4] http://www.november-wiki.org/</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Your Five Communities</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">68</id>
    <description>Among companies which distribute open source software, there's some understanding that community is important to success.  However, officers of these companies are often mystified about who exactly this community *is*.  Part of the reason for this confusion is that &quot;your community&quot; isn't just one community.  It's five.

In this session, Open Source business veteran Josh Berkus will go over who the 5 communities are, what they each want, and how that community can help you make money.  Equipped with this information, you can make intelligent decisions about where in the community to spend your resources in order to make your OSS company successful.



</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Work for the Government for Fun and Profit</title>
    <submitted-at>04/14/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">269</id>
    <description>Government consumes lots of technology, and the benefits to using it in the public sector may seem intuitively obvious.  But what if you own a small business or are an independent developer/contractor?  Can the  little guy do business with a big bureaucracy?  This session will provide:

* An overview of where open source is being used in government today
* Why government needs your skills (or is just about to find out they do)
* The culture of government procurement
* Government government procurement systems nutshell
* A brief introduction to Hoops (as in the ones you&#8217;ll need to jump through)
* Ideas that can get you working on government projects

This talk is designed to help you decide if providing open source &#8220;products&#8221; or services to the government is something that makes sense for you.  It will also serve as general enlightenment on where the government stands today on their uptake on open source and where some of the challenges remain.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/14/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Geocoding from TIGER</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">135</id>
    <description>In this tutorial, I will discuss the structure of newly updated TIGER addressing data as well as its strengths and weaknesses.

I'll then dive into the updated (nearly re-written) tiger_geocoder for postgis, looking at how it operates, and how you can use it in your application. Topics include address normalization, fuzzy address matching, database structuring, and how to maximize performance.

Time permitting, we'll delve into managing addresses and alternative styles of representing address data, including CityXML, the Karlsruhe Schema, etc.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Internationalization with Symfony</title>
    <submitted-at>03/12/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">35</id>
    <description>The Symfony Framework built on PHP has a very strong i18n data model, greatly easing the amount of work to create a multilingual website. This session will utilize an existing sample website and cover how to set up database tables, controllers and configuration files for i18n. A very basic CMS will also be included for editing the data. All code will be provided for users to download and explore on their own.

Familiarity with the Symfony Framework is recommended but not required for this session. The i18n data model Symfony uses could be applied to other frameworks, and the first five minutes of the session will showcase how to get the sample code running on a Symfony enabled development machine.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/12/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Managing the Passionate</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">236</id>
    <description>The question is often asked of open source: why do programmers
voluntarily spend their time performing an otherwise highly paid
activity?  Community cred, &quot;cool&quot; projects, the ability to choose work
to align with one's interest, and the potential to later count
volunteer work as experience with which to get a better job have all
been pointed to as factors for this un-economic behavior.

Oft-overlooked is the difference between the way that open source
projects and many companies make decisions, a difference that speaks
to the heart of what it means to choose to bring knowledge and skills
to a project.  Open Source projects often joke that they have a
benevolent dictator, but in actuality, the successful ones have
leaders who are forced to listen to, and take into account, the
opinions of a volunteer community. Those volunteers bring with them
not just their skills, but their active consent to the work being
done, and in this way, these projects more strongly resemble
consensus-based organizations or consent-based sociocracies than the
traditional corporate autocratic model.  Perhaps this can explain some
of the difficulties open source companies have had interacting with
their communities, and point toward ways in which more engagement and
commitment can be nurtured in your work environment.

Martin Chase and Jeff Schwaber will bring their experience with
consensus and consent, coops and sociocracies, user groups and open
source development, to bear on the mismatch between autocracy and open
source, and will give you just enough knowledge of your alternatives
to be dangerous to tradition.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Stick a fork() in It - Parallel and Distributed Perl</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">102</id>
    <description>Parallelism appears throughout the history of computing, yet many programmers have been caught off-guard by the proliferation of multi-core systems.  Luckily, Perl and Unix provide lots of tools for leveraging multi-core or multi-node environments.  Let's quit spoon-feeding the computer one byte at a time and get out our fork()s.

Appetizer:  The basic models and concepts of parallelization via a brief history of parallel computing followed by a few fun facts about spaceships, Unix, and Ahmdal's law.

Main course:  Armed with these fundamentals, we'll then study a few compact examples of turning sequential problems into parallel ones.  We'll find ways to bend or break the rules and see how parallelism changes some of the old assumptions.

Dessert:  A quick tour through an open-source parallel log processing system which demonstrates these techniques in a real-life production program.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Mini-Ignite Portland: What It Is, Why You Want One, &amp; How To Have Your Own</title>
    <submitted-at>04/05/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">169</id>
    <description>Ignite talks are a particular variety of lightning talk. What will you do with your five minutes? Portland has a very popular Ignite series happening which is one of the premier events in the city. See a selection of talks from previous Ignite Portland events and join in a discussion of how to build your own.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/05/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Clojure: Functional Concurrency for the JVM</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">69</id>
    <description>Talk about strange bedfellows: what happens when you mix one part Lisp (one of the oldest computer languages), one part Java (so young, yet so well adopted), a healthy serving of functional programming, and a state-of-the-art concurrency layer on top?  That's Clojure, which &quot;feels like a general-purpose language beamed back from the near future.&quot; Clojure embraces functional programming with immutable data types and first class functions. It is fully interoperable with Java. Clojure's approach to concurrency includes asynchonous Agents, and Software Transactional Memory. Clojure is fast, elegant, dynamic, and scalable: a language for the future, today.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>05/27/2009</updated-at>
    <biography nil="true"></biography>
    <title>Bootstrapping Your Open Source Business</title>
    <submitted-at>04/20/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">270</id>
    <description>A panel on building a profitable business without outside investment using open source, hard work, and a little bit of luck.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/20/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Teaching System Administration</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">136</id>
    <description>I'll describe my experience with teaching a University-level system administration course that combines academic education about principles and theories of system administration and computer science with practical information and hands-on learning using realistic projects, as a means of inspiring a more general discussion of how one can teach and train other system administrators.  What do you wish you could have known in advance but learned from experience instead?   How do you sort out the ideas and information that are most important from a field as wide-ranging and open-ended as system administration?</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Changing From Proprietary to Open Source: The First Year</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">203</id>
    <description>Once programmers twisted wires to create programs. Software languages arrived and they adjusted and grew as the languages grew. They adjusted to databases, networks, Macs, PCs, the Interwebs, etc. Ideally the adjustments are incremental and manageable, enough to challenge, even to stretch, but not so much that it overwhelms.

Now, how big is the challenge of swapping from closed to open anyway? One might move from giant mainframes and massive multi-million dollar projects, or from the land of expensive desktop/network packages and licenses. If you're lucky you might move to a related situation, for example from .NET to Rails. One likely moves to FOSS from software too expensive to own copy, making it hard/impossible to have their own projects on the side and stifling sharing and collaboration beyond the confines of a given project. They may have worked on massive, well-managed international teams, but nothing as organic as the open source world.

Most were used to longer projects built to last decades, with large/huge teams, vast budgets, excessive planning, complex methodologies, reams of documentation, teams of QA testers and managers who could handle the kinds of clients with millions to spend. They may find themselves in the rapidly evolving web world, developing a web page for a client in days/weeks weeks using agile development, based on a spec built from an email exchange, on a site expected to last just a year or two.

Many of the weapons in their arsenal will no longer work, or worse, will lead them astray. It's quite possible that every piece of software they use will change, from operating system, through framework. The learning curve can be overwhelming. What are the warnings and pitfalls? What can a programmer do to shrink this gap and prepare themselves? For employers the normal approach is to hire smart capable programmers thinking they can quickly adjust to all this, but does this still apply?

I'll try to cover all the bases and share the lessons I learned, and I'll wrap up by answering the big question; is it worth it?</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/09/2009</updated-at>
    <biography nil="true"></biography>
    <title>Web Testing with Windmill</title>
    <submitted-at>03/12/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">36</id>
    <description>h2[=approaches]. Web Testing Approaches

Separating Concerns, Isolating Components
Unittesting vs Functional Testing
Full Monty (blurring the lines between unittesting and funcitonal testing)

h2[=toolsAndTech]. Tools and Technologies

Browserless tools (HTTP tools, Browser simulation, DOMless JavaScript Interpreters)
Browser tools (Watir, Selenium, Windmill)

h2[=writingTest]. Writing Windmill Tests

Starting Windmill
The Windmill IDE
Using the recorder
Adding actions and assertions
Using the Inspector
Serializing your test (Python vs JavaScript Tests)

h2[=debuggingTests]. Debugging Windmill Tests

Running tests
Debugging Failed Actions
Firebug and Firebug Lite
Using the Lookup object

h2[=runningTests]. Running Tests Continuously

Command Line Features
Hudson Plugin
Getting Windmill running in hosted environments like EC2

h2[=extra]. And now for something completely different

Dynamic testing (Windmill's eval APIs)
Testing Firefox Extensions (MozMill)</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/12/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Trusting Our Leaders</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">237</id>
    <description>Technology changes faster than almost any field of human endeavors,
and to successfully ride this bucking, twisting roller-coaster, we
need to make predictions.  Individually, we are rarely qualified to
make those predictions, and you rightly take with a grain of salt
anytime someone tells you what the &quot;next big thing&quot; is going to be.
Yet, there exist among us supposed super-pundits, whose utterances
we should devour as if they were chocolate-coated truth.  How much
salt do we need, then, as we read techblogs, converse at user groups,
or attend conferences?

Or perhaps it isn't salt we need at all, but rather clear numerical
boundaries based on the failures and successes we have experienced.
The relatively young field of heuristics and biases may offer us
useful tools with which we can understand the pundits' failings, and
our own.  In this talk we'll cover a handful of the biases most likely
to lead you into mistaken beliefs, some tools you can use to start
avoiding them, and then we'll talk about prediction markets and
prediction tracking, two tools that can give you better evidence with
which to make more rational, and more successful, choices.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The importance of Open Source in Cloud Computing</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">103</id>
    <description>There is an opinion that open source has no relevance in the Cloud based world. In this talk, I will counter that opinion with strong arguments supporting the need to have open source in the middle of Cloud ecosystem. I will argue that along with open standards and data portability, open source is vital for the success of Cloud Computing. I propose a Cloud ecosystem with open source as the main feature and offer various scenarios highlighting its importance. This talk will try to counter the arguments about the irrelevance of open source in the Cloud Computing world as well as some myths about Cloud Computing promoted by the proponents of open and free software.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Managing Infrastructure as a Development Project</title>
    <submitted-at>04/06/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">170</id>
    <description>Traditional system administrators are labelled as anti-social hardware
managers who execute repetitive tasks in order to maintain availability of applications from which  they are completely disconnected.  You can change this.  In this presentation, Michael Stahnke will cover applied software development practices in conjunction with system administration practices to construct a high-performing team.

This presentation will teach the benefits of applying traditional, open source,  and agile development methodologies to system administration, including: using unit tests to prove out configuration changes,  writing formal specification documents based on requirements, deploying a continuous integration system to measure defect rates on your production environment, and  managing bugs, enhancements and releases of your infrastructure.

By concentrating on output and the methods of delivery, you can modify the usage and execution several existing tools, (Spacewalk, Puppet, Cfengine, Nagios, Cobbler, git)  to deliver a better designed and managed autonomous environment.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/06/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Troubleshooting Linux I/O Performance With Open Source Tools</title>
    <submitted-at>01/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">3</id>
    <description>While the Linux I/O architecture is complex, a number of open source tools exist that make finding bottlenecks easier. These tools include traditional Unix utilities like &quot;iostat&quot;, but they also include some tools that go deep into the block layer and give you information about major events in the life of every I/O operation.

This session will present a tutorial on some of these open source tools. I'll show you how to get them, how to install them, how to run them, and how to interpret their output. The tools should work on any of the major Linux distributions, but the focus will be on the three most popular community-based distributions, Ubuntu, openSUSE and Fedora.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>01/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>A Lightning Introduction to Tapestry 5</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">70</id>
    <description>The Apache Tapestry web framework has been making a name for itself in terms of innovative features and ease of use. In this session, we'll introduce the goals of the Tapestry framework: Simplicity, Consistency, Efficiency and Feedback. We'll discuss the challenges of building modern, Web 2.0 applications and the two main approaches: action-oriented and component-oriented. We'll show the advantages of the component-oriented approach, especially as implemented in Tapestry. Tapestry includes many developer productivity features, including live class reloading, excellent exception reporting, and convention over configuration to keep thinks concise: we'll show how these result in minute amounts of code to accomplish big goals, and how Tapestry brings scripting language productivity within reach of Java developers without sacrificing any of Java's inherent speed and power. Finally, we'll show an overview of how Tapestry works in the real world: not just productivity, but true code reuse and exceptional scalability.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/06/2009</updated-at>
    <biography nil="true"></biography>
    <title>Wednesday Welcome and Keynotes</title>
    <submitted-at>05/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">271</id>
    <description>Welcome to Open Source Bridge!

Amber Case will be speaking about being a cyborg citizen.

Kurt Von Fink will speak about the hacker business model.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>05/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building High-Availability Services with Linux</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">137</id>
    <description>I'll provide an overview of what &quot;high availability&quot; means (and doesn't mean), system and network architectures for implementing high availability, and Linux-based tools for implementing failover and load-balancing (Linux-HA/heartbeat, ldirectord, LVS/IPVS).  I've used these tools to implement high-availibility service implementations for HTTP, SMTP, POP, and IMAP.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Econix: tools for free and open (source) grassroots economies</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">204</id>
    <description>h4. Economy in crisis

Old-school economies are collapsing, rooted in a breakdown of trust and information flow (ie. credit). At the same time our societies need to radically restructure themselves to address peak oil and climate change, but existing dominant economic actors -- corporate or state -- seem 
rudderless. 

The alternative is for a different kind of economy to emerge, in which grassroots movements and local (virtual) communities have the ability to dynamically plan and organize economic actions based on their own values. This is already happening, and we can support such emergence 
using tools adapted from and developed through the open source community. 

h4. Economy as information technology

An economy is a way of coordinating needs and resources. Central planning does this by funneling information through hierarchical structures. Markets do this by translating wildly diverse kinds of 
relevant information into one universal metric: price. (This is oversimplified, and actually existing economies combine these and other methods at all levels.) 
 
The &quot;real&quot; economy has developed vast and top-heavy infrastructures of regulation, ratings, risk-management, financing, and the like in order to manage the information flow of its systems. That is, at least in principle, to get real needs met efficiently with available resources. 
And it's not working. 
 
But information technology, and open source development in particular, has developed a wide range of functional approaches to such problems that can be ported over to the &quot;real&quot; economy. *Econix* is a tag for applying the lessons and tools of the hacker culture (ie. Unix) to the 
broader economy. 

h4. Economy as semantic web

The web is already a vast economy -- some of it monetized, much of it not. People make offers and requests for goods and services; people publicly or privately rate the reliability, coolness, eco-friendliness, etc. of economic partners; people schedule meetings, coordinate 
projects, get things done. 

But it's (becoming) exhausting as hell to (most of) those who use it that way, and overwhelming to those who don't. There's too much information to sift through, too many platforms to engage, too much to keep track of. 
 
As this information becomes formatted so that techology can read it -- and microformats are already starting to help this happen -- then we can develop tools that sort and prioritize this sea of information for us. 

h4. Economy as distributed user-driven values engine

Then, each user can define how they want their economy to function. Who do they trust? What do they value? What do they need? What do they have to offer? How do they want to make choices about what to work on when? 
 
Tools can use preferences tuned as finely as desired to cascade trust networks and tagged ratings in complex ways, presenting the user with a fully customized, simple, prioritized list of likely-useful economic opportunities. 

h4. Introducing Swiftr: an Econix aggregator

We'll introduce our initial proof-of-concept economic aggregator project, as an example. This is intended to work with existing data pools (using microformats and/or scraping), as well as new-model data exchange mechanisms like The Mine! project. 
 
We'll also discuss our three-pronged approach, combining deep engagement with grassroots organizing in Portland as initial user-base with evangelizing in the tech / data platform community, and open source development of a working tool. 
 
And we'll facilitate conversation on: 
 
* other existing projects that connect with the idea of Econix 
* other ways the economy can be galvanized using open source techniques 
* implementation challenges and workarounds 
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>bzr vs git smack down</title>
    <submitted-at>03/13/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">37</id>
    <description>&lt;a href=&quot;http://www.chesnok.com/daily&quot;&gt;Selena&lt;/a&gt; loves &lt;a href=&quot;http://git-scm.com/&quot;&gt;Git&lt;/a&gt; and &lt;a href=&quot;http://www.emmajane.net&quot;&gt;EmmaJane&lt;/a&gt; loves &lt;a href=&quot;http://bazaar-vcs.org/&quot;&gt;Bazaar&lt;/a&gt;. And like all good nerds they've spent a fair amount of time talkin' smack about the other's version control system (VCS).

But what really makes a good VCS? What are the questions you need to ask to pick the right VCS for your work environment? In this talk we'll help you to learn how to weed through the smack-down-talk and choose the best system for your needs today (and in the future). 

Please participate in the creation of this talk by tweeting and denting your questions. We're keeping a running total at &lt;a href=&quot;http://www.bzrvsgit.com&quot;&gt;www.bzrvsgit.com&lt;/a&gt;.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/13/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Perl is Undead</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">238</id>
    <description>Some people outside the Perl community believe that Perl 5 is stagnant and Perl 6 is going nowhere.  Other people formed their perceptions of Perl a decade ago when everyone and their dog wrote Perl programs to power the web... badly.  Perl 4-style programs still abound, despite fifteen years of practical experience building real-world Perl programs which are performant, maintainable, and practical.  Modern Perl is a very different beast from those old stereotypes.

Perl isn't dead, it just has a PR problem.  The view from inside the Perl community is very different.  We'll show the real life of Perl 5 -- including CPAN, the colossal archive of reusable software modules, and itself the largest automated testing suite in the world.  We'll explain Parrot, the new dynamic language virtual machine.  We'll show off some amazing features of Perl 6 -- real code, working right now.  It's closer than you think.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source CAD/Graphics Backstage Tour</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">104</id>
    <description>Open Source Computer Assisted Drafting/Design programs and low-level graphics libraries are numerous and varied.  A programmer's first step toward solving a problem in this realm tends to require extensive research, or you have to make big decisions with minimal information.  Understanding the very high-level and very low-level ideas gives you a toehold for further research and a foundation for good decisions.

This presentation will explore the low-level and high-level systems ranging from OpenGL and geometry toolkits to GIMP/Inkscape plugins and BRL-CAD extensions.  Emphasis is placed on cross-platform solutions and pragmatic approaches (including Perl/Python/Ruby bindings and other scripting options).  Interactive and batch processing concepts are considered, along with issues of interoperability and file formats.

You will see which options are available for solving graphics problems, then learn about the internals and assumptions of each system and their effect on your options for mixing technologies.  Whether you need to work with 2D line/circle data or 3D CSG/BREP/polygon data, this will get you on track to become part of the growing open source CAD/graphics community.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Scala for recovering Java developers</title>
    <submitted-at>04/06/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">171</id>
    <description>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)</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/06/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Command-Line Kung Fu: White Belt</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">71</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/06/2009</updated-at>
    <biography nil="true"></biography>
    <title>Thursday Keynotes</title>
    <submitted-at>05/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">272</id>
    <description>Portland Mayor Sam Adams

Ward Cunningham</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>05/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>What's New in GCC</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">138</id>
    <description>The GNU Compiler Collection includes compilers for seven languages and supports dozens of architectures and operating systems.  Hundreds of developers are constantly improving GCC by implementing new language features, porting to new processors, and adding new optimizations to make your application run faster.  The last few releases have included many interesting changes, with many more new developments in the works for upcoming releases.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Geographic Information Systems</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">205</id>
    <description>This panel brings together open source GIS geeks to introduce geographic data and to answer your questions about geographic information systems.

Topics include:
  * Where do I get free geographic data?
  * How do I get that data into my application?
  * What tools exist to display that data?
  * How can I integrate geographic information into my project?


Tools discussed will likely include, but certainly are not limited to:
  * PostGIS
  * Google Maps
  * Mapserver
  * Geoserver
  * Various geocoding tools/services

Anything else the audience wishes to discuss.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Library Software: Empowering Libraries - Creating Opportunities</title>
    <submitted-at>03/13/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">38</id>
    <description>The closed, proprietary, integrated library systems (ILS) of the last decade have left libraries with no control over features, enhancements, hardware platforms, or support options resulting in an attitude of &#8220;learned helplessness&#8221; when it comes to their ILS.  Open Source Library Systems (OSLS) offer opportunities to empower libraries and library staff to create new kinds of collaborative support and development environments.

This session will include lecture, group discussion and group activities.  The goal is to make participants aware of the unique opportunity that comes with using Open Source software to change the library&#8217;s culture from one of learned helplessness to one of continuous improvement where ideas about enhancing service to customers and improving work flow can be rapidly brought to fruition.  With a new relationship to their ILS, employees throughout the library can participate in making the library experience better for all.

The seminar will include the following components:
* overview of Open Source software including an explanation of the underlying business model and principles
* group activity designed to draw the sharp distinction between an OSLS and an ILS (closed, proprietary, vendor-controlled) in terms of the library's ability to affect every aspect of their own working environment as well as the services they can make available to customers
* discussion of Open Source Library Software (OSLS) currently available and who&#8217;s using them
* discussion of support options and collaboration possibilities
* discussion of the ways your library can get involved with an OSLS project 
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/13/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Documentation: It&#8217;s a love-hate relationship</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">239</id>
    <description>Submitted on behalf of Russel Pike

That&#8217;s where we come in. We are KnowledgeLink Consultants and we have over 20 years experience doing what we love: documentation. Specifically, taking your software and documenting it so that your users can implement it. 

In this presentation, we will take you through the process we use to create the documentation for an open source application. 

Good software documentation starts by analyzing the audience to determine who will be using it. Once we know who will be using it, we can determine their level of sophistication as software users. This allows us to determine the level of detail necessary for the various users. 

The next step is to identify the tasks that the users will perform with the software. This is especially important if there are several types of users that can perform several different tasks with the software. Once we identify these tasks and the hierarchy of tasks, we write the procedures for how to use the software to perform them for type of user. 

We also determine whether reference documentation is needed. We examine each dialog box, field, tab, and button and explain what it is and what it can do. We also evaluate the software with developers and create a series of FAQs to deal with the questions that may come up while using the software and the answers to these questions. 

End your love-hate relationship with your software. Combine our documentation strength with your coding strength to realize your goal of producing that marketable software you intended.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Reasons and Methods for Web Site Localization</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">105</id>
    <description>Many developers ignore localization entirely or end up rewriting a lot of their application by trying to add it at the end of their project.

This presentation will explain why it's important to start your project proposals with localization in mind, how to keep localization from running you over budget, how to implement localization within your web sites, and how to avoid many common problems.

The presentation will be relevant to any programming language that supports gettext (most common ones do) but will be geared towards web development and will cite specific examples from &quot;addons.mozilla.org&quot;:http://addons.mozilla.org/, a high traffic, dynamically generated PHP site.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to Spring</title>
    <submitted-at>04/06/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">172</id>
    <description>Spring is a hugely popular open source framework that is rapidly becoming the de facto standard in enterprise Java development. Spring's aim is simple: to make JEE programming easier and to increase developer productivity as a result. This talk will introduce the framework, with a focus on the core Dependency Injection (DI) module, highlighting why Spring is used and the benefits it beings to the table. No prior knowledge of Spring is required, but an understanding of Object Oriented programming would be useful.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/06/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Bringing open source technology to community projects -- a live discussion</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">72</id>
    <description>This session is a live discussion on applying open source technology to community problems.  It is also something of an experiment, in that we don't know yet what problems we will solve, but I am sure it will be extremely interesting, as well as begin dialogues between community groups and programmers that will bear fruit in the future.

This session will be organized around a panel comprised of four open source programmers and four community organizers without much technical inclination.  The moderator (Webb Sprague) will elicit descriptions of the community projects, their information and data component, and any bottlenecks they are experiencing that might be solved with the right application of technology.  The technically savvy half of the session will sketch solutions, drawing on their wide knowledge of open source projects which might meet the needs of people who don't usually know about such things.  The easy answer to many questions will be a combination of google spreadsheets and training people to use email lists properly; there will surely be more complex answers to complex problems that arise in the discussion.  Comments from the audience will also help drive the discussion.

Currently on the tech panel, we have Webb Sprague, David Percy, and Tim Welch, and possibly more, providing a good mix of web development, database, and GIS.  On the community panel, Sarah Beecroft will sit sit with Israel Bayer (Director Street Roots), Kreeg Peeples (Potluck in the Park), and a leader of a soup kitchen in the mid-Willamette Valley.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/11/2009</updated-at>
    <biography nil="true"></biography>
    <title>Friday Unconference Kickoff &amp; Scheduling</title>
    <submitted-at>05/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">273</id>
    <description>A short introduction to unconferences, and session scheduling.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>05/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Agile JavaScript Testing</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">139</id>
    <description>h3. Intro
* Test Driven Development - What is it, why do it, what are the advantages?
* Challenges of web applications - browser quirks, asynchronous ajax, dynamic-ness of JavaScript language
* Future VMs will run JS faster, making &quot;bigger&quot;, more processing intensive apps possible within a browser
* Traditionally web applications have most business logic running server side.
* Testing for server-side web applications has matured over the past few years
* AJAX applications have large amounts of code executing in the browser in JavaScript
* This creates a growing need for testing at the browser level, but this area is still young and not as widely practiced

h3. What do we gain?
* Stable development - iterate without fear of breaking existing features
* Easier refactoring - rewrite the guts of your app and be confident it continues to work
* Speed - stop refreshing and clicking through your app to verify things are working, thats what computers are for
* Automation - repeatable tests help you do the right thing every time, without having to think about it

h3. Getting Started
* What libraries and methodologies exist for JavaScript testing?
* A simple example - a client-side form validation library and a suite of tests for verifying it works as expected

h3. Going further
* A complex example - integration testing, scripting user stories
* Testing across multiple browsers
* Incorporating JS tests into a larger development workflow with server-side tests
* Continous integration - running tests automatically, every time you commit</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Intro To Pydra - A Distributed Computing Framework For Python</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">206</id>
    <description>Pydra is a distributed and parallel computing framework for Python being built by the Oregon State University Open Source Lab.  Pydra is used by the Protein Geometry Database, a biochemistry research tool, and will be used by other projects developed at the OSL.  The Pydra team is working hard towards an official release later this year.  

Pydra will provide:
 * A Web interface for cluster management, monitoring and job scheduling
 * Strong security within the cluster
 * An easy to use, flexible job framework, including MapReduce support 
 * Fault tolerance and automatic fail over.


This session will provide an overview of the Pydra project's architecture, concepts, and roadmap.  You'll learn how to deploy and use Pydra within your own applications.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>JotDB - Simple Data Manipulation Made Simple</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">106</id>
    <description>JotDB gives desktop users a spreadsheet-like tool for simple data manipulation, but is built on SQLite and manipulates data as records and fields rather than cells.  It is designed to be open not only at the source code level, but also in how you use and access your data.

The JotDB plugin system allows extremely simple code (in any programming language) to manipulate data without talking to the database.  This allows users to explore their idea before building a production system, or to simply solve today's data-centric problems today.  With ODBC or other SQL drivers, connecting existing database tools is easy.

JotDB forms give you the full power of wxWidgets in a simple, declarative syntax with the option to add dynamic features in Perl.  Whether you just want to streamline data input, or need to fetch data from a web API, it's a small step from the auto-generated input form to a highly customized application.

Stop using a spreadsheet to tabulate data!  JotDB gets your solution started on the right foot and allows it to grow into a real database rather than getting stuck at the big transition from &quot;just a spreadsheet&quot; to a critical application.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Cultivating Open Source in a Formerly Barren Community</title>
    <submitted-at>04/07/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">173</id>
    <description>A funny thing happened in the ColdFusion community recently. ColdFusion has been a proprietary product since its introduction in 1995, but within the last year, two highly capable, compelling open source alternatives have been released to varying degrees of fanfare.

Open source advocates probably imagine scenes reminiscent of the Berlin Wall coming down, with freedom triumphing over long-standing oppression. But the actual response from the CFML developer community has been far more varied, subtle, and intriguing.

This does lead to a broader question that is more universally applicable: how do you cultivate open source in a developer community, particularly one that is indifferent or downright hostile to it?

As a member of the steering committee for the Open BlueDragon project which is barely a year old, I've learned a lot about myself, developer communities, and open source in general. And I think many in the FLOSS community can learn from my tale of walking that fine line between politics, wars of words, turning the other cheek, education, advocacy, knowing when to speak and when to shut up, winning converts, turning friends into enemies, and holding the hands of noobz who just want to get stuff to work.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/07/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source on the Farm</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">240</id>
    <description>There are Open Source projects to develop software for all sorts of specialized uses.  Indeed, there are complete Linux distributions for K-12 schools, for libraries, for geographers, for musicians, and so on.  But, there is very little available specifically for small farmers in the Open Source world.

In this talk, we will discuss the reasons for this and ways of changing the situation.  

In particular, we will discuss:
*  The differing needs of different types of farms
*  Similarities between farm culture and Open Source culture
*  Software requirements:  What applications do farmers need?
*  What applications already exist?
*  What applications need to be created?
*  How should software by packaged for farmers?

The author will discuss these and other issues from the point of view of someone who grew up on a small traditional farm, and spent his career in Open Source Software, and is now farming again.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>PostgreSQL pg_proctab: Using SQL to Query System Statistics</title>
    <submitted-at>03/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">73</id>
    <description>pg_proctab is a collection of PostgreSQL stored functions that allows the use of SQL to access the operating system process table to collect processor and I/O statistics.  See examples on how to use these stored functions to measure the system resources used when executing various SQL statements and tranactions.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Tangible open source!?</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">140</id>
    <description>Beginning with an overview of the current state of open source hardware, hardware tool chains and collaboration platforms, attendees will learn everything they need to know to jump in and start their own open source hardware project.  Starting with blank napkins, everyone will build out their ideas and leave with a complete design that is ready to manufacture. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How to mix APIs to produce a Delicious Cake</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">207</id>
    <description>This talk will focus on some of the fundamental things that are needed to be accomplished in order to wrangle different service APIs.  Examples and some cool techniques will be discussed as well as best practices.

Agenda:
- API types
- API formats
- Error handling
- Caching
- Obsification </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Real time USB control.  What? me worry?</title>
    <submitted-at>03/15/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">40</id>
    <description>Sure, you've been told that USB is broken for real time at the specification level, but that won't stop you from trying! This talk presents the setup and investigation of where some of the rocks are when attempting to do any type of real time control over USB.  

This talk will include a demo of something falling over.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/15/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>A Tour of CodePlex</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">107</id>
    <description>CodePlex is Microsoft's open source project hosting site. Launched in May 2006, CodePlex host thousands of open source projects with support for source control, bug tracking, wiki pages, release management, forums, and project statistics. Additionally, CodePlex supports SVN and Teamprise source control clients. 

This talk explores the CodePlex feature set and how the CodePlex team uses agile to deliver new versions of the CodePlex software every 3 weeks based on user feedback.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building a FOSS Certification</title>
    <submitted-at>04/07/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">174</id>
    <description>Participants will work together to design and build the program, curriculum and delivery mechanisms for a free and open source software (FOSS) certification program. The program will be designed to give the OSBridge effort a sustaining funding model. Given the short timeframe of a conference session, we will probably only set the stage for fuller work to be completed beyond the first OSBridge.

Wherever possible, the certification program will be built and delivered using FOSS tools.

The certification might be built following existing models, such as the ITIL http://www.itilcertification.org and/or RHEL http://www.redhat.com/certification/rhce</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/07/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Securing Social with OpenSocial and Caja</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">241</id>
    <description>In an attempt to integrate standards into the social web, the OpenSocial standards seek to give developers a &quot;build once - deploy everywhere&quot; methodology for engineering applications.  With the push to the merging of your real and web world personalities and personal information, the concerns of insecure social habits become very clear.

While trying to create easy to develop application environments in a hurry, many OpenSocial containers have gone the route of using insecure iframes as their security models, many times leading to the hijacking of personal information.

Caja enters as an open security solution.  Providing multiple levels of JavaScript security in an open-source package, Caja delivers what was lacking in the social world - security.

This presentation will provide an overview of the Caja security model with OpenSocial standards and explore why security considerations need to be integrated when creating open standards for the social web.  </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>04/23/2009</updated-at>
    <biography nil="true"></biography>
    <title>Running Successful Online Communities for User Groups</title>
    <submitted-at>02/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">7</id>
    <description>There are myriad community-enabling tools out there.  We'll dive in and explore those that have been most effective at encouraging user group activity, and provide a few case studies.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Why getting people talking will help your project</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">208</id>
    <description>There are millions of open source projects and all of them need contributors. People are what make projects successful. So what is the thing that will get more people interested in your project? In technology companies they call it &#8220;evangelism&#8221;. Evangelism is the art of taking that love and passion for technology and using it to enthuse other people.

In your open source project everybody should be be an evangelist. This session focuses on the skills that will make people sit up and listen about what you and your project does best. Using blogs, conferences, and social networks you can excite the rest of the world about the things that make your project unique and different.

Evangelism isn&#8217;t marketing, it&#8217;s using your natural passion and excitement for good technology. If you&#8217;ve ever caught the giggles you&#8217;ll know that an honest open emotion can be more powerful than the most expensive marketing campaign. Learn what motivates people to listen, how to reach the audience you want, and how to keep your new audience interested until they want to participate in your project too.

Participants in this session will be introduced to the idea of being able to promote your project in a human way, and learn some basic skills to engage people about their project and gain support and contributors. We will show some popular projects and some of the methods they have used in order to gain prominence</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Maker culture and the new economy</title>
    <submitted-at>03/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">74</id>
    <description>This presentation will be a joint production of Denney Cole, owner of Portland Tech Shop ( http://portlandtechshop.com/ ) and long time local high tech manager, and Webb Sprague, anthropologist and long time open source programmer.

We will discuss how changes in personal subjectivity and technology imply the demise of old economic models.  In other words: today lots more people are experiencing making technology as fun rather than as something unpleasant they do for money, and this has implications for companies that rely on selling fun and buying labor.  If everyone joyfully becomes an engineer/ maker, the supply of technological products will soar, the demand will remain constant, and the price, therefore, will fall and companies will have to find new niches to survive.

One new niche is being filled by Portland Tech Shop's here in Beaverton, which provides a 22,000 square foot factory space for creative individuals.  Denney will discuss the opportunities provided by Portland Tech Shop, the culture developing around it, and things being made there.

The presentation will alternate between wild social-theoretic speculation and down-to-earth descriptions of current equipment and projects happening at Portland Tech Shop.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Organizing a Volunteer-Driven Open Source Community Project</title>
    <submitted-at>03/15/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">41</id>
    <description>This panel will describe the process of one local group's community project from inception to completion, and the panelists will be able to answer questions and speak to considerations that the audience might have regarding organizing a community project of their own.

Panel members will be myself, as organizer/project manager; Melissa Anderson of Incite Development, as technical lead/Drupal manger; Molly Vogt of the City of Gresham (my Americorps supervisor) who did a lot of political organizing and set up the structure that made this possible; Joaquin Lippencott of Metal Toad Media, who donated theming and recruited a design team that took the project to the next level; and Israel Bayer, of Street Roots Newspaper, who the project was for.

We will discuss the development of the http://rosecityresource.org website, the first volunteer community project of the &lt;a href=&quot;http://groups.drupal.org/portland-oregon&quot;&gt;Portland Drupal User Group&lt;/a&gt;, which I organized as my capstone Americorps project.  

What began as an effort to map resources for the area turned into a massive volunteer undertaking to provide a tool for a local nonprofit to better manage and publish their data.

We will talk about how the project came to be, the considerations that were made, and the recruitment and the pulling together of local resources and volunteers that enabled this project to happen, and include perspectives from the people and groups involved.  We'll also offer suggestions to identify and build community projects for any local user group.

This panel will include the individuals involved in various aspects of the project and will provide a well-rounded array of information from all perspectives of implementing such a project, from technical, outreach/promotion, client, and developer perspectives.

Note: This site just launched on March 28th, 2009!  You will now be able to see it by going to http://rosecityresource.org.  
You can also check out our project/development page at http://groups.drupal.org/node/17216</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/15/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>An Introduction to the Python Imaging Library</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">108</id>
    <description>The Python Imaging Library (PIL), is an extrememly useful image manipulation library for use within the Python general purpose programming language.  With an efficient internal representation of images, the PIL can enhance your productivity in dealing with images, and as we found, even enhance your performance.

My talk will take the form of an introduction, with some delving into the internal representation of the system, followed by a hands on tutorial of some basic functions.  Also, a specific application will be explored involving the processing of aerial imagery, tying the tutorial into my experiences developing an aerial image processing system.

Attendees can expect to follow along on their laptops or via handouts if they've come without a computer.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to Parrot</title>
    <submitted-at>04/07/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">175</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/07/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Evaluating Filesystem Performance for PostgreSQL</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">242</id>
    <description>The Linux operating system provides a number of file systems that can be used, as well as volume management and hardware or software RAID. We are running performance tests for database tuning, and are curious if the file systems really behave like we expect them to, especially when used in conjunction with RAID or volume management. Are these file systems being used in manners for which they were designed? There is also more to file systems than how fast we can read to them or how fast we can write to them. How reliable is the file system, and how do be prove it? We have collected lots of data and want to share it.

This talk will focus on Hardware RAID and select Linux filesystems.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Agent-Based Modeling Toolkits</title>
    <submitted-at>02/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">8</id>
    <description>Modeling and simulation (M&amp;S) tools are often proprietary, which presents some significant reproducibility issues.  For standard operations research or mathematical models, where the industry is relatively mature, canonical model descriptions are plentiful and easy to access.  So, proprietary tools only inhibit the reproducibility (and heuristic value) to the extent that they cost money or require a particular platform (e.g. Windows).

However, a somewhat novel form of M&amp;S designed to study &quot;Complex Adaptive Systems (CAS)&quot;:http://en.wikipedia.org/wiki/Complex_adaptive_system emerged from the techniques developed by the &quot;computationalists&quot; (the grandfathers being Turing and von Neumann).  Fine-grained &quot;Agent-Based Modeling (ABM)&quot;:http://en.wikipedia.org/wiki/Agent-based_modeling attempts to provide methods for instantiating hypothetical mechanisms (&quot;generators&quot;) into a computer program, executing the program, and observing the resulting phenomena in order to provide descriptions of referent systems with significant heuristic value.  (This is in contrast to the analytic or mathematical models that emphasize predictive over heuristic value.)

One trouble with fine-grained ABMs are their complicatedness.  It is difficult or impossible to validate or falsify many of these models because they are full of nitty-gritty detail.  Even worse, it is often difficult or impossible to reproduce the results obtained from such a model because, by definition, CAS models are sensitive to the nitty-gritty detail.  Hence, the abstract, often prosaic, description provided by the modeler usually doesn't capture enough detail for the model to be reproduced by other researchers.

And often, that detail can depend on the technology stack used to implement a model.  Hence, if any part of that stack is proprietary, it prevents full disclosure of the nitty-gritty computation used.

Using an open-source tech stack can be critical to the heuristic value of an ABM.

This session will present a few open-source modeling toolkits and present the basics of how to build an ABM in one or more of those toolkits.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Vim Eye for the Rails Guy</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">142</id>
    <description>In this session I will demonstrate Vim in a live Rails project and show you the Vim techniques I use everyday while on the job.  Vim may seem overwhelming at first but I will give you just what you need to get started with confidence.  You won't leave empty handed either, I'll make sure to have a cheat sheet of commands that you can use and take with you so you can practice after the session.
If you are ready to take a break from your heavy weight IDE and garner some Vim chops then this session is for you.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Turn the Many into One:  Using Deliverance to theme your web applications</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">209</id>
    <description>Envision a common scenario where you have picked what you feel is the best tool for the job:  Wordpress for blogging, Trac for bug tracking, and Plone for content management.  Each of these systems has its own template system.  

Faced with the task of unifying the look and feel of these applications you are faced with two choices:

1.  Learn and customize the underlying template system for each of these applications.

2.  Go down the (often painful) path of trying to reduce the number of platforms you support by rebuilding an all-in-one application to encompass all the needed functionality.

Deliverance is a technology that is a step towards solving the above.  Using Deliverance you can apply a common theme to any application written in Python, PHP, or even an application hosted on an entirely separate service as well as static files.



</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building a Database Encryption Solution</title>
    <submitted-at>03/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">75</id>
    <description>If your application stores credit card numbers, social security numbers, or any other type of sensitive information in a database, encryption represents the last line of defense against attackers. But correctly implementing encryption and the associated key management functions is tricky and error prone.

This talk walks through the basics of encryption and key management so that the user has a solid foundation on which to build a database encryption and key management solution.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Oregon Virtual School District: Free Tools for Oregon Teachers</title>
    <submitted-at>03/16/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">42</id>
    <description>Learning can't be bound by borders like the walls of a classroom or the boundaries of a school district. The &quot;Oregon Virtual School District&quot;:http://orvsd.org is an online library of tools for teachers. It allows teachers and students to extend their capabilities beyond what was imaginable just a few years ago. 

Begun in 2006 as a partnership between the Oregon Department of Education and Oregon State University, the Oregon Virtual School District now supports in excess of 250 schools and 17,000 students and teachers throughout Oregon.  The ORVSD uses a variety of open source tools to fulfill its mission of increasing the adoption of technology in Oregon's classrooms.  This session will cover the &quot;how&quot; and &quot;why&quot; of the technology that runs the Oregon Virtual School District. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/16/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Deploying to the Edge from CouchDB</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">109</id>
    <description>Apache CouchDB makes the perfect vehicle for extremely distributed applications. CouchDB can serve HTML and other static web assets, while providing dynamic access to data. CouchDB's validation functions and rendering capablities mean you can write your web app in pure JavaScript. Once it's done it can spread through ad-hoc sharing. When users have full access to the source code, interesting things happen. The application models are different. I'll run you though some of the major differences. Learning how to program extremely distributed case will make you stronger at building more traditional scalable web services.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Running an EDU on OSS</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">176</id>
    <description>With the current economy, we're seeing enrollments in higher education rise while budgets get cut;  in these tough times, OSS allows institutions to empower their greatest asset: their people.  In this presentation, we compare and contrast several popular enterprise-class EDU OSS tools, including Moodle, Sakai, .LRN, and Kuali, discussing their architectures, strengths and weaknesses, and how to get involved with making them better.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Testing in a Python World</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">243</id>
    <description>Developing software in Python provides a plethora of ways to test your code. With all of the options available it can be difficult to sort out what is best from what is possible.

This talk will cover unit testing using the standard unittest and doctest libraries, third party additions to the unit testing toolkit, test discovery and running tools, mocking/stubbing out existing code, and functional testing of web applications. The goal is for the attendee to be able to pick out the pieces that will help them successfully test their own libraries and applications.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/18/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building a SQL Database That Works</title>
    <submitted-at>02/12/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">9</id>
    <description>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&#8217;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/presentations.html
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/12/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Working Effectively with Legacy Rails Code</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">143</id>
    <description>Rails has powered Oakley.com, a site generating tens of millions of dollars in revenue for the past two years. It has 80 models, an equal number of controllers, 75k lines of code&#8230;and no tests. I will talk about how we&#8217;ve been chipping away at growing an effective, valuable test suite since I&#8217;ve come on with Oakley.

Likewise, Rails has powered AboutUs.org for over a year and now handles every request to the site (around 10 million unique visits a month). It has 60 controllers, 250 models, and a test suite that takes 6-8 minutes to run every time. On top of this, the Rails app still uses MediaWiki as a webservice, so it depends on an unknown number of lines of PHP which is not covered by any tests in the PHP code base. We will talk about how we are switching to Rspec and Cucumber, brought online a CI process, and how we manage code that may not be &#8220;The Rails Way&#8221;.

&#8220;Where the hell do I start?&#8221; That&#8217;s the question people ask when they first toy with the idea of adding tests to an existing application. We certainly can&#8217;t stop development and spend weeks just writing tests. How do we maximize the value we get from time spent adding tests? Writing high-level acceptance tests that step through complete usage scenarios, are perfect for casting a big net and getting a lot of regression coverage.

We write tests to cover existing code so that we can add new features and fix bugs. When working on a piece of untested code, we must spend time analyzing the possible consequences of our changes. From there, we can write an acceptance test to cover the broad area, and then write unit tests for various objects and methods that we touch. Then we can test-drive the new feature or bug fix.

Maddox&#8217;s Law: 99% of untested code is untestable code. I&#8217;ll talk about mindful refactorings that you can perform without the safety net of tests, in order to get the code to a point where you can test it.

To keep the scope of our testing and changes small, we need to be able to isolate dependencies in code. There are many techniques for identifying and introduces seams into your code, which allows you to isolate or break dependencies. I will also discuss how Ruby&#8217;s dynamic nature enables powerful techniques that aren&#8217;t available to programmers in other languages.

Continuous integration is extremely valuable when you&#8217;re building a test suite. It allows you to run the slower acceptance tests asynchrously rather than slowing down your development workflow. Setting up CI might be a challenge in its own right, given that testability was not built into the system. At Oakley, simply checking out the source code and setting up an app is an ordeal, with lots of migration scripts in different locations, external dependencies, and hidden knowledge such as storing default values in the db at a certain ID. I&#8217;ll talk about some of the challenges we&#8217;ve faced and how we&#8217;ve been able to make gradual improvements.

In addition to the technical challenges, politics are another common roadblock to introducing automated testing. How do you sell your boss on taking some extra time to test? How can you get the other developers in your organization on board with a testing strategy? How do you responsibly begin testing when you don&#8217;t have much experience with it?

Most people have a superficial understanding of how valuable testing can be, but many people are facing too much pressure at work to feel confident in getting started. There&#8217;s a lot of discussion about TDD and how great it is, but in the real world we frequently have to deal with lots of code that has not been tested at all. How can we take a mass of untested code that runs our businesses, and start working to the ideal of high-quality, malleable, tested code, while still meeting the demands of high productivity in our daily work? My talk will get people thinking and talking about that process, and give them practical techniques for making it reality.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Become a distribution-friendly project</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">210</id>
    <description>Having your program easily packaged by Linux distributions will help to increase its adoption and to ensure that users have it well-integrated into their systems and kept up-to-date easily. Gentoo Linux has more than 13,000 packages, and Donnie will share his extensive experience creating and maintaining Gentoo packages and offer suggestions for improvement.

Technical and philosophical questions that determine how easy or difficult it is for distribution packagers to work with upstream developers will be discussed. Technical issues include the basic metaphor that a package's build and installation process is an API to distribution packages -- it should be changed carefully and purposefully, and changes should be well-documented. In addition, Donnie will describe the level of control and system integration desired by packagers. Philosophical issues, including user expectations and licensing requirements, differ between distributions and can cause major conflicts with upstream developers. Finally, Donnie will discuss developments toward the future of distribution packaging so that upstream developers can consider how this fits into the future of their software.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Information Security for the Open Source Business</title>
    <submitted-at>03/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">76</id>
    <description>Information security is a concern for all businesses, but most small businesses don't have the resources for dedicated information security staff. Coupled with the security concerns that customers often have around open source software, the small to mid-sized open source business faces real difficulty in providing security assurance. 

This talk will look at ways that open source businesses can build an information security program that doesn't break the bank or disrupt the core business, yet still delivers the assurance that more and more customers want with open source software.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Unit Test Your Database!</title>
    <submitted-at>03/16/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">43</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/16/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How an open source startup is taking on the largest proprietary software companies in the world and plans to win: The story of Appcelerator and Titanium.</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">110</id>
    <description>Find our how Appcelerator is using open source as a strategy to develop a cutting edge technology while taking on the largest software companies in the world. I will discuss our business model, why open source, licensing, community development, and our go to market strategy. A must attend for anyone who is thinking about open source as a business stategy.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/17/2009</updated-at>
    <biography nil="true"></biography>
    <title>Making Twitter Suck Less With Perl</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">177</id>
    <description>Many applications are starting to emerge that allow you to slice and dice the Twittersphere, (like Tweetdeck [1] or Yahoo Sideline [2]) such as advanced searching and grouping of tweets, posting to multiple accounts, filtering out unwanted tweets from hash tag searches and generally making searching for what you want easier.

Why not use the power of Perl regex's and the vast CPAN codebase to do as you please? Interested in creating autonomous agents that search for what you are interested in and archiving relevant information? This talk is for you!

As an example, this talk will teach the basics of Net::Twitter[3] by explaining how one can write Perl code that watches certain locations (a log file, RSS feed, website, whatever) for given strings of text and depending on which source and string it detects, notifies it's master via Twitter.
In the case of watching an error log, this can be sending a Direct Message if the error severity is past a threshold or posting a normal tweet on a timeline for more routine events.

Other topics that will be touched upon will include

* Unify interactions with Twitter/Identi.ca/etc
* Integrating with Continuous Integration/Smoke Testing
* Tweetholes - Automagically sending certain spam-like messages to the bit bucket
* Integration with IRC bots, blogs and RSS feeds
* Filtering out the same message across networks


[1] http://www.tweetdeck.com
[2] http://sideline.yahoo.com
[3] http://search.cpan.org/dist/Net-Twitter/</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Using Joomla to Create a Full Featured Corporate Website</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">244</id>
    <description>Joomla (http://joomla.org) is a content management system which allows for the rapid development of custom web applications which include dynamic content management and community interaction right out of the box.  Joomla is free under the GPL, and is in use by several large organizations for their main business sites.

We will go through step by step the methods use to bend the Joomla framework to our will in creating a corporate website.  A full, real world, production site will be demo'ed, complete with a test server for audience participants to explore their own creation on the fly.

The focus will be on a guided tutorial, showing:

1. How to translate traditional navigation trees and wire frames to the Joomla framework.
2. Identifying areas where Joomla core will need to be extended to make your business logic work.
3. Installing and setting up the Joomla framework on a server.
4. Exploring templates, modules, and plugins to provide customized interaction for free or very low cost.
5. Modifying a specific template to achieve company design goals.
6. Pulling it all together, getting ready for launch with security measures, content management, and documentation.

The goal will be for each active participant to leave the talk having designed a fully functional website, which we will walk through how to export from the server and take on the road.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Hands-on Learning with Open Source</title>
    <submitted-at>02/13/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">10</id>
    <description>This session explores success and failure in attempting to use open source development for applied learning in a user group setting.

Attend most sessions at a technical conference, including this one, and you'll find one person talking at the front of the room with just enough time to hammer home a few morsels of knowledge. It might be adequate for technology awareness, but not to bridge the gap to adoption.

Applied learning is the natural way for developers to learn, honing their skills with a real world scenario... but where do you find the time, resources, and motivation to pull it off? Come to this session and find out (or help us figure it out :)</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/13/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open source: the business case</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">144</id>
    <description>In this non-technical session we'll make the case for open source adoption in business, using Total Cost of Ownership as a framework.

We'll cover all the places, some obvious and some not-so-obvious, where your organization is spending money on IT.  The sum total of these areas is sometimes called Total Cost of Ownership or just TCO.

We'll also talk about what it takes to make the most of open source in business, how to maximize benefits in each of the TCO buckets, and even showcase a few easy-to-adopt open source applications along the way.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Why humans no let robots control more of day to day earth business?</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">211</id>
    <description>@osbridgebot know it not have much to do with open source, but it this kind of closemindedness that get humans into mess.

Time to let robots control more civic and commercial business. 
Just saying: You never see robot cause economic or environmental collapse, robot right?

Humans have plenty chance rule the earth. Time for robots, specifically @osbridgebot.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Get Off Your Asana and Move!</title>
    <submitted-at>03/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">77</id>
    <description>In technology the body is often thought of as merely a vehicle for the brain. We tend to be so intensely focused upon the tasks of the brain that the body is often ignored until problems such as carpal tunnel, neck, shoulder and back pain arise. When the thinking and physical &quot;bodies&quot; are integrated we find that the system as a whole is more efficient. Hatha Yoga provides a path to help not only the mind and body function fluidly together, but it is also a means to care for the whole body before problems arise.

Yoga does not require complicated props or a special place to practice it. Breathing and physical postures can be done anytime, anywhere. Postures and breath practice do not require that anyone be able to bend into complicated positions or hold their breath for a long time. Practice can be simple, easy and restorative and a short practice, even at a desk between phone calls, may bring lasting benefits.

This is a yoga workshop for anyone who sits and works on computers a lot. You will learn breathing exercises and physical postures that can be done at anytime to help maintain a healthy body and clear mind. Suggestions will be included for how to modify stretches to protect injuries and provide gentle opening.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Getting Started with Virtualization on Linux</title>
    <submitted-at>03/16/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">44</id>
    <description>This session will cover the basics of how to set up KVM for virtualizing everything from web development environments to hosting infrastructure.

This talk will primarily focus on installation and configuration of KVM with libvirt on common Linux distributions. It will also include discussion of possible applications of virtualization and general topics related to virtualization. This will include topics such as Amazon's EC2 service, high availability clustering and failover, management interfaces, and Xen.

This talk will primarily target Linux users who are unfamiliar with KVM, but will also seek to inspire those who have used it to consider new applications and management techniques.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/16/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>From Padawan to Knight: Expanding your SQL skillset</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">178</id>
    <description>Most programmers' knowledge of SQL plateaus after their first year or two of database programming;  this tutorial aims to help the attendee move past the basic CRUD operations into making more intelligent databases.  We will cover methods of moving business logic out of the application and into the database, including advanced query design, triggers, and stored procedures.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Every website needs a developer API</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">245</id>
    <description>Rough talk outline:
* Does this apply to my website?
* Examples of ultra-successful web APIs
* Examples of small sites with worthwhile APIs
* Deciding what your API should look like
* Tips and tricks for building your API</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building Scale Free Applications with Hadoop and Cascading</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">111</id>
    <description>Many more applications are suitable to be built on Apache Hadoop than many developers realize. 

In this presentation, we hope to give attendees enough information on how Hadoop works, how MapReduce can be leveraged to perform common and well understood data processing operations, and how the &quot;Cascading&quot;:http://www.cascading.org/ open-source project helps developers rapidly build sophisticated Hadoop applications that can be simply tested locally and executed remotely.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>What Does An Online Community Manager Do?</title>
    <submitted-at>02/13/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">11</id>
    <description>We will discuss and answer just what an online community manager is and what they do. How do you measure what a CM does? How do I know if I need one? How does a company evangelist differ from this? What skill set does my CM need? Where do I find a CM? What personality traits does a CM need? These and many other questions will be answered  </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/13/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Non-Profit Success Through Open Source</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">145</id>
    <description>Open Source projects like CiviCRM (www.civicrm.org) are providing tools to non-profit organization that would have otherwise been cost prohibitive.  Even so, non-profit organizations are challenged to harness open source technology often because of a lack of accessible IT professionals.

Implementing open source solutions in the non-profit organizations requires some clever approaches to minimizing barriers to entry and providing responsive long term support.  The good news is that there are a variety of mature open source projects that can be easily leveraged to support your favorite non-profit.  

This presentation will focus on success models for leveraging open source in the non-profit context. More importantly, the talk will highlight areas where small efforts from the open source community will lead to huge impacts on the non-profit world.  

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>generation y, open source community building and the lessons that business is learning ( or should learn) from them both</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">212</id>
    <description>evolution is inevitable.  open source culture, for lack of a better term, has changed the way the world thinks and shares information and those people who have come of age in the last 10 years have been beneficiaries of incredibly rapid change in social culture.  business culture lags behind and this can cause conflict in the workplace.  I'll explore several concepts that have made the leap into business practice (e.g. the wiki and the blog) and others that are slower to be adopted (e.g. organic leadership and equality of ideas)  </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Social network supermarkets and how to defeat them</title>
    <submitted-at>03/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">78</id>
    <description>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? </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>e-Administration open source tool for e-Governance</title>
    <submitted-at>03/17/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">45</id>
    <description>e-Administration is a web based, platform neutral, paper less communication and work flow solution developed using open source tools (java, jboss, postgresql all running on Linux).

The tool has the provision for self customization by the user organization and can help to create the entire geographic branches, the functional departments, positions and officials for G2C / G2G / B2B / B2C communications.

It helps to integrate the working of the entire vertical and horizontal hierarchy of any community or organization and introduce transparency and accountability. It can also help to create unique identity for every citizen and help track the benefits extended to citizens. Mobile phones can be integrated into the application for seamless communication.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/17/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Geek Choir</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">179</id>
    <description>Much has been made of the connection between mathematics and music over the years.  In this session, we'll discuss various OSS tools for music notation and recording, as well as copyright issues, tips on arranging for various ensembles, and online archives of public domain music.  But, mostly, we'll sing.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Ubiquitous Angels</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">246</id>
    <description>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 &quot;angels&quot; 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.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Data Visualization With GGobi -- A Hands-On Tutorial</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">112</id>
    <description>There are five steps in the data analysis process:

1. The Problem Statement
2. Data Preparation
3. Exploratory Data Analysis
4. Quantitative Analysis
5. Presentation

GGobi is an award-winning open source data analysis and visualization tool with advanced capabilities that can be applied to all of these steps. GGobi can help remove outliers, deal with missing data points, develop both supervised and unsupervised machine learning algorithms, determine whether the &quot;patterns&quot; one sees are really there, and even help analyze social networks.

This tutorial will focus on using visual methods in GGobi for classification, also known as supervised learning. Participants are encouraged to bring a laptop computer running one of the major community Linux distributions to experience GGobi first hand. Install packages and sample data tested on Ubuntu, openSUSE and Fedora will be provided. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Rubinius 1.0: The Ruby VM That Could</title>
    <submitted-at>02/16/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">12</id>
    <description>Development of alternative Ruby implementations has been fast and furious in 2008. Progress continues on RubyVM/1.9, IronRuby, MagLev, JRuby, MacRuby, and Rubinius. Each implementation offers certain niche advantages over MRI (Matz's Ruby Implementation).

Rubinius is an alternative Ruby implementation with a C++ VM, Ruby standard library, and Ruby compiler. It supports both the existing C-API for writing extensions as well as the emerging _de facto_ standard FFI (foreign function interface) that is supported on MRI via a gem, and on JRuby natively. Rubinius offers the broadest support of all core features as a replacement for MRI.

Rubinius has been a public open source project for just over two years. In June 2007, Engine Yard began financially supporting the project. In 2008, a number of major milestones were reached, including running Rails on the previous C-language VM and the switch to completely rewritten C++ VM that offers many architectural advantages.

This talk will give an overview of the project and architecture and detail major recent changes like switching away from the stackless execution model and improvements in the core library data structures, garbage collector, compiler, and JIT assembler. Challenges implementing Ruby and getting the flagship web application framework, Rails, running again can be discussed depending on audience interest.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/16/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Clustering Data -- How to Have Fun in n-Dimensions</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">146</id>
    <description>I will introduce the theory and goals of clustering algorithms. The literature in statistical analysis is made up of dense mathematical equations; so I will translate equations into pseudocode to make the topic more accessible to programmers.

I will expand on the theoretical discussing by demonstrating a simple example of a clustering problem: how to group volcanos in Alaska by geographical proximity. I will move on to algorithms with real-world applications, such as how to group users with similar tastes given a database of user ratings.

I may touch on more advanced techniques to improve the accuracy of resulting clusters. I will also discuss current limitations of statistical analysis. As an example, Netflix' ongoing competition for an algorithm that can predict whether or not a user will like the movie Napolean Dynamite.

The examples from the talk will be implemented using JavaScript and CouchDB. My hope is that people from many different language and environment backgrounds will have some experience with JavaScript. And the data-processing capabilities of CouchDB are well suited to clustering algorithms.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Faking It Til I Make It: A Woman On The Fringe Of Open Source</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">213</id>
    <description>This is a three-part presentation, beginning with an introduction of my personal experiences with open source:

- early exploration of open source software
- technical journey, from sales to support, administration and finally, engineering
- the danger of &quot;laying low&quot;
- challenges and successes
- how failure led to the need for inspiration
- how inspiration led to community

The second section will explore the community I've discovered:

- local groups for women in tech
- vast resources on the web
- support and recognition within the sub-community of women in tech
- what's next?

The last section invites the attendees to participate:

- Q &amp; A
- Invitation to share women-in-tech events
- Invitation to share additional experiences
- Comments and suggestions

The entire presentation gives voice to my own experience but more precisely how I believe it parallels that of many women in technology: we think ourselves on the fringe, but in fact, we are active participants in an ever-growing community.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Bringing Newspapers into the future with Open Source</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">79</id>
    <description>Newspapers can't sit by and watch the world change around them. Just like any business, we need to stay up to date and able to produce quality products that our customers want. That can get expensive if you rely on proprietary software. Come see how open source software enables our papers thrive. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/12/2009</updated-at>
    <biography nil="true"></biography>
    <title>Getting Started in Free and Open Source</title>
    <submitted-at>03/17/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">46</id>
    <description>Leslie Hawthorn and I co-present this talk for beginners who are interested to getting involved but don't know where or how to start.  

We cover the basics of:
-why you might want to get involved
-what you can get out of participating
-more than coding is needed
-how to chose a project
-how to get started
-etiquette of lists and other communication
-dos and don't of joining a community

The talk is not just for beginners; experienced FOSS folks can learn how to help newbies successfully join their projects.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/17/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Mentoring great people:  on being an atlatl</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">180</id>
    <description>*Why mentor?*

Say you've found someone you think would be great for your team, but you wonder about his lack of experience.  Or you're leading a project, and are given a summer intern.  Perhaps you want to help the people on your team improve, but aren't sure exactly how to do so.

In each case you can choose to take the path of mentorship, of selfless assistance, and we can learn much from this simple and ancient tool.

*What does an ancient spear thrower teach us?*

&quot;The atlatl&quot;:http://en.wikipedia.org/wiki/Atlatl is deceptively simple and tremendously powerful.  Examining it, we have the opportunity to learn that:

* A mentor is a tool, and the person using the tool is the most important element.
* A good tool amplifies the user's capabilities without stifling her natural strengths.
* The best tools take time to master.
* The best tools can change the user, making them not just better with the tool but better people.
* The essence of mentorship, which is selfless assistance.

*We will talk generally and concretely about mentorship on software projects.*

* What is mentorship, and are you ready to do it?
* When and who should you mentor?
* What are reasonable goals?
* How do you stay engaged without micromanaging?

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Developer API Panel</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">247</id>
    <description>The Developer API Panel is moderated by Scott Blomquist, CTO at Vidoop.

The panel includes successful API builders from Shizzow and Identica, as well as a mystery guest.

Questions will range from why this matters to how to do it. We'll accept live questions from the worldwide audience, most probably via Twitter.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Gearman: Bringing the Power of Map/Reduce to Everyday Applications</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">113</id>
    <description>Besides being used at LiveJournal.com, Gearman is also now used by other organizations such as Yahoo! and Digg. Development is now active again with an optimized rewrite in C, along with features such as persistent message queues, queue replication, improved statistics, and advanced job monitoring. We&#8217;re also introducing new and improved client APIs, including new user-defined functions for MySQL and Drizzle. The Gearman APIs and simple server installation allow you to have your own distributed computing framework setup in a matter of minutes, which enables you to focus on your own code rather than the plumbing to make scalable system work. This session will introduce these concepts, how to get started, and then describe a few common use cases.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>RubySpec: What does my Ruby do?</title>
    <submitted-at>02/16/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">13</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/16/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Hacking the Encyclopedia: how open source citizens like you made Wikipedia possible</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">147</id>
    <description>You may not know it, but you built Wikipedia. That's right, you. 

Even if you've never clicked &quot;edit this page&quot;, open source citizens like yourself are what made possible the largest single gathering of human knowledge in the history of the world. 

Even before Wikipedia was a twinkle in Jimmy Wales' eye, the free and open source software movement was laying the groundwork necessary to make the free encyclopedia a reality. Stallman, the GNU Project, FSF, Linus, Linux, and every other pioneering open source citizen created the cultural framework that allowed Wikipedia to be conceived. Even if they aren't building software, the editors of the site have more in common with you than they do with those who write Britannica and World Book. 

It's your culture, your code, and everything else you do for open source that enables thousands of people the world over to have a free encyclopedia in their native tongue.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Why you should be developing on Gentoo</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">214</id>
    <description>Developers often want to use the latest and greatest development tools and libraries to develop against, and running Gentoo's testing versions (like any good development distribution) allows you to keep all these tools and libraries under package management.

Gentoo provides a powerful set of tools for a development machine. Since it's a source-based distribution, it comes by default with the full toolchain and related tools (autotools, flex, bison, etc). Furthermore, the packages are not split up, so if you have a package installed, you have all of that package: no searching around for -devel, -headers, -debuginfo, or whatever else.

To set up a decent development system, you often want to install debugging versions of a lot of libraries and maybe even install the source code too. Gentoo provides for that with features that install separate debuginfo files that are automatically found by gdb and that will also install the source code.

On a lower level, you might want to make sure your code compiles on a wide variety of compilers before shipping or releasing it. Gentoo's gcc-config lets you dynamically switch between multiple installed compilers, and you can even use non-GCC compilers for Gentoo packages by simply setting CC in /etc/make.conf or the environment.

Gentoo supports cross-compiling quite nicely with a tool called crossdev that integrates with Portage to make building cross-compiling toolchains completely trivial. All you have to do is pass crossdev the target and it takes care of the rest.

The last, most advanced and possibly most useful aspect of Gentoo for development is the ease of packaging your code. Writing ebuilds is just writing bash shell scripts. If you can build it by hand, you can make an ebuild for it. This makes it much easier to deal with obscure dependencies that you would compile and install by hand on other distributions -- on Gentoo, you can trivially write a package and gain all the benefits of package management.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>03/28/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building Scalable web hosting infrastructures with OpenSolaris. </title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">80</id>
    <description>Linux is the common choice for most web hosting needs today but its not the Only *nix in town. This talk will show some of the benefits of using OpenSolaris as a platform for building a scalable web hosting infrastructure. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How to make Publicly Owned Fiber to the Premises Happen in Portland</title>
    <submitted-at>03/18/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">47</id>
    <description>I gave &quot;a talk&quot;:http://proposals.igniteportland.com/proposals/232 at Ignite Portland 5 about why publicly owned fiber is the answer to our broadband needs.  This time I'll talk more about what it could look like, what forms user-ownership could take, and some ideas about how to make it happen.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/18/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Learning your authN-Zs</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">181</id>
    <description>Maybe you think OpenID is the New Hotness, or that OAuth invented the concept of delegated access to protected resources. Maybe you finally figured out how to push your public SSH key onto a server so you can log in without using a password, and you think you've found the latest-and-greatest in secure, convenient remote systems access.

Here's the thing: the old-skool UNIX crowd had single-sign on, secure access delegation, and ways to selectively share account information across multiple machines and networks all worked out 15 years ago. Heck, even _Microsoft_ figured it out before you did. 

The secret to all this wizardry? Two simple, orthogonal technologies which taste great together: Kerberos and LDAP. Before you run off an reinvent the wheel (badly), or cook up some form of (broken) one-off credential storage mechanism, you should know about these tools, why they're probably better than anything you've dreamed up, and how they not only work with web applications, but in fact make them more secure, easier to maintain, and just plain better.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Test Overdriven Development with OMAPS</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">248</id>
    <description>p=. *Test Overdriven Development with OMAPS*

p=. (aka Test _ONLY_ Development)

Proponents of Test Driven Development are wont to say things like &quot;Once you've got your tests written you're half way there.&quot;  Which may well be true.  But as someone once observed, the first half of a project takes 80% of the time, and the second half takes the remaining 80%.

There ought to be a better way.

Matt and Markus pondered this question and asked themselves (technically, each other) &quot;If test driven development is so good, why stop halfway?&quot;

In this session we present OMAPS, a system for pushing the limits of test driven development far beyond the dreams of even it's most starry eyed proselytes, using a mixture of generative grammar theory, genetic algorithms, blind faith, smoke, mirrors, luck, and trans-fat-free snack foods to get to the point where we can say:

p=. *&quot;Once you've got your tests written you're done*.&quot;*

~* YMMV.  Some limitations may apply.  Offer not valid in all areas.  See session for full details of terms and conditions.  Not available in stores.  Settling of contents may have occurred.~
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Re-factor Your Brain: Meditation for Geeks</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">114</id>
    <description>Meditation is the ultimate open source tool. You can do it anywhere and it&#8217;s free. It requires only your brain and your body. It&#8217;s positive effects are numerous, including: increased productivity, better problem-solving and a reduction in overall stress.

This talk will include:

* Presentation of current scientific research regarding the long-term effects of meditation on the brain.
* An explanation about how these effects specifically apply to OS Bridge participants. E.g., with a meditation practice they will: write better code, solve problems quicker and with greater clarity, communicate more effectively with colleagues, and reduce overall stress.
* Explanation of different meditation techniques, including a guided practice of select techniques.
* Suggestions for starting a meditation practice at home/work.

This talk is faith/tradition-agnostic and open to all experience levels. Especially encouraged to attend are those who have never meditated.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Bridging the Developer and the Datacenter</title>
    <submitted-at>02/18/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">14</id>
    <description>Your application is live and is now publicly accessible.  You and your team have spent countless hours devouring your code base for the slightest imperfections, bugs and potential issues that may arise in production.

We put an enormous amount of faith in our service providers / Datacenters to keep the bandwidth, power, servers, backups, and all other components of the hosting fabric online and operational.

We will explore the aspects of hosting facilities which physically power your applications.  Knowledge in these areas can strengthen your awareness when making purchasing decisions, or debugging critical components between the application and the hosting provider.

_Key topics of discussion:_

*Bandwidth*
 * How failure can occur when your data is in transit.
 * Redundancy methods actively in use today.
 * Quantifying usage and requirements for your application.
 * Understanding the terms and technologies used by hosting providers.

*Backups*
 * Technologies for archiving and verifying the integrity of your data.
 * Web host or developer, who is responsible?
 * Understanding how and where data is stored.
 * Data restoration and retrieval.

*Power*
 * Why it is the most critical component of the hosting model.
 * Basics of power redundancy.
 * Questions to ask your hosting provider.

*Servers*
 * Measuring CPU, Memory and Disk I/O requirements.
 * Horizontal / Vertical Scaling.
 * Redundancies, and where failure most often occurs.

*Virtualization*
 * When virtualization is, and is not appropriate.
 * Virtual Private Servers.

This discussion will conclude with an open forum for QA on topics discussed, and any other relevant topics the attending audience might have.


</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/18/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Become a leader in your organization</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">215</id>
    <description>In any organization, there are leaders without titles. This talk will teach you how to create a reputation as a leader and become someone who others will look to for advice, inspiration, and direction.

Over the course of 6 years of involvement with a huge, democratic open-source project, Donnie has made the gradual transition from beginner to experienced developer to leader. He will share how you can do the same in your own organization.

The core concepts are deceptively simple and seem like common sense in  retrospect, so it's surprising how few people enact them in their own lives to become leaders.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How can open video become the new TV?</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">81</id>
    <description>How can open video become the new TV?

Intro to the visionoOntv project

visionOntv has the goal of making open video activate social change. We have  modest foundation funding for 2 years to launch this (starting April 2009).  http://visionon.tv

As a platform, visionOntv has a skinned and simplified version of Miro, currently with 5 main TV channels, enabling downloadable HD content. (All the other channels and options on Miro are easily available - our version merely adds an interface which helps users to transition from old to new media. All the options for wised-up users are still there.)

The &quot;main channels&quot; are a mixture of &quot;smart aggregation&quot; (syndicated rss feeds and separately posted content) and original programming which contextualises the other content for a wide audience. All content posted is also streamed, currently on 10 different sites via tubemogul.

We ran a solar-powered TV studio at the UK Camp for Climate Action in August 2008, producing some 25 shows (http://climatecamp.visionon.tv). We will have a beta of our CMS running by the time of the Open Video Conference.

The Presentation

Our presentation asks precisely how open video could activate social change, and sets out some of the answers we are pursuing. Some of the questions are:

Can alternative media really break out of the ghetto:
  * Why do people watch mainstream TV news? &#8211; (info-tainment, slick packaging, personalities, etc).
  * How can we compete with the mainstream in terms of entertainment and production values, so that our important ideas reach out beyond the small circles that they currently reach?
  * What kind of filtering and molding of video content will enable it to become the new mainstream?
  * How can compelling content be produced on a huge and global scale, for little or no budget and (therefore) with a short turnaround?
  * Could citizen video journalism explode, with high-production-value, watchable films no longer being limited to a small group of the highly-trained?  
  * Can it be done effectively by people whose main work is something else? 

What else does the new TV need to be?
Much of the technology for IPTV already exists, but the social outreach does not.  We have not yet built effective communities around video content, or, in many cases, around open source tools. Video blogging is individualistic, and we have not yet worked out how to deal with passivity, the thing which &#8220;old media&#8221; was actually designed around.

It is vital that we don't underestimate how difficult any of this is to achieve.  Here are 6 things that are needed for it:

1. Production templates

visionOntv has prepared templates for effective films which can be made in an hour (http://tinyurl.com/d5p3tb), using automated animation of stills (http://tinyurl.com/c5bo2w). We are currently preparing a template for short video reportage, such as http://tinyurl.com/dc348e, which was picked up by rocketboom. There is a further template for the live-edit production of rapid-turnaround studio shows using webcams and software mixing (http://tinyurl.com/clozrm). The emphasis throughout is on how to do effective story-telling at very low budget for the widest possible viewership.
We will demonstrate all of these at the Open Video presentation.

2. Training

The key to the mainstreaming of citizen journalism is training. visionOntv has funding to carry out a training programme in the UK, beginning June 2009, and plans to do it internationally.

3. Smart aggregation

The careful selection of creative commons content based on quality. Putting the viewer first to build user trust and loyalty.

4. Quality content needs quality upload

We have developed a transcoding standard which ensures that the video file is not too large, but can also be projected on a video beamer (important for communities with limited broadband access, and for promoting the collective experience which is a community screening). We will demonstrate this in the presentation.

5. Open source production tools

automated animation for fast-turnaround citizens' reportage using stills
  * video mixing for studio shows
  * a really simple-to-use transcoding tool where all the options for the more technically-minded are available, but where the basic interface is &#8220;stupidly simple&#8221;.
  * video editing (lite and full version)

At the moment, unfortunately, we have to use corporate solutions for all of the above.  We will never recommend to a novice citizen journalist a piece of software which is complex and forbidding.
We need open source tools which have the potential to take over completely from corporate tools.

In an adjoining proposal we have suggested working groups at the Open video Conference to develop these tools, which would match up software developers with professional users.

But something more than quality content is needed to enact social change.....

6. Social media tools

The CMS
visionOntv is customising a completely modular open source cms, where any part of it can easily be imported to any other media project. This is vital. By using a java-based cms, any part can be taken and used as widget code. We are seeking to empower the users with a do-it-yourself cms. We are giving people a whole pile of tools which glue together, but can also be taken out separately into other sites and blogs, and where the keys to creating projects are not in the hands of the techies who created the original cms. This is a new kind of web application where users can create their own resources around our content, and all the tools will talk to each other. Users can build their own gateways into our material for their particular needs, and we could then gain from their new creative commons content. Put simply, it allows the user to manage the content.

visionOntv's cms will have superior chat functions on video streaming, by being layered in such a way that you will be able to chat to anyone else who is watching the film, or to anyone who is watching the channel, or to anyone who is watching anything on the station as a whole.  Viewers can then break out into campaigning (or more purely social, even dating) forums, so that an activist minority starts to feel like a large community, sharing ideas and ideals, planning actions together, discussing the effectiveness of different tactics, and in all kinds of unpredictable ways making social change. 
(We will have a beta of the cms by the time of the Open Video conference)

The playlist generator
This will be created in three phases: the first allows us to create a coherent look and feel using an &quot;old TV&quot; metaphor &#8211; permitting us to create seasons which publish at the same time each week, to insert &quot;in-betweens&quot;, and to differentiate daytime programming from &quot;primetime&quot;.
In future versions, content will be user-controlled, for instance by &quot;I like it / I don't like it&quot; ratings.

Metadata
Metadata standards need to derive from actual practice, in a decentralized way, rather than being centrally-defined in the abstract. visionOntv is doing this, rolling out embeds in content-specific websites using tags.

Proposal 2: Workshop

Wouldn't we all like to make a living from what we do:
Funding / monetizing open video production &#8211; a round-robin &#8211; an opportunity for everyone to share their experiences, good and bad, of funding or monetizing the production and distribution of radical or open video. We can contribute our own experience from a UK/European perspective. And we have a concrete plan for sustainability of the VOTV project which we would like technical support for.


Proposal 3: 
Working groups on the different pieces of software to define a spec for development:
  * video editing &#8211; both lite for citizen journalists (replacing i-moive and movie maker) and full for professionals (replacing FCP, Avid and Adobe Premiere)
  * video mixing for studio shows
  * transcoding tool &#8211; really intuitive to use on first sight
  * automated animation &#8211; for fast-turnaround citizen journalist reportage with stills

Proposal 4: 
We would also like a suitbale corner (preferably in a cafe) to install a &#8220;min-sin&#8221;, a computer in kiosk mode playing a custom version of Miro. The organisers of Open Video could then insert info-announcements into this player.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Opinionated Frameworks for Opinionated Developers</title>
    <submitted-at>04/01/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">148</id>
    <description>The advent of opinionated web application frameworks have made the development of many websites much simpler. But do opinionated frameworks make it easier or harder to write great opinionated software? We'll take a look at some of the most popular open source frameworks to see what opinions they enforce and how they make development simpler or more difficult.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/01/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Hands-on with Cucumber</title>
    <submitted-at>03/18/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">48</id>
    <description>During this course we'll build a real live app, and along the way we'll document our design decisions in the form of running code.  Cucumber is the centerpiece that makes this process palatable.

Going through the exercises will give us the chance to build, break, fix, and organize high-level acceptance tests.  We'll run right into the limits of automation, and talk about how to fit it into a sane testing world view.

This class is geared toward people who are interested in software testing, but who are not necessarily experienced with Cucumber or Ruby.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/18/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>OpenStreetMap: contributing to open data through mapping</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">182</id>
    <description>We will start with a 45 minute presentation on OpenStreetMap  (discussion/ questions are encouraged!)
*what is wrong with existing maps? 
*how is OpenStreetMap different?
*Where are people mapping?
*How do we contribute to the map?

-- then hands-on time to experience OpenStreetMap
through online editing
Ex: audience can locate their hometown as a kid on the map, then edit features, points of interest, correct roads, etc. to get a feel of contributing to the OpenStreetMap!</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Using Open Source Principals to Save the Economy</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">249</id>
    <description>Open source doesn't have to be just for software! Everyone knows that 3 out of 4 new jobs are created by small businesses, but our current efforts to revive the economy mostly benefit large, dinosaur-like businesses, and many of our efforts to help small businesses don't work very well. How can we adapt some of the principles that underly open source, and apply them to small businesses to help them get started? </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>My Grand Experiment:  A Portland Women-focused Tech Group.</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">115</id>
    <description>The idea for Code-n-Splode grew out of the Women in Open Source BOF at OSCON 2007.  Leading a women-friendly tech group continues to be an exciting ride, and I'm going to share it with you!  The talk will be a &quot;case study&quot;-type format, featuring the following:
- why I felt a woman-focused group was necessary
- how the name came about, if it's not completely obvious
- what belonging to the group has done (or in some cases, not done) for its members
- touchy subjects, such as issues we encountered with having men in the group
- how my reasons for continuing the group have changed over time

There will be a BOF-type get-together to go with this talk for an even less-formal discussion period/recruiting session.  (Free toaster!*)

*joke</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Server Sky</title>
    <submitted-at>02/18/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">15</id>
    <description>Large data centers are growing, and soon some will consume 50MW or more of electrical energy.  The EPA estimated US data center power consumption in 2006 at 60 billion kilowatt hours, or 1.5% of total US power consumption, and predicts a doubling by 2011.   Our efforts as programmers and technologists  will continue this exponential growth.  This will have huge environmental, social, and economic consequences unless we find alternative ways to power our digital economy.

Server sky is a proposal to use the capabilities of Oregon companies such as Solar World, Intel, and Triquint to build large dispersed arrays of ultralight solar powered server satellites and launch them into 6000km earth orbit, between the inner and outer Van Allen belts.

A 50 gram server-sat consists of a thinned 12 inch solar cell, with an efficient  2GIPs processor, terabit solid state disk, and microwave transmitter bonded to the back.  Thousands of server-sats position themselves into dozens of  dispersed three dimensional clouds  (kilometers on a side) using light pressure for thrust and liquid-crystal shutters for trimtab steering.   A server-sat array acts as a large phased array antenna, permitting it to steer thousands of communication beams at receiving stations and communities under its position in orbit, handing off communication and control to the server-sat clouds that follow it in orbit as it passes overhead.

A Russian Dnepr rocket  could place a cylindrical stack of 50,000 server-sats into orbit for $15,000,000, or $300 per server-sat.  If each server-sat displaces 100 watts of ground-based electrical generation, cooling, and power conversion,  it will pay for itself in electrical savings alone in just a few years.  A server-sat will cost more to manufacture than a white-box PC, but it will not need the cases, racks,  cabling, power converters, land, buildings, power lines, and other materials needed to build a ground-based server farm.  Total resource usage is reduced, and the total manufacturing cost may become less than traditional approaches.  A server-sat array provides its own communication infrastructure and can reach the entire inhabited globe.  

Since server-sat arrays operate outside the biosphere, the environmental impact of power generation and heat disposal is close to zero.  Server-sat arrays can grow to practically unlimited size - space is big, and filled with unused solar energy.  In time, new launch techniques, and solar cells made from lunar rock, can greatly reduce the environmental and economic costs of manufacturing and launch.  There is room for 1 trillion server-sats within a 100 millisecond ping time distance from earth. Someday, quintillions of server-sats scattered around the solar system  will perform cluster computation.  

Of course, it will be built on open source technologies with best-of-breed security.  Hopefully, OSbridge participants will have many ideas for protecting the system from criminals.

Earth can return to what it is good at - green and growing things - while space can be filled with gray and computing things.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/18/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Assholes are killing your project</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">216</id>
    <description>The strength of your community is the best predictor of your project's long-term viability. What happens when your community is gradually infiltrated by assholes, who infect everyone else with their constant negativity and personal attacks? Although one person may be a valuable technical contributor, that one person will never contribute as much to the project as the many people who are scared away and demotivated.

How can you defuse these time bombs and prevent your project's destruction? The level of closeness of personal connections between members of your community has a huge impact on the likelihood a conversation will descend into the kinds of personal attacks that send people running from your project. Another key realization is that technical ability and social ability are orthogonal concepts, and both are a requirement for a competent contributor. You can't just have one or the other, and more of one never balances out less of the other.

This talk will teach you about the dramatic impact assholes are having on your organization today and will show you how you can begin to repair it.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building Open-Source Desktop Apps with the Titanium Platform</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">82</id>
    <description>Titanium is a truly open-source alternative to Adobe AIR, allowing developers to use their existing knowledge of rich web application technologies &#8211; JavaScript, Python, Ruby, HTML and CSS &#8211; to build desktop applications. 

In this presentation, we will:

* introduce the Titanium platform and the technology/people behind it
* demonstrate the power and features of the Titanium API
* look at WebKit's power with CSS3 transformations, slick canvas support, and built-in vector graphics
* show the inherit reusability of code by combining JavaScript, Python, Ruby
* go through creation of a simple desktop application from start to finish

Attendees should have a decent understanding of HTML, CSS and JavaScript. Knowledge of Python and Ruby are optional. We will leverage a number of open source web libraries, mainly at high levels to demonstrate the best of breed technologies that are reusable in Titanium.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Agile Methodologies for Open Source Projects</title>
    <submitted-at>04/01/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">149</id>
    <description>At first glance, agile methodologies and open source seem incompatible. Agile methodologies are typically designed for small, co-located teams, while open source projects usually involve a large herd of geographically dispersed cats. We'll examine some of the more subtle synergies in open source development and agile methodologies. We'll also see how an agile methodology designed specifically for open source projects has successfully been implemented in a project with hundreds of contributors.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/01/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Configuration Management Panel</title>
    <submitted-at>03/19/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">49</id>
    <description>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 &quot;Puppet&quot;:http://reductivelabs.com/products/puppet/
- Brendan Strejcek of &quot;Cfengine&quot;:http://www.cfengine.org/
- Adam Jacob from Opscode for &quot;Chef&quot;:http://wiki.opscode.com/display/chef/Home
- Narayan Desai of &quot;bcfg2&quot;:http://trac.mcs.anl.gov/projects/bcfg2
- Igal Koshevoy of &quot;AutomateIt&quot;: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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/19/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Please Your Pixel-Hungry Eyes With Codes That Read Better</title>
    <submitted-at>04/08/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">183</id>
    <description>If we spent most of our workday staring at the Terminal window, then it&#8217;s probably worth to make the letters you see in that window more legible, and the text more readable. This session will introduce you to:

* Readily available font alternatives you can try
* Tips and tricks for better onscreen legibility (do you know that white-on-black type is less legible than black-on-white, or that most fonts can easily be made more readable by tweaking the line spacing? What about anti-aliasing?)
* Tools to design pixel-based fonts and customize existing fonts (like &quot;gbdfed&quot;:http://www.math.nmsu.edu/~mleisher/Software/gbdfed/)
* Practical tips to drawing and completing your font character set (how should an &#8216;A&#8217; look?)
* And, if you&#8217;re feeling ambitious, tools to design your own font _from scratch_ (with tools like &quot;FontForge&quot;:http://fontforge.sourceforge.net/

Bring your own laptop and prepare questions you always wanted to ask (but never could) about typography and how text are displayed. You&#8217;ll get out of this session with a programming font you can call your own.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/08/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Scylla and Charybdis of Open Source Legalese</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">250</id>
    <description>On the one hand, there is the &quot;zealous advocate,&quot; defending the rights of software developers from nasty pirates, or developing models for inextricably locking proprietary layers on top of an OS base. This is your basic lawyer.

On the other, there's &lt;a href=&quot;http://frienda.com&quot;&gt;FrieNDA&lt;/a&gt;, the way we wish the world would work, with rainbows and ponies and sharing and kisses. It's not that open source embodies this in any way, but when you expose your soft underbelly for all to see, you can (and should) expect it to occasionally get torn out.

Neither viewpoint is the &quot;right&quot; legal framework for open source work. The lawyers don't get open source, and developers don't get the law. Betwixt and between lies a middle path, full of powerful and innovative mechanisms by which the collective knowledge and crowdsourced power of open development could meet, and befriend, some of the traditional protections and rights of ownership. 

There are enduring examples, but this talk will not evangelize the sterling efforts of known quantities. Rather, it will attempt to tease out the unknowns, the next useful idea, the place to land. If nothing else, you will walk away with some good ideas for your next collaboration.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Tools for Freelancers</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">116</id>
    <description>After nearly two years of full-time freelancing, I have learned a lot about maintaining my own website, making backups, managing version control, keeping track of time spent on projects, and invoicing tools. Come to this session where I will share much of what I've learned and present open source tools I have found essential for successful freelancing.

Topics covered:

* How to choose among shared/virtual/dedicated/cloud hosting options.
* Simple, effective options for making regular, local and off-site backups.
* Painless ways to utilize version control.
* Simple time-tracking and invoicing tools.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>SXSW Twitter Music Recommendation Engine</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">217</id>
    <description>Shorty after SXSW Music 2009 I wrote a script to search against Twitter for each of the 1984 bands on the official SXSW roster. From it I found 13 thousand users twittering over 300,000 messages about the bands. Explore the commonalities between bands, and find out who the most popular bands from Portland, OR were.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>An Introduction to CodeIgniter</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">83</id>
    <description>CodeIgniter is an open-source web application framework written in PHP.  Created by EllisLabs, CI is descended from the ExpressionEngine CMS system, and therefore has a focus on real-world needs and solutions for PHP developers.  CI is easy to deploy, and works with a wide variety of environments (even FTP-only shared hosting accounts).  It offers powerful features like MVC and ActiveRecord without requiring the developer to adhere to strict coding guidelines.  It's easy to extend, and plays well with other code libraries like PEAR and Zend Framework.

In this talk we'll go over the basics of CI: how to deploy it and writing a simple application.  As time allows, we'll discuss how to extend the framework with other libraries.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Small Businesses Using OSS</title>
    <submitted-at>04/01/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">150</id>
    <description>In this talk I will talk about working with mom and pop businesses for the last 8 years and what I have learned.

The Open Source world doesn't even exist to these businesses out there because there is no presence for OSS at Staples, Office Depot, or CostCo.  It is about time we in the Open Source Community take a look at these businesses, and help the back bone of America stay in business during these economic times.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/01/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title> Take the plunge: Start using Linux as your primary OS (alternate)</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">184</id>
    <description>Linux is an OS with a culture and methodology all its own.  This can be a bit awkward for people to become comfortable with if they are coming from a lifetime of Microsoft and Apple computers.  It is especially difficult to learn if you don't have someone to show you the basics.  This presentation will do just that.

We'll go over the Linux culture and how you can find and communicate with other Linux people when you have questions down the road, we will quickly cover how to set up a Linux machine, we will talk about a few must have Linux apps, and show people how to use package managers and the command line.

At the end of the presentation those watching should feel that trying Linux as a primary OS is doable.

* note, this is an alternative non-hands-on, short form presentation version of the long form presentation of the same name I have already submitted.  This shorter talk may be more appropriate for a conference than the full Ubuntu group install I proposed before.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Mistakes We Knew We Were Making: A Cautionary Tale</title>
    <submitted-at>03/19/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">50</id>
    <description>For one session only, an all-star cast of Reid Beels (community software guru), Igal Koshevoy (mellow developer whose secret superpower is being able to code for 32 hours at a time), Audrey Eschright (OSBridge co-chair and community wonder ) and Rick Turoczy (mild-mannered Portland community blogger) will discuss previous community projects in a manner most suited to roasts and other celebrations of a job well done. Amye Scavarda (snarky but hilarious project manager)  will introduce, moderate and keep discussion to 45 minutes. Audience participation welcomed. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/19/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Firefox Switchblade</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">251</id>
    <description>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</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title> CodeIgniter Bootcamp</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">117</id>
    <description>In this session, I will present an overview of the CodeIgniter framework and some best-practices for application development. At the end, you'll be able to start developing your own application using CodeIgniter.

Topics Covered:

* Installing and deploying CodeIgniter
* Basics of the Model-View-Controller structure as implemented by CodeIgniter.
* Interacting with the database (including ActiveRecord)
* Dealing with user input, forms and form validation
* Writing tests and benchmarking CI performance
* Working with sessions
* Basic jQuery integration
* Extending CodeIgniter
* Tips for re-factoring an existing application using CI.

This session will be hands-on. Bring your laptop and we'll work through code examples together.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Franklin Street Statement and the future of Free Network Services</title>
    <submitted-at>02/23/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">17</id>
    <description>Cloud computing is moving more and more of users' computing experience from desktop and laptop systems they control to remote servers &quot;in the cloud&quot;. For the most part, these remote services run proprietary software and &quot;lock in&quot; users, refusing to share data or even let users take their own data with them.

The Franklin Street Statement, put together by a loose group of hackers and activists from the FSF, Creative Commons, Open Knowledge Foundation, Software Freedom Law Center and elsewhere, sets parameters for how future Free Network Services could work. How can we make the Web service experience as free and open as using Open Source software on a computer you control yourself?

This talk will outline the problem, talk about solutions, and look forward to building an interconnecting stack of Free Network Services that replicate or replace today's proprietary Web sites.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/23/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Health IT,  Open Source, and You</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">218</id>
    <description>With the passing of the American Recovery and Reinvestment Act (aka &quot;the Stimulus Bill&quot;) &#8211; Health IT has been put in the spotlight.  

This session will start with a broad overview of the issues that have plagued health IT, highlight some of the progress to date, and examine the role and impact of open source in advancing interoperability and health information exchange. 

We&#8217;ll continue with a demonstration of the LAIKA interoperability testing tool, an overview of other popular open source health IT projects, and let you know more about ways you can get involved with some of these ongoing efforts.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Put Down the Superglobals! Secure PHP Development with Inspekt</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">84</id>
    <description>Inspekt is a comprehensive input filtering and validation library for PHP.  With a focus on simplicity, Inspekt makes writing secure web applications in PHP faster and easier.

Attendees of this talk will learn:

* The Inspekt approach to filtering and validating user input, including the &quot;input cage&quot; concept
* how to ensuring secure code throughout the development process
* how to integrate Inspekt with existing applications
* how Inspekt integrates with popular frameworks like the Zend Framework and CodeIgniter

Development of Inspekt is funded by OWASP's Spring of Code 2007.

More information: http://inspekt.org and http://owasp.org</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Django: Thinking Outside The Blog</title>
    <submitted-at>04/01/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">151</id>
    <description>Django is a powerful open source web framework that leverages the expressive power of the Python programming language.  Each piece is well-documented and there are tutorials showing how to create small pieces of functionality.  But that's the small picture... how do you leverage Django's power and flexibility to solve real-world business challenges?

I'm a developer tasked with exactly this responsibility.  I develop and manage systems for a small (but growing) consulting firm that needs to deploy powerful web-based solutions quickly and cheaply.  Django is frequently my tool of choice.

105 minutes isn't nearly enough to fully explore Django, but it might be just the right amount of time to show how an experienced Django developer would plan and execute a solution to a real-world problem.  I have a couple different projects in mind, but I expect that the elements of a good project would include:

  * Working with the security model
  * Enhancing the built-in admin interface
  * Adding &quot;just enough&quot; workflow
  * Structuring data
  * Using templates effectively
  * Custom forms
  * Some Web 2.0 fairy dust
  * Interaction with an external system

For purposes of the session, I'd be assuming a &quot;stock&quot; Django installation with the standard templating, ORM, etc.

This would assume familiarity with Python and Django basics, but no experience beyond the basic tutorials.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/01/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Oregon Blogs: Rebuilding a Community Resource</title>
    <submitted-at>03/21/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">51</id>
    <description>In September, 2008, Paul Bausch announced that he could no longer maintain the Oregon blog aggregator known as ORBlogs. The response was resounding in the technological and blogging communities, resulting in an effort to rebuild a better blog aggregator focused on long-term success and community support. http://orblogs.org is alive, with development slow but steady. The site is currently running and aggregating blog traffic, but ORBlogs is a community resource, and it needs your input.

This moderated discussion will be focused on developing a set of goals for ORBlogs. Come give your input on what ORBlogs means to you. What you want to see in the site? What don't you want to see? The goals of the discussion will be a set of guidelines and principles that will drive the development of the Oregon blog aggregator.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/21/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Trust the Vote: An Open Source Digital Public Works Project</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">252</id>
    <description>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 &quot;I count!&quot; 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&#8212;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. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Android location services from social networks to games</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">118</id>
    <description>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).</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>JRuby: when Ruby grows up and gets a job</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">185</id>
    <description>The Rails community is notoriously fickle when it comes to hosting, monitoring, and packaging their applications. In a few short years, we've seen no less than three &quot;recommended&quot; deployment models come and go: FastCGI + lighttpd, Mongrel + load-balancing proxy, and now Passenger/mod_rails. There's another option which gets much attention, though, despite its many strengths: running Rails in a Java application server via JRuby.

There are good reasons to consider this model all by itself, but websites are only one small part of what the Java ecosystem supports. Once you open yourself up to the possibility of using Java infrastructure for your Ruby code, there are a whole raft of other high-quality services and libraries available to you, covering everything from scalable message queues, shared object caching, and distributed computation frameworks. You can even tame legacy databases and enterprise platforms like Oracle, SAP, and the dreaded &quot;portal&quot;.

Furthermore, now that Google App Engine supports Java -- and JRuby was a big part of that announcement -- you can deploy your Ruby code onto Google's servers for free. Once you're ready to upgrade to your own deployment, there are numerous high-quality open source Java application servers available (Glassfish, Tomcat, JBoss, Jetty, etc.) which you can run on your own system.

Come see how JRuby makes writing Java apps less painful, and how the Java ecosystem's focus on stable, scalable infrastructure can make your Ruby apps more reliable and performant. Bring a laptop with a recent JDK installed, and you'll be able to follow along with the entire process of getting basic Ruby apps up and running in a Java application server, using JDBC to talk to backend databases, and even wrapping a legacy Java library in a &quot;Ruby-like&quot; API layer, all without ever going anywhere near a compiler or an XML config file.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Java vs Storage: Time to Scale - A deep dive into storage models, at the tipping point of scale.</title>
    <submitted-at>02/24/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">18</id>
    <description>A storage model is a series of frameworks and design philosophy of their usage.  How do you know which storage model is correct for your application?  What happens when your generic object storage slows down?  How do you allow classes/types to change at runtime while keeping your storage reliable and your site up?  How do you manage change when you have hundreds or thousands of entities (multi-tenant system)?  Can memcached or Hadoop solve your problems?

This session covers a broad range of topics related to the task of persisting objects into relational storage.  We will investigate the pros and cons of very rigid relational models (very normalized, heavily indexed) to very loose models of relational storage (pivot and extension tables).  There has been buzz about Open Source persistence frameworks.  We will pay these models/frameworks their due attention.  During the discussion, we will tangent slightly to talk about various different storage approaches:

* ORM solutions: Hibernate, iBatis.
* Ruby's ActiveRecord
* Distributed hashtables (DHTs) such as Hadoop
* Putting data &quot;into the cloud&quot;

By the end of the discussion, you should be able to identify the proper storage model for your needs.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/24/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Efficient Pagination Using MySQL</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">219</id>
    <description>Pagination is a common pattern for most web based applications, and developers often use MySQL's proprietary LIMIT OFFSET, NUMBER clause to achieve this.  This results in degrading performance as one reaches deeper pages.

In this talk Surat will discuss solutions to write efficient MySQL queries for pagination through a large data set.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Securing the PHP Environment With PhpSecInfo</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">85</id>
    <description>PhpSecInfo is an easy to install, easy to use security auditing tool for the PHP Environment. PhpSecInfo provides an equivalent to the phpinfo() function that reports security information about the PHP environment, and offers suggestions for improvement.

This talk will cover:

* The current state of security in open-source web applications written in PHP
* The importance of securely configuring PHP
* The primary audiences for open-source web applications, and how PHPSecInfo can be useful to each
* The role PHPSecInfo can play in a multilayered security approach
* Deploying, modifying, and extending PHPSecInfo</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to Lift</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">152</id>
    <description>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</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How to be a kick-ass community manager</title>
    <submitted-at>03/21/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">52</id>
    <description>Avoid mediocrity and learn the secrets to becoming an amazing community manager. There are some simple and not so simple things that a community manager can do to increase their chances of being successful. We'll talk about some of our secrets for being a great community manager, but we'll spend most of the time letting you (the audience) ask us your toughest questions. Tell us your problems, and we'll come up with ideas for how to solve them. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/21/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Simpler RIA with REST</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">253</id>
    <description>Like the Java scene before it, the Flex scene is exploding with frameworks and every variation of MVC under the sun. Much of this complexity is unavoidable, since RIAs throw yet another layer into the mix. But if an RIA is accessing RESTful services, its structure can be streamlined and its number of classes and configurations reduced. This talk will show you how this can be done. Examples will be in Flex/Rails, but the logic will apply to any RIA, whether Silverlight or Javascript-based.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Web Server Shootout</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">119</id>
    <description>Apache is no longer the only sensible open source web server choice.  Lighttpd and Nginx, as well as a number of other contenders, have become popular and blogs are littered with quick &amp; dirty benchmarks _proving_ which server is supreme.  With a myriad of languages, platforms, and deployment options, there's very little way to tell which combination is right for your specific needs.

This presentation will measure a number of environments on a wide variety of metrics:

*Metrics*


* Requests per second (of course)
* Memory usage
* Features (extensibility, modularity, etc)
* Community (support options, tools/modules available, etc)
* Portability
* Reliability (can I crash it? how well does it handle load?)
* Administration (floods of patches? hideous configuration?)


*Web Servers*


* Apache (prefork and worker mpms)
* Nginx
* Lighttpd
* Possibly others such as Cherokee or even proprietary options like Google App Engine and IIS.


Benchmarking static files isn't really useful to anyone, so I'll test as many of the servers on as many of the following frameworks and applications as possible:


* WordPress
* Drupal
* Bugzilla, Redmine, and Trac
* trivial Django app
* trivial Ruby on Rails app
* trivial Zend Framework app


Please feel free to &quot;leave suggestions for other applications, frameworks, and environments that I should make sure to include!&quot;:http://michael.susens-schurter.com/blog/2009/03/29/crowdsourcing-my-os-bridge-talk-proposal/

For more details as I run the tests to make my presentation you may want to follow the &quot;osbridge tag on my blog.&quot;:http://michael.susens-schurter.com/blog/tag/osbridge/</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Adobe Flex - Open Source at Last</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">186</id>
    <description>Adobe Flex has a short but convoluted history as an Open Source Project.  From proprietary J2EE server, to proprietary client framework, and finally an open source project it has seen many changes.

In this presentation i will give a brief overview of the history of Flex, show off some demo code that demo's how it excels, and talk about the trials of the project as it has worked toward becoming open source and allowing contributions from the community.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Drizzle, Rethinking MySQL for the Web</title>
    <submitted-at>02/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">19</id>
    <description>Ever wondered what would happen if we could rethink a decade worth of design changes? Drizzle is a fork of the MySQL server targeted at web development and cloud computing. We are looking at how to create database for modern multi-core, large memory databases that fit inside of an overall application framework.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Why should you host your OSS project at the Open Source Lab</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">220</id>
    <description>The OSU Open Source Lab is a leader in OSS project hosting and has helped several large projects grow and expand over the years. Many projects could benefit from getting hosting from the OSL but they many not know or realize what we can do for them. This proposal will cover some of the best practices we follow and how we can help OSS projects. It will also cover how we can help your OSS project with hosting.

Some of the topics I will cover will be:
* Overall process for getting hosting
* Common challenges we face
* Cover the OSS ecosystem we help maintain
* Examples of how we help projects with their hosting
* Student involvement
* How you can help us
* Reasons your project may not be a good fit at the OSL
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>PHP Application Recipe:Simple bite size morsels you can develop in less then an hour</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">86</id>
    <description>Presented is a coding pattern that was put together from years of asking questions, teaching and developing PHP applications. The original objectives were to be able to present a programming pattern that if followed would produce a solid, scalable, secure and well abstracted PHP web based application. The individual parts  also needed be module and have a simple discoverable API thus easily ported from application to application. Finally it would need to be simple enough to enable person who knew the basics of PHP to be productive in hours as opposed to days or weeks.

The outcome is a very simple to use programming pattern that inherently scales, has a discoverable API, virtually complete front-end abstraction and is modular. 

So come on in and give it whirl and let see if we can put out the next rock star app in less then 2 hours. This is a hands on activity so bring your laptop with your favorite editor and I supply the server.  
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Where'd my Files Go? A guide to Modern Ubuntu Distributions</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">153</id>
    <description>While you might not be able to tell at a cursory glance, a lot has changed behind the scenes on a modern Ubuntu system. For example, did you know Ubuntu is phasing out System V init? That you can&#8217;t loopback-mount the initrd? In this talk Kyle discusses the current changes Ubuntu is making to what we might consider the traditional Linux system. There&#8217;s a little something for everyone on the talk. For Linux newbies who are curious about what&#8217;s under the hood Kyle covers the traditional and modern boot process including how init works followed up by a guide to where important files are in Ubuntu. For the experienced Linux user I&#8217;ll show you how (and why) things have changed and where you can look now when you want to, for instance, change the default runlevel on an Ubuntu system.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Companies and Communities</title>
    <submitted-at>03/21/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">53</id>
    <description>Companies are sponsoring more open source projects or paying the salaries of people participating in the community. What happens when you throw companies into the mix in an open source community? In this panel, we'll talk about the good and the bad that can come out of corporate participation in open source communities.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/21/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Kids are not all right: Open Source Mayhem and the Avr-Gcc Toolchain.</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">254</id>
    <description>The official source for the gcc-toolchain is very conservative as it is the backbone of open source community. Targets such as the Atmel avr are required to keep up with new processors as they are released. 

The resulting process of patching the compiler and updating the target libc creates a scenario where the code officially released into the gcc toolchain may be years out of date and not include a good many of processors in use.  

Fortunately a very dedicated group of individuals package regular stable releases of the toolchain for FreeBSD, Windows, and OSX in that order. Unfortunately when it gets to the linux community it completely breaks down.

In this talk I will discuss packaging systems including freeBSD ports, packages on Solaris and HP-UX, and OSX in relation to their linux counterparts. Using the avr-toochain as an example of what goes wrong when a piece of software doesn't have a name.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to Django: The Who, What, and When</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">120</id>
    <description>So you've done the tutorial.  Maybe you've even built a small Django app just to see how it works.  But maybe you're already a savvy web developer who is already fairly happy with your current system.  Or maybe you're not a web developer but would like to learn more about web development.

* *What* is Django?  What isn't Django?
* *Who* makes Django?  Who Uses it?  What's the community like?
* *When* should you use Django?  What does it excel at?  Where might you run into some rough edges?

We'll go a bit beyond those questions as well with:

* *How* do I get started with Django?
* What are some *alternatives*?

The goal of this presentation _isn't_ to convince anyone to use Django.  Rather, the goal is to enable everyone to make an *informed* *decision* about the development platform they choose.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Faster Development with CFML and Groovy</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">187</id>
    <description>CFML has long been known as a lightning-quick way to build web applications of all sizes, but it has always fallen short on allowing developers to leverage the JVM underneath it.  Enter Groovy, another dynamic language for the JVM that provides for all of the Java ecosystem's power, but lacks in the &quot;web framework&quot; department.  GroovyServlet and Grails both partially answer the question, along with integration into other frameworks, but they don't attain CFML's ease of use in many cases.

Between these two languages, however, the the coverage is pretty complete: CFML is a fantastic web toolkit, while Groovy provides wonderful backend and integration capabilities.  Marrying them together takes a little effort, but the rewards are huge, regardless of which side of the union you start out on.

Whether it's using Groovy to access Java libraries (e.g. Hibernate) from CFML, using CFML to rapidly build a rich web UI for existing Java/Groovy applications, or starting from scratch with the best of both worlds, make sure you're getting the most of your JVM.  You (and your boss and clients) will be happy you did.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Write your own Bayesian Classifier: An Introduction to Machine Learning</title>
    <submitted-at>02/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">20</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Happy Fridays: helping good causes while making fun for people.  A different way to approach philanthropy.</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">221</id>
    <description>Happy Fridays has a different way to approach philanthropy.  Instead of asking ordinary, hard-working people to go out of their way and make a sacrifice for a good cause, we provide them with an appealing, high-quality experience that actually enriches their lives while also benefiting good causes.  We like to think of it as a win-win proposition.

This presentation overviews our way of approaching the mass populous to engage them in philanthropy.  We'll have a look at our technology platform and the opportunities it holds for raising enormous sums of money that can be used to fund important causes around the world.  The platform not only enables people to have fun, but it can also optimize the entire market for charitable fund raising.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Your Shell History In The Cloud</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">87</id>
    <description>A presentation about Shellsink: a simple, open source hack that stores your shell history in Google's big table.  The presentation will cover Shellsink usage, the App Engine implementation, as well as using Launchpad's personal package archives for distribution via apt-get.

Shellsink Feature Set:
    * Permanent and unlimited storage of shell history
    * Pull commands back out of the sink and into your shell based on a tag or keyword
    * Searchable shell history
    * Tagable shell history
    * Annotateable shell history
    * Aggregate shell history from multiple computers into one grand unified history
    * RSS feed of your shell history that you can filter</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to Forensics</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">154</id>
    <description>In this talk Kyle Rankin will provide an introduction to performing forensics analysis on Linux machines using the popular Sleuthkit tools with their easy-to-use Autopsy web-based front-end. The talk will cover initial installation and configuration of Sleuthkit and Autopsy, basic concepts and considerations for a forensics investigation, and at the end there will be a demo with a real, compromised Linux image.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How To Lie Like A Geek</title>
    <submitted-at>03/21/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">54</id>
    <description>Geeks have a special relationship with The Truth. Nothing is more important than correcting a falsehood, no matter how small, and nothing is more odious than not telling The Truth. Unfortunately, in speaking The Whole Truth and Nothing But The Truth, the meaning is often mangled and the end result is the opposite, a lie.

We&#8217;ll examine some ways geeks lie while telling The Truth, to themselves and to others, and hopefully achieve better communications, easier to understand interfaces and maybe some personal enlightenment.

Some examples include: Lies by omission, lies by precision, lies by irrelevancy, and that most dangerous of words &#8220;should&#8221; as in &#8220;the user should have realized&#8221;.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/21/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Keep your fork(), there's pie</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">255</id>
    <description>OAuth is an open protocol that standardizes the way that web applications access data from third party web services. With OAuth, applications can securely access protected resources from a web service via an API. This session will provide a high level introduction to the OAuth protocol. Also, we will discuss the OAuth Java library and demonstrate how to use OAuth in a Java application.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Programming patterns in sed</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">121</id>
    <description>Do you grok sed, or is it all just line noise to you?  Do you marvel at hackers who craft out nifty sed one liners only to realise that there's no way anyone could understand and reuse them?

On the other hand, perhaps you're the kind of person who loves tools like sed and awk, but have never been able to convince others of their power.  In either case, this talk is for you.

sed may not be a fully featured programming language like, say C, Java or PHP, but you can do a lot with it, and you can write clean, structured sed programs.  What?  Did I just say sed and structured in the same sentence?

This talk will cover the basic programming patterns of sequence, selection and iteration, and also touch on variable manipulation, file handling and debugging - all in sed.

At the end of this talk, you'll either have a new found interest in sed, or you'll think that I'm a nutcase... but that's why it's in the Hacks track.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Driving open source in the enterprise</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">188</id>
    <description>Enterprises are becoming more amenable to implementing open source solutions.  In this talk I would like to address some of the issues revolving around the expansion of these tools in a corporate environment.

In this talk I will present concerns around governance ranging from architecture to HR in a corporate environment, and some approaches taken to address them.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>05/15/2009</updated-at>
    <biography nil="true"></biography>
    <title>Speed up that library when you can't C a thing</title>
    <submitted-at>02/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">21</id>
    <description>We'll step through a simple library case, wrapping an Ocaml library and calling it from Ruby. Then we'll discuss ways to approach this problem for other target slow and fast languages.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Being a geek</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">88</id>
    <description>Being a geek is all about curiosity. The need to find out how things work, how they break and how they get fixed. It's about being an explorer in your field.  It's about not being content with the limits set for you.  It's about defining your own limits, and if that doesn't work, redefine the rules.  It's about an intuition that says that you can do it even when others think it's not possible.

What's the difference between geeks and everyone else and why are so many of them playing with this FOSS thing?

This is not a Howto.  It's just the way it is.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How to Get a Chump Like Me to Start Using Your Open-Source Framework</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">155</id>
    <description>If you provide an open-source framework, I am the kind of guy you're looking for. I am a chump, a subgenius, the guy who would fall in the dirt if he were unable to stand on the shoulders of giants. I have a degree in English, for crap's sake, but somehow I've been able to pull together enough grey matter to run platform developer-relations teams at a couple of big public companies and as a consultant to more than a dozen startups (both open-source and otherwise).

In this talk I'll apply my completely substandard technical skills to the question of open-source frameworks, both server-side (like CakePHP and CodeIgniter) and client-side (like JQuery, JQuery, and JQuery). Why do some succeed where some fail? I will include a bunch of technical content and examples so you can laugh at the way I write code in front of an audience.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Get your head in the clouds: Turn your ideas into applications with Amazon's EC2 and Railo </title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">222</id>
    <description>Amazon's Elastic Compute Cloud offers a scalable solution for application development. You have at your fingertips the same infrastructure as the world's largest online bookseller. This levels the playing field. As EC2 Evangelist Mike Culver puts it, &quot;Imagine competing on ideas not on resources&quot;. In this session we will look at what it takes to get started with EC2, including:

* An EC2 Overview
* Getting EC2 Credentials
* Amazon's administration tools - Command line &amp; ElasticFox
* Third Party Services
* Amazon Machine Images (AMIs)
* EC2 Resources

Railo is an open source CFML engine. It can be packaged with other applications as an EC2 image to provide a custom application environment that allows you to get started quickly without the usual infrastructure hassles. We will use an example application to look at how Railo and EC2 can speed up your development.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>For the people, by the people, and of the people</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">256</id>
    <description>Software development, the writing of histories and encyclopedias, the development of law and public policy: each of these areas benefits from fast and flexible collaboration.

When people relax their notion of &quot;ownership&quot; over their own ideas, and encourage others to build on their ideas, exciting things emerge. A flexible computer operating system; an enormous, living encyclopedia; self-organized citizens bringing policy proposals to their legislators.

Oregon's progressive political tradition has often promoted the notion that every Oregonian has something to contibute. Some of our most inspiring political leaders and boldest political reforms have emphasized the power and intelligence of individual citizens, rather than that of powerful private interests.

This tradition provides a fertile environment for the open source movement, which promotes the notion that innovation can only thrive when individuals are empowered.

In the 1920s, State Sen. George W. Joseph advocated for public ownership of the hydroelectric plants being planned on the Columbia River system.

In the 1960s, U.S. Sen. Wayne Morse dared to assert that the American people, more than the U.S. President, had the ability and responsibility to weigh in substantively on the Vietnam War and foreign policy

In recent years, State Sen. Vicki Walker has taken on some of the most powerful interests in the state in the interest of transparency and accountability to the public.

Oregon is known for pioneering the popular ballot initiative, public records laws, and an inclusive vote-by-mail system.

The culture established by Oregon&#8217;s thriving open source software community has much to offer in the areas of government and public policy, but it will take hard work to fully realize that potential.

Topic for discussion: how to describe/advocate for the civic-minded, crowd-sourced value that Oregonians can bring to government, and to improving the state outside the traditional structures of government?
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>&quot;M&quot; is for Manual: Creating Documentation for your Project</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">122</id>
    <description>Documentation for open source projects is every bit as important as the code itself. Without documentation, users frequently get lost or frustrated.  But with limited time to work on your project, how can you create a single source of docs that can be used in a variety of ways, such as in downloadable PDFs, or as searchable web content?  And how can you engage with localization (translation) communities to spread your content further?

Many people are not aware of the incredible power and versatility of the documentation system known as DocBook, nor how it works. This session will cover what it is, what it isn't, and some of flexible, useful (and in a couple cases, new and shiny) tools that exist to quickly and easily produce fantastic looking content for your users worldwide.

This presentation will cover a few basic XML tenets, DocBook XML, a couple of general-purpose libxml2 and libxslt tools, and Publican, a complete system for turning DocBook XML source into an attractive publication in any of a number of formats.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>TwitterClipse - Hacking Eclipse for Fun and Profit</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">189</id>
    <description>Developers know &quot;Eclipse&quot;:http://www.eclipse.org as a powerful IDE for Java and other languages. It is build on a modular system (OSGi) of reusable pieces (called Bundles) written in Java. We explain how this works by developing a Twitter-Bundle for Eclipse during our presentation.

Attend this session to find out how Eclipse works, what Bundles are and how to write your own.

This presentation is best suited for developers that have some familiarity with Java.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Is the Web Down: a Practical Tutorial on How the Web Works</title>
    <submitted-at>03/21/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">55</id>
    <description>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, &quot;is Google down for anyone else?&quot;

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 &quot;owning&quot; 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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/21/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>3rd generation Linux Networking</title>
    <submitted-at>02/26/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">22</id>
    <description>Linux networking is in the 3rd stage of evolution.
The first generation of Open Source is about getting it to work at all, 2nd is about getting it to work well, 3rd is about making it easy to use.  I want to talk about what is available in networking, what it can do and why better infrastructure is needed.  I will talk about tools like NetworkManager/Connman, and Vyatta, but really want to give people a hands on feel for what can be done and get feedback.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/26/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>sexeger cisab</title>
    <submitted-at>03/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">89</id>
    <description>Regular Expressions are a powerful tool for text matching and manipulation.  Whether you're a web developer, studying natural language processing, doing bio-informatics, or writing system administrative scripts, chances are that regular expressions make your job easier.  The language syntax, though, can be a little hard to start with.

This talk goes through the basics entities used in regular expressions, and discusses methods for how to go about building complex patterns.  We will also cover the sexeger, an clever, very hacky method, to improve regex performance in certain situations.

The talk will be language neutral.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>CodeIgniter As Drinking Game</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">156</id>
    <description>CodeIgniter is the only PHP framework that has the Rasmus Lehrdorf seal of approval, and that guy is from Greenland, so he knows what he is a talking about. In this tutorial session, I'll take you through the steps to create a web site using PHP and CodeIgniter, a PHP MVC framework that's so easy you can use it while you drink.

Rules: Every time I demo a new CodeIgniter library, we drink. Every time I say &quot;can you believe how little code that took?&quot; we drink. Every time something works on the first try, we drink. Every time something doesn't work on the first try, we drink. We'll make up new rules as we go along just in case we aren't drinking enough, but ultimately the goal will be to get you familiar with CodeIgniter to create PHP web sites quickly and cleanly. And drink. BYOB.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Development - The Dark Side</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">223</id>
    <description>Do you love the idea of an Open Source Development community but frequently find yourself battling:

* Application components that require chmod 777 to work correctly
* The need for a law degree to understand implications of OSI licenses and how they mix and match
* Scattered documentation
* OS Distros that divide up your configuration files
* Cargo Cult mentalities
* Learning to use five different source control systems
* Dealing with communities where developers are highly specialized and not technologists
* Smack talk on the development mailing list and in irc channels
* Meritocracies that aren't
* Benevolent Dictators that aren't so benevolent or competent
* Upgrade paths that require the correct astronomical alignment, a sirocco, and twin albino goats to successfully complete with no data-loss
* And more!

Jennifer Redman, a veteran user of and occasional attempted contributor to Open Source software explores the labyrinth of the community development model and the trials and tribulations of mixing with technically diverse &quot;open&quot;-communities, from a primarily end-user perspective. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/14/2009</updated-at>
    <biography nil="true"></biography>
    <title>Domo Arigato Mr. Roboto</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">257</id>
    <description>This session is for developers who want to learn about the Android platform. Android is a software stack for mobile devices that includes an operating system, middleware and key applications. We&#8217;ll discuss the Android toolset and platform API&#8217;s.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Practical Paper Prototyping</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">123</id>
    <description>*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: &quot;I think these elements work much better side-by-side.
* Client communication: &quot;Is this what you mean?&quot;
* Developer scoping: &quot;We have five screens with 14 interaction points, only three of which are non-trivial.&quot;
* Usability tests: &quot;What do you expect to happen if you click that?&quot;

*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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Making a Website for the IEEE with Joomla!</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">190</id>
    <description>The IEEE (the Institute of Electrical and Electronics Engineers) Oregon Section put together a new web site, using Joomla!. Joomla! (the bang is really part of the name) is a CMS, a opensource content Management System that uses PHP and MySQL. Core Joomla! is easy to install, but it has large number of extensions, some free, some commercial. We'll talk about what extensions we chose, why we chose them, and discuss problems we encountered and solved.

We'll discuss user registration and how users can post articles, forum entries, and events. The IEEE is non-profit, but we put on seminars for operating expenses; and so we needed a secure ecommerce setup. We chose the opensource Joomla! extension VirtueMart for this. We'll demonstrate how that works and discuss the configuration decisions we made.  We'll also discuss backup and upgrade issues.

So far we focused on a build-it-and-they-will-come approach. We've had some limited success, but are searching for what more we can do. We have a large umbrella (electrical engineers, mechanical engineers, civil engineers as well as software engineers) and need to benefit all our members.


</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How Good Open Source Software Happens or &quot;How I Learned To Stop Worrying And Just Released My Code&quot;</title>
    <submitted-at>03/23/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">56</id>
    <description>Lots of new Open Source authors wonder what project should they work on?  What should they do?  They might have some personal widget of their own they find useful, will anyone else?  Should they release it?  What if nobody uses it?  What if its not up to standard?  Should they fix it up first?

These concerns come from a misunderstanding of how good Open Source projects happen.  We'll look at how one very large Open Source community works: the Comprehensive Perl Archive Network, CPAN.  With 4000 authors and 16,000 projects it is one of the largest software communities in the world.  We'll talk about how its decided who runs CPAN, what the best projects are and how authors decide what to do next.  And we'll talk about the importance of chaos and bad software in long term survivability.

Hopefully you will embrace the motto, &quot;don't worry, be crappy&quot;.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/23/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Advanced Git tutorial: Not your average VCS.</title>
    <submitted-at>02/27/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">23</id>
    <description>Git is an open source, distributed version control system used to track many different projects.  You can use it to manage anything from a personal notes directory to a multi-programmer project.

This tutorial provides a short walk through of basic git commands and the Git philosophy to project management.  Then we'll dive into an exploration of the more advanced and &quot;dangerous&quot; Git commands.  Watch as we rewrite our repository history, track bugs down to a specific commit, and untangle commits into an LKML-worthy patchset.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/27/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Can I get a date please?</title>
    <submitted-at>03/29/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">90</id>
    <description>Are you a Javascript programmer who's tried to get a date and didn't know how?  Do you feel jealous of those fancy schmancy C, PHP and Perl developers able to get a date in a snap, and an international one at that with their strftime functions and OS locale support?

Javascript dates are powerful objects, with methods to get at every part of your date, but no easy way to get the complete date experience you crave.  Should you add 1 to the return value of getMonth() or should you use it as an array subscript?  And why does getYear() not work consistently?

In this talk, we'll go over some of the quirks with Javascript dates, and talk about how the YUI library brings the full power of strftime and locales to Javascript.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/29/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Continuous Integration with Hudson, GlassFish, and Subversion</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">157</id>
    <description>Session Agenda:

- GlassFish installation / Configuration / Deployment
- GlassFish Dashboard
- GlassFish Project Setup Options
- GlassFish Plugin Demos
--- PMD
--- FindBugs</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>But that's not Windows!  Case study and discussion of Open Source for Community Based Organizations.</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">224</id>
    <description>With limited budgets and altruistic orientations, Community Based Organizations seem like a natural match for open source software. At least in the U.S.,however, use of Open Source remains relatively rare.  Microsoft Windows, Microsoft Office, and proprietary vendor systems remain the dominant paradigm.  Many organizations, with limited technical expertise and dependent on outside consultants, are not even aware of alternatives.

But other options, of course, do exist, in both the server and desktop arenas.  Identifying which computing needs can be met with Open Source can be tricky, and requires a careful examination of true needs (rather than perceived needs), technical capability, and organizational culture and support.

We will review the use of Open Source at Downtown Emergency Service Center (www.desc.org), and cover both successes and failures, and technical and culture issues.  DESC is an award-winning non-profit serving homeless adults, uses mostly Open Source for its systems, has developed and released CHASERS, open source software for agency management, and was the winner of the 2008 Intuit contest for best use of Open Source in business.

Audience members are encouraged to bring their own experiences with Open Source at Community Based Organizations, and to discuss fears, perceptions and barriers to using Open Source, as well as ways to address and overcome them. 

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>So you don't have a sysadmin yet... </title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">258</id>
    <description>Many startups underestimate the importance of a systems administrator very early on in the company's development. This person not only can make sure your systems are up, but can create the policies and toolsets that your developers, and even your non-techies, will use from the start, avoiding a whole bag of pain and woe down the road when your ad-hoc systems become untenable. 

But maybe you're just not there yet. If you don't have a sysadmin, what is the minimum you should know to squeeze by in the meantime? 

* What are the &quot;hot spots&quot; on a web server that are going to need attention? 
* What are some good ways to protect yourself against data loss? 
* What are some easy things you can do to avoid getting hacked? 
* How should you go about finding a sysadmin when the time is right? 
* What kinds of things should they be working on when they get started? 
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Project 2059</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">124</id>
    <description>DemocracyLab created the &quot;Project 2059&quot;:http://democracylab.project2059.org/ website to facilitate collaboration on a collective vision for Oregon's future.  The conversation is structured by Values-Focused Thinking, and takes a why, what, and how approach to political thinking:
    * Why - the values, beliefs and principles that form the basis of our decisions.
    * What - the objectives and goals we have for the future.
    * How - the policies we should implement to achieve our objectives.

Users are asked to create and rate content, and make connections between concepts.  Analysis of the resulting data structure will allow for identification of points of consensus and disagreement, and (hopefully) result in the creation of better solutions to public policy problems.

Project 2059 is a pioneering democratic experiment, and a bold attempt to bring the principles of open source into politics.  This session will describe the project's work to date and outline its anticipated evolution.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>PHP - Architecting and Profiling for performance</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">191</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>I'm &quot;ok&quot;, you're &quot;not ok&quot;: The Test Anything Protocol</title>
    <submitted-at>03/23/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">57</id>
    <description>The testing world is plagued with frameworks.  They want to take total control over your tests, how you write them, how you run them, even what you do with the results.  They don't play together, so you have to choose one and only one and hope it does everything you need.  They only work in one language, another language means learning another testing framework.  Having to do everything, they're big and complicated.

TAP(Test Anything Protocol) is a simple text protocol to record test results.  A test program outputs its test results as TAP, and a parser interprets the results.  This simple separation of test from interpreter means the test code can be very small and very simple.  It means multiple programs, written in different languages, can make up a single test suite.  It means environments where testing is difficult, like Javascript or SQL functions, can be tested using native code.  It means you can write your own testing library, and then combine it with another.  There's no controlling framework!

We'll show off TAP, show you some TAP clients written in Perl, Javascript and even one written in Postgres.  We'll show how it can be used to archive test results and explore test suite history and growth.  We'll talk about some future TAP extensions and what can potentially be done with it.

Used for 20 years by the Perl community, it is now being promoted to the rest of the programming world.  You might have seen it before:

1..2
ok 1 - this is the name of a passing test
not ok 2 - but this one failed
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/23/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Remember Tcl/ Tk?  Grandpa might be old, but he can still kick your ass!</title>
    <submitted-at>02/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">24</id>
    <description>Even though Tcl/ Tk is purported to be so &quot;1993&quot; (see http://radar.oreilly.com/2009/03/four-short-links-3-mar-2009.html ), it can actually provide a more advanced rapid development environment than the more popular scripting languages that start with &quot;P&quot; and &quot;R&quot;, supporting built in templating abilities, built in event-loop and callback structures, trivial-to-learn syntax, powerful and simple C extension facilities, a generous license, wide cross-platform deployment (out-of-the-box on Mac OS X, Windows, and all Unix flavors), and the simplest GUI development system in production today. 

This session will showcase the unique features of this excellent &quot;old-school&quot; language.  We will help potential users overcome their disorientation at the lack of parentheses and equal signs and automatic derefencing.  We will show them how to write simple and powerful interactive and event-driven programs that run anywhere.

We will do this with an extended example -- &quot;tksed&quot;, a hack I wrote to combine interactivity with stream editing.  Tksed processes a file by grabbing each line in turn and applying a regular expression (the &quot;sed&quot; part).  It displays the line both before and after applying the regular expression, and allows the user to edit the regular expression and the output line.  The user can try different RE's, test the results, reapply various RE's to the current line without output, skip lines, edit the outpost after RE transformation, or non-interactively apply the RE to the remaining lines.  This interactivity comprises the &quot;tk&quot; part.

This session is perfect for scripters searching for the perfect four line GUI, programmers bored/annoyed by the rococo syntax of their current language, and anyone who has ever felt the need for a built in event loop.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>HOWTO earn an open source living without taking on investors or selling your soul</title>
    <submitted-at>03/29/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">91</id>
    <description>For five years OpenSourcery has been building web applications under contract.  We've gone from three to 20+ people without outside investment or compromise on our open source ideals.

We'll cover the simple formulas that led to our success, explore the some of the dubious business models and side adventures we tried along the way, and hopefully cause the launch of many successful open source businesses.

If you are an experienced open source entrepreneur who would like to join this presentation, please contact me.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/29/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>New Ways for Teaching Children Software Programming</title>
    <submitted-at>04/02/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">158</id>
    <description>Software programming has come a long way for students and younger children since the days of Logo. Syntax has been replaced with connecting blocks and the triangle turtle has been replaced with custom artwork children create themselves.

Other changes include the assumptions we make when teaching children to program. For instance, multi-threading and event processing are easier to teach than functions.

While computers are ubiquitous in children&#8217;s lives, how much of using computers is being transferred into training computers? And does programming offer something beyond the utility to something akin to re-enforcing the academic and problem-solving skills taught in school?

This session discusses the new crop of kid-friendly programming languages as well as how best to teach them. This includes:
 * Etoys
 * Alice
 * Scratch

The session focuses on Scratch, as the best interface for teaching younger children, but also shares a teacher&#8217;s perspective of what works and what doesn&#8217;t work and how the open source community can help create a (potentially new) environment helpful to both students and their teachers.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/02/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Best Practices for Building PHP and Oracle Applications</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">225</id>
    <description>All kinds of PHP applications use the Oracle database because of the
feature set available.  This presentation highlights some of those
features and shows how they make PHP applications easier to design,
more secure and scalable.  

Tuning examples for the PHP OCI8 extension, the network and for the
database will be shown.  The talk will also show how Oracle's free
development and tuning tools improve the coding experience.  Finally,
Oracle's free database, which only takes takes a few minutes to
install, will be shown</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building a customized infrastructure with Gentoo</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">125</id>
    <description>Why run a source based distribution when Debian and CentOS exist and work for most of the world? System administrators are always stuck with having to build their own versions of software because of requirements that are placed on them. Most binary based distributions give you little flexibility in how you can actually build and setup your system. With &quot;Gentoo&quot;:http://gentoo.org, it gives you the most flexibility while keeping it simple. Several prominent companies and organizations such as the &quot;OSL&quot;:http://osuosl.org, &quot;EngineYard&quot;:http://www.engineyard.com/, and &quot;E*Trade&quot;:http://etrade.com are running Gentoo in their infrastructure.

This talk will cover try to cover all of the important issues for running a Gentoo based system for a server. Discussing the pros and cons, when you should consider running it, some advice and tips for setting up a sane environment, and tools to help you manage the systems.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Making the Shift from Rails to Lift</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">192</id>
    <description>Scala is a hybrid functional/object oriented programming language that compiles into bytecode and runs in the JVM. Scala's function aspect permits programmers to write code that looks much like Ruby, but with the added benefits of static typing, a compiler, full access to Java libraries, and the full power and performance of the JVM.

Lift is a view-centric web framework that combines the best features of Seaside, Rails, Django, and Wicket. For Comet applications, there's nothing better.

But the shift in paradigms from Ruby and Rails to Scala and Lift can be confusing. In this presentation, Charles Munat addresses the difficulties he encountered when switching from Rails to Lift, and demonstrates how to build a CRUD application in Lift from a Rails developer's perspective.

Topics covered include creating models and migrating the database, the benefits of Lift's strict separation of view XML and controller logic, Lift's lightweight snippets and how they differ from Rails controllers, working with Maven, a comparison of IDEs, how Lift's plumbing differs from a typical Rails app, Lift resources and how to use them, and more.

Two equivalent web applications - one in Lift and one in Rails - will be constructed side by side to show how the frameworks compare and contrast. Attendees may follow along on their own computers simultaneously.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>End Testlessness</title>
    <submitted-at>03/23/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">58</id>
    <description>If you don't write tests then you probably think one of three things:  You should be writing them; you're not sure what its all about; you think they're a waste of time.  In this session we will make you want to write tests.

We will show that rather than just being more code to write, they let you write code faster.  They let you be bold, do deeper optimizations and more radical redesigns.  They make you design better APIs.  They let other people help.

We'll show you how to write tests, in any language.  Bring your untested project, we'll help you write tests.  And you will leave wanting to write more.

Attendees are encouraged to bring a laptop and an untested project they'd like to work on.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/23/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source + .NET = crazy delicious</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">259</id>
    <description>_You got .NET in my open source! You got open source in my .NET!_

Curious about the .NET Framework? Wondering what kinds of open source development are happening on the platform (and in it)? What can you do for free with .NET these days, even for non-Windows users? Stop by this session and find out.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Spindle, Mutilate and Metaprogram:  How far _can_ you push it before there be dragons?</title>
    <submitted-at>02/28/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">25</id>
    <description>Languages such as perl, ruby, python, scala, javascript, lua, and others have been steadily pushing out the frontier of what a &quot;normal&quot; language should do for almost two decades now.  Despite the early prognostications of imminent doom from the static typing, LR(1), &quot;you can visualize the machine code&quot; establishment, nothing too awful has happened.  Yet.

Meanwhile, languages like clojure, OMeta, and others are boldly going even further, and with a rigor lacking in the earlier edge dwellers.

Maybe the edge isn't as close as we thought it was.  Maybe you can do some really funky things with your language without accidentally summoning eldritch spirits.

Or maybe not.

The only way to find out is to try it--or, if you are of the more prudent proclivities, to watch someone else try it.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>02/28/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Seeing Through Iron</title>
    <submitted-at>04/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">159</id>
    <description>Discussion and QA of how IronRuby has made changes to be more transparent, and what changes could be made going forward to continue this trend. The examples and changes will be focused on IronRuby, but I'd like to show how these changes could apply to any project</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Taking control:  why nonprofits would benefit from collaborative development of management software.</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">226</id>
    <description>Nonprofit organizations operate on tight budgets, but are often required to do a great deal of data collection and analysis.  They are expected to &#8220;do more with less.&#8221;  Most nonprofits, particularly the smaller ones, do not use specialized software to run their organizations, instead relying on spreadsheets, Word documents and sometimes an access database.

Other organizations will use proprietary software purchased from a vendor, or perhaps supplied by a funder.  From a purely economic standpoint, the nonprofit sector ends up paying over and over for the same software.  Clearly it would be cheaper to fund the collective development of Open Source agency management software.

Beyond economics, however, an open source solution would provide many benefits.  Existing proprietary software tends to be oriented towards the needs of funders and reporting requirements.  Agencies often must use multiple funder-driven systems.  They are not geared towards making the agency work, and don't provide the flexibility to adapt to changing needs.  Most of all, they leave control of a critical tool in the hands of others.  What is needed instead is &#8220;software by and for nonprofits.&#8221;

As an example of agency management software, we will review CHASERS, which was developed and released by Downtown Emergency Service Center (DESC).  CHASERS was developed for client and service tracking, but has also been adapted for volunteers and fundraising, and for research projects.  After an overview of CHASERS, what it does well, what it doesn't do well, and how it was developed and used at DESC, we will encourage a lively discussion of the practicality of such a solution, roadblocks to implementation, and potential interest among both nonprofits and developers.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Negotiating an Open Source Future</title>
    <submitted-at>03/29/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">92</id>
    <description>45 minutes: The lecturer presents an overview of the latest laws, legal decisions, trends and financial disclosures made in the Open Source world. Open source developers are still being being subpoenaed in various intellectual property cases.  What can they do to prevail?

10 minutes: Ten minutes are allowed for question and answer as to the legal landscape.

25 minutes:  The lecturer then applies to basic persuasive techniques to a legally sound open source future.  The techniques can be used by all attendees to promote their open source vision of the future, or any other aspect in their lives that requires persuasion.

20 minutes: All attendees will pair off and negotiate their own transaction in a fun filled, interactive session where attendees can apply what they learned on the spot.  All materials are provided.

5 minutes:  The participants will debrief their findings, analyze their activities and discuss outcomes of their transaction with the group.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/29/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Painless Project Estimation</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">126</id>
    <description>Alex will go through stories from his 5 years of experience leading software development teams to create project estimations.  Some topics covered will include:

* Precision vs. Accuracy and why a team should always strive for estimation accuracy above precision.

* The 3 different ways of communicating deadlines: Business targets, engineering estimates, and project commitments.

* 2 popular methods of project estimation: Work breakdown schedule, XP

* How to bring a project estimation process into your organization

* Useful data you should be collecting about your estimation process</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Become a better programmer by bridging Ousterhout's Dichotomy</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">193</id>
    <description>John Ousterhout, the inventor of TCL, observed that languages could be grouped into &quot;scripting&quot; and &quot;system&quot; categories, with very few falling in-between.

I believe not only that all working programmers should be familiar with at least one of each, but that familiarity with scripting language X will make one a _better_ programmer in system language Y, and vice versa. This talk will discuss the lessons each has for the other, using C and Python as primary exemplars, but also touching on other popular languages from both camps, and those that have attempted to bridge the gap.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Blueprint a business model for your success</title>
    <submitted-at>03/23/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">59</id>
    <description>Participating in the Open Source community means you have access to some of the best software in the world.  The opportunity to leverage this software to make a living is tremendous.  As a matter of fact, there are more than a handful of cases where developers just like you banded together and created amazing companies or create real value. 

In this session we will explore several success stories and a few not so successful ones.  We'll then boil down their differences into a blueprint that you can apply to your own ideas. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/23/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Using virtualization and automation to improve your web development workflow</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">260</id>
    <description>Most web developers are probably familiar with the concepts and motivations behind staged deployment.  But the prospect of setting up such a system can raise daunting questions, especially for smaller shops that may work on many projects for many clients.  How much extra hardware will be needed?  How much will the required software cost?  How much development time will it take?

In this session, I show how the combination of Linux, VMware Server, and AutomateIt can make a staged deployment environment easy and inexpensive to set up.  This is a high level session meant to introduce concepts and tools; it will be light on code examples or live demonstration of software.

I review a handful of web development infrastructure approaches.  For each configuration, I discuss the benefits and costs.  Next, I introduce VMware Server and AutomateIt, and show how the introduction of virtualization and automated configuration can drastically reduce these costs.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>CFML Development with Open BlueDragon</title>
    <submitted-at>03/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">26</id>
    <description>In this session you'll learn about the history of the CFML language and CFML engines, and what ultimately led to the open sourcing of this formerly proprietary technology nearly 15 years after its inception.

While knowing one's history is important, the proof is always in the pudding. To that end we'll show you how simple it is to download and fire up the Open BlueDragon, and then we'll do lots of live coding to demonstrate the ease of use and power of CFML. Through the code samples you'll learn about the many great features of Open BlueDragon, including integration with cloud computing resources such as Amazon.com's S3 and SimpleDB, integration with memcached, integration with Java, and much, much more.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Detecting and preventing bugs with pluggable type-checking</title>
    <submitted-at>04/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">160</id>
    <description>Are you tired of null pointer exceptions, unintended side effects, mistaken equality tests, and other run-time errors that appear during testing or in the field?  A pluggable type system can guarantee the absence of these types of errors, and many more.  This talk describes a set of pluggable type checkers that operate as annotation processors for javac.  The type checkers are easy to use (for example, the syntax is much less verbose than generics) and have found many errors in real programs.  Java 7 will contain syntactic support for type annotations, but in the meanwhile your code remains backward-compatible with all versions of Java.  The talk also describes the Checker Framework, which enables a programmer to write an annotation processors that checks custom properties of your code and prevents even more bugs.  The talk will demonstrate the tools in action.  The type-checkers and the Checker Framework are publicly available at &quot;http://groups.csail.mit.edu/pag/jsr308/&quot;:http://groups.csail.mit.edu/pag/jsr308/

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Enterprise Lego</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">227</id>
    <description>There's lots of great open source apps out there.  You might even feel there are too many.  What's needed is a way to coordinate these applications and create a cohesive infrastructure for your enterprise.  Using virtualization it's easier than ever to get the apps you need, get them running, and with great open source products such as Snap Logic, connect them so that your islands of information become a collective pool of knowledge.

This is a live demo presentation showing how real applications can be connected to get real, useful data out of one and into another.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/23/2009</updated-at>
    <biography nil="true"></biography>
    <title>An Introduction to Computer Vision</title>
    <submitted-at>03/29/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">93</id>
    <description>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 &quot;here&quot;:http://www.cs.ubc.ca/~mrd/OSB/OSB.zip .
The slides can be found &quot;here&quot;:http://www.cs.ubc.ca/~mrd/OSB/OSB09-slides.odp and in PDF format &quot;here&quot;:http://www.cs.ubc.ca/~mrd/OSB/OSB09-slides.pdf .</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/29/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Mobility Matters</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">194</id>
    <description>Linux and open source software have crept into the enterprise market, mainly through infrastructure software and now &#8212; after a decade of development and use &#8212; further up the stack into applications. However, when considering the emerging mobile software space, we see open source with a significant presence in all layers of the stack from the start. It looms largest at the infrastructure and OS level with Linux efforts from Google and the Linux Mobile (LiMO) Foundation as well as Symbian, which is being open-sourced by Nokia. Yet we&#8217;ve heard big things about mobile Linux and open source before, only to see little actually materialize. Will this time around be different? Will open source help deliver the development speed and user input to rival the innovation and attention of Apple and its iPhone? Will a more open environment draw in more developers and users? Could Linux and open source provide an easier link to enterprise applications and therefore enterprise adoption of mobile devices?

As trends in the industry and milestones such as Apple&#8217;s iPhone, Google&#8217;s Android and an open Symbian from Nokia set a fast pace for this segment, we investigate how well open source will enable companies &#8212; from OS players to development outfits to application vendors &#8212; to keep up. What are the hurdles, benefits, opportunities and risks to using open source in mobile software? How will it stack up against proprietary, sometimes entrenched, competition? What about adoption in the more mainstream consumer device market and the mobile enterprise &#8212; will open source present challenges or opportunities for vendors that choose it?</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Fedora Remix: A custom distribution from proven design</title>
    <submitted-at>03/24/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">60</id>
    <description>This talk will discuss the toolset and how the tools can be used to fill a variety of needs for the hobbyist, the administrator, or the FOSS advocate.  

Additional discussions about trademarks and legal rights to create a Fedora Remix will be discussed and how Fedora enables others to use a secondary trademark to benefit redistribution.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/24/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Sensing Real Life in a Virtual World</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">261</id>
    <description>Accessibility to the data we generate through our actions and everyday behaviors opens exciting opportunities to bridge real life with the virtual world.  Social networks have connected us in amazing new ways beyond our laptops, but are often limited for many people by their available time and efforts to share information.

An open environment or platform for sensing data automatically, without effort in the real world, offers the potential to more easily connect us within the virtual world.  In areas of energy consumption, presence, and geo-awareness, having ubiquitous access to a stream of real-time data from open sensors, could fuel an eco-system of new mash-ups and applications that help us live more, consume less, and stay connected.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Consistent State, an Open Source Business Model case study</title>
    <submitted-at>03/04/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">27</id>
    <description>This talk will cover an overview of a young Open Source based company, Consistent State, inc.  The talk will cover the following:

- Consistent State Intro, an Open Source Company

- The Consistent State Business Model (putting Open Source into practice)

- The Consistent State Toolkit, a PostgreSQL monitoring and management tool unlike anything available in the marketplace today (inclusive of both OSS and Commercial software).

- Consistent State Toolkit Lab

- Consistent State Toolkit Future direction and how the OSS community will influence it </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/04/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Prototyping Flex Using Cairngorm Microarchitecture and Business Delegate</title>
    <submitted-at>04/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">161</id>
    <description>Presentation which guides a user through the implementation of the Cairngorm Microarchitecture into their Flex or AIR applications, the flow of data on events, and the use of the Business Delegate pattern in order to provide data-centric functional prototypes to stakeholders during the development process.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Using YQL to make Web Services hurt less OR &quot;select * from internet&quot;</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">228</id>
    <description>Do away with the pain of authentication schemes, do away with learning the foibles of multiple Web services, &quot;select * from internet&quot;. Yahoo! Query Language (YQL) allows you to query Web services using familiar SQL-like sytnax. Not just ours though, you can query any web service using YQL, we should have called it Your Query Language.

YQL provides a framework familiar from SQL with commands like SELECT, WHERE and LIMIT but allows you to use it to call Web services, feeds or web pages specified in YQL tables. These tables include a range of Web services from Yahoo! Using the power of YQL Open Tables, however, any Web service can be included in YQL.

This tutorial will show participants how to get started querying data using YQL. It will cover accessing Web services via YQL, and scraping Web pages and feeds. We will then teach participants how to create their own YQL Open Tables to add any web service and easily provide that data to other YQL users.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>FreeTUIT - Codeless GUI Programming</title>
    <submitted-at>03/29/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">94</id>
    <description>FreeTUIT removes the verbosity, tedium, and confusion from GUI development with a new approach to widget layout and configuration which supports good software  design practice without getting in the way of rapid application development.

FreeTUIT is a syntax and runtime for concisely declaring the layout and         configuration of GUI widgets (such as forms, toolbars, buttons, and dialogs).   The freetuit interpreter drives a unified object layer for more expressive      event callbacks.  This takes you from a blank page to a static demo of the      layout with zero setup and allows desktop applications to be developed and      deployed faster than web applications.

The FreeTUIT approach and API are explained in general and demonstrated by      example.  Attendees should have a general grasp of widgets and event-driven     programming but basic forms-based HTML/CGI experience will suffice.  This       session will briefly review existing approaches to &quot;rapid application           development&quot;, the challenges of creating maintainable code, and the snags of    binding to C++ toolkits from interpreted languages.

Built on wxWidgets and Perl, FreeTUIT harnesses the power of cross-platform GUI development with an API which is tailored to the expressiveness of an           interpreted language. </description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/29/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Cross domains with JSONP</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">128</id>
    <description>Quick introduction and examples of accessing public REST APIs from popular web sites/apps using JSONP.  Will begin with explanation of cross domain issues and common workarounds.  Will discuss what JSONP is and what it is not.  Will explain support in popular Javascript libraries like jQuery.  Will show how to do it without using a library.  WIll show a few examples of using JSONP.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source vendor relations</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">195</id>
    <description>This talk will provide a series of mini case studies of dealings with a spectrum of (anonymous) vendors across open and closed-source solutions.  What can we learn about choosing the right vendor?  Does everyone do &quot;community&quot; the same way?  How do we eventually determine the value of what the provider has, whether it be based on support or open-ness?

Just because an IT department may need to shift how they spend their time when dealing with a &quot;non-supported&quot; solution does not mean you'll be throwing your money away in the process of managing it yourself.  You'll need to make a case not only to your organization that this is time well spent, but also to yourself, because the different businesses and communities are understandably as different as the people that make them up.  This talk aims to provide insightful tips and guidelines for navigating vendor relations and decisions, particularly those that intersect with the realm of open source.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building an embedded Linux system monitoring device</title>
    <submitted-at>03/24/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">61</id>
    <description>Update: The device isn't completely working but the talk will cover debugging, setting up a build environment, Beagleboard I/O and basics of Linux network drivers.

I will show how I built an embedded system to monitor machines on a small development network using an ARM based Linux machine with a SPI attached network adapter.

The embedded ARM device is a &quot;BeagleBoard&quot;:http://beagleboard.org/ that records the syslogs coming from my development systems and communicates with my &quot;power distribution unit&quot;:http://www.apc.com/resource/include/techspec_index.cfm?base_sku=AP9212 to reboot them automatically if it detects a system oops. My talk will discuss building software for the ARM architecture, writing a Kernel driver for a simple network device and the automation of the system.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/24/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>There Was an Old Lady Who Swallowed a Fly: Object Oriented CSS for Open Source Projects</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">262</id>
    <description>How can open source projects use OOCSS to create slick user interfaces, even if most of the contributers have never written a line of CSS?  We can learn a lot about CSS from children. In this talk, Nicole uses popular children's fables to illustrate how CSS development can go awry. 

* There was an old lady who swallowed a fly &#8211; Context dependent selectors
* Share your toys &#8211; Creating reusable CSS objects
* There&#8217;s a place in France &#8211; oh wait, there was no moral to that story! :)

You will learn how to scale CSS for millions of visitors or thousands of pages, and you will leave with a better understanding of the most common mistakes which are making your site slow.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>From Plone to Plinkit to Public Libraries</title>
    <submitted-at>03/05/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">28</id>
    <description>Throughout the U.S., small and rural public libraries are struggling to stay open and do not have the capacity to develop engaging websites that can meet the information needs of their patrons. In the age of electronic journals, online learning resources, research databases, and more, it is imperative that public libraries provide access to these and other valuable information resources through a well-designed, full-featured website. 

Plinkit addresses this issue by providing a pre-built, easy-to-maintain, public library website based on Plone, an open source content management system. This session will cover the history of the Plinkit project, why it's needed, the features and functionality that Plone plus specialized content can bring to a library website, and information on the multi-state cooperative, the Plinkit Collaborative.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/05/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Restful JSON the easy way with CakePHP</title>
    <submitted-at>04/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">162</id>
    <description>Summary: it has never been easier to quickly build out a data model into a full, web-friendly API with tools like CakePHP and jQuery UI. In this talk I will go over how to transform a bog-standard CakePHP application into a JSON-serving API that can be consumed by all manner of web-ish clients, using a simple application as an example, and base don my own experience using CakePHP as part of ActiveState&#8217;s new E-commerce system.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Project Management Should be Boring!</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">229</id>
    <description>Many software projects suffer from long release schedules, feature freezes, painful QA processes, awkward merges, version number debates, backwards compatibility paralysis -- oh, and customers who aren't completely delighted.

Project management doesn't have to be this way.

Several real-world projects have solved these problems with a combination of iteration, refactoring, continual improvement, reflection, and low-ceremony processes.  The solutions aren't all simple or easy, but they're easy to understand, and they're within your grasp.  This talk will tell you what's possible and recommend concrete steps to improve your project management.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>How Idealist.org uses technology to change the world</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">95</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Mercurial: basics to advanced techniques</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">196</id>
    <description>Mercurial is an easy to use, yet powerful DVCS.  This is a quick overview of a broad range of topics designed to get you started with Mercurial in a real-world setting.  We'll cover basic usage, transitioning to a DVCS from a centralized system, workflows, common pitfalls, managing upstream codebases, extending Mercurial, and even a little politics.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Scientific Computing with Perl</title>
    <submitted-at>03/25/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">62</id>
    <description>Perl is not usually atop the list of programming languages that people associate with Scientific Computing, but there is no particular reason for this other than unjustified opinion. The Human Genome Project &quot;would not exist without Perl&quot;:http://www.bioperl.org/wiki/How_Perl_saved_human_genome and is perhaps the most well-known example of Perl in the scientific community.

In this session you will learn best practices for which CPAN modules to use in your field of interest, software development practices explained in terms of how they can help your research as well as showcasing a beta of an easy-to-use web-frontend to Perl scientific computing libraries. A short introduction about how Perl 6/Rakudo will effect the open source scientific computing community will be given as well.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/25/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>AutomateIt: Creating agile infrastructure through server automation</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">263</id>
    <description>* Concepts
** What is server automation and how does it help create valuable, flexible infrastructure?
** What is agile infrastructure and what edge does it give sysadmins, developers and business staff?
** What is AutomateIt and what does it automate?
** What is different about AutomateIt's approach that make it simpler and more powerful than cfengine and Puppet?
* Coding
** Basics: Using the AutomateIt interactive shell. Understanding the syntax, return values, conditional execution, managers and drivers.
** Projects: Organize recipes and related files. Expose variables and features through the project environment. Use fields to extract configuration variables. Use tags to conditionally execute recipes based on servers' roles and OSes. Distribute and apply recipes to many servers.
** Features: Manage software packages. Execute shell-like commands. Manage services (daemons), users and groups. Render templates and edit files.
** Advanced: Bootstrap AutomateIt on a new machine. Use virtual machines and shared filesystems to simplify development. Write your own library methods, library classes, managers and drivers.
* Questions and answers
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Building Open Source Communities in Higher Education</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">129</id>
    <description>A large number of computer science students leave school without getting the kind of real world experience working on Open source project can give them. They have not been exposed to large code bases, had to deal with constructive feedback, and may lack basic skills such as writing good bug reports, good coding practices, submitting patches, and other project collaboration skills. Open source communities provide excellent venues for learning these skills while still in school.

This presentation will focus on how Oregon State University is trying to encourage more students to participate in Open source, and use Open source tools and development practices. We accomplish this by providing a custom Open source hosting environment (Beaversource) with social networking features aimed at removing many of the stigmas and fears students have when approaching Open source. This social framework also helps people with similar interests find each other so that they can work together.

The information in the presentation will be of use to people in academia who want to encourage students to learn more about open source, as well as those in the open source community who want to engage more students.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Strategy Consulting</title>
    <submitted-at>03/06/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">29</id>
    <description>Venkat Mangudi Consulting was started by Venkat Mangudi in early 2008 when he returned home after working for over a decade in South Korea, Germany, Singapore and the US.  

This discussion discusses the enterprise opportunities among the small and medium enterprises in India and how Open Source solutions are making a tremendous penetration in that sector. It discusses the various applications that are being deployed and how Venkat Mangudi Consulting is building an Open Source HRMS solution based on an existing Open Source framework.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/06/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>PCI compliant E-commerce using Drupal, Ubercart and IP Apps.</title>
    <submitted-at>04/03/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">163</id>
    <description>Background: Software as a Service offerings are one of the great we success stories of the last few years, with giants like Google Apps and Salesforce.com. The security requirements for organizations wanting to do automated recurring payments schemes for services however are understandably high, and it is well past many organizations to actually become PCI compliant. 

This talk will cover how ActiveState has implemented a subscription-friendly ecommerce solution using Drupal, Ubercart and IP Applications as a back-end, PCI compliant provider.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/03/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Tracks: Getting Things Done the Open Source way</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">230</id>
    <description>Tracks is a RoR-based application for implementing David Allen's &quot;Getting Things Done&quot; methodology of time and task management.  It offers an elegant user interface with the feel of a desktop app.  It has all the Web two-ohness you could ask for with a REST-based API, an AJAX UI, granular syndication capabilities and a spiffy gradient fill logo.  

We'll walk through both the deployment and usage of Tracks and show how to incorporate it into the Mac desktop for simplified daily use.  You'll leave with your own working copy of Tracks, a remedial lesson on GTD and an orientation on how to use the software effectively to manage your todo's.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Ten things I learned from Open Source</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">96</id>
    <description>I got involved in PHP back in 1997 when I was 16 years old, and today I find myself a major player in what is now known as the &quot;Web Industry&quot; and a world-renowned PHP expert. That's all well and good, but there is so much about life and people that make up the fabric of a project like PHP that so many people miss. Open source is more than a technology movement, it can teach you lessons that will not only make you a better technologist but a better person. In this session I'll share the lessons OSS has taught me (most with concrete stories from the past 12 years) and hopefully give you some insight into what OSS is really all about.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>A Database Called The Web</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">197</id>
    <description>Since its inception Creative Commons has made machine readable
metadata a critical part of the licensing infrastructure.  Our choice
was obvious (to us): RDF and the Semantic Web.  This of course gave us a chicken and egg problem: how do you convince people the Semantic Web isn't just a bunch of academic dreaming when, well, there wasn't much evidence.  Six years later, we've made it work.  With the publication of the CC Rights Expression Language, we have an extensible, independent, machine readable way to express information about works. A machine readable &quot;database&quot; that people are contributing to every time they mark a work with a license.

During this presentation we'll:

* Demonstrate how this metadata can be used by other web applications to inform users of attribution and re-use specifics
* Demonstrate our lightweight copyright registry, the CC Network,
which is purely driven by semantic web metadata
* Build an even lighter weight version that integrates with the CC
license deeds (with no changes to the CC deed code)
* Build a Yahoo SearchMonkey application that exposes license and
attribution information to the user
* Give specific guidelines to site developers who want to free their data without building a specialized API</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Indexing the SQL Database</title>
    <submitted-at>03/25/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">63</id>
    <description>Most developers find they have to use SQL databases for their projects, but few have any idea how to index those databases.  Which columns to index, what kinds of indexes to use, multicolumn indexes, foreign keys ... it's all very confusing to anyone who's not a career database person (and even some that are).

Josh Berkus, PostgreSQL Project Core Team, will cover:

-- Assorted Types of Indexes
-- The Three Methods of Indexing your Database
-- The Four Reasons to Index a column or table
-- How to think about Multicolumn Indexes

Given that this is a 45-minute session, specialty index types will be mentioned, but not detailed.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/25/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Introduction to the symfony PHP framework</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">264</id>
    <description>The &quot;symfony framework&quot;:http://www.symfony-project.org/ is a full-stack web framework for PHP5.  It's packed with powerful features, has thorough documentation, and is constantly improving thanks to its active and helpful community.  In this session, I provide a high-level overview with real-world examples from my experience using symfony to create websites and on-site installations for museums.

Symfony has too many features to cover them all in a short session.  After a very broad description of symfony's capabilities and philosophy, I will focus on a handful of symfony's best features, selecting from those that I have found most useful in my own work.  For each feature I will provide specific examples from real projects.  The features covered will include:

* The model-view-controller architecture, and how this standardized structure has made it far easier for developers to quickly understand the structure of an unfamiliar project.

* How symfony's routing system can completely decouple the structure of your project from its URLs.

* Admin console generation, and how we have used it to quickly create tools for museums to manage the content of interactive kiosks.

* The symfony plugin system, and how we are using it to create our own mini-framework on top of symfony for creating museum collection database websites.
 
This session will assume some familiarity with object-oriented programming in PHP5, but will be light on code.  The focus will be on what the framework can do for you rather than implementation details.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>OSWALD: Building an inexpensive Open Source UMPC for Education</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">130</id>
    <description>The OSWALD encourages students to experiment and explore every aspect of computing. The OSWALD provides a flexible, yet powerful platform that can adapt to meet the needs of a large number of course topics and student interests. The OSWALD serves as a 'platform for learning' - providing continuity, context, and a focal point for course content. Every part of the device is Open Source; from the hardware layer to the application layer, every bit is available for students to study and modify as they wish. By keeping costs down to a minimum and providing all students with the same platform, we reduce the risks of exploration, as local support becomes readily available, and the device is easily replaceable. Through its local focus, the OSWALD creates a new community where new and seasoned open source developers can come together to share software, hardware, and ideas.

Come learn how a group of undergraduate students at Oregon State designed, prototyped, manufactured, programmed, and deployed a brand new open source computing platform designed for education. See a demo and play with the device. We will discuss how it was received in its first term at Oregon State, what can be improved, thoughts on new curriculum leveraging the device, and other educational and community uses for the platform. Anyone with an interest in the intersection of computer science education and open source development, or low-cost open source UMPC devices will find this session to be filled with useful and pertinent information.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/17/2009</updated-at>
    <biography nil="true"></biography>
    <title>Drupal, What is it Good For?</title>
    <submitted-at>03/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">30</id>
    <description>Drupal is growing leaps and bounds these days, powering everything from ma and pa brochure sites to Obama's recovery.gov. Does this mean it's a great fit for any website? Not exactly.

Drupal has been defined as many things, including a content management system, a web application framework, and community plumbing. In some ways, this is both a blessing and a curse; there's so much you can do, in so many different ways, that new users are crushed under the weight of the options and lack of clarity. In addition, all of that flexibility does come with a cost, in terms of performance and conciseness.

This presentation will cover some Drupal basics including history, core concepts, and system structure. From there, we will dig into Drupal's strengths and weaknesses, finishing off by discussing the types of projects Drupal is best suited for, including specific examples for each case. 

My hope is that developers new to the platform will gain a better understanding of when to approach a new project with Drupal, more experienced developers will gain a bit of insight on when not to use it, and non-techies will have some help in choosing a platform for their projects along with an understanding why developers they work with select a given platform. Please note that this talk will not delve deeply into the technical details of Drupal.

Presentation slides: http://www.slideshare.net/loubabe/drupal-what-is-it-good-for</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Day On Geeks Ninja Strike Teams &amp; Help Desk for NPOs</title>
    <submitted-at>04/04/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">164</id>
    <description>&quot;Day On&quot;:http://dayon.org/ connects nonprofit organizations that need advice and assistance with volunteers who are ready to help.

The Day On Geeks Ninja Strike Teams and Help Desk will start with an introductory orientation session where geeks can learn the ropes and volunteer to join ninja strike teams to complete pre-selected technology projects for nonprofit organizations and/or sign up for shifts at a general help desk for nonprofits taking place throughout OSBridge at a centralized location.

For the Ninja Strike Teams, geeks will join small teams to organize and work on focused, pre-selected technology projects for nonprofits. Teams will be expected to report on project outcomes and planned next steps both online and at the Extending Day On session at the end of OSBridge (see separate proposal).

For the Help Desk, geeks will volunteer in shifts to help nonprofits who drop in, email, IM, call, video chat or post online with technology questions and issues. Necessary communications infrastructure is already in place.

Projects for the Ninja Strike Teams will be solicited in advance from nonprofits and pre-selected on merit and feasibility. Project proposals and the Help Desk will be promoted widely to nonprofits both locally in Portland and nationally through networks like &quot;NTEN&quot;:http://nten.org/.

Day On background: Our first project was Geeks Day On, a day of service during MLK Day, Monday, January 19, 2009 where geeks offered free technology and Internet communications advice and assistance to nonprofit organizations. Since then, Day On has been partnering with existing networking organizations to offer technology help to nonprofits at live events and online.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/04/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>05/15/2009</updated-at>
    <biography nil="true"></biography>
    <title>5 things to know about MySQL if you don't have a DBA</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">231</id>
    <description>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.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Web Scraping with PHP</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">97</id>
    <description>This presentation will review basics of the HTTP protocol and how to apply that knowledge by using several well-known PHP HTTP client libraries. It will also detail several extensions available for analysis of retrieved data including PHP's various XML extensions as well as its tidy and PCRE extensions. Lastly, best practices will be covered including considerations of real-time versus batch processing, implementation of anti-throttling measures, and compliance with the robots.txt standard.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>The Golem; or, Open Source and the Academy</title>
    <submitted-at>04/09/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">198</id>
    <description>I discuss the role of open source in universities and vice-versa, arguing that they used to be better-integrated and that this was a good thing that is coming around again and can be hastened with judicious action.  Also, there's a golem in this talk, who is also a metaphor.

The origins of free and open source software are deeply intertwined with the university environment.  In a very real sense, the FSF originated at MIT and open source 
at MIT and UC Berkeley.  UNIX was adopted by universities worldwide, becoming the direct ancestor of Linux.

Today, however, the relationship between the academy and the open source community is a bit more arms-length.  Academics occasionally decry the &quot;lack of sophistication&quot; of the open source community, and open source developers frequently shrink from the &quot;ivory tower mentality&quot; of the academics.

Fortunately for both sides, recent advances in academic understanding of open source software engineering, coupled with new programming languages and tools, have encouraged a new generation of open source developers to bridge this gap.

This talk outlines the history, demographics,  and trends in the open source / academy relationship, and suggests concrete steps for improving it: role modeling, technology development and adoption, cooperation opportunities and more.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/09/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/17/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Press Relations</title>
    <submitted-at>03/25/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">64</id>
    <description>You have a really cool open source project and everyone should see it, try it, and use it.  But ... they don't seem to know about it.  How can you make sure your project gets the press coverage it deserves?  More importantly, how can you do it without compromising your open source community relationships and principles?

Josh Berkus will go over the methods he's used for the last 7 years to publicize both the OpenOffice.org and the PostgreSQL projects.  He'll also show you how you can use OSS methods and tools not just to get PR done, but to get it done *better* than proprietary methods. 

Slides will be up at http://www.pgexperts.com/presentations.html by the end of the conference.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/25/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Skateboarding 2.0: Why Tony Hawk needs an electric skateboard</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">265</id>
    <description>Tony Hawk was nine years old when his brother changed his life by giving him a blue fiberglass banana board. By age 16, Tony Hawk was the best skateboarder in the world. Unfortunately, Tony's success in skateboarding has not helped him overcome the challenges of web application development. The Google Web Toolkit (GWT) was designed to help developers build complex Ajax applications. Attend this session to learn how GWT makes Ajax programming as easy as riding an electric skateboard.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Ask Forgiveness not Permission</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">131</id>
    <description>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&#8217;s concerns about business critical open source so no apology will ever be necessary.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/16/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Microblogging with Laconica</title>
    <submitted-at>03/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">31</id>
    <description>Microblogging lets people share short status messages with their social network. Public Web sites like Twitter, Jaiku and Plurk are wildly popular with consumers, but Open Source programs allow a distributed social graph and implementation inside the enterprise firewall. Evan Prodromou, founder of Identi.ca, will describe the Open Source microblogging tool Laconica and its uses in the workplace and on the Public Web.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Extending Day On: Helping Geeks &amp; NPOs Connect After We Go Home</title>
    <submitted-at>04/04/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">165</id>
    <description>&quot;Day On&quot;:http://dayon.org/ connects nonprofit organizations that need advice and assistance with volunteers who are ready to help.

Throughout OSBridge, geeks will be volunteering to complete pre-selected technology projects for nonprofit organizations and/or to staff a general help desk for nonprofits at a centralized location. Read more at our companion proposal &quot;Day On Ninja Strike Teams &amp; Help Desk&quot;:http://opensourcebridge.org/proposals/164.

This culminating session will gather both geek volunteers and nonprofit participants to discuss our work during OSBridge and brainstorm ways Day On can refine, augment and extend its efforts to connect geeks with nonprofits needing technology advice and assistance. Participants will be encouraged to help enact the best ideas from our collective work to improve Day On's online infrastructure and repeat Day On's best practices in other places.

Day On background: Our first project was Geeks Day On, a day of service during MLK Day, Monday, January 19, 2009 where geeks offered free technology and Internet communications advice and assistance to nonprofit organizations. Since then, Day On has been partnering with existing networking organizations to offer technology help to nonprofits at live events and online.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/04/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>For the people, by the people, and of the people</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">232</id>
    <description>Software development, the writing of histories and encyclopedias, the development of law and public policy: each of these areas benefits from fast and flexible collaboration.

When people relax their grip on the ideas they develop, new things emerge. A flexible computer operating system, an enormous and living encyclopedia, forward-thinking public policy.

The &quot;open source&quot; ethos is a valuable tool, and enables these exciting phenomena, and many more. However, it is merely a tool, and an effective &quot;open source&quot;-based project often needs careful planning, leadership, and mentoring to allow its participants to make their best contribution and feel good about doing it.

In Oregon, we have a tremendous political legacy, personified by figures like State Sen. George W. Joseph (whose work resulted in the publicly-owned development of hydropower along the Columbia), Senator Wayne Morse (who dared to say that the American people had the ability and responsibility to weigh in substantively on the Vietnam War and foreign policy), and State Sen. Vicki Walker (who has taken on some of the most powerful interests in the state in the interest of transparency and accountability to the public).

Oregon is known for pioneering the popular ballot initiative, public records laws, and an inclusive vote-by-mail system.

You might think that the ethos expressed by Oregon's thriving open source software community would fall on fertile soil in the state's political sphere, but it will take hard work to fully realize that potential.

Topic for discussion: how to describe/advocate for the civic-minded, crowd-sourced value that Oregonians can bring to government, and to improving the state outside the traditional structures of government?</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Creating Web Services with Zend Framework</title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">98</id>
    <description>This session will provide a general overview of each approach to creating web services, criteria for selecting the best approach for a project, and what related components in the Zend Framework can help to get the job done. Included will be Zend_Rest, Zend_XmlRpc, Zend_Soap, and Zend_Json_Server for creating web services as well as supplementary action helpers and Zend_Test for unit testing.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Digital Noises</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">199</id>
    <description>This talk will be a quick layperson's survey of digital audio signal processing.   The focus will be on understanding basic digital audio principles as a tool to enable open source development and use of digital audio tools.

Specific topics to be covered include

* What's a sound wave?  How are they produced?  How does the ear hear them?

* What's &quot;PCM&quot;?  How is audio digitized and undigitized?

* What's &quot;the time domain&quot;?  What kinds of interesting processing can be done directly to a digital audio signal -- in real time or &quot;offline&quot;?

* What's &quot;the frequency domain&quot;?  What kinds of interesting processing can be done using filtering, FFTs, DCTs, etc?

* How can digital audio be stored? How do lossless and lossy compression schemes work?

* How can digital audio be synthesized?  What kind of techniques are commonly used in synthesis?

* Is it really so easy to use open source tools to process digital audio? Is it really so easy to write new ones?

I have been building digital audio hardware and software for 30 years.  This talk is a chance to share some of what little I've learned during that time with you.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>From Proposal to Applause</title>
    <submitted-at>03/25/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">65</id>
    <description>Since you're at this conference, you've probably spoken at other conferences, or at least thought about submitting a talk proposal to some other conference.  Getting a talk accepted and delivering it effectively is something that almost anyone can learn how to do.  If you learn by trial-and-error, though, that may be a painful process which takes several years.

As someone who has delivered talks around the world (OSCON, FISL, FOSS.In, pgCon, PHPCon, SCALE, etc.) and who sits on the evaluation committees for three conferences, I'll share some of my accumulated knowledge on how to get from the Call for Papers to the applause at the end of your talk, including:

-- Before you write a proposal
-- How and what to propose
-- Structure of a Talk
-- How to make slides, and how not to
-- Demos
-- Rehearsing
-- Filling the room
-- Five things to remember
-- How to deliver a talk, and how not to
-- Q&amp;A
-- Follow-up


</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/25/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Effective code sprinting</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">266</id>
    <description>* 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</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Managing geographic information</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">132</id>
    <description>How do you keep from getting buried by geographic data coming from a variety of sources, all lacking metadat, all structured differently, and getting regular source updates? How do you then take that data and re-structure so it works in *your* application?

Using rake, postgis, plpgsql, and ruby, I'll demonstrate some of what I've learned along the way in trying to turn a nightmare into merely a bad dream.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Take the plunge: Start using Linux as your primary OS</title>
    <submitted-at>03/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">32</id>
    <description>This will be a hands-on introduction to Linux.  Ubuntu CDs will be provided, and we as a group will install them, and answer any questions that come up along the way.  

We will also show people how to adopt a &quot;Linux frame of mind&quot;.  The answers to your questions are out there, if you know where to look and who to ask.

By the end of this workshop you should have Ubuntu set up.  You will also know a bit about the linux culture and how to find answers to the questions you have tomorrow.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Source Creativity</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">233</id>
    <description>It all started when this one guy developed a &quot;Fan Page&quot; for Coca-Cola on Facebook...

Well, maybe it didn't START then... but it sure got a lot of peoples' attention. A growing number of organizations ranging in size from small business, government agencies, and major corporations are looking to open source and even the general community for contributions. How is this changing our relationship with these entities and how are our ideas being used... or not?</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Blogs, Content Management, and more,  installing web applications is easy and accessible to the mildly technical. </title>
    <submitted-at>03/30/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">99</id>
    <description>There are thousands of free open source applications that were written to run on a web server. For many the task of getting them installed and maintaining them seems daunting. While there are some that do require advanced technical knowledge there are many that are as simple to install as enabling them in a control panel. In terms of maintenance many have simple upgrade and update procedures.  For example WordPress a very popular blogging software can be added to most sites in a matter of minutes. 

I'll demonstrate the fundamental steps for installing an application on virtual hosting (the $4 a month kind) and on a standalone server that could be part of company's intranet  or hosted at an Internet service provider.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/30/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Open Technology Manufacturing Innovation (OTI) and </title>
    <submitted-at>04/04/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">166</id>
    <description>AirShip Technologies Group&#8217;s open technology innovation (OTI) manufacturing approach is a collaborative process modeled on a method that for more than a decade has been closely associated with community open source software development.  It's called Open Technology Innovation because the collaboration is open to all and the innovative source technology is shared, branded and licensed with participating stakeholders.  Open technology harnesses the distributive powers of the Internet, parcels the work out to thousands, and uses their piecework to build a better whole - putting informal networks of volunteer corporations, governments and individuals in collaborative teams.  It works like an ant colony, where the collective intelligence of the network supersedes any single contributor.  Open technology is doing for mass innovation what the assembly line did for mass production.  Get ready for the era when collaboration replaces command and control.

Open Technology Innovation (OTI) manufacturing functions as a strategic resource marshalling organizations and individuals worldwide to produce cutting edge transformational products.  The focus is on business, science, engineering and human capital to create high return technology innovation.  The goal is to establish open technology manufacturing and innovation as the next level in collaborative product and service creation. 

Technology&#8217;s transformative power has always been a source of great expectations and challenges.  Today, globalization, fuelled by information, communication and transportation technologies is rapidly changing every society.  The drive towards globalization creates a new set of unique demands on government, business, and people&#8217;s everyday lives.  Increasingly, decision makers in various fields are looking to technology to provide solutions and drive desired changes by commingling local, national and global resources in innovative ways.

Open Technology Innovation seeks the fusion of technology and globalization producing a new way to adapt, innovate and grow in this changing world.  A potent combination of connectivity, collaboration, access and transparency &#8211; or openness &#8211; is emerging.  Governments and enterprises around the world are embracing it.  This openness is helping governments, companies and individuals respond to the increasing requirements of an on-demand, high-speed world.  In the forefront is environmental sustainability where AirShip Technologies Group will design viable, clean and super-efficient vehicles that people and businesses want to buy.  OTI uses the openness factor seen mostly in the Open Source Software Model to unleash newfound comparative advantage, invention, social development and market opportunities in all sorts of technologies.  The AirShip Use Case Open Technology Innovation Map uses the OTI process to collaborate resources on the development, construction and rollout of the AirShipTG ground vehicles for cars and long haul trucks.

The goal is to enable worldwide stakeholders from industry and society to contribute to how the AirShipTG innovative product is introduced, developed and produced.  To do this, we use a global perspective from those with knowledge and hands-on experience in order to develop this new ground transportation vehicle architecture to establish this new and competitive technology.  Using an OTI-based web site portal, every region of the world is invited to participate and share insights from organizations at the forefront of technology to inquiring individuals who wish to contribute.

OTI members provide practical insights that help everyone move toward open technology beneficial to all its stakeholders and the world at large.  While networking the team worldwide, OTI will grow a large repository of AirShipTG Open Technology development and applications collaboratively developed over the Internet, but will host the AirShipTG manufacturing and construction site in Oregon.  As a result via this web portal, AirShip Technologies Group plans to host the development team and recruit investment contributors to the project.  By hosting for Open Technology development projects, the spirit of the Open Collaborative Development Lifecycle is modeled on rapid creation of solutions within this open, collaborative environment.  Collaboration within the Open Technology community promotes a higher standard of quality, and helps to ensure the long-term viability of the AirShipTG.

OTI Work Groups &#8211; How Things Get Done!

Adapted from the Open Source Development Lab (OSDL) Business Model

OTI works in partnership with organizations, institutions, and individuals willing to place their separate agenda second to the cause of collaborating to raise their global competitive advantage via the AirShipTG ground transit vehicles.  We determined there is an appetite for a new organizational business model that leverages existing and emerging efforts in a more coherent and cohesive global action plan.  We determined how to foster greater collaboration or most importantly the global social networks required to engage people and institutions along a pathway leading to real-time action-taking and measurable performance.  As we found in our interviews and forums, most organizations are interested in finding a more effective mechanism for improving linkages &#8211; linking traditional and new economy clusters, linking existing and emerging civic and business leaders, linking institutional strengths and competencies.  While many forums exist for creating these linkages, the lack of measurement related to the outcomes of these forums has left organizations frustrated over the results.  Yet no one individual or organization has expressed frustration about the continued need to identify the most efficient and effective means of &#8220;getting the job done&#8221; to advance the technology agenda.

Thus, the most important next step for technology organizations, entrepreneurial, academic research, and organizational collaborative interests is to create a setting for taking action around a handful of objectives and tactics that can be measured in real-time for expected and vital results.  The question for the automotive technology industry is plain: how do we look at our current innovation systems and improve our competitiveness by strengthening these linkages and the performance of many stakeholders in a technology-based global economy?

Deciding on the AirShip Use Case:

Determining which projects work for open technology use cases is about filtering or sorting out what to keep, what to discard, what to adopt, and where to intensify our focus.  AirShip Technologies Group has decided to develop the ground transit vehicles based on the OTI model because of the following criteria:

&#183;   Transformational &#8211; Is the use case transformational?  With the advent of technology and globalization, projects that transform can represent deep change.  Deep change differs from incremental change in that it requires new ways of thinking and behaving.  It is change that is major in scope, discontinuous with the past and generally irreversible for society (once adopted).  This deep transformational change filter means surrendering control and on any level entails some inherent risk.  To adapt to the profound changes of our times, transformational projects are willing to go out on a limb, to take some big risks by stepping outside of well-established boundaries and current thinking!

&#183;   Virtualization &#8211; Can the use case project be developed in a virtual environment?  The business paradigm of the 20th century was one of centralized organizations using a management hierarchy of command and control.  The majority of employees were located in a single facility, and management acted as command central.  The old model suffers from numerous age-related problems, not just an outdated notion of work management.  From a human capital standpoint, it is becoming increasingly difficult to achieve proximity of desired brains.  The best people might not be willing or able to devote four hours each day to getting to and from work.  The best people might not even be within commuting distance of the office, city, state or country.  As specialization continues to drive areas of expertise, it is likely that a particular skill set might be vested in one individual or a small group of individuals&#8212;in Bangalore, India, perhaps.  When such expertise is located outside an urban setting, the individual or individuals might not want to move away from their perceived paradise.  The people possessing the critical skill set might not even want to work a 9-to-5 workday.  However, tapping into that expertise might be the difference between OTI&#8217;s survival and failure with hypercompetitive products or services.  As such, OTI projects must be adoptable to business process virtualization, where the application of intelligent network-enabled open collaboration leverages people and their intellectual productivity, capital, and infrastructure to achieve quantum improvements in productivity, profitability, and competitiveness.  It is not just about technology, but derives from the application of a new approach to management, a new focus by technologists, a new focus in process oversight, and enlightened involvement by many of the traditionally passive (or disruptive) business support activities.

&#183;   Global Market &#8211; Does the use case create a new set of competencies for global market advantage?  This filter assumes that the primary motivations driving the success of the product has global comparative and competitive advantages that are gained by the integration of various value-added characteristics or outcomes that necessitate development of a new set of competencies for a global market advantage.  Presumably, this advantage is associated with positive strategic and financial returns.

&#183;   Trends for Open Use Patents  &#8211; Is the use case open use patentable?   OTI products and services are selected for their prospects of open use instead of proprietary patents.  The role of patents in the expanding world of open technology is evolving.  Scientific and technological advances have created new waves of innovation, and innovation processes themselves have become centered less on individual firms and more dependent on interactions among global networks of companies, governments and individuals.  Trend shifts in the legal and regulatory framework of patent regimes have resulted in more expansive domains of patentable subject matter and more robust and more valuable patents.  OTI&#8217;s open use license agreements lead to increased commercialization of inventions generating greater benefits worldwide.  OTI use cases are designed to ensure access to basic inventions and licensing practices free of charge.  By agreeing to the open use license, organizations are free to use and brand the product or service.

&#183;   Innovation &#8211; Does the use case innovate?  OTI projects recognize that successful technologies must be prime stimuli for business innovation and an enabler of competitive advantage or best-in-class service delivery&#8212;and in themselves have the potential as key participants in a process that develops business and introduces something new for the first time!

&#183;   Cross Use Ability &#8211; Can the use case be used for multiple purposes?  The ability of use cases to retain technological advances will, in many cases, depend on the project&#8217;s ability to take advantage of dual or cross use opportunities.  Cross use promotes an advantage of the competitive pressures and market-driven efficiencies.  This competitive, market-driven approach increases the pace at which technological improvements are incorporated and adopted, while at the same time reducing the incremental costs of those products or services.


The AirShip ground transit vehicles meet the use case requirements of the OTI Model.  Moreover, the vehicles are considered a SMART vehicles because its software development incorporates drive-by-wire magleve spherical induction motor based Track Sphere maneuverability, collision avoidance, communications, and advanced warning and failure control.  Computer hardware is miniaturized to the greatest extent feasible and technology reduces power consumption.  Software development includes system modules for energy computer control, computer geographical navigation map display, vehicle digital remote entry controls, electric photovoltaic science, and on-board computer interactive voice controls/announcement.

AirShip Technologies Group has formed this Open Technology Community of Practice to develop the AirShip&#8217;s computer programs, making it the first Open Technology inspired vehicle development.  These software programs will provide real-time operation of the above described computer systems.  The majority of application systems will be designed around off-the-shelf computers and the open source Linux operating system.  The firm will take advantage of reusable open source software to provide most of the functions needed.  To tie these open source software modules together, software developers will write lines of code to facilitate the integration process.  This programming will unlock the capability of open source software modules that in many cases will contain hundreds of lines of code.

Real-time, redundant, on-board computers augment AirShip operational safety.  The AirShipTG's SMART software modules, advanced warning and correction systems advances the operator's ability to operate the vehicle beyond the capabilities of a traditional cars and trucks.  Many systems are activated automatically and inform the operator by audio and visual feedback.

</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/04/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Marketing Open Source Software</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">200</id>
    <description>The market share of Open Source software will double within the next four years. More and more new companies provide Open Source products right from the start and established players release their source code under a FOSS license.

These days, everyone knows that Open Source is a viable business model - but how does one successfully market an Open Source product. A download link alone will not suffice. It rather needs a strategy combining traditional marketing with community relations and social media marketing.

This presentation will showcase examples from the Open Source domain and provide hands-on advice about how to unfold a vital Open Source ecosystem where geeks and customers alike contribute to value creation.

The audience will learn related to Open Source software offerings: How to identify a target audience. How to communicate effectively. How to market products and services. How to successfully execute marketing actions.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Tracking Package Freshness</title>
    <submitted-at>03/25/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">66</id>
    <description>As a senior in the University of Washington&#8217;s Computer Science and Engineering I&#8217;m exploring the relationship between upstream and downstream package releases. I&#8217;m primarily interested in the time it takes for a distribution to do a version bump. Currently, I&#8217;m collecting data for Debian, Slackware, Ubuntu, Fedora, Gentoo, OpenSuse, Arch, Sabayon and Funtoo. I track each repository and the release date of each version of all packages.  The data will become available through oswatershed.org.  Hopefully, this data will increase the efficiency of distribution/repository maintenance.

In the presentation I will present three main ideas. First, I&#8217;ll discuss some of the difficulties in collecting and normalizing the data. The largest issue is the potentially different names of a single package across the different distributions. For example, Gentoo has php but Ubuntu has php3, php4 and php5. In order, to compare the two these must be considered equal. This is not an easy task with 65,000 or so different package names.

The second and third things I will cover in my presentation are interesting trends and possible release cycle improvements. What this exactly entails is still uncertain. Much of the work on the data has yet to be done and by OSBridge three months more data will have accumulated. I hope to present trends related to specific types of packages such as Office or Gnome apps. I also hope to touch on security updates and their proliferation into the different distributions. However, ultimately, this will be sorted out much closer to the presentation.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/25/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Doctrine: object-relational mapping for PHP</title>
    <submitted-at>04/10/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">267</id>
    <description>&quot;Doctrine&quot;:http://www.doctrine-project.org/ is an object-relational mapper for PHP 5.  Over the past three years it has grown from a promising one-developer project to a 1.0 release as an officially supported ORM for the popular &quot;symfony framework&quot;:http://www.symfony-project.org/.

I've been using Doctrine on symfony-based web projects for two years now.  In this session, I'll give a high level tour of the library, focusing on the features that will save you time in your day-to-day development.  The session will assume some familiarity with object-oriented programming in PHP5, but will be light on code.

Some of the features you can expect to learn about include:

* Use the Doctrine Query Language (DQL) to write queries using the language of your model rather than your relational database.  Get back hydrated objects.

* Start from a yaml-based schema file and automatically create your database.  Or, start from an existing database and automatically create your schema file.  Either way, your model classes are generated for you.

* Hydrate objects with all their related objects pre-loaded... or, lazy-load the relationships only when they are requested.

* Use a sophisticated selection of hooks and event listeners to inject custom functionality into your model at various levels: system-wide, for one connection, or per model class.

* 'Behaviors' add common types of functionality to a record class.  Choose from a variety of useful included behaviors such as 'Timestampable' or 'Searchable', or implement your own functionality shared by several classes in your model.
</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>04/10/2009</created-at>
  </record>
  <record>
    <event-id type="integer">2009</event-id>
    <updated-at>06/04/2009</updated-at>
    <biography nil="true"></biography>
    <title>Layers of Caching: Key to scaling your website</title>
    <submitted-at>03/31/2009</submitted-at>
    <website nil="true"></website>
    <id type="integer">133</id>
    <description>Caching is essentially a way of keeping the most used parts of a website in memory so that it gets served quickly. This will reduce CPU and I/O overhead and thus make the site very fast. Unfortunately this doesn't happen magically without some extra work.

This talk will cover the several layers that you should know about how they improve the sites speed. Some of these will include:

* &quot;Squid&quot;:http://www.squid-cache.org/ / &quot;mod_cache&quot;:http://httpd.apache.org/docs/2.2/caching.html (disk backed caching)
* &quot;memcached&quot;:http://www.danga.com/memcached/
* &quot;APC&quot;:http://us.php.net/apc &amp; other opcode caching
* Application level caching
* Configuring Apache properly
* Solutions for python &amp; ruby

I will also go over how we utilize caching on the Drupal infrastructure which is hosted at the OSL along with other real world examples.</description>
    <presenter nil="true"></presenter>
    <user-id nil="true"></user-id>
    <affiliation nil="true"></affiliation>
    <created-at>03/31/2009</created-at>
  </record>
</records>
