On The Margins

(Masood Mortazavi)


(Books)(Blogger)(java.net)
Check Google Page Rank

20090624 Wednesday June 24, 2009

[ Code ] Contributing to MySQL

If interested in contributing code to MySQL, you should attend the MySQL University session on contributing code to MySQL.

(Live broadcast with Q&A will be held on Thursday, June 25, 2009. You can still have access to rebroadcasts afterwards.)

2009-06-24 01:57:05.0 -- ; Permalink ; Trackback.

20090422 Wednesday April 22, 2009

[ Technology ] Another Pluggable Storage Engine for MySQL

Kazuho Oku of Cybozu Labs, Inc., a community contributor to MySQL and SCA signatory, gives a talk on Q4M, a message queue stroage engine for MySQL.

2009-04-22 12:17:45.0 -- ; Permalink ; Trackback.

20090331 Tuesday March 31, 2009

[ Code ] MySQL Community Contribution: One bug fix at a time ...

It is all about one bug fix, one little feature, one step at a time.

Armin Schöffmann fixed a bug (Deadlock in mysql_real_query with shared memory connections, is what Armin calls it), Armin signed the Sun Contributor Agreement (24 March 2009), Vladislav Vaintroub and Davi Arnaut reviewed, committed and queued the patch to MySQL 5.0 bug team (26 and 27th of March, 2009).

That's a great example of open, contribution-based MySQL development with real results.

Thank you Armin!

Thank you Vlad!

Thank you Chad!

Thank you Davi!

Thank you ... the one whose name I've left out! (Feel free to leave a comment below.)

2009-03-31 23:41:55.0 -- ; Permalink ; Trackback.

20090317 Tuesday March 17, 2009

[ Code ] New Sun Contributor Signatories for MySQL

I just checked the "Sun Contributor Agreement" (SCA) signatories list, and there are already 11 people who have signed the contributor agreement with an intent to contribute to MySQL.

Among the signatories, you will also notice Paul McCullagh of PrimeBase/PBXT fame. (To learn about how to submit your SCA paperwork, see here.)

Signing the SCA with an intent to contribute to any given Sun-sponsored open-source project would also suffice when it comes to contributing to any other Sun-sponsored open-source project.

So, as an example, Nils Goroll is both an OpenSolaris and MySQL contributor. (See Nils' OpenSolaris profile and see MySQL bug id 7417.)

Of course, it goes without saying that you do not need to be an OpenSolaris contributor to be a MySQL contributor. My intent here was simply to show how signing the SCA helps the contributor to reach out, interact and contribute w.r.t. any Sun-sponsored projects. The SCA signatories list, of course, makes all of this much more plain.


2009-03-17 23:01:36.0 -- ; Permalink ; Trackback.

20090205 Thursday February 05, 2009

[ Papers ] Golden Rules for Contribution-based Communities

There are some basic, golden rules when it comes to having a vibrant community of contributors.

The following are rules I have extracted and learned based on my experience managing and working with engineers actively involved and participating in the Apache/Derby, PostgreSQL and MySQL open-source communities. These rules are also based on extensive discussions with many folks involved with the MySQL community, with the PostgreSQL community and with the Apache/Derby (Java DB) community, over many years.

Before I go through these rules, I would like to thank Marten Mickos for having suggested some of the headings for these rules. (I originally had much longer headings for all of them.) I would also like to thank many of MySQL, PostgreSQL and Java DB colleagues, as well as to many other colleagues involved in open-source development, for having contributed to the ideas and practices behind these rules.

A) Transparency.
1.Often, this openness can span all the way from development (architectural specification, implementation design and planning, implementation, code review and walk-through) to testing, qualification and release.
2.It may be possible to move towards greater transparency over time but openness in development is often the minimum starting point. 

B) Dialog.
1.It should be possible to conduct open dialog and conversation regarding any aspect of the development (and other aspects of) work.
2.When mailing lists and other archive-able communication channels (such as wikis) focused on development work are opened up, it becomes easier to conduct open dialog and conversation regarding the development work. 
3.Of course, when a corporation or business concern contributes (either as a major contributor or a minor contributor) to the development of an open-source product, it is to be expected that some aspects of the development work (e.g. those related to specific customer needs) may remain obscure through mechanisms such as withholding of a customer's name. 

C) Pace.
1.It should be possible to track the fate of any contribution and have a public archive of the conversation conducted regarding that contribution—recording decisions made and various feedback loops in time for the purposes of learning and further work.
2.For this purpose, it is often sufficient to have a time record of the conversation conducted with respect to the given contribution.
3.These records can be searched to determine the fate of the contribution.
4.These records help provide a learning platform for the future contributors.

D) Setting Expectations.
1.Using available and open information, the contributor community should be able to form and entertain valid expectations regarding milestones, releases, timelines, etc.
2.Anticipating the future and related risk management helps all market participants to reduce transaction costs.

E) Small is Beautiful.
1.While it should be possible to absorb contribution of any size, emphasis should be put on  absorbing smaller and incremental contributions.
2.To create mass and momentum and community and quality, it helps to encourage smaller contributions.

F) Differences.
1.Not all contributions are equal.
Contributions are judged by whether they are well designed, fit into business roadmaps, are well documented, comply with standards, do not produce regressions in the code and improve performance.
2.Not all contributors are equal.
Contributors vary in expertise, skill and experience.
These variations give meaning to the practices and procedures of the contributor community.

G) Places.
1.It is clear where one needs to work.
There are enough branches or trees to serve distinctly different target groups.
2.Trees and branches are well-groomed.
Active code branches or trees are kept at a minimum set in order to keep the product roadmap and expectations coherent.

H) Parallelism.
1.Contributions are added in parallel with frequent synchronization so that community participants can respond to each others' work.Parallel work leads—naturally and out of brute necessity—to modularization, better and faster integration.

I) Incrementalism.
1.Work is conducted in increments.
2.Each contribution does one thing.
3.Each contribution has a test case that exercises it.

J) Learning.
1.Contributor community assets (channels of communications, forums, bug databases, etc.) are developed to improve learning by all participants and contributors.


Acknowledgment

I'd like to thank Brian Aker, Knut Anders Hatlen, Davi Arnaut, Kaj Arnö, Jorgen Austvik, Igor Babaev, Mark Callaghan, Peter Eisentraut, Sergei Golubchik, Shawn Green, Lenz Grimmer, Rick Hillegas, Stefan Hinz, Geir Hoydalsvik, Henrik Ingo, Alexey Kopytov, Mark Leith, Dmitry Lenev, Manyi Lu, Giuseppe Maxia, Paul McCullagh, Mårten Mickos, Chad Miller, Francois Orsini, Konstantin Osipov, Trudy Pelzer, Sergey Petrunia, Jay Pipes, Jeffrey Pugh, Ole Solberg, Georg Richter, Mikael Ronström, Kristian Waagan, Dag Wanvik, Monty Widenius, Jeff Wiss, and more.

2009-02-05 11:25:43.0 -- Comments [4] ; Permalink ; Trackback.

On the Margins Tag Cloud

america apache art berkeley blogs books business canada capital code communications community computing conference connectors content contribution corporate costs culture databases derby design desktop developers development economics education energy engineering film finance history information innovation international internet iran isfahan java java-db javaone law linux logic management markets mathematics media mobile music mysql netbeans networks news open open-solaris open-source opensolaris opensource os persian philosophy phones photography photos politics postgresql practice privacy products programming ruby science server services social society software solaris sports strategy sun sun-microsystems systems technology tehran telecommunications tools transactions transportation travel tv us video war web windows work writing

Del.icio.us

RSS Feeds

XML

All
/ Persian (فارسی)
/Announcements
/Art (هنر)
/Business
/Code
/Culture
/Design
/Economics
/Here
/History
/Java
/Mathematics
/Media
/Networks
/Papers
/Personal
/Philosophy
/Science
/Society
/Sports
/Sun Microsystems Inc.
/Technology
/Telecommunications
/This
/Web
/Work

Disclaimer

I work at Sun Microsystems. The opinions expressed here are purely my own, and neither Sun nor any other party necessarily agrees with them.

Coordinates

Locations of visitors to this page

« November 2009
SunMonTueWedThuFriSat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
     
       
Today

www.flickr.com
This is a Flickr badge showing public photos from M.Mortazavi. Make your own badge here.

Entry Statistics

Entries: 1246
Comments: 919

Recent Entries

StatCounter

Statistics from StatCounter

Page Rank

Check Google Page Rank

On the Margins Tag Cloud

america apache art berkeley blogs books business canada capital code communications community computing conference connectors content contribution corporate costs culture databases derby design desktop developers development economics education energy engineering film finance history information innovation international internet iran isfahan java java-db javaone law linux logic management markets mathematics media mobile music mysql netbeans networks news open open-solaris open-source opensolaris opensource os persian philosophy phones photography photos politics postgresql practice privacy products programming ruby science server services social society software solaris sports strategy sun sun-microsystems systems technology tehran telecommunications tools transactions transportation travel tv us video war web windows work writing

RSS Feeds

XML

All
/ Persian (فارسی)
/Announcements
/Art (هنر)
/Business
/Code
/Culture
/Design
/Economics
/Here
/History
/Java
/Mathematics
/Media
/Networks
/Papers
/Personal
/Philosophy
/Science
/Society
/Sports
/Sun Microsystems Inc.
/Technology
/Telecommunications
/This
/Web
/Work

Other Places




Landmine Casulties
free counters'

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.
© Masood Mortazavi
This is a personal weblog, I do not speak for my employer.