OSCON 2003 registration

hornbill.gif It looks like the O’Reilly folks have finally posted the abstract for my One Year of PHP at Yahoo! talk I’ll be giving this summer in Portland, Oregon.

I filled out the speaker registration page today and picked some tutorials to attend. Here’s what I’ll be going to:

- Tutorial

Session ID: 3959

Title: Introduction to XSLT

Date: 07/07/2003

Time: 8:45am to 12:15pm

Location: Columbia

- Tutorial

Session ID: 4149

Title: Designing and Creating Great Shared Libraries

Date: 07/07/2003

Time: 1:45pm to 5:15pm

Location: Willamette

- Tutorial

Session ID: 3982

Title: Building Data Warehouses with MySQL

Date: 07/08/2003

Time: 8:45am to 12:15pm

Location: Salon H

On Monday afternoon I’ll probably bounce back and forth between Theodore Ts’o’s “Designing and Creating Great Shared Libraries” and Bradley M. Kuhn’s “The GNU General Public License for Developers and Businesspeople.”

Instead of registering for something on Tuesday afternoon, I think I’ll explore Portland. I’ve never been there before.

Early Bird registration is now open (through May 23rd) at http://conferences.oreillynet.com/os2003/

Hebcal by Voice is going away

Got this email from Tellme today:

Date: Thu,  3 Apr 2003 01:10:11 -0800 (PST)

From: Tellme Studio <developer@tellme.com>

To: michael@...

Subject: Tellme Studio program change

VoiceXML Developer,

Tellme has made many investments in VoiceXML over the past four years.

One of these investments was in the Extensions program, with the goal

of making VoiceXML a more utilized public standard. Now with VoiceXML

well on its way to standardization in the W3C and with hundreds of

thousands of VoiceXML applications in production,  it is clear that

investment has paid off. It is time for us to retire the Extensions

program and invest in other areas. As of Wednesday, April 9th we will

no longer host Extensions on 1-800-555-TELL or

http://studio.tellme.com. Developers can continue to build VoiceXML

applications on Tellme Studio.

Thank you for your individual contribution in making VoiceXML the most

widely-used and successful voice standard in the world.

The Tellme Development Team

Damn, that sucks.

Photos from Israel

We’re back home. A few pictures from Israel that you might enjoy:


Taken on Ben Yehudah Street, a pedestrian-only promenade in Jerusalem. Business has been very slow the past 2.5 years.


Due to the threat of Iraqi chemical weapons, Israeli citizens have been issued gas masks. When you arrive at the Tel Aviv airport tourists can purchase one from the Post Office. Eerie. Here is a close-up of the piles of gas masks.


Ariella is checking her email from Daniel & Miriam’s computer. Their computer room doubles as their sealed room. All of our friends have one room of their apartment ready in case of biological or chemical attack.


We did lots of schmoozing and eating with our friends. Here’s a photo taken at David & Laura’s on Saturday Night as we were watching a tape of West Wing episodes.

More Israel Photos are in our Y! Photos album.

Italy, Hungary and Israel

Greetings from Jerusalem! We arrived in Tel Aviv early this morning, took a nap, and have been visiting with friends today. I’m typing this from a sealed room — Daniel and Miriam’s second bedroom serves mostly as a computer room but also contains supplies and has windows taped shut to guard against a chemical or biological attack.

We’ve got many pictures from the past week in Italy and Hungary. I’ll post them online soon. I’ll also take some pictures of Israel over the next few days before we head back to the States on Monday.

Here’s a cute picture from the Coloseo in Roma:


If I can get the internet connection to work, I’ll post more online at our Yahoo! Photos album.

Spring Break!

malevplane.jpg We’re leaving this afternoon for a long-overdue vacation. It’s Ariella’s spring break from UCLA. Here’s our itinerary:

Thu, Mar 20: arrive in Rome.
Wed, Mar 26: depart Rome for Tel Aviv. Stopover in Budapest.
Thu, Mar 27: arrive in Tel Aviv. Travel to Jerusalem.
Sun, Mar 30: travel from Jerusalem to Ramat Gan. Overnight in Tel Aviv.
Mon, Mar 31: travel from Tel Aviv to Los Angeles. Stopovers in Budapest and London.

We’re really looking forward to seeing our friends in Israel. They’ve been gone for months, and it will be fantastic to visit with them (even if we’re wearing gas masks).

The adventurous side of me is looking forward to flying Malev Hungarian Airlines. Before we bought our extra-cheap tickets a couple of weeks ago, I had never even heard of that airline!

Efficient Apache 1.3 setup for port 80 and 443

apache-feather.gif If you need to run both SSL and non-SSL Apache 1.3 on the same host, the most efficient way is to run two separate server instances rather than using <VirutalHost>s and mutltiple Listen directives.

If you use multiple Listen statements to listen on either multiple ports or multiple addresses, Apache needs to use select() in order to test each socket to see if a connection is ready.

If you only use a single Listen statement, Apache uses accept() instead of select(). All children can just block in accept() until a connection arrives.

There’s a long discussion about the inefficiencies and syncronization difficulties of using a select() loop rather than an accept() loop on the Apache 1.3 performance tuning page.

Excerpt from that document:

“Ideally you should run servers without multiple Listen statements if you want the highest performance.”

We’ve been doing this for years at Yahoo! No, it’s not Rocket Science; it’s right there on Apache 1.3’s perf-tuning web page.

But there are many examples of SSL config files floating around out there with multiple Listen statements. If the rest of the world’s engineers are anything like me, there is a strong temptation to find a conf file that works and just use it. The copy-and-modify approach is great when all you want is functionality. But when performance matters, you’ve gotta read the docs.

Resume Overload!

I mentioned yesterday that Yahoo! is hiring engineers. One of my open reqs just hit the join.yahoo.com site.

Our recruiter just sent me 7 resumes of potential candidates in the last 20 minutes!

I guess this is why they say that it’s close to impossible to be a manager and still have time to write code.