Who’s the Buyer?

There are two buyers running up prices in this market: the couple buying your house, and their mortgage company. Before approving the mortgage, the lender will appraise the property and determine whether it is properly priced. You can buy whatever you want with cash, but lenders tend, or used to tend, to be more conservative in their valuations. The appraisal determines whether or not this property is good collateral for the size of the loan: will the bank be able to recoup their losses by selling the property?

Both are interested in one thing: affordable payments. The mortage company wants you to be able to afford your payments so that you do not default on the loan. You want to afford your payments so that you do not lose your house. The mortgage company is also making a profit. If they can make a quick profit, then it doesn’t matter to them that you can’t afford your payments, or that they purchased an over-valued house.

It will matter to the secondary mortage market if you default and the bank takes a loss.

A Roof Over Our Heads

David Sucher asks, How are you personally dealing with the housing bubble?

In fits and starts.

Over the past three years we have planned an addition to our home, then stopped when the construction prices were higher than building a new house; decided to build a new house, and put our house on the market, then took it off when the buyers were offering less than we were willing to accept; engaged an architect to plan an addition to our house, revised the plans again and again as the builders’ rough estimates kept exceeding our budget; and then decided simply to sell our house and buy another existing home. This time we got a buyer, at the same price we were asking last year, so I guess we were over-priced for last year’s market — though you wouldn’t think so from looking at the comparable listings.

There was one thing which kept pointing us back to purchasing another house: the cost of construction. Downstate New York has high construction costs. Labor and materials are both high. The labor because of the location, and the materials because of supply constraints and demand elsewhere as a result of the hurricanes last year and the continuing war in Iraq. And concrete delivery has risen in price because of the cost of diesel fuel.

What made me worry about buying another property is this bubble: I do not think the rate of increase is sustainable. If we were in this for the profit, then maybe renting for a time would be fine. But we’re not in it for the investment: this will be our home. And we expect it to be for some time to come. So while the prices are ridiculous, the mortgage we’ll be carrying will be not unlike our current obligations. If the balloon were to deflate, our home’s value would depreciate as well, so all-in-all, things are even.

You know what the kicker is? Broadband isn’t available there either.

On Google Talk

Yesterday, like the rest of the Known Universe, I installed Google Talk. I already have a Google Mail account, and, being a fan of Jabber, wanted to see how well they’ve done with the implementation.

If you can connect — and some people have had issues from their non-Google Jabber clients — the connection is swift. I don’t expect many scaling issues on the server side, but you never know. The Google Talk client initially tries to connect on the standard Jabber port, tcp/5222, but if that fails will connect over HTTP. Once it is connected, the response is snappy: it’s not burdened by the features and advertisements that clutter AIM, Y!M and MSN Messenger.

Everybody in my Google Mail address book can be invited to use Google Talk. If they accept my invitation, they’ll be added to my friends list. This process is simple, but because the user interface is sparse, it took some time to see how to do this — about two or three minutes.

After inviting a couple of my friends, and finding gmail addresses that I didn’t yet know, we exchanged a few text messages. Nothing out of the ordinary there. And then I talked with Jeff Beckham.

Now that was different.

After two or so text messages, I clicked the “talk” button to invite him to talk. He answered, and now I know what his voice sounds like! We spoke for a few minutes, then shifted back to text.

What was strange was the modal shift between the asynchronous text messaging and the synchronous talking. It was a little disturbing. Do you say hello? You were already talking, albeit by teletype. How do you end the call? But I can see the attraction of this for many people — they simply find it easier to talk than to write — and this integrates the best of both worlds.

Did I mention it’s free?

Verizon Online with Yahoo! Now Just $14.95!

Verizon announced yesterday that they are following our pricing lead with their introduction of Verizon Yahoo! Robert Ingalls, president of Verizon’s retail markets group, explains why the price is $14.95.

“It’s estimated that nearly 50 percent of Internet subscribers are still using dial-up, and dial-up users wanting to convert to broadband most often point to price as being a primary barrier.”

I still can’t get DSL from anybody, much less Verizon Online, so it doesn’t matter how they price it. I would have bought at $19.95, or even at $24.95, but DSL is just not available.

Co-Opting Generic Names

There is power in names.

You probably know that Oracle is a company, and that they sell databases. (Well, strictly speaking, they sell a database management system and some applications built on it, not databases, but we’ll forget for the moment that you’re not familiar with the distinction.) Now suppose that someone said they need an SQL database. What would you use for that?

Why, a SQL Server, of course!

(Maybe My SQL server, being more personal, will substitute for some readers, but most people are more confused than that.)

Joel Spolsky, in describing how they chose the name for Project Aardvark, wrote

Well, there are a couple of dozen products named Copilot, many with registered trademarks, so our trademark lawyer advised us to use Fog Creek Copilot which would eliminate any possibility of confusion with those other Copilot brand products. The point of trademark laws is that what you’re not allowed to do is create any confusion or potential confusion as to the origin of your product, and sticking “Fog Creek” in front guarantees that, but we have to be religious about always using the full name. I didn’t really mind, having started my career working on products like Microsoft Excel, Microsoft Visual Basic for Applications for Microsoft Excel, etc. etc. After a few weeks on the Microsoft Excel team if you ever saw the word “Excel” without a “Microsoft” in front of it, it looked nekkid. [emphasis mine]

Uh huh. Yeah.

If I buy a product, “Company Name Piece Of Crap,” from a company, “Company Name,” I’ll not call it “Company Name Company Name Piece Of Crap.” I, and the rest of the world, will elide the “Company Name” belonging to the product and call it a “Piece of Crap.” Everybody will know that we’re talking about their Piece of Crap.

And so it is with their SQL server.

Individual WebDAV DocumentRoots

I’ve been thinking off-and-on, mostly off, about how to configure individual home directories on a WebDAV server. What’s necessary for individual WebDAV DocumentRoots is nothing more than simply rewriting / if the user is authenticated.

There remain some usability issues. For example, how do we handle the move between DAV and non-DAV HTTP user agents? Suppose we would like to send a visitor off to setup an account if the user’s directory doesn’t exist. DAV user agents do not, in my experience, display the message-body of an HTTP error response. The simplest solution is to ignore the problem and require that the user set up their account elsewhere.

At this point I’m uncertain whether to return a 404 Not Found if the user’s directory does not exist, or a 501 Not Implemented. It’s more of a server-side error, though I suppose either status would apply.

Response status codes beginning with the digit “5” indicate cases in which the server is aware that it has erred or is incapable of performing the request. Except when responding to a HEAD request, the server SHOULD include an entity containing an explanation of the error situation, and whether it is a temporary or permanent condition. User agents SHOULD display any included entity to the user. These response codes are applicable to any request method.

In any case, here’s the mod_rewrite ruleset.

Continue reading “Individual WebDAV DocumentRoots”

Waiting for Something to Break

A reprint from The Washington Post in today’s business section reaffirms what Web browsers already know: we’re bored.

“We know that 55 percent of all U.S. employees are not engaged at work. They are basically in a holding pattern. They feel like their capabilities aren’t being tapped into and utilized and therefore, they really don’t have a psychological connection to the organization,” said Curt W. Coffman, global practice leader at the Gallup Organization, whose large polling group measured employee engagement.

Demand in Action

After selling out to Dell so that they could experience the same joys I did this morning, the Henrico County (Virginia) School District sold their collection of used iBooks to the general public. Apparently they underestimated the demand.

RICHMOND, Va. – A rush to purchase $50 used laptops turned into a violent stampede Tuesday, with people getting thrown to the pavement, beaten with a folding chair and nearly driven over. One woman went so far as to wet herself rather than surrender her place in line.

Maybe they should have held a silent auction.

Wednesday, 17 August 2005: The Washington Post ran the story today. While the crowd failed to show polite restraint and respect for their fellow citizens, the administrators of the Henrico County schools, who undervalue the iBooks, priced them well below their market value.

The Richmond Times-Dispatch has a nice photograph of the rush, some statistics, and commentary on the incident which, in addition to the typical errors in logic and fact which pepper most undergraduate works, includes this delicious quote from a citizen

“My tax money is going toward total idiots,” [Linda] Dunn said of those who planned the event.

Obscure Failures

This morning I installed the latest round of critical Microsoft security patches on a Windows host. It was more complicated than expected.

Microsoft has greatly improved the Windows Update service. And while there remain some issues with how it interacts with Automatic Updates and manual patching of the host, it is generally reliable. Its major failing, from a web services perspective, is that it requires Internet Explorer. But our problem today wasn’t with Internet Explorer per se; it was with Microsoft SQL Server.

When I asked Internet Explorer to get the Windows Update web site, it froze. By using my brilliant deductive skills, I observed that it was having a problem connecting. update.microsoft.com does not respond to ping, but traceroute showed that we were using the correct path to that host. I could resolve the name just fine from the Windows shell, so it was not a DNS issue.

Or was it? Internet Explorer was able to get the site by IP address, but froze when it had to request a name. And a brief look with netstat showed that it did not open the TCP connection when it attempted to use the name. While I cursed the lack of a sniffer on this host, I turned my attention to something else. Some time later I glanced back at the display and saw I was being prompted to permit Microsoft to muck with my system. It had found the site!

One of the changes I’ve noticed in the current version of Windows Update is that if you do not run the ActiveX applet within a certain period of time, the operation times out, and the error 0x8DDD0004 is displayed. (This appears to mean ErrorControlFailed.) The error message is less than helpful in its explanation, but the site tends not to function until you clear your cache. So I did that, and waited again.

While waiting, I noticed that the tiny SQL Server Service Manager icon in the tray was red.

That was wrong.

The Service Manager showed SQL Server to be in the “starting” state, as did the Services Control Manager. The event log did not record any starting events for SQL Server. It wasn’t in an uncontrollable state, and shut down just fine:

net stop mssqlserver

It started fine too.

net start mssqlserver

Immediately afterward, Internet Explorer began working. WTF?

I quickly patched the box and rebooted. Some would say that I should have resolved the SQL Server issue first, but the DBMS was coming up fine once the service was restarted. A post-reboot inventory showed that SQL Server was still just pretending to start. And in pretending to start it prevented the Local Security Authority from authenticating in a timely manner, prevented Terminal Services from accepting connections, prevented ASP pages from executing, and prevented Internet Explorer from resolving names.

What caused it to fail, I don’t yet know. Nor do I know why SQL Server’s failure should cause other applications to halt dead in their tracks. The latter is more disturbing.

But then, that’s why I hate Windows. It fails in obscure ways. It is inscrutable.

Incapable of being analyzed and understood because the essential facts or factors are concealed.

Starbucks, Here

The Associated Press ran a story this morning on a gentleman from Texas who’s travelling to every Starbucks. The story helpfully contained a link to this gentleman’s web site, Starbucks Everywhere. So when everybody woke up and went online at 07:00 EDT, we saw some traffic. That site contains photographs of all of the Starbucks to which this man has been, and those 6,926 images are hosted on one of my servers.

traffic graph

Mr. Winter, perhaps you’d like to reorganize those images so that they’re not all in the same directory? I suggest by date.

Means Tests for Copyright Registration

Via Tim Bray via Sam Ruby, the Copyright Office asks whether a public entity should even consider writing vendor-specific markup.

At this point in the process of developing the Copyright Office’s system for online preregistration, it is not entirely clear whether the system will be compatible with web browsers other than Microsoft Internet Explorer versions 5.1 and higher. Filers of preregistration applications will be able to employ these Internet Explorer browsers successfully. Support for Netscape 7.2, Firefox 1.0.3, and Mozilla 1.7.7 is planned but will not be available when preregistration goes into effect. Present users of these browsers may experience problems when filing claims.

In order to ensure that preregistration can be implemented in a smoothly functioning and timely manner, the Office now seeks comments that will assist it in determining whether any eligible parties will be prevented from preregistering a claim due to browser requirements of the preregistration system. Therefore, this notice seeks information whether any potential preregistration filers would have difficulties using Internet Explorer (version 5.1 or higher) to file preregistration claims, and if so, why.

Needs Improvement: Consumer Reports on SBC Yahoo!

Consumer Reports this month published their comparison of Internet Service Providers. The ratings are based on responses from Consumer Reports subscribers who completed an online survey, and may not be representative of the U.S. population. However, the results were disappointing.

Most customers were generally satisified with the service, though they rated the speed and reliability as . But they were not happy with our technical support: we were . The only provider who had a lower support rating than ours was AOL. Cox, TimeWarner’s RoadRunner, and Cablevision’s Optimum Online were all rated .

So Consumer Reports recommends that customers choose cable, because of faster speed, and the overall generally better customer satisfaction. But if you’re price-sensitive, or, as they say, value-conscious, then they recommend DSL, from either SBC Yahoo! or Verizon.

Neither provider … yielded the high satisfaction scores with service reliability and tech support of the better cable companies. However, both were reliable enough. Verizon’s tech support was more satisfactory than that of SBC Yahoo.

This is unacceptable.

Apple Meets Big Apple

The New York Times reports that there may be some architectural issues with a proposed Apple store on lower Fifth Avenue.

Plunked amid a phalanx of ornate buildings on Fifth Avenue – structures with classic Greek columns, cast-iron arches, filigreed cresting and intricate friezes – is a two-story stub of a building that has preservationists gnashing their teeth at the Apple Computer Company.

The preservationists do not particularly want the decidedly unremarkable, 3,550-square-foot building at 136 Fifth Avenue, between 18th and 19th Streets, to be preserved. They are not demanding that its proposed replacement mirror the florid style of its environs.

But if Apple hopes to get its plans for a retail store approved by the city’s Landmarks Preservation Commission, the preservationists at least want the building to bear some of the architectural basics of its neighbors. Plans for the site, in the Ladies’ Mile Historic District, are subject to commission approval.

The architect, Karl A. Backus, is with Bohlin Cywinski Jackson. Their site messes with deep links, like this one to the description of the Apple Store SoHo, whose facade you can see here.

The feedback from Community Board 5 is great. Art needs constraints. Do you recall the story of the dot and the line?

Hit the Road, Jack

On June 3rd, Viacom, the owner of WCBS 101.1 FM in New York City, bought an iPod Shuffle, changed that station’s format, and fired all the disc jockeys. What was formerly New York’s favorite oldies station is now JACK-FM. The oldies are still available online, but what made WCBS-FM great were the characters. And they’ve gone to the stars.

The basic format is simple. Take a large music library, set iTunes to shuffle, and play advertisements every 14 minutes. I think the format, also used by Philadelphia’s 95.7 BEN, is a vast improvement over your typical payola-driven radio station. The playlist is eclectic enough to not bore. But it fails in two respects: the jackass interrupts the music every other song to pretend to be human, and the lack of character.

In other words, it serves for those occasions when you’ve forgotten your iPod, and don’t have an alternative.

Update: They seem to have forgotten that they don’t have to repeat their playlist every 12 hours.