Re: PHP Standards and Best Practices for PHP 5.3+ Frameworks and Libraries

From: Date: Tue, 02 Jun 2009 05:52:47 +0000
Subject: Re: PHP Standards and Best Practices for PHP 5.3+ Frameworks and Libraries
Groups: php.standards 
Request: Send a blank email to standards-+get-31@lists.php.net to get a copy of this message
On Mon, 01 Jun 2009 14:57:38 -0400, Eddie Drapkin wrote: >>First, we are not "an arbitrary group of people". We represent a large >>number of component libraries and frameworks, with many thousands, if >>not millions, of users. We are representing those users within this >>group. > > I understand that you guys represent a large constituency of developers > and that ought to lend some credibility to your position. I also know > that the heuristics of analysing exactly what percentage (or even > approximately) are impossible and I stand by my claim that even though > you're the maintainers of some of the more popular frameworks, I don't > think your decisions are representative of the PHP developer populace. > Furthermore, the last I checked, there weren't very many successful OSS > projects that were run like a republic and it seems that this sort of > thing is a step back into the cathedral, which makes no sense to me, as > the current model for PHP development hasn't exactly failed us. Of > course there are things that could be changed, or improved upon, and > that decisions do eventually need to be made, but limiting discussion to > the respective communities of the projects you represent is pretty > limited when the the decisions you are making are theoretically going to > be adopted by the general PHP population. > > If you want to have a set of coding standards, especially with > namespacing, then anyone who intends to adopt them ought to be able to > take part in that discussion and my impression is that you few fellows > sat down at php|tek and made some decisions that were based on internal > talks with your respective communities. I haven't been on the php > general mailing list long, but I haven't seen (with a quick google) any > attempt at the php-general list to open these talks to a broader > audience. IMO, if you want these standards to be more than just named > standards - which is the goal, no? - then you ought to fire up a > bulletin board or forum somewhere and allow an open exchange of ideals, > with coordinated times in IRC or some other transient medium, for people > to decide. Give every issue a few weeks to simmer and a deadline, upon > which anyone who's active enough to care can decide together in IRC. Do > it like a bicameral legislature - IRC needs to pass with 2/3 majority, > and the forum can veto it with a 2/3 majority. Or something else > altogether; the point is as far as I kow, no one asked. > >>Second, the standards we are ratifying *have* been up for debate. >>Everything we discussed in the meeting at php|tek has had community >>review already -- primarily within the PEAR2 community, but as many of >>our standards are based on PEAR, this is representative of those >>communitites as well (speaking for the ZF community, I know we've >>debated the naming issues quite a bit as well). Debate on these issues >>could go on for decades -- standards are like the old vi vs. emacs >>debates; they never end. At some point, decisions must be made, and in >>every case, these decisions will attempt to reflect the majority use >>cases. As such not everyone will be happy. That's the nature of >>standards. > > So, everyone who writes PHP and gets a say in these debates has to be > either a part of PEAR2 or ZF? What if I choose to use neither, my voice > no longer counts? I would bet my last penny that these two communities > together do not demonstrate near a representative majority of people > using them, let alone the PHP community itself. This is exclusivity > based on your projects and it's not acceptable. > >>Third, these standards are not compulsory. You can adopt them or not. > > This is the sort of attitude that is going to pretty much guarantee > !(widespread adoptance) of these standards. Why? Because you're very > condescending and haven't even considered the fact that I choose not to > use your products for reasons of my own, not because I'm incompetent. > Your posts reek of "holier than thou" and a mindset that "we're doing > what's best because we're doing it, and if you choose not to adopt it, > it's your fault." The problem with that is, a successful standard > compensates for both the people you work with and the people you don't > and if you're going to write a set of standards, exclusivity of > adoptance is the exact opposite of what you want. You don't want to > have to say "You can adopt them or not," you should be able to say "You > don't have to adopt them, but they're fairly painless to implement and > there's no reason not to, everyone else is!" To put yourself in that > position though, you're going to have to open the floor up completely > and wholely to free discussion and exchange of ideals. Just to make a > point, there's a few (minor) academic thigns wrong with your standards - > you pointed these out, I think - but practically, no one bothered to > consider the performance implications of having every exception be two > or three layers down the inheritence tree. I can't afford the resource > usage to have PHP re-calculate inheritence every time an error occurs, > so I can't adopt these standards and it looks like (judging from the > performance of ALL of the representative products) performance is never > even a factor in these decisions (which would also explain why the > adoptance in high traffic sites is so low). Perhaps it would be useful > to get some feedback from people that are used to writing slimmed down > and fast applications before you commit yourselves to a set of standards > that's going to destroy your site's performance? But I digress, I think > my point is made. > >>If anything, we're keeping a very close eye on the community, and >>involving them as much as possible -- via our individual projects. > > Why is the community "them" and not "us." Your verbage betrays your > arrogance, once again. A project leader is not above the community, but > part of it, and if you're going to refer to "us" as "them" then perhaps > you ought to re-evaluate the way you see your position within said > community. I'm not trying to be personally insulting, but I don't see > how a group of people that is seemingly so disconnected from the > community (Ivory Tower, once again) can possibly think that they aptly > speak for it. > > It really seems like we're beating a dead horse here, though, as this > seems to have died. I'd be more than interested in contributing in > whatever capacity if there's a legitimate community (that transcends > individual projects) effort made, but until then, I don't see this as > being productive at all. > > --Eddie Drapkin Hi Eddie, Let me start of with the fact that I am a anonymous developer as well, lurking in the shadows of major projects and even a few well known sites. I generally don't troll/scavenge or flame, but as I was reading your posts to the newsgroup here I can't help but to think that your view is rather closed minded and quite honestly not helpful. Yes, you have some correct views and no Cal and Matthew and the few others who really had a good strong hand in the creation of the standards group can say they are an accurate representation of the community but this is still a step in the correct direction. One of the problems that plagues PHP is that there are so many different ways that a problem can be solved, furthermore it allows for a near infinite variety in styles, as I have bounced between frameworks, libraries, and projects that has been a big hindrance and bother. While it may seem illogical to really have the discussion with fewer people than what you generally seem to feel comfortable with, it makes a lot of sense, that this sort of recommendation trickle down from some of the most well known projects and project leaders in the community. Whether you agree with it or not, they are recognized leaders with successful projects that have undergone these very challenges. By any means I do not mean to offend but I must say that I feel offended by standing up to people who are volunteering another significant slice of their time to trying to help the community at large rather than becoming involved yourself and helping. I will leave it at that and hope that perhaps you can understand my view point as I'm struggling to understand yours. -Shawn Stratton

« previous php.standards (#31) next »