How to make PHP better

Many people seem overwhelmed over the recent exposure of some problems in the PHP internals. I will answer a few questions here for those who are worried about the state of PHP and provide a few ideas for improving things.

Is PHP going to die?

No, the PHP project will not die anytime soon. The problems raised are not new. Those who have been following the project’s development a little closer have known this for many, many years. But since the common users only just became aware of that, there are a few blog posts about impending doom. Pay them no attention.

Why are there so few new features compared to other languages?

PHP has a very large user base. Some other languages evolve at the speed of light but break backwards compatibility with every minor release. It’s a trade-off, and PHP took the direction of reliability over fast feature development. This is one reason that allowed it to make its way into enterprises and governments. Still, there are many new features and improvements that bloggers overlook for the sake of creating drama. Drama is a good marketing tool.

What are the original authors doing?

They are busy doing whatever makes them happy and feeds their families. They don’t have a lifetime obligation towards the project. They sacrificed much to build something amazing and then just gave it away for free. Don’t forget to thank them. Now they have every right to make money, because those bills can’t be paid with community love. These people haven’t disappeared either. They are watching this unfold and hope that the community could find solutions to their own problems. They’ll comment on the topic once people finish letting out their steam.

What does it take to make the project better?

There are many avenues to explore. I’ll throw a few ideas for consideration.

1. Organize conversations. The forum idea is really great. It provides benefits such as creating separate threads when a conversation goes off-topic, hiding poisonous messages once enough community members flagged them or occasionally tune-out from the chatter.

2. Create a general roadmap. Finding consensus is not impossible with a good moderator. the moderator does not even have to be a member of the PHP community. The initial roadmap could be done in person by top contributors, for example. Each can raise money to cover their own travel expenses.

3. Start a foundation. There are many people out there with a great potential for contributing, be they individuals or companies. Although they can spare a little time for free, having funds will certainly allow them to dedicate more time to the task without risking their livelihood or burning out. The foundation will also allow hiring of non-developers, such as people to handle user questions, manage the website’s content, etc. These people would otherwise have no interest in participating in the project.

Add more ideas in the comments below. Please be constructive 🙂

7 thoughts on “How to make PHP better

  1. Oh and if you participate in the discussion, try to be the bigger person even when faced with madding insanity. If one day internals has more people discussing with respect, humility and self throttling than we have people that allowing themselves to turn into raving lunatics then the later group will notice how out of place their behavior is and correct themselves. Right now too many discussions just go south because a few people go into insanity mode and everybody following them rather than pulling them back.

  2. Lukas, right. Hoping the new comers don’t get too much influenced by the sound on the list to join in. Happens easily. I try to empower people and warn them to have a thick skin when going in, so they stay constructive, but I can’t even hold back myself all the time. 🙂

  3. @Lukas That will definitely help. However, we still need to find a way to make this happen. How can we find more people with a positive attitude? How can we turn people from negative to positive contributors to discussions?

  4. Boabramah

    “Why are there so few new features compared to other languages?”

    I do not think that most of the features rejected breaks backwards compatibility. Some oldtime core contributors have just made up
    their mind not to support such feature with apparently no convincing reason. If a feature can be implemented without breaking
    backwards compatibility why is it not there.

    “How can we find more people with a positive attitude? How can we turn people from negative to positive contributors to discussions?”

    It’s not about finding people with positive attitude, it’s about setting rules and frameworks that regulate members. It’s making it looks like new contributors are the cause of all this. Old time contributors should also be advice to refrain from recklessly discarding a feature just because they don’t like it.

    If a new feature has merit let see how best to implements it. If it has to be next year fine. But don’t just throw it away.

  5. @Boabramah I did not mean that there is anything wrong with new contributors specifically.

    I managed many communities and people. Rules and frameworks do not make bullies act civilized, just like laws don’t prevent crime. Bullies and other poisonous people need to be removed from the group in order for the group to resume normal function. The rules allow to draw the line and justify the removal.

    I tried this approach in the past and was amazed at the increase in overall productivity as well as the improvement of the atmosphere. This also demonstrated how little impact these bullies had on the project, even if they used to be very productive some time in the past.

    Of course, it’s never easy to find consensus when it comes to features, and there are many reasons that may not be apparent unless players can have a polite and honest discussion.

  6. Victor P.

    A foundation would probably be the best way to go. Just like Anthony said, we need leadership in the PHP community.

  7. @Victor P. I agree, but finding leadership is much harder than most people think. I myself have been seeking a replacement for one of my projects for about 5 years. In the case of the PHP project, the atmosphere certainly doesn’t help anyone raise their hand.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">