Request For Comment
When a developer on an open source project wants to recommend that a particular feature be added, often times that developer will create and RFC. RFC stands for Request for Comment, by creating an RFC, the author creates a comprehensive proposal that other developers can then consider and critique. Although this process requires some level of bureaucracy, it's probably the most democratic approach that can be taken to getting a new feature added.
I don't often read RFCs, but for software projects that I really care about - software projects that I am directly affected by - I will try to stay abreast of the thinking amongst the core developers and try to see the direction that the language is moving in. One such project is the PHP language itself which is not only used to develop a tremendous amount of open source projects, but it itself is developed as an open source project.
To the outsider or developer just getting started with PHP, it may seem as if PHP "just is" the way it is, or that there is something that will forever be constant about it. This is not really true. Although there is a huge install base for PHP and changing the language can create backwards compatibility issues, in order for the language to evolve, it must change. I've blogged about changes is PHP that I thought were important, closures, traits, and namespaces are three such additions that I am a fan of.
I Wish I Could Hear the Debate!
A few years ago, Imam Siraj Wahaj gave a talk at the New York University to a group of college students. In that talk, he briefly contrasted Usury in Islam, Christianity and Judaism. Usury, or the practice of charging excessive interest rates on loans, is a practice that has always been strictly prohibited in Islam, and was once prohibited in Christianity. Over time, leaders got together, and gradually, the Christian perspective on usury came to diverge from the total Islamic prohibition to allowing for certain instances to allowing for almost all but the most criminal forms of usury to be permissible. His point was not to take a stance per se on Usury or to suggest that Christianity is necessarily better or worse for this reformation, but his point at the time was:
Wouldn't you have loved to be there and hear this great debate? To listen to the arguments for and against and see how these religious scholars viewed the world, religion and the almighty? How might have being present at the that time and witnessing the discourse sparked your own thinking and opinion formation?
Well, when it comes to PHP, you can see a fairly comprehensive list of RFCs on the RFC Wiki and also, follow the discussion of the core developers on the mailing list (both listed below). To me, I think this is an amazing opportunity to see how a language that many of us love (or hate) came to be the language that it is today. The developers on these mailing lists may be a higher caliber developers than those that we may typically come into contact with in our work, projects and classes. Seeing how they think an interact can be like an long-distance mentorship for a learner who's willing enough to follow these discussion and work to make sense of them all. Personally, I followed the PostgreSQL mailing list for years as a silent reader, and although many times I could not quite follow the discussions, I found that it was a rich source of ideas to look into a learn about.
Some RFCs I Am Currently Following…