The result was Pearfarm, which has 2 major features:
- Make it really easy to create PEAR packages
- Make it really easy to share php packages
That's it. Amazingly, this is not easy to do in the PHP community, even today, almost 2 years after we built Pearfarm. Yes, pyrus makes it easier, but there are caveats, like having to arrange your code in a certain directory structure. And even though they've made a PEAR channel server that's easy to run, well you still have to learn about PEAR channels and find a place to host a server with your PEAR channel. Seems like a lot of work to share a small package.
Pearfarm has been out for 18 months now, and while it is awesome at what it does and some people have started using it, it hasn't taken off. Mostly, I think, because we haven't pushed it very hard. But I think that we (the PHP community) should be pushing it harder. After all, it's for our own good.
One thing I learned from talking about pearfarm over the last couple of years that really shocked me is is how few people are using PEAR at all. If you ask php devs how they find packages the answer is google. It's not even the PEAR repository! To the average php developer on the street, PEAR is a dead project. I think largely this is due to the perception that the PEAR repository is so devoid of activity.
Many people have argued to me that having the PEAR repo is a good thing for the community since it provides packages that have been vetted at some level. I can accept that there is value in having that trust, but it comes at the expense of a rich, active developer ecosystem. It's too hard to participate in PEAR as a developer. I know the PEAR people will argue with me that I'm wrong and it's so easy, but I don't agree. It's hard to participate in PEAR as a contributor.
However, PEAR (the installer) is actually great! It makes it really easy to create local sandboxes of code libraries for each application. It handles dependencies. It has the tools built-in to create PEAR packages (though it's not trivial unless you use pearfarm or pyrus).
So I think we all owe it to the community to start using other people's code, and start sharing code. Pearfarm makes it seriously easy to share php packages. In no time at all we could completely re-invigorate the PHP community. Some of the bigger PHP projects are already starting to spin off a lot of quality php code. This is good, this is very good. EVERYONE INTO THE POOL!