PHP PHP.net news server web interface
From: Date: Thu May 28 01:03:32 2009
Subject: The How and the Why of this group as I remember it.
Groups: php.standards 
First let me say that nothing in this message is meant as speaking for the
group. I am posting my recollections from the meeting as well as my
impressions and opinions.  I was not elected to speak for the group and I am
not pretending to.

Here's the story as I remember it.

Why a standards group?
==================
This group was not my idea and it's only by a quirk of fate that I was even
at the meeting. As far as I can tell, the group was formed when
representatives of several of the major PHP projects got together and
decided that if they can find areas of cooperation within their own spheres
of influence, it would be a win for all of them, and the PHP community at
large.

To paraphrase the goal of this group, we are saying "Hey, we are all
agreeing that we are going to code this way and we'd like you to do it to."


Who was there
============
Agavi - David Zülke
Cake - Nate Abele
PEAR - Brett Bieber, David Coallier, Helgi Þormar Þorbjörnsson, Travis
Swicegood,
Phing - Travis Swicegood
Solar - Paul Jones
Symfony - Stefan Koopmanschap
Zend Framework - Matthew Weier O'Phinney
At-large community member - Cal Evans.

For the most part, Travis drove the meeting and did an excellent job but
each person at the meeting contributed in a meaningful way.


How is this group structured
=====================
As far as I can recall, there were only 3 rules set in place governing the
group.
1) It was a closed group
2) New members had to be approved by the group
3) Each represented project is allowed one and only one vote.
Regardless of how many members of the group represent a specific project,
the project only gets one vote.

For the record, during the first meeting I did not have a vote but simply
participated in the discussions. I was officially voted in at the end of the
meeting making me the first non-founder of the group to be voted into the
group and the (so far) only at-large community member.

That's it. You have to love the simplicity We don't have a hierarchy, we
don't have an elected board, or even regularly scheduled meetings. We have
an agenda and that's it.Everything this group discusses or does should be
measured against that single agenda of "common coding standards".

If you want to get involved, petition for membership. I'll have to warn you
though that I think all of us are in agreement that too many cooks spoil the
broth. I hope that the wisdom of the first meeting prevails and the bar for
membership is set high. Just disagreeing with the standards we set isn't
enough to warrant membership. (again, IMO)


This Mailing List
============
At some point near the end of the meeting, after we agreed on 3 standards in
2 hours, we thought that maybe it would be a good idea to continue talking.
We decided to setup a mailing list. In the interest of transparency, we
decided to allow others to view the list so that no one could say they
didn't understand why a decision was made. It's only through a technical
quirk that this mailing list was open for comment by non-voting members. We
want people to understand what we are doing and why but we didn't want to
create another internals where any small detail is discussed for years
before someone commits a patch. This is not an ivory tower but if the list
is open for public comment then it's not a working group, it's a mailing
list reading group.

At some point soon, I hope the mailing list will be put in moderated mode
and that everyone will be free to watch and openly use their blogs and
mailing lists to discuss what is going on.


My Conclusion
===========
I will say that I am proud to be a mamber of this group. Every person at the
meeting pulled together to help make the 3 standards possible. Each standard
voted on had at least one project that is going to have to change they way
they do things to implement it. I think it shows that the PHP community as a
whole is maturing that these projects can recognizes the benefit of common
standards over their own personal style preferences.

This group is not setting itself above all others saying we know best. We
are trying to find common ground between a lot of projects so that PHP
developers world-wide can move between the code in those projects and not
have to re-learn standards each time.

I for one would love to see what comes out of this group be adopted by the
PHP community as "best practices" in coding and will do every thing I can to
promote the standards this group agrees upon. There will be people who
disagree and wants to do it another way. I'm ok with that and I hope the
members of this group are too. (The great thing about standards is there are
so many from which to choose.) At the end of the day, it's up to the leaders
of the project or the manager of the corporate team to select the coding
standards that work best for their team.

Thanks for taking the time to read this and to the members of the group, in
case I didn't say it at the meeting, thanks for taking your personal time to
help make PHP a better place to code.

Sincerely,
=C=

   
php.standards (#19)

Written by Jim Winstead. no rights reserved. (source code)