by Audrey, Amber Case, Kurt von Finck and Selena Deckelmann
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.
by saraford
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.
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.
by Lev Tsypin
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/loubab...
by Brian Jamison
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.
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.
by molly vogt, Joaquin Lippincott, Israel Bayer, Melissa Anderson and skjalf
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 <a href="http://groups.drupal.org/portland-oregon">Portland Drupal User Group</a>, 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
by Steve VanDevender
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?
by Scott Becker
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 "bigger", 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
by Brian Aker
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.
by Leslie Hawthorn and Cat Allman
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.
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 "case study"-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
by fuzzychef
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/present... by the end of the conference.
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:
by Paula and J-P Voilleque
On the one hand, there is the "zealous advocate," 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 <a href="http://frienda.com">FrieNDA</a>, 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 "right" 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.
by David Brewer
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.
by Marshall Culpepper and Martin Robinson
Titanium is a truly open-source alternative to Adobe AIR, allowing developers to use their existing knowledge of rich web application technologies – JavaScript, Python, Ruby, HTML and CSS – to build desktop applications.
In this presentation, we will:
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.
by Dylan Reinhardt
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:
For purposes of the session, I'd be assuming a "stock" Django installation with the standard templating, ORM, etc.
This would assume familiarity with Python and Django basics, but no experience beyond the basic tutorials.
by Nate Aune
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.
by Narayan Newton and Lance Albertson
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:
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.
by Lori Ayre
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 “learned helplessness” 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’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’s using them
* discussion of support options and collaboration possibilities
* discussion of the ways your library can get involved with an OSLS project
by Bram Pitoyo
If we spent most of our workday staring at the Terminal window, then it’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:
Bring your own laptop and prepare questions you always wanted to ask (but never could) about typography and how text are displayed. You’ll get out of this session with a programming font you can call your own.
by Matt Youell and Markus J. Q. Roberts
Languages such as perl, ruby, python, scala, javascript, lua, and others have been steadily pushing out the frontier of what a "normal" language should do for almost two decades now. Despite the early prognostications of imminent doom from the static typing, LR(1), "you can visualize the machine code" 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.
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.
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 "feels like a general-purpose language beamed back from the near future." 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.
by Kevin Kenan
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.
by Sarah Sharp
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 "dangerous" Git commands. Watch as we rewrite our repository history, track bugs down to a specific commit, and untangle commits into an LKML-worthy patchset.
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.
by Thomas Brenneke
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.
by Philips
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 "BeagleBoard":http://beagleboard.org/ that records the syslogs coming from my development systems and communicates with my "power distribution unit":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.
United States United States, Portland
17th–19th June 2009