Monthly Archives: February 2009

Peter Mika presents Yahoo! Search Monkey

On the heels of a Facebook meetup, we had Peter Mika present a Yahoo! Search Monkey meetup as well. The presentation was excellent. For an idea of what Yahoo! Search Monkey can do, just look at the recent announcements made of how Facebook is using the technology.

We have photos and slides if you want more info.

I’ll leave you with the Search Monkey song.

Powerpoint presentation of Facebook DBAs Chris Schneider & Kevin Knapp is now online

We had a great turnout for the Scaling MySQL Meetup last night. Chris had a pleasant surprise as he brought in Kevin Knapp as a co-speaker.

We wanted to record the event, but due to technical difficulties with Webex, we were unable to do so. However the slides are up now. We also posted a few pictures.

Chris’ team has done an amazing job. They have ~800 memcached servers handling 95% of the load. The comparative figures for Facebook vs. other major players shows how unique their setup is.

Since I don’t have a video to show you, as a consolation here is an earlier video done with a panel that included Facebook’s Jeff Rothschild.

Thanks to Scott for MC’ing the event last night and Naz for helping set up.

iMy: MySQL on iPhone

While processing my inbox I noticed a Google ad for

MySQL on iPhone

MySQL on iPhone

MySQL on the iPhone. Is anyone running this? I’d love to try but I got a G1.

Pictures of the informal Los Angeles PHP / MySQL / Semantic Web meetup

The pictures are up for the February 8, 2009 PHP / MySQL / Semantic Web informal meetup.

Dec 31st, 2009 is end of life for I.E. 6 – Pass it on

Following up on the Norway “push” to throw IE6 off the cliff, Mozilla’s Christopher Blizzard suggests we choose an end date for when we stop supporting IE6, say December 31st, 2009, pass it on.


Web roundup

  • Ian Bullard asserts that you should never use the RAND() function. The Ayn Rand Google Ad is pretty funny.
  • The new Zend Server is coming out as a web stack. Although it can be easier to install a Xampp style web stack on your development machine, if you’re a web developer, you’re better off installing each component separately. In the long run it’s less buggy in my opinion, and what you learn in the process of doing it yourself is priceless.
  • With the Zend Framework 1.75 release, Zend View has an important security fix in it, that is somewhat incompatible with previous version. Check it out if you are upgrading.
  • Google has finally lost some market share…to Yahoo!. Despite all the bad press Yahoo! has gotten lately, they have some great Semantic Web products. Including Search Monkey, which I plan to post about soon in anticipation of our Semantic Web Meetup next week with Peter Mika presenting.
  • Eric Meyer provides feedback on some long awaited CSS3 features. It will be very cool to use shapes in css.
  • Congratulations to WordPress on their new datacenter.
  • Interesting to learn (via Baron) that there’s a MySQL Federal Migration Bootcamp. Good idea. I hope to soon see a “Don’t Waste Taxpayer’s Bailout Money Bootcamp” too 🙂
  • Sad to hear that Ma.gnolia lost all their data. A good DBA and backup strategy is vital to the success of any startup. Very impressive that it was basically a one man operation though. Kudos for getting as far as he did…

Unicode coming to PHP 6

The move from PHP 5 to PHP 6 will be a painful one. But once it’s done, I hope that it will be easier to handle safe web development for a global, multi-language internet.

After all these years, we still have major problems with encoding character sets and security vulnerabilities caused by improper use thereof. Many still think that addslashes is an effective method to avoid database injection. Chris Shiflett has put the addslashes vs. mysql_real_escape_string debate to rest. Thankfully, addslashes goes away in PHP 6.

To this day, I regularly log into and see hex data mangled in the headline!

KataUnix points out that you should set these variables in your mysql ini file:


In case you aren’t sure how your installation is set up, run this command:

show variables;

and make sure it matches the above values.

The tough part is even if you get the character sets running correctly, the tools you use to view the output may still be insufficient.

Oh, and don’t forget to have your web server send out the correct content type.