Welcome to the Daily Cow (Note: COW, not CAL), your daily source of bull, er, cow-related articles! As you enjoy your visit, ask yourself, who needs The Daily Cal when you have The Daily Cow (about us link)? Be sure to sign up or sign in and let your voice be heard! (or seen on the screen) You will be surprised how many things there are to learn about cows and how prevalent they are in our society.
Google's shopping website has a brand: Froogle.com. Bing Shopping on the other hand, is just another tab within bing.com. Arguably it is search related--but the focus on shopping is lost.
The solution for Bing is to develop a brand for its shopping website. Instead of bing.com/shopping, it should be Bling. Yes, that's right. Bling.com.
What do you think? The domain currently hosts ads so has no valuable use anyway.
There is reason for advanced economies to have entitlements. However, the size of those entitlements should not rise out of the potential for the current generation to pay them. Unfortunately, that's exactly what will happen in the near future--starting now. Medicare, social security (etc) are starting to become underfunded, and by 2020 will consume our entire government (100% of tax revenues at current rates). In fact, that day of reckoning may arrive faster with medical and health care costs skyrocketing.
The solution for a predictable entitlement-to-revenue ratio is to define retirement age dynamically--as the age such that the labor participation rate is constant (Something like 60%). By adjusting retirement age to keep the participation rate constant, and by capping per-capita payment growth to either the inflation rate or the fraction of per-capita GDP, the outflows for children (i.e. education) and retired people (social security) will be predictably constant. No more will the cost of entitlements spiral out of control.
As the general population ages, and as life expectancy rises, this will allow the more prosperous generation to work longer and be retired earlier (as a fraction of life span). It is not fair to pass the burden of your longer retirement onto your descendants; if you're retired for longer, you must work for longer (in aggregate).
Without some quick action, as Thomas Friedman said today in the NYT, what is happening in Greece and London is just a harbinger for what will happen in the United States as our demographics change to reflect an increasingly older population.
The run-up in commodity prices prior to the onset of the current recession was strongly driven by the quick appreciation of the Yuan during that time. The 21% appreciation in the Yuan effectively made commodities--oil, metals, the basic needs of an exploding industrial economy--relatively cheaper. That in conjunction with rising incomes caused one of the most dramatic climb in demand for those commodities.
During the recession, that climb paused as China paused its currency's appreciation and the global financial crisis sapped demand. However, as the world emerges from the current recession, demand will roar back to its previous levels. As a consequence, commodity prices will resume their rapid ascent.
In response to the resumption in growth globally, China will allow its currency to appreciate again, further pushing up demand, and hence prices, for commodities. It is clear that demand for ever-scarcer resources will not cease to rise. Sharp rises in commodity prices will only push up the price level in industrial economies, especially those that have generously minted money to cope with the recession. Lower-income workers, especially those that depend on commodity-intensive industries (construction, energy, transportation, etc) will be hit the hardest by the double-whammy of the rise in costs of business, and the subsequent erosion of their purchasing power.
But the rise in commodity prices--like the sharp rise in the price of oil in early 2008--is not the only force pushing inflation. A rise in the cost of imports, which (again) the lower-income workers depend on, will lower the effective living standards. Not only will imports from China be more expensive, but also those from Malaysia, India, even goods produced domestically. China's neighbors will undoubtedly let their currencies follow the Yuan as their fears of loss of competitiveness to China are mitigated. American producers, realizing that competition is less intense (higher import costs), will certainly raise prices to match demand.
Clearly, America's susceptibility to forces outside of its control demonstrate its loss of competitiveness. Potential consequences of changes in foreign demand for commodities and changes in exchange rates highlight its willful dependence on volatile inputs. America needs to demonstrate it has the political will to cope with the changing world.
Otherwise, rapid inflation is imminent. The trillions of dollars printed during the recession won't help.
Here is an excerpt from a superb article by Paul Krugman, highlighting the hypocrisy and misinformation of the critics:
What you hear from conservative opponents of a climate-change policy, however, is that any attempt to limit emissions would be economically devastating. The Heritage Foundation, for one, responded to Budget Office estimates on Waxman-Markey with a broadside titled, “C.B.O. Grossly Underestimates Costs of Cap and Trade.” The real effects, the foundation said, would be ruinous for families and job creation.
This reaction — this extreme pessimism about the economy’s ability to live with cap and trade — is very much at odds with typical conservative rhetoric. After all, modern conservatives express a deep, almost mystical confidence in the effectiveness of market incentives — Ronald Reagan liked to talk about the “magic of the marketplace.” They believe that the capitalist system can deal with all kinds of limitations, that technology, say, can easily overcome any constraints on growth posed by limited reserves of oil or other natural resources. And yet now they submit that this same private sector is utterly incapable of coping with a limit on overall emissions, even though such a cap would, from the private sector’s point of view, operate very much like a limited supply of a resource, like land. Why don’t they believe that the dynamism of capitalism will spur it to find ways to make do in a world of reduced carbon emissions? Why do they think the marketplace loses its magic as soon as market incentives are invoked in favor of conservation?
Clearly, conservatives abandon all faith in the ability of markets to cope with climate-change policy because they don’t want government intervention. Their stated pessimism about the cost of climate policy is essentially a political ploy rather than a reasoned economic judgment. The giveaway is the strong tendency of conservative opponents of cap and trade to argue in bad faith. That Heritage Foundation broadside accuses the Congressional Budget Office of making elementary logical errors, but if you actually read the office’s report, it’s clear that the foundation is willfully misreading it. Conservative politicians have been even more shameless. The National Republican Congressional Committee, for example, issued multiple press releases specifically citing a study from M.I.T. as the basis for a claim that cap and trade would cost $3,100 per household, despite repeated attempts by the study’s authors to get out the word that the actual number was only about a quarter as much.
A number of people and groups (President Obama, then members of Congress, and now the World Bank) have pressured the People's Bank to let the exchange rate move relative to the dollar, some more angry than others. If they had any knowledge of Chinese culture and history, they would realize that these calls are counterproductive.
The bankers in China realize that the exchange rate needs to change by the end of this year. However, they continue to assert that they will keep the Yuan-to-Dollar rate stable for four reasons, some more public than others:
China has let its currency appreciate in the past--starting the summer of 2006--as a part of its economic policy. The goal was to stifle the growth of asset bubbles and inflation. However, when the inflationary pressure disappeared in the summer of 2008, they stopped the appreciation. Instead, they turned to fiscal policy (a package whose total is a whopping 15% of their GDP) to support the world economy.
Now that the global financial crisis is over, and inflation is rising again, China will let its currency rise this year, but not as a result of foreign pressure. The best action for China is to assure President Obama privately that the Yuan will start appreciating before summer, at 5% a year for at least four years, but not because of foreign pressure. In the mean time, China should slowly unwind is positions in dollar assets before they depreciate any further--enough to get out of major positions, but not quickly enough to startle the markets.
In the long run, an appreciation of 20% in the Yuan-to-Dollar exchange rate will have negligible effects on the Yuan with respect to other currencies. China will move up the terms-of-trade scale, and other currencies (Japanese Yen and the Euro) will continue to be strong because of Japan and Germany. The Dollar's decline is only a sign of America's loss of competitiveness.
The currency problem is not one where the People's Bank has good options. Either way, it will lead to a massive capital loss; and it will have to balance employment and inflation (and pissing off trading partners), yet ward off speculators. Hopefully western legislators' lack of understanding of China does not lead to a trade war--that would benefit nobody.
Every point I lose on a test can be categorized into one (or more) of the following:
Some things can be addressed with practice (careless, capacity and conflict misses). Some things can be addressed with review (capacity and conflict). Some things require extra work (compulsory misses). Some things require vigilance (conflict and consistency misses).
But there are trade-offs with each. It's a matter of where you are weakest, and how you are most effective.
What do you think? Did I cover all the basic ground with these categories? (You can tell I modeled this on the types of cache misses)
Dailycow got spammed a couple times recently. Registrations now require admin approval so if you want to register to comment, contact me.
I'm doing some research work that involves heavy work with the Java string classes (I have IBM Java), and I was trying to determine concretely (besides synchronization and such) the differences between StringBuffer and StringBuilder. I replaced "StringBuffer" with "StringBuilder" in StringBuffer.java and then diffed them. The subsequent confusion led to an interesting discovery.
Before I go there, here's a brief summary for those of you with modest Java experience: StringBuilder is similar to StringBuffer in that it can be used to dynamically build strings of indeterminate length. The main difference is that StringBuilder, which came later (Java 1.5), is not synchronized (meaning that multiple threads could cause objects to act unexpectedly--a risk that pays for some level of performance), unlike StringBuffer. But since I was dealing with them at the code level, I needed to know more deeply where they differ.
Back to the topic: Check out the following excerpts from StringBuilder.java:
The constructor:
/**
* Constructs a new StringBuffer using the default capacity.
*/
public StringBuilder() {
this(INITIAL_SIZE);
}
A normal method copied from StringBuffer:
/**
* Optionally modify the underlying char array to only
* be large enough to hold the characters in this StringBuffer.
*/
public void trimToSize() {
if (!shared && value.length != count) {
char[] newValue = new char[count];
System.arraycopy(value, 0, newValue, 0, count);
value = newValue;
}
}
Another method copied directly from StringBuffer:
/**
* Adds the specified code point to the end of this StringBuffer.
*
* @param codePoint the code point
* @return this StringBuffer
*/
public StringBuilder appendCodePoint(int codePoint) {
if (codePoint >= 0) {
if (codePoint < 0x10000) {
return append((char)codePoint);
} else if (codePoint < 0x110000) {
if (count + 2 > value.length) {
ensureCapacityImpl(count + 2);
}
codePoint -= 0x10000;
value[count] = (char)(0xd800 + (codePoint >> 10));
value[count+1] = (char)(0xdc00 + (codePoint & 0x3ff));
count += 2;
return this;
}
}
throw new IllegalArgumentException();
}
If it's not apparent yet, what's clear is that the authors of IBM Java 5 copied-and-pasted StringBuffer into StringBuilder--word for word, including comments--and changed some variable names until the red underlines (from syntax errors) disappeared, and forgot about the comments.
Interesting discovery. I'm not sure what the lesson here is. I suppose enterprise developers are also lazy and forgetful.
This is the seed for the second wave of economic modernization in China, set to take over the declining role of dirty industry.
Recent comments
2 weeks 2 days ago
4 weeks 6 days ago
4 weeks 6 days ago
18 weeks 4 days ago
18 weeks 6 days ago
23 weeks 3 days ago
23 weeks 3 days ago
35 weeks 3 days ago
35 weeks 6 days ago
36 weeks 1 day ago