Democrats Agree – Democrat Policies Caused California Financial Crisis

brown Willie Brown, former State Speaker and also former Mayor of San Francisco, made a surprising interview this week.  In an unusual interview,  he acknowledged that his Democratic political agenda is largely responsible the the financial meltdown here in California.

His quotes in the interview are jaw-dropping.  Not only does he admit that the spending policies threw California into massive debt, but he also admits that he, and the other legislators did this without really having tried to analyze the effects of the laws they were implementing.

Here is a nice quote,  "I had actually participated in moving legislation to reduce the retirement age for teachers and I did it with great pride and I created it in my resume as one of my great achievements… Nobody took the time to do the analysis that would have persuaded us we needed to add money to make it work”

Well, that’s good to know.

He goes on to be fairly self-critical, “I may have been one of the key architects of many of the things that have created a challenge for my successors.”

So there you have it – even Willie Brown knows that Democrats are the architects of our problems.  But Brown couldn’t do it alone – it took all of them – much like Obama is doing now – to systematically ignore logic and common sense in favor of grabbing votes by promising to spend money on programs we know we cannot afford.

More Bandwidth Doesn’t Matter (Much)

This is a part of a report I wrote last month; the full report is available here.

Mike Belshe – [email protected] – 04/08/10

When choosing an Internet connection, it is intuitive to focus on network bandwidth – “Speeds up to 5Mbps!”  Bandwidth is important, but it isn’t the only factor in performance.  And given the way that HTTP uses short, bursty connections, it turns out that the round-trip-times dominate performance more than bandwidth does.

Of course, bandwidth speeds are very important for video, music, and other large content downloads.  These types of content, unlike web pages, are able to utilize the network because they are large, whereas web pages are comprised of many short connections.  This report is only concerned with the effect of bandwidth and RTT on the loading of web pages.

Two Factors in Web-page Downloads:  Bandwidth and Round-Trip Time

If we make an analogy between plumbing and the Internet, we can consider the bandwidth of the Internet to be like the diameter of the water pipe.  A larger pipe carries a larger volume of water, and hence you can deliver more water between two points.

At the same time, no matter how big your pipe is, if the pipe is empty, and you want to get water from one point to the other, it takes time for water to travel through the pipe.  In Internet parlance, the time it takes for water to travel from one end of the pipe to the other and back again is called the round trip time, or RTT.

While it is easy to install a bigger pipe between two points to add more bandwidth, minimizing the round trip time is difficult because physics gets in our way.  If your server is located in London, for example, and you are in San Francisco, the time it takes to send a message is gated at least by the speed of light (even light would take ~30ms to travel that distance, or 60ms for a full round-trip).  On the internet today, round trip times of 150ms to 250ms is common.  And no matter how big your pipe is, the RTT will take this long.

Test #1:  Vary the Bandwidth

The first test we ran was to see the effect on web-page download times when you change the bandwidth of the network.  In this test, we’ve chosen fixed values for packet loss (0%) and round-trip-time (60ms) so that we can isolate the variable under test, bandwidth.  In this test we’re downloading a simulation of 25 of the web’s most popular web pages.

Here are the raw results, using HTTP to download the web page:


Page Load Time via HTTP

Figure 1: This graph shows the decrease in latency (page load time) as the bandwidth goes up.  As you can see, there are diminishing returns as the bandwidth gets higher.   According to the Akamai Internet Report Q2’09, the average bandwidth in the US is only 3.9Mbps.

Figure 2: Here we see the incremental percentage decrease in latency as we add more bandwidth.  An increase from 5Mbps to 10Mbps amounts to a 5% improvement in Page Load Times.

Figure 3: This graph shows the effective bandwidth of the web page download as the raw bandwidth is increased.  At 1Mbps, web pages can be downloaded at ~69% of the total bandwidth capacity.  At 10Mbps, however, web pages can only be downloaded at ~16% of the total capacity; and we’re tapering off.

Test #2:  Vary the RTT

For this test, we fix the bandwidth at 5Mbps, and vary the RTT from 0ms to 240ms.  Keep in mind that the worldwide average RTT to Google is over 100ms today.  In the US, RTTs are lower, but 60-70ms is still common.  


Page Load Time via HTTP

Figure 4:  In this graph, we see the obvious effect that Page Load Time decreases as the RTT decreases. Continued reductions in RTT always helps, even when RTT is low.

Figure 5: This graph shows the % reduction in PLT for each 20 milliseconds of reduced RTT.  Unlike improvements to bandwidth (figure 2), where benefits diminish, reducing the RTT always helps the overall PLT.  In these tests, with bandwidth fixed at 5Mbps, each 20ms yielded 7-15% reduction in PLT.

Figure 6: This chart shows the increased overall effective bandwidth as RTT is reduced.  With high RTT, bandwidth of a page load was as low as 550Kbps, which is a little more than 10% of the 5Mbps theoretical throughput.  With low RTT, web page downloads still only achieve ~54% of the total bandwidth available.  This is due to other factors of how web pages are loaded.


As you can see from the data above,  if users double their bandwidth without reducing their RTT significantly, the effect on Web Browsing will be a minimal improvement.  However, decreasing RTT, regardless of current bandwidth always helps make web browsing faster.  To speed up the Internet at large, we should look for more ways to bring down RTT.  What if we could reduce cross-atlantic RTTs from 150ms to 100ms?  This would have a larger effect on the speed of the internet than increasing a user’s bandwidth from 3.9Mbps to 10Mbps or even 1Gbps.

Visual Studio signed/unsigned Comparison Warnings

I use Visual Studio 2005 for my Chromium builds.  Because Chromium is a cross-platform product (Windows, Mac, and Linux), we’ve built tools (robots) which can automatically build our code changes on the other platforms before we ever commit the change.  When a pending change fails on the robots for other platforms, it creates a headache for me because I have to rework the patch and retest.

Unfortunately, on Windows we use warning level 3, which treats Visual Studio warning 4018 as a problem but not Visual Studio warning 4389.  4018 treats signed and unsigned comparisons for greater-than or less-than as warnings, but not equality comparisons.  4389 treats signed and unsigned equality comparisons as warnings.  Why Microsoft split these into two different warnings, I don’t know.  They should be part of a single warning, in my opinion.

g++, which we use on Linux and Mac builds, does not differentiate these signed/unsigned comparisons in the same way.  And this is annoying, because it means that a signed/unsigned equality comparison will seem to work on my Windows machine, and then fail on Linux and Mac (“warning: comparison between signed and unsigned integer expressions”!).

If you have a similar problem, I recommend using Visual Studio’s option for “/we4389”, which will include warning 4389.  And alas – your builds on all platforms will treat unsigned/signed comparisons the same way.  Phew!

Schwarzenegger’s Tax Reform

Last year, Governor Schwarzenegger issued executive order S-15-09 establishing a commission to analyze California’s tax options.  The report came back last September.  It looks very promising to me. 


  1. Addresses state revenue stability and broadens the tax base for California.
  2. Cuts personal income tax nearly in half for almost all Californians.
  3. Cuts sales tax in half.
  4. Implements a new tax system (BNRT) which would be ~1.5-4% of net receipts for all business.  This system replaces the current corporate tax of up to 8.8%, which is eliminated.
  5. (Optional) Establish a rainy-day fund for dealing with economic fluctuations to further reduce annual financial variances.

Obviously, everyone likes the tax cuts.  But who pays with this BNRT (Business Net Receipts Tax)?  Everyone pays it.

The problem is that if you look at state revenues, we keep increasing income taxes (now the highest in the nation) and sales tax (also the highest in the nation).  But these taxes don’t cover all consumption.  And as consumption trends change over time, the revenues from these streams change.  The commission notes correctly that this is why the government has such feast-or-famine income streams each year.

staterevenuesFirst, we can look at state revenues.  You can see the rapid growth of the income tax.  You can also see that sales taxes, as a percentage of revenue are dropping.



salestaxNext, just what percentage of sales are subject to taxes?  Over time, you can see most business in California is not subject to the tax.  This creates a disproportionately high tax on some industries while there is no tax on others.  And, you can see that spending patterns among Californians change over time.  This is why the current tax system hasn’t been able to keep up with the times.

The critics are upset because the new tax side-steps their current favorite tax-breaks.  Any massive tax change is going to make someone unhappy.  But is the new tax proposal broad and fair?  Absolutely. Nonetheless, critics still cite that the new system gives breaks to the rich.  But that isn’t true.  Who consumes the most in California?  The rich.  The rich will far-and-away pay the most under this system, just as they do today.

I do have a couple of criticisms.  First, I don’t understand the elimination of the corporate tax.  The corporate tax today discourages businesses from choosing California – so eliminating the tax is commendable.  But, I don’t think it needs to be completely eliminated – reducing to 1 or 2% would pacify critics and still leave California competitive.  Second, the exact rate of the tax is a little dodgy.  I’m worried that both the tax rate and the ability to collect are still too unknown.

By the way, lawyers hate the proposal.  Why?  Because the services they sell, which are currently untaxed, would now be taxed.  Don’t be surprised if a lawyer says he hates it.

Schwarzenegger Knows How To Fix California

Unlike most politicians who live in denial, Schwartzenegger is willing to admit that California is on the same path as Greece.  Unless we change, we know we’re in trouble.

There are two potential answers to California’s budget problems:  cut spending or increase revenues.

The problem is that we can’t increase revenues.  With unemployment in California is at 13% right now, we simply don’t have the workers to tax.  But even if we did,  we already have the highest sales tax of any state in America.  We also have the highest personal income tax rate of any state for middle-class people (9.55% of everything over $50K!).

If you break down the state budget, it comes down to two choices:
      a) cut education
      b) cut welfare type programs

Unfortunately, we have to finally decide on one or the other.  We can no longer afford both.  Which do you want?  Cut education further than we’ve already cut it, or cut entitlements?  Schwarzenegger knows what he is doing.  If you don’t approve of his current plans, you can’t blame him for cutting education.

I’m No Longer A Googler

Conan O’Brien was here at Google last week.  In his opening remarks, he said,

You call yourself ’Googlers’? Is that it? Let’s address that.  We can do better than ‘Googler’.  Ok.  We need something cooler.  Especially for the guys when they walk into a bar.  ‘I’m-a-I’m-a Gooooglgllgleeer’ [you have to Conan’s voice]

Conan is right.  “Googler” is a goofy nickname.

Microsoft does it too.  Inside of Microsoft, they call each other “Microsofties”, or sometimes just “softies”.

What is it with tech companies needing diminutive, feminine, metro-sexual identities?  Is it part of being in some sort of cult?  I guess every successful group has to identify themselves somehow.

Conan did offer some suggestions (you can hear them in the video).  They weren’t very good either.

Anyway, from this point forward, I’m not a Googler anymore.  I still work at Google, but “Googler” is gone from my vocabulary.  Thanks Conan!

Who Would Be Crazy Enough to Lend Greece Money?

greece As the IMF prepares to hand $150B to Greece, you’ve got to wonder what they are thinking.  Greece has demonstrated that it is a financial mess.  When you lend someone money, you’ve got to see a path where they can pay you back, right?

First there is the issue of spending.  Greece has been spending crazy amounts of money for decades.  While the IMF hopes to require spending cuts, what confidence can any investor have that Greece will implement them?  Sadly, the Greeks have been caught lying about their finances in the past.  How do you lend money to a country where the leaders are fraudulent?

Second, there is the issue of revenue.  The IMF wants Greece to raise taxes on its people.  That seems like a good idea, except that Greece has had policies of not enforcing their own tax code for years.  Why would any investor believe that Greece will suddenly change, and that its people will finally start paying their bills?

So for you would be lenders out there, Greece has huge risk both in terms of cutting its spending and also in terms of increasing its revenues.  In my view, lending money with any expectation of payback is simply wishful thinking.  It’s not going to happen.

Finally, who are the lenders then?  Well, as usual, it all comes back to the United States.  While the US isn’t getting the full  $150B for this one, the US contribution as being part of the IMF will be a staggering $39B.  That’s right, while the Greeks are selfishly protesting tax increases in the streets and not even paying their own taxes, America is going to take another $39B loan to help them out.  Nice.  For the record, that means every working American gets a bill for ~$278.

You can guess what I think:  let them fail.