Open Source10 Experimental PHP Projects Pushing the Envelope

10 Experimental PHP Projects Pushing the Envelope

Developer.com content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

As the saying goes, “Just because you can do something doesn’t mean you should.” But in the world of programming, stretching boundaries is just part of the fun. The PHP community has never been one to shy away from bending their favorite language more ways than a shopping mall pretzel, and as the ten wild projects introduced in this article indicate, the fervor for experimentation is as strong as ever!

1. LisPHP

The Teak Email Client

5. Quercus

A few years ago Neal Ford penned a blog post that to this day has had a major impact on the way I think about programming. The post, titled “Polyglot programming,” promoted the idea that using multiple languages to power a web application will actually decrease rather than increase its complexity because you’ll be able to selectively use each language to implement features that would be hard to implement in other languages.

Enter Quercus, a 100% Java implementation of the PHP 5 language. This implementation opens up a whole new world of possibilities for both PHP and Java developers, allowing PHP developers to take advantage of technologies such as Hibernate and Spring, while giving Java developers the opportunity to use PHP’s vast assortment of extensions such as SimpleXML and PDF.

6. Php.js

Ajax-enhanced websites have become the norm these days thanks to the popularity of libraries such as jQuery. These libraries greatly reduce the amount of time and frustration that would otherwise be required to create these powerful enhancements, because the libraries implement many features that native JavaScript alone does not support.

Php.js further enhances JavaScript’s capabilities by making many of PHP’s most popular functions accessible from within JavaScript, including date() and wordwrap(). Not intended to be a port of PHP to JavaScript, php.js instead seeks to enhance JavaScript where the language is weak and not interfere otherwise.

Check out the impressive number of functions php.js has already implemented to get a feel for just how much work has gone into this project.

7. Qwench

The 2008 release of Stack Overflow surprised developers around the world by reinventing the age-old discussion forum. The site and the many network websites that have launched via the StackExchange service have rapidly risen through the ranks to sit among the most highly trafficked in the world.

With success comes imitation, and we’ve seen a number of Stack Overflow clones implemented in a variety of languages during the past two years. One of the most interesting PHP-specific implementations is Anant Garg’s Qwench, a self-proclaimed “PHP StackOverflow Clone.”

Although apparently functional (see this demo), it doesn’t appear as if Anant has worked on Qwench in recent months. However, because it’s hosted on GitHub maybe another contributor will help kickstart the project anew!

8. Phergie

Whether you’re an open source user or contributor, chances are you’ve spent a fair amount of time chatting with others over IRC. Because of IRC’s popularity, developers have written a number of “bots” capable of programmatically responding to IRC-initiated events. For instance, bots have been created as AI experiments, gaming partners and chat room facilitators.

If you’re looking for a PHP-driven IRC bot, check out Phergie, a recently launched project that has been under rapid development for the past several months and has recently become part of Luke Fitzgerald’s Google Summer of Code project. Check out Phergie’s GitHub repository to download the code and monitor progress.

9. Vim-debug

As we all know, vi won the Editor Wars years ago. If you’re a member of this victorious party, check out vim-debug, an integrated debugging environment that integrates with xdebug to create an even more powerful PHP development environment than has already long been offered by vim (see Andrei Zmievski’s great presentation VIM for PHP Programmers if you’d like to learn more about what’s possible).

10. PHPInteractiveShell

I’ve long envied the Interactive Ruby Shell, which provides a great way to quickly experiment with Ruby code. It appears as if Geoffrey Bachelet has taken a giant step towards implementing a similar solution for PHP developers thanks to his release of PHPInteractiveShell. Although it appears as if development has slowed in recent months, hopefully other users will pick up the ball and run with what looks like a great start on a promising new project!

Conclusion

PHP users have historically been a rather independent bunch, and these ten wild projects indicate that over the years that mindset hasn’t disappeared. Are you working on a wild PHP project, or know of one not mentioned here? Tell us about it in the comments!

About the Author

Jason Gilmore is founder of WJGilmore.com. He also is the author of several popular books, including “Easy PHP Websites with the Zend Framework”, “Easy PayPal with PHP”, and “Beginning PHP and MySQL, Third Edition”.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories