The Framework Interoperability Group (FIG): Openness, Accountability and Community Involvement in PHP Standards
A fig tree (Photo credit: Giorgos~ (moving to Google+))
Recently, Anthony Ferrara posted a€oOpen Standards - The Better Waya€o, a blog post questioning the operation of the PHP Framework Interoperability Group (FIG). The FIG is a body representative of PHP a€oframeworksa€¯ (with a broad definition since it includes phpBB, Drupal and even more divergent members) which issues PSR standards such as the PSR-0 standard which governs requirements for autoloader interoperability and the upcoming PSR-1 and PSR-2 standards which, together, form a coding standard for PHP.
Anthony, whose views always make good reading, raises concerns about the way in which this group generates standards. He contrasts the current approach to RFC 2026 which defines the IETF's Internet Standards Process. That approach evolved to balance conflicting requirements. On one hand the rapid evolving nature of the internet demands the timely production of standards while, on the other hand, the standards must be subject to an open and fair process, proper testing and technical development. Surrendering to either side of this conflict tends to give rise to poor standards.
Where Anthony's arguments seemingly fall flat is that the FIG is not the IETF. The Framework Interoperability Group was founded to allow cooperating members to develop shared standards. It does not claim to be PHP's standards body and so there is no obligation for any PHP programmer to adopt their standards (unless they work on a member project obviously!). On this simplified basis, the FIG doesn't need to balance the conflicts described by the IETF. It serves its own interests, i.e. those of its members who may voluntarily adopt accepted standards at their convenience to boost interoperability between their software. If they be happy, they be happy.
However, the FIG is not a closed standards body. Anthony's article simply targeted the FIG's processes which have been slowly evolving from a semi-closed process (there was a time when the mailing list was not open) towards a more open process. By inches, the FIG is becoming a defacto PHP Standards Working Group and I'm skeptical of anyone who doesn't see that. The only technical reason they can't really use their original title as-is is probably because of licensing concerns in using the a€oPHPa€¯ moniker. The phrase a€oFramework Interoperability Groupa€¯ is mucha€¦era€¦ better. It's catchy even if nobody will have a slightest clue what the heck it means.
It gets even more interesting though. While it's easy to assume that the FIG is operated by some undetermined number of individuals one can ignore as a bunch of power hungry people, the truth is that the voting members are not people at all - they are nearly all open source projects. FIG is operated by individuals on the basis that they represent the interests of the FIG's real members, i.e. projects which include Zend Framework, Symfony 2, Lithium, Aura, phpBB, Joomla, Drupal and even an individual who, as an honorific, represents a€othe community at largea€¯.
This is why PHP programmers need to pay attention to what the FIG is doing. The Group is, by definition, an open stan
Truncated by Planet PHP, read more at the original (another 5282 bytes)