The PHP.net Google Summer of Code
Original post provide by PHP: Hypertext PreprocessorThe PHP team is once again proud to participate in the Google Summer of Code. Seven students will “flip bits instead of burgers” this summer: Mentored by Michael Wallner, Hannes Magnusson will work on LiveDocs, which is a “tool to display DocBook XML files in a web browser on the fly, without the need of building all HTML target files first”. This project will be of great value to the PHP Documentation Team. The PHP Interpreter uses reference counting to keep track of which objects are no longer referenced and thus can be destroyed. A major weakness in the current implementation is that it cannot detect reference cycles, that is objects that reference each other in a circular graph structure which is not referenced itself from outside the circle. Mentored by Derick Rethans, David Wang will implement a new reference counting algorithm that will alleviate this problem. Xdebug provides a range of useful functionality for PHP developers, including detailed error information, code coverage and profiling support, and support for remote debugging using the GDB and DBGp protocols. Mentored by Xdebug’s creator, Derick Rethans, Adam Harvey will develop a cross-platform GUI application that implements the DBGp protocol and allows PHP applications to be debugged using Xdebug in a development environment agnostic fashion. Mentored by Lukas Smith, Konsta Vesterinen will work on the object-relational mapper Doctrine. Mutation Testing, or Automated Error Seeding, is an approach where the testing tool makes some change to the tested code, runs the tests, and if the tests pass displays a message saying what it changed. This approach is different than code coverage analysis, because it can find code that is executed by the running of tests but not actually tested. Mentored by Sebastian Bergmann, Mike Lewis will implement Mutation Testing for PHPUnit. Mentored by Helgi Þormar Þorbjörnsson, Igor Feghali will add support for foreign keys to MDB2_Schema, a package that “enables users to maintain RDBMS independant schema files in XML that can be used to create, alter and drop database entities and insert data into a database”. Mentored by David Coallier, Nicolas Bérard-Nault will refactor the internals of Jaws, a Framework and Content Management System for building dynamic web sites, for PHP 6.
Previous Articles:Using Oracle's Built-in Security Features With PHP
How to take advantage of Oracle's native security features to improve the security of your PHP Web applications
Steve Yegge On Strong And Weakly Typed Languages
I have similar reservations about all the other viable options (e.g. Python, Erlang, Scheme, Lua). The key is not to argue about abandoning one for the other, but use the strengths of both. For core code where speed and threading is critical, use strongly typed compiled code.
Paris Forum 2007 : Call For Papers
This email must contain the following information: namecompany if applicablea short (4-6 sentences) biography about your PHP experiencecomplete name and addressinclude photo for each speaker (JPEG format)Sessions will typically be 45 minutes long followed by a 10 minutes Q&A session.You are allowed to submit several proposals.
PHP Compilers
The PHP4Mono compiler for Mono (added 27 Feb 2006). I am excited about all these implementations. Most computationally intensive compiler benchmarks have shown a 5-10 times speedup over mod_php. Perhaps it is only a matter of time before we see a JIT compiler for PHP to Intel opcodes, built into mod_php...
Why I Like PHP Revisited
Speed: faster than ASP based on my benchmarks. Scalable: near linear scalability based on my apache-bench tests. Customizable: err, its open source... Platform agnostic, no anti-Microsoft idealogy: yes, support for Windows not an after-thought. Large PHP community and high potential for growth: yes and yes.
More Articles:
ROLL YOUR OWN SEARCH ENGINE WITH ZEND_SEARCH_LUCENE
Zend_Search_Lucene is a php port of the Apache Lucene project, a full-text search engine framework. Zend_Search_Lucene promises a simple way to add search functionality to an application without requiring additional php extensions or even a database. For more information visit: http://devzone.zend.com/node/view/id/91
ROLL YOUR OWN SEARCH ENGINE WITH ZEND_SEARCH_LUCENE
On top of that, the queries performed are too many or too slow.Until now, most developers have been forced to use relational databases to power search, install extra component packages, or seek out other non-php solutions. The problem with using a relational database, such as MySql's fulltext indexing, is that scalability problems crop up as your search criteria becomes more complicated.
ROLL YOUR OWN SEARCH ENGINE WITH ZEND_SEARCH_LUCENE
Zend_Search_Lucene is a php port of the Apache Lucene project, a full-text search engine framework. Zend_Search_Lucene promises a simple way to add search functionality to an application without requiring additional php extensions or even a database. For more information visit: http://devzone.zend.com/node/view/id/91
ROLL YOUR OWN SEARCH ENGINE WITH ZEND_SEARCH_LUCENE
php|architect writes: Zend has now published their own tutorial on the new Zend_Search_Lucene package.On several occasions developing database-driven web applications, I've been approached by clients who want Google-style search implemented at the last minute of the development cycle. Usually this leads to using some canned script that crawls the website, or a hacked up search function that uses the database but either returns too many results or none at all.
ROLL YOUR OWN SEARCH ENGINE WITH ZEND_SEARCH_LUCENE
php|architect writes: Zend has now published their own tutorial on the new Zend_Search_Lucene package.On several occasions developing database-driven web applications, I've been approached by clients who want Google-style search implemented at the last minute of the development cycle. Usually this leads to using some canned script that crawls the website, or a hacked up search function that uses the database but either returns too many results or none at all.