Category > PHP

First Post, 2007

03 January 2007 » In Books, PHP, Travel » 4 Comments

Mental DNA

Hello and Happy New 2007 to everyone! I have just returned from a trip to Portland, Oregon, where I visited some friends and spent New Year’s Eve skiing at Mt. Hood’s Skibowl (it’s been a year since I first gave skiing a try). Some other highlights of the trip included good food and drinks at such places as Pix Patisserie, Brazil Grill, and Andina, a couple of loooong visits to Powell’s City of Books, and ringing in the new year at a huge house party that must have had around a hundred people.
Tomorrow, the work resumes. I feel bad about not getting the Unicode preview release of PHP 6 out before the end of the year, but there was one crucial piece still missing and having a release without it did not make sense. But rest assured, we are very, very close and I anticipate making the release in the next week or two once we have this piece integrated and all the details ironed out.
I must again confess how much I love Powell’s: it is truly a bibliophile’s dream. Its 1+ million new and used books are organized by the staff with care and evident love and one could get lost amidst its twelve foot high shelves for a whole day. I also had a chance to visit the Rare Books room and flip through the first edition of The Fellowship of the Rings ($1000) and an 1805 printing of a large format Latin dictionary ($1200 for 4 volume set). Too bad they didn’t have Newton’s Principia at the time.
I decided that I would buy only used books on this trip, to avoid carrying back something I can purchase new anywhere. What did I come away with after hours of browsing and a few cups of coffee? 12 books for a total cost of $101.19.

50% There

19 December 2006 » In PHP » 7 Comments

Unicode upgrade stats

Well, PHP boys and girls, this feels like quite a milestone: 50% of the 3084 functions that are bundled with PHP 6 have been upgraded to support and work safely with Unicode. I think it was hovering at around 10% only a few short months ago, so the development has definitely accelerated and, hopefully, the avalanche effect will continue. Preview release, here we come.

A Thought Experiment

03 November 2006 » In Funny, PHP » 5 Comments

George related this gem at the Zend Conference. Someone (let’s call him Bob) came up to him, and had this exchange:

Bob: If you were a PHP function.. which function would you be?
George: <unblinking stare of incredulity>
Bob: I am part Native American, so I think I would be apache_terminate_child().
George: <backs away slowly>

Slides from Zend Conference

02 November 2006 » In PHP, Talks » 1 Comment

I gave a talk on PHP and Unicode at the Zend Conference 2006. It was actually at 8:30 in the morning on the day of my birthday (November 2), which I thought was a nice touch on Zend’s part. Additionally, all the sessions in the conference were numbered with track number and order, so my session’s number was 2-11. Coincidence or not? In any case, the slides are online now.

"PHP Eats Rails for Breakfast"

21 October 2006 » In PHP, Tech » 3 Comments

That is indeed the title of the article on Ohloh, a site that collects information on open source projects and gathers statistics by analyzing the source code of those projects. So far they’ve indexed over 3,000 projects and their conclusion seems to be that among Web scripting languages, PHP is the undisputed champion (as measured by the LOC count).

Measured purely by the number of new lines of code, PHP leaves all other web-scripting languages in the dust, and continues to grow. Quite simply, one-fifth of all open source code being written today is written in PHP.

This, combined with their observation that the relative number of developers working in PHP is not increasing and that the number of new projects being started has actually decreased, leads to an interesting premise: the trend for for PHP-based projects points towards mature code bases. Meaning that the developers prefer to work with existing applications or frameworks and increase their output through updating these applications rather than starting new ones. In general, that seems to be a good trend, if one can rely on the data gathered by Ohloh. I have not done an exhaustive examination, but there are some puzzling things in the data on PHP project itself. For example, how do they calculate “man-years” for each developer? My number is 5.5, which puts me fourth on the list behind Rasmus, Derick, and Frank. I know I’ve been working on PHP longer than that. And then, Andi and Zeev are actually below me with 5.3 and 5.2 man-years respectively. The account with the most man-years seems to be our automatic changelog committer script, even though it committed a total 0 lines of usable code. 🙂
Even without Ohloh’s data, one could venture to say that the code base of projects using PHP is larger than those of Ruby or Python. A lot of that is due to the accessibility of PHP, I think, but does pure lines-of-code count give indication to the quality of said code? Of course not. I think Ohloh is providing a useful service by tracking this kind of information, but I would take its results with a few grains of salt.

php|works 2006

15 September 2006 » In PHP, Talks » 2 Comments

A quick note to let people know that the slides from my php|works 2006 talks — “I Love Unicode, You Love Unicode” and “PHP-GTK 2” — are available online now.

Interview on DevZone

30 August 2006 » In PHP » 5 Comments

Cal Evans caught up with me at OSCON 2006 and talked to me about Unicode and other PHP stuff for 30 minutes. The resulting interview is now online at Zend’s DevZone. I do wish he’d have picked a different picture for the top one — that was one taken too late in the night.

My name is not really Andrei

31 July 2006 » In PHP » 8 Comments

Ryan Kennedy commented on the presentation I gave at OSCON; specifically, about the transliteration support in PHP 6. I wanted to follow up and explain exactly what it is and, unfortunately, what it is not.
Ryan was excited about the possibilities presented by transliteration, especially as it applies to representing foreign names in reader’s native script (think mail readers). This works really well for Japanese names:

echo str_transliterate("やまもと, のぼる", "Any", "Latin");

And the result is:

  yamamoto, noboru

This is sweet, right? We get an approximate spelling of the foreign name and one could even attempt to pronounce it. But does it work for all script pairs?

echo str_transliterate("Tom Cruise", "Latin", "Cyrillic");

What do we get for this paragon of fame?

  Том Цруисе

Hmm. If I had to reconstruct for you English speakers what that sounds like in Russian, it would be something close to TOM TSRU-EE-SEH. Probably not how he’d like to be known in Russia. What is the problem here?
Continue reading “My name is not really Andrei” »

Back from OSCON 2006

29 July 2006 » In Books, PHP, Talks » 3 Comments

Just got back from OSCON which was again in Portland this year. The conference was excellent, as always and so were the events and extracurricular activities. The sheer variety of talks at OSCON is exciting and frustrating at the same time: exciting because I attended several talks that I would not get to hear at a more focused conference, and frustrating because of the time conflicts between these talks.
The slides from my own session on PHP 6 and Unicode are online now.
By the way, if you like books just a tiny little bit and happen to be in Portland, do yourself a favor: set aside a full day and visit the Powell’s. It the world’s largest independent used and new bookstore (covering, oh, a couple of city blocks) and has an amazing collection of books (including some very rare ones). You could literally lose your friends and family there and wonder among the stacks for hours whilst salivating giddily over the titles on whatever topic your mind can imagine. And don’t worry, there is always the coffee shop to come back to and get provisions to sustain yourself.

PHP-GTK 2 Zeta (Yes, Zeta)

15 July 2006 » In PHP » 4 Comments

PHP-GTK 2 Zeta release, the first one of the new architecture, is finally out. No, zeta it’s not a typo. What’s a zeta? Well, it’s a letter of the Greek alphabet. Why zeta? Because, a) we’ve gone through several “iterations” of this release without actually releasing anything, but more importantly, b) alpha and beta get all the glory in the software world, leaving the other Greek letters longing for a spot in the sunshine. So, zeta it is.
While preparing this release I looked at the very end of the NEWS file and realized that I have been working on this project for over 5 years now. That is a sobering thought, which reminds me that I need to go and set up my place for the party tonight in preparation of imbibing copious amounts of mood-altering substances better knows as beers. Cheers.