sklar.com/blog...composed of an indefinite, perhaps infinite number of hexagonal galleries...PHP + Emacs- (Found July 2, 2008 ) Here are some links that are related to the EditorIDE panel I'm on today at the 2008 DC PHP Conference: GEBEN (interactive debugging) nxhtml-mode (php-mode, multiple major modes)http://www.sklar.com/blog/archives/119-PHP-+-Emacs.html Ubuntu Feisty Fawn vs. Cisco VPN Client- (Found July 2, 2008 ) I upgraded a machine to Ubuntu Feisty Fawn (7.10) today and was having trouble recompiling the Cisco VPN client. Thanks to this thread, I went to this blog post and applied this patch and everything was fine. I must admit that applying some random patch to one's VPN client inspires a moderate amount of queasiness, but fortunately the patch is simple enough to understand so one can be confident no mischief is involved.http://www.sklar.com/blog/archives/106-Ubuntu-Feisty-Fawn-vs.-Cisco-VPN-Client.html Visiting each character in a string- (Found July 2, 2008 ) So I've got this string (in PHP) and I need to scan through it character by character. I can't scan byte by byte because it's 2007, our users write in all sorts of languages, and the string is UTF-8. The PHP 5 solution uses mb_strlen() to find the length and then mb_substr() to grab each character: $j = mb_strlen($theString); for ($k = 0; $k $char = mb_substr($theString, $k, 1); do stuff with $char In PHP 6, one would do: foreach (new TextIterator($theString,...http://www.sklar.com/blog/archives/107-Visiting-each-character-in-a-string.html Runkit, "static", and inheritance- (Found July 2, 2008 ) A PHP issue that comes up over and over again is how the static keyword doesn't know about inheritance. That is, code such as: class Masons &160;&160;&160;&160;static $where = "World-wide"; &160;&160;&160;&160;static function show() &160;&160;&160;&160;&160;&160;&160;&160;print self::$where; &160;&160;&160;&160; class Stonecutters extends Masons &160;&160;&160;&160;static $where = "Springfield"; Stonecutters::show(); prints World-wide, not Springfield because the self inside...http://www.sklar.com/blog/archives/108-Runkit,-static,-and-inheritance.html API Design in PHP at ZendCon 2007- (Found July 2, 2008 ) I'm going to be giving a talk on "API Design in PHP" at ZendCon 2007 in October. Our PHP API at Ning is a little over two years old at this point. There are some things I love about it that I think we've done really well, some things that we have revised, some things we can do better, and some interesting things planned for the future. The talk is all about what we've learned developing, building, and supporting the API with both a ferocious devotion to backwards compatibility and a rapid new.http://www.sklar.com/blog/archives/109-API-Design-in-PHP-at-ZendCon-2007.html E-Mail Address Validation and Mission Creep- (Found July 2, 2008 ) +1 to what ndg said in response to Jacob's post about e-mail address validation. I think Jacob sort of touches on this in his post but too often it's not explicit what people are looking for under the vague and broad umbrella of "e-mail validation". If it's "Did the AOL user signing up for my site forget the '.com' part at the end of the address" then some pretty simplistic text-based matching will do. If it's "Is the address supplied a valid mailbox that is controlled by the person who is...http://www.sklar.com/blog/archives/110-E-Mail-Address-Validation-and-Mission-Creep.html Zendcon 2007- (Found July 2, 2008 ) Zendcon (aka "The 2007 ZendPHP Conference and Expo") draws near. I'll be there giving a talk about API Design in PHP and undoubtedly getting sucked into various conversations about how PHP's disorganized ugliness is its greatest asset.http://www.sklar.com/blog/archives/111-Zendcon-2007.html Ning Turns Two- (Found July 2, 2008 ) As Diego and Gina have pointed out, the Ning Platform has just celebrated its second birthday. The past two years have been a lot of work and a lot of fun. It's been gratifying to see the crazy, heartwarming, innovative uses folks have come up with for the platform and also extremely rewarding to work with such talented people. I wonder what I'll have to say in a blog post a year from now that links to this onehttp://www.sklar.com/blog/archives/112-Ning-Turns-Two.html API Design Talk Slides- (Found July 2, 2008 ) The slides from my API design talk yesterday are available. If you missed Zendcon, come to the DC PHP Conference in a few weeks. I'll be talking about API Design there on November 8.http://www.sklar.com/blog/archives/113-API-Design-Talk-Slides.html Subversion Time Machine- (Found July 2, 2008 ) Jon Aquino, my talented cow-orker built a time-lapse view for Subversion. This is fantastic. We switched from Perforce to Subversion recently (at Ning), and one of the things that I miss about Perforce was its handy time-lapse-view feature. No longer!http://www.sklar.com/blog/archives/114-Subversion-Time-Machine.html |