Skip to content

Pluggable architecture, not just for code

hands

One OSCON session that made me think was “Does Open Source need to be organic?” The panel contained Brian Aker (MySQL), Rob Lanphier (Linden Lab), Stephen O’Grady (Redmonk), Theodore Ts’o (Linux Foundation). The session was less about business vs. community, and more about how to increase community involvement in your projects.

Brian Aker mentioned Launchpad, and the way that it handles code forks. Forks are integrated into the system using a new revision control system - Bazaar. The forks are front and center - allowing all developers on the project to add forks and update them, incorporating them in with the primary code distribution point. This model reinforces the idea that forks are natural and can be positive evolutions in open source projects.

My big take-away: If you want to increase community contribution to open source projects, provide public and easy-to use interfaces. Publish your API early and create pluggable interfaces! Let developers add functionality and publish their add-ons easily, both in your project’s development space and on their own.

The same principal can be applied to the people side of open source projects. In your organization, make roles, tasks and responsibilities transparent. Let everyone - inside AND outside the project - know what they could be doing to get things done. The mistake that many projects make is assuming that people know what they could be doing.

Think of the people-side of projects the same way as you think about the code. Documented APIs are the same as public mailing lists, blog entries and wikis that reveal what your organization is actually doing, and how new people can get involved. Roles and titles that are meaningful let people know who they should bring their ideas to. And that lowers barriers to participation.

Leadership is not just telling people what to do - it’s inspiring, facilitating and then getting out of the way of people who are willing and capable of doing things on their own. Community grown from inspiration, and then fed by encouragement, fun and recognition of accomplishment, are the ones that last. And these communities are the ones that I want to be part of.

Running a Successful User Group

running a successful user group

After the People For Geeks talk, I presented “Running a Successful User Group” with Gabrielle Roth on Wednesday. You can find our slides and our presentation handout over on Bacon and Tech. The handout is pretty cool, take a minute and print it out!

OSCON 2008 - People for Geeks: Leading without being in charge

Here’s my slide deck from People for Geeks. Will be uploading to slideshare soon!

leading without being in charge

The talk is about leading user groups and steps for managing volunteers, and how to have fun!

FOSCON Live Coding competition

The Portland Ruby Brigade is cooking up a great FOSCON this year, hosted at Cubespace. It’s all happening on Wednesday, July 23, 2008 from 6pm-9pm.

I’m going to miss some of FOSCON this year, but I’m hoping to catch some of the Live Coding Competition. In Drupal’s corner, Jakob Perry (of Ubercart fame) is leading the charge with Joshua Brauer. Ruby on Rails will be represented, as will a couple other web frameworks or content management system.

Rumor has it, Jakob and Joshua are going to rock this competition. If you’re a Drupal enthusiast, see if you can make it over to Cubespace to cheer them on Wednesday.

PDXPUG Day on July 20 - Register now!

pgday 2007

photo courtesy of Dan Browning

Registration for PDXPUG Day on July 20, 2008 is open! Please sign up and let us know what size t-shirt you’d like. We’re requesting a $20 donation (by cash or check) at the door. All proceeds to to Software in the Public Interest, a 501(c)3 organization that is used to fund PostgreSQL advocacy.

Registration for OSCON is not required to attend.

Registering also gets you in the door at the Gotham Tavern, our after-party location close to the convention center!

Our line-up of talks includes:

PostgreSQL Unit Testing with pgTAP - David Wheeler
Inside the PostgreSQL Shared Buffer Cache - Greg Smith
Muldis D - Portable Databases At Full Power - Darren Duncan
A Streaming Database Talk - Rafael J. Fernández-Moctezuma
Using GLORP to connect Squeak Smalltalk to PostgreSQL - RandalSchwartz
Fighting Disease with PostgreSQL Full Text Search and JRuby on Rails - Mike Herrick
All Your GIS Are Belong to You - Abe Gillespie
What’s PgUS - Joshua Drake

Sign up today!

Drupal + PostgreSQL: review some patches, folks!

baseball bat
am i the girl, the bat or the heart? you decide!

I’ve been working on a site that uses Drupal for a few months now. And I’m living dangerously with CCK, Views and, as of last week, Organic Groups.

I found this sharp moderation module (Modr8) last week, and then quickly realized that I wanted to be able to provide this moderation tool any conferences that wanted it! Enter the Organic Groups.

I’m using PostgreSQL for the back-end database, and so I’m used to being a second-class database citizen in Druplandia. This means that I frequently have to patch modules so that they use SEQUENCE instead of AUTO_INCREMENT, or get rid of the (8) after an INT type. So, when Organic Groups and the og_modr8 modules caused this bug to rear up, and I suddenly had a full-scale “blogs running backwards” problem on my hands, I wasn’t surprised.

Thank goodness for Brenda Wallace’s patch, which fixed everything up a short while later. What got me, however, was that the problem has had a fix (although not Brenda’s ultimate patch) for over a year, but it hasn’t been added to core. Particularly when the problem causes nodes to be presented out of order, site-wide.

Apparently there’s a shortage of PostgreSQL reviewers in the Drupal community.

Fortunately, if you’d like to help get patches applied to core, there’s a page of Patches To Be Reviewed, and a few people are trying to add a postgresql tag to bugs. If you’re a Drupaler and use PostgreSQL, please take a few minutes to review a patch.

How to Plurk

I’ll keep updating this as I find new things!

All that's fit to plurk! - Plurk.com
Uploaded with plasq’s Skitch!

Peat has already mentioned his newfound love of Plurk, a quirky new social networking site that I’ve been playing with. Now that Leo Laporte has endorsed it, they’ve experienced their first Twitter-style growth!

What I like most about Plurk is that it takes the great feeling of chatter you get in a lively IRC channel, and combines it with awesome threading - something that Twitter users have complained about for a long time. Hash-tagging has solved some of the problem, but I have to say that I enjoy a return to real threading.

So far, using plurk is immersive, silly and very fun. The service is still young (periodic 500 errors!), and there are a couple UI issues (too much clicking!). But, using it last night was fast and easy. There’s a definite difference between Plurk and Twitter in terms of attention-demand. I liked @brampitoyo’s plurk about it being “high-maintenance.” I totally agree, but it encourages for short bursts of creative conversation. There’s an intense, good intimacy created with the threads that I don’t see as often with Twitter.

In the first 24-hours, here are a few tips I’ve gleaned for getting the most out of plurk:

  • Check out the Mobile edition: http://www.plurk.com/m
  • Use Plurk with IM: Go to My Account, and then Instant Messaging to set up Plurk with your favorite IM client
  • Follow ‘amix‘ for updates on changes to Plurk’s interface
  • Create ‘cliques’ to only share your plurks with certain people. Then choose that clique when posting your plurk. Create a clique by going to ‘My Friends’, and then the Cliques tab. If you want me to add you to my #postgresql clique, let me know!
  • Find people by their Twitter handle, by just typing it in at http://www.plurk.com/users/[handle]
  • Respond to other’s plurks in the thread! You can do this on your main timeline page by clicking on the plurk, or you can go to the webpage for each plurk and submit a comment there — example: http://www.plurk.com/p/3bu0
  • Check out the Plurk karma trends: plurk.ryanlim.com
  • Read the Plurk FAQ: http://www.plurk.com/faq
  • Check out ryanlim’s FAQ: http://plurk.ryanlim.com/help/index.php (includes a comprehensive emoticon dictionary :D)
  • Got a suggestion for Plurk? Contact them!
  • Of course, there’s already a Plurktionary!
  • A Share On Plurk bookmarklet

A few features I wish Plurk had:

  • A way to ‘favorite’ plurks I enjoy
  • A way to ‘pin’ plurks on higher my timeline to give them more visual priority when they are updated
  • A way to give feedback directly to Plurk.com through the plurk interface — why can’t I just plurk @plurk or @feedback to let them know what I think?
  • More ways to post between services - although @shiny already has a drupal-powered twitter/plurk gateway!

Have fun, and feel free to Plurk me!

Call for proposals for PDXPUG PgDay, due June 20, 2008

pgday 2007
(Photo from PgDay 2007)

Please submit a talk! The call will be open for 2 weeks and proposals are due June 20th. Follow the link for details on submitting.

http://pugs.postgresql.org/node/400

PDXPUG PgDay will be on July 20, 2008. This is a one-day conference happening the day before OSCON at the Oregon Convention Center.

We are inviting anyone who has something interesting to share about PostgreSQL to send us a proposal!

We’d like to have at least one 1.5 hour tutorial and up to five 45-minute talks.

We welcome talks in any of the following areas:

* Case studies involving interesting and innovative uses of PostgreSQL from an application developer, PostgreSQL developer or administrative user perspective
* Converting from other databases to PostgreSQL
* Howtos for database administration tasks (partitioning, backups, replication, writing stored procedures)
* Practical advice on configuration, monitoring and database management

PgCon 2008 - big announcements, community conversations

PgCon was a very exciting conference, with a lot of people from Europe, Asia, Australia and South America traveling to be part of it. I read that 175 people attended, and based on how crowded both parties were, it’s not hard to believe!

The biggest announcement for me was that the PostgreSQL Europe is finally a non-profit organization! I made a slide for my lightning talk with Magnus, Gabriele, Jean-Paul and Andreas on it:

PgEU announced

I got a ton of great feedback about the User Groupalooza slides. I also enjoyed meeting Jean-Paul Argudo, a fellow Drupaler.

There were a bunch of community-focused conversations, some focused inward on developers, some looking out to the rest of the world from inside Pg, and others from the outside looking in:

All the talks were recorded, so I look forward to listening to them again - without the distraction of Twitter! :)

A couple talks I thought were really great for web developers were:

  • Magnus Hagander’s search.postgresql.org talk gave some great examples and code showing how to use PostgreSQL’s tsearch capabilities with a PHP-based website.
  • Clark Evan’s talk on HTSQL, a REST-ful web inteface application. It looks pretty cool and I’m interested in trying it out. They are using it for medical records report generation and have even given the ability to generate queries to the end users.

Thanks so much to Dan who got me to the conference this year! I learned a lot, and really enjoyed meeting so many people that I’ve only communicated with over email for the past three years.

PgCon Lightning talk: User Groupalooza

I gave a Lightning talk today about PostgreSQL User Groups. I wasn’t able to get through ALL my slides - but I only had to rush through the last three. (click on the cat below to download - 5MB)

splash for user group talk

Lightning talks are some of my favorite sessions. I got to announce the incorporation of PostgreSQL-EU! We had a talk about DBIx::Cache (which you should all check out!), a cool open source lab in Japan that Hiroshi Saito works for (only for Japanese, but very cool), Gavin Roy talked about Staplr and a new benchmarking tool called Playr that was just released on Thursday, and six more talks! We hope to publish the rest of the slides shortly.