Vim talk claims top spot

02 March 2007 » In Talks » 2 Comments

I just received the evaluations for my talks from the Vancouver PHP Conference, and, surprisingly, the new VIM for (PHP) Programmers talk got the top overall rating, even beating Rasmus’s keynote. 🙂 I guess VIM is a lot more popular than I expected. The next time I am giving it is at the PHP Québec Conference, so I am planning to invest some time into making it even better.

PHP 6 and Request Decoding

21 February 2007 » In PHP » 4 Comments

It looks like we have finally settled on an approach for HTTP input (request) decoding in PHP 6. There have been no fewer than 4 different proposals floated before, but this one combines flexibility, performance, intuitiveness, and minimal architectural changes, and has only a couple of small drawbacks. Let’s take a closer look.
As you probably know, correctly determining the encoding of HTTP requests is somewhat of an unsolved problem. I know of no mainstream clients that send the charset specification along with the request. This means that it is up to the server or the application to figure out the encoding, which can be done in a number of ways, including encoding detection, looking at Accept-Charset header, parsing request to see if _charset_ field is passed, and more. Unfortunately, none of them are completely reliable and the best you can do is guess the encoding with some degree of confidence.
Continue reading “PHP 6 and Request Decoding” &#8594

99 Frameworks of Code Out There

16 February 2007 » In PHP, Rants » 34 Comments

People, enough with new frameworks already. I know you might be lusting after Rails for some reason and want to have the fame, the glory, and the dancing girls of DHH, but are we not going to be satisifed until Sourceforge is filled with the object-oriented diarrheal remains of our overblown egos and delusions of grandeur? I counted no less than 3 separate announcements about new PHP frameworks today, just by scanning the front pages of phpdeveloper.org and planet-php.net. As well intentioned and technically robust as these efforts might be, do we really need yet another patterns-based abstracted MVC-driven buzzwords-filled concoction? Look at the list of existing PHP frameworks, are they really all that different? Why start another one? Why? How long are we going to be suffering from the NIH syndrome? Oh, the humanity…
If you have an itch that only frameworks can scratch, then my advice, should you choose to take it, is to find an existing mature framework that gets as close as possible to your requirements and work on it. Add features, fix bugs, write documentation, promote, contribute, and improve in general, but resist the urge to spew out a torrent of code into our environment simply because you thought of an oh-so-clever moniker and need to stick it onto something. Please, no more new frameworks.

"VIM for (PHP) Programmers" slides and resources

16 February 2007 » In Talks » 13 Comments

By popular demand, I have uploaded the slides and the VIM script files from my VIM for (PHP) Programmers talk in Vancouver. You can find them on the Talks page.
This was the inaugural presentation of the talk, so I beg forgiveness for the rough edges and any inadvertent mistakes (of which there should be none, I hope).
It was nice to see that the talk was well attended and received. With any luck, it might become a semi-regular one on the PHP conference circuit. Happy VIM’ing.

Unicode slides from Vancouver PHP Conf

15 February 2007 » In PHP, Talks » 1 Comment

The slides from my Unicoding with PHP 6 talk are now available on the Talks page. VIM slides and resources will be coming up shortly.
I want to thank Shane Caraveo, Audrey Foo, Peter, and the rest of the organizers for the excellent, well-run conference. I really enjoyed the variety and quality of the talks.

New JPG Magazine Submission

31 January 2007 » In Photography » No Comments

I submitted a photo for JPG Magazine’s Entropy theme contest and would appreciate it if you would take a moment and vote for me by clicking on the image below.
Update: Fixed post to remove javascript that was not appearing correctly in RSS feeds.

Logo-tastic designer wanted

29 January 2007 » In Other » No Comments

I am in the process of setting up a photoblog, and I’d love to have a small logo (and perhaps a favicon) to stick on it. Given that my skills with graphic design are limited to — and I’m being generous here — picking out a font that looks nice but is unlikely to induce violent frothing rage from everyone who’s been exposed to entirely too many pages written exclusively in Comics Sans… I thought I’d ask the faithful readers who’ve hopefully extracted a smidge of useful information (or just a chuckle) from some of my postings. Can one of you designer demigods help me out with this?
Please contact me directly via About page.

The Design of Everyday Things

27 January 2007 » In Books, Reviews » No Comments

Mental DNA

I have just finished reading the first book from the pile that I bought at Powell’s. Despite the title, the book’s main focus is not about the industrial design of the things around us. Rather, Norman takes a close look at badly conceived and designed everyday objects (like doors that give no overt clue as to how they should be opened) and strikes back at those who are responsible for such dysfunctional artifacts. My favorite example is a refrigerator control panel that provides two controls for fresh-food and freezer compartments, yet works in such a way that changing either control affects the temperature in both compartments.
Norman spends a fair amount of time on the psychology of actions; namely, what people go through in order to bring about changes in the world according to their intentions. His main premise is that good design “reduces the gulfs of Execution and Evaluation”: in other words, the user should easily be able to figure out what to do and the user can tell what is going on as a result of their actions. Unfortunately, at times the book veers off into areas with only a tenuous connection to the main theme. Chapter 5 could be cut out completely and the book as a whole could be trimmed down to about half its size without sacrificing the major points. The discussion of computer interface design in chapter 7 is dated and I hope Norman concentrates on higher-level human-computer interaction rather than lauding the Macintosh as the pinnacle of good interface design.
Nevertheless, it is a good read and I recommend it for everyone who has often wondered why shower controls seem to be designed by sadists, but especially for those who are involved in designing things that are intended to be used by normal humans.

This is who I am. Are we Clear?

03 January 2007 » In Rants » 4 Comments

While waiting in the security line at the San José airport before my trip to Portland, I noticed a TSA officer handing out well-designed, colorful brochures similar to the ones you can find at your local bank. Except this one had CLEAR in big letters on the front. I took one and read it on the flight.
Basically, TSA is instituting a FlyClear program, wherein travelers may choose to get screened in advance in order to facilitate their progress through the security in the future. You provide two forms of government issued ID (including US Passport or green card, but “a passport is strongly preferred”) with your application, they take your fingerprints and iris photos, and the first-year $99.95 fee. What goes on next is unclear (hah), but apparently TSA “makes the necessary security threat assessment” and issues you a Clear card, if you pass. Once you have the card you have access to a designated Clear lane at participating airports, where in addition to the good old metal detector and the X-ray machine for you baggage, you also undergo some biometric checks.
So on the surface it’s nothing more than a FasTrak pass, except for people (instead of cars) going through metal detectors (instead of toll booths). You pay for the privilege of potentially avoiding long security lines, which seems like a big pro for those who travel often. But I see at least one big con here: the government now has access to your complete biometric data. They say that it’s required in order to verify your identity in the Clear lane, but that smells fishy to me. Identity verification has been working fine in the normal lanes for a long time now, and if it hasn’t, why is the practice continuing? Also, TSA says they continuously monitor your security status, and if it changes, your membership will be immediately deactivated and back to the normal lanes you go. How much sense does that make? If someone’s status is suspect, wouldn’t you want them to get more stringent identity checks at the airport?
I think this is nothing more than a ploy to get at your biometric information. The FlyClear privacy policy makes all kinds of assurances about this info being collected purely for identity verification and underscores that the entrance log files are purged after 24-48 hours. Personally, I am skeptical of these promises in light of what has transpired in the past. I also can’t help feeling that the future portrayed in Gattaca is not too far off. So, FlyClear if you must, but remember this: Big Brother just got a brand new Christmas present.
UPDATE: Bruce Schneier makes some other good points about this program.

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.