Get Lanyrd on your mobile (iPhone, Android and more) - check it out here

Sessions at Open Source Bridge 2009 about Web

Your current filters are…

Wednesday 17th June 2009

  • Open Source Microblogging with Laconica

    by Evan Prodromou

    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.

    At 10:00am to 10:45am, Wednesday 17th June

    Coverage note

  • Agile JavaScript Testing

    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

    At 11:20am to 12:05pm, Wednesday 17th June

    Coverage note

  • Django: Thinking Outside The Blog

    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:

    • Working with the security model
    • Enhancing the built-in admin interface
    • Adding "just enough" 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 "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.

    At 1:45pm to 3:30pm, Wednesday 17th June

    Coverage note

  • Web Server Shootout

    by Michael Schurter

    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 & 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 "leave suggestions for other applications, frameworks, and environments that I should make sure to include!":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 "osbridge tag on my blog.":http://michael.susens-schurter.com/blog/tag/osbridge/

    At 5:00pm to 5:45pm, Wednesday 17th June

    Coverage note

Thursday 18th June 2009

  • Web Testing with Windmill

    by Mikeal

    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)

    At 5:00pm to 5:45pm, Thursday 18th June

    Coverage note