Here are some interesting stuffs lately:

Facebook again pushes the boundaries of PHP by introducing yet another tool, just one week after announcing HipHop. This time, they introduce a new way of writing php code- XHP, the one they used on the Facebook Lite front-end.
XHP does this by making PHP understand XML document fragments, similar to what E4X does for ECMAScript (JavaScript). While PHP is typically used to write front-end code, by itself it isn’t a very good language for generating HTML (as evidenced by the popularity of templating engines like Smarty). XHP is something between a programmatic UI library and a full templating system…
…One last feature of XHP, which has been invaluable to us at Facebook, is that you can define your own elements which can condense a complex component into a simple XHP tag. XHP has a rich collection of declarations which let you define new elements, configure their expected attributes, as well as describe their content model. These features turn XHP into a powerful templating engine which is capable of simplifying complicated pages into easy to read high-level markup, but it’s up to you to create your own elements from the primitives that XHP defines…
A thumbs up for Facebook, constraint really drives innovation.
You can read more about the official announcement here, the documentation. Also, here’s a quick link to their open source repos on GitHub
Update: Rasmus Lerdurf, the creator of PHP posted a quick note on using XHP.
I always believe customers/users are always right, but what if the truth is they’re most of the time wrong? What if we all failed to innovate all because we are haunted with the vague functional spec and their vision of a far flung unknown universe? Does it make sense to perfect a product that no one uses? Or should we justify creating something ‘magical’ and redefine their experience by using our pragmatic thoughts as curators?
Let’s see.
Chance is if you’re working on a source controlled project, you’ll have this annoying garbage files somewhere. Its no big deal at first but over time, it can kill your productivity, especially when you’re isolating some changes whenever you commit. In my case since I’m working on a CakePHP application, that would be the tmp folder.
So here’s what I did:
- Set VIM as editor for svn property files by running export SVN_EDITOR=vim on the terminal
- then run svn propedit svn:ignore ./tmp
- Insert * (asterisk) in the VIM editor, to “Ignore everything insider the tmp folder”
- Save it, Commit and that’s it!
I think VIM is really a handy editor for cases like this, I actually failed to set Coda, TextEdit, and TextMate as my SVN editor. So it really saved me a lot of time.
Update: It seems I still have to manually ignore each directory inside tmp for it to work.

Now calling all PHP fanboys to rejoice finally.
Facebook’s new toy is not a new compiler nor an engine, according to its creator it is a “source code transformer“, really funky right? After all its a crank from their previous hackaton around 2 years ago.
So how does it work?
The main challenge of the project was bridging the gap between PHP and C++. PHP is a scripting language with dynamic, weak typing. C++ is a compiled language with static typing. While PHP allows you to write magical dynamic features, most PHP is relatively straightforward. It’s more likely that you see if (...) {...} else {..} than it is to see function foo($x) { include $x; }. This is where we gain in performance. Whenever possible our generated code uses static binding for functions and variables. We also use type inference to pick the most specific type possible for our variables and thus save memory…
And what does it mean to web developers?
I think it’s pretty exciting! 50% performance increase is too good to be true! (90% of Facebook is running on Hiphop now) and for such a large scale deployment in just 6 months its really amazing. Now you can forget purchasing that Zend Server and instead create a github account and consider following Facebook’s Official GitHub Account where they commit their open source projects.
You can read more about the Official Announcement from the geek who made it.
Update: While it is indeed exciting, there are a few caveats that every web developer should know before diving into HipHop. Here’s an in depth explanation by Terry Chay, He was invited by Facebook along with the biggest names on the PHP world to attend a super-secret conference a week before HPHP was announced.
If you’re interested, you might want to check the official developer mailing list of the project on Google Groups.