A few weeks ago, I finally got around to watching the vice presidential debate. I missed seeing it live, so I decided to watch it online. I didn't get very far. After no more than 10 minutes, I was so disgusted I had to turn it off. It wasn't a debate in the true sense of the word. It was just a forum for creating sound bites. Sound bites that the media can play, devoid of context, to elicit a visceral reaction in the viewer. The game the candidates must play about choosing their words carefully enough in their non-answers to minimize the number of damaging sound bites created and maximize the number of good ones.
I'm simply not interested in this game. I'm interested in real issues--like whether we should pull out of Iraq. These issues are not things like, "he's soft on terrorism because he wants to withdraw". It's things like the fact that we couldn't do anything meaningful about Russian aggression in South Ossetia because our military resources are all tied up. And how this is a symptom of a serious lack of tactical options to support important strategic goals.
So I realized that this all goes back to my essay from two years ago. Maybe now that the election is behind us we can get to a discussion of real issues. Although the saddest part is that we couldn't do it when it mattered.
Wednesday, November 05, 2008
Friday, August 10, 2007
Managing Multiple Large Monitors
The Coding Horror blog recently talked about the Large Monitor Paradox. They discuss a variety of difficulties associated with efficiently taking advantage of multiple large monitors. My solution is better than anything I saw there. On my desk at work, I have two large monitors, one is 24" and one is 23". My solution is that they are connected to two different computers. But they behave as if they are one computer thanks to the magic of Synergy. Synergy is a wonderful open source project that allows you to control two computers with one keyboard and mouse. It works with Windows, Linux/Unix, and Mac. It even merges the clipboards allowing you to cut text from one machine and paste to another.
This solution solves several problems. First, since you only have one monitor connected to each machine, you don't have problems with software not playing nicely with multiple monitors, and windows are never split across screens. If your monitors are large, you can have some of the problems that Coding Horror mentions with maximized windows being too big. In Linux, Gnome virtual desktops allow me to place windows on different desktops so I can effectively show/hide multiple windows instantly. This combined with the fact that I stick to a small number of basic window layouts means that I spend virtually zero time managing my windows.
On top of all this, I have twice the computing power that I would have if I was using multi-head on a single computer. This is very useful for me because the projects I work on tend to require lots of it. I do have to admit that money is definitely a factor here. Fortunately, it's not much of a concern where I work. On a limited budget the situation is a little different, but still fairly doable. Instead of adding a monitor, add a computer. Instead of upgrading/replacing a computer, add a computer. If you absolutely don't need the extra computing power or flexibility of having two machines, then two dual head may be the best for you. But at least be aware of the power of Synergy.
This solution solves several problems. First, since you only have one monitor connected to each machine, you don't have problems with software not playing nicely with multiple monitors, and windows are never split across screens. If your monitors are large, you can have some of the problems that Coding Horror mentions with maximized windows being too big. In Linux, Gnome virtual desktops allow me to place windows on different desktops so I can effectively show/hide multiple windows instantly. This combined with the fact that I stick to a small number of basic window layouts means that I spend virtually zero time managing my windows.
On top of all this, I have twice the computing power that I would have if I was using multi-head on a single computer. This is very useful for me because the projects I work on tend to require lots of it. I do have to admit that money is definitely a factor here. Fortunately, it's not much of a concern where I work. On a limited budget the situation is a little different, but still fairly doable. Instead of adding a monitor, add a computer. Instead of upgrading/replacing a computer, add a computer. If you absolutely don't need the extra computing power or flexibility of having two machines, then two dual head may be the best for you. But at least be aware of the power of Synergy.
Sunday, February 25, 2007
The People Factor: Why Startups Succeed Where Big Corporations Fail
Since the dot-com bubble, there has been increased discussion of startup companies, the differences between them and larger companies, and why they are frequently capable of producing superior products. I would like to submit that the fundamental difference between startups and non-startups is the lens through which they view their employees. Startups are designed to succeed BECAUSE OF their employees, while large companies are designed to succeed IN SPITE OF their employees.
To understand why this is the case, we need to understand what has shaped the modern American worker. In his book Democracy in America, Alexis de Tocqueville observed, "As the conditions of men constituting the nation become more and more equal, the demand for manufactured commodities becomes more general and extensive; and the cheapness which places these objects within the reach of slender fortunes becomes a great element of success." This phenomenon drove the mass production boom of the early 20th century. Mass production taken to extremes essentially reduced the worker to a robot. This is the worker that corporations have become used to.
The transition from the Industrial Age to the Information Age has totally changed the nature of mass production. No longer does physical production and distribution constitute the majority of a product's total cost [1]. With the Internet, products can be copied and delivered for practically nothing. Almost the entire cost of these products is their design. The first cars could be designed and built by a single person. Now it takes hundreds or even thousands of man-years to develop a software product. This fundamental change in the product cost breakdown has caused an increase in the demand for skilled labor.
With unskilled labor, succeeding in spite of your employees is a good thing. Assembly lines set the pace of the workers. Fast workers don't improve anything, and slow workers can't hide. As long as the employee meets a certain minimum threshold, the employer is happy. But skilled labor in the Information Age is very different. Two things have changed. First, variations in worker productivity can now make a big difference to the company. And second, worker productivity has become harder to measure [2]. In this climate, incentives become much more important to decreasing cost, increasing productivity, and improving a company's bottom line.
Corporate practices haven't caught up with the transition from unskilled to skilled labor. The economies of scale that have driven corporate expansion have bred a large workforce chosen indiscriminately. Back in the second industrial revolution almost anyone could perform repetitive mass-production tasks. But now, even entry-level coders writing boilerplate code need a comparatively significant amount of education. Instead of improving how they choose and relate to their workers, large companies have focused on improving process to reduce risk. This is just a fancy (and nicer sounding) restatement of my original premise--that companies are designed to succeed in spite of their employees. What they should be doing is restructuring their companies so their products succeed because they have good people who are given good incentives to produce to their full potential.
There are a few exceptions to this phenomenon. Google is probably the most recognized--due to it's conspicuous search for intelligent employees. Before them there was Microsoft, which was once known as large brain trust. These tech companies have made the transition, but the large part of corporate America hasn't. I believe that this is the single biggest problem facing today's companies. But even tech companies that have gotten it right are not immune to the problem. The recent release of Windows Vista was years behind schedule and devoid of promised features. So there must be more to it than just hiring smart people.
First, once you have smart people, you have to keep them. To keep them, you have to treat them well and keep them happy. There are no shortcuts or tricks you can play to accomplish this. That's the one downside to hiring smart people. They're harder to fool, and will be keenly aware of when their employer is not harnessing their full potential. This brings us to the second problem. Even after a company has succeeded in hiring smart people and making them happy, it is still difficult to resist the tug of the old corporate mindset. As Microsoft has demonstrated, even decent hiring practices have trouble offsetting the creep of unmanageable bureaucracy due to the pervasive big corporate mentalities and culture. I think this is because the old corporate influence is still lurking all over. Any of the many secondary (to the product) departments (i.e. HR) that still do things the old way tend to spread their policies into the people and departments they interact with.
The fact that companies are resisting this change is one of the biggest factors contributing to the surge of startups. The smart people are seeing the opportunity and taking it. They're tired of punching a clock for a pointy-haired boss who doesn't understand. They want to be treated like they are part of the solution, not part of the problem.
[1] When I refer to products and companies, I'm primarily referring to the products and companies in the information industry. There are definitely a host of manufacturing jobs to which my comments here do not apply.
[2] Some skilled jobs still have easily measurable productivity, for example the mechanics who assemble Ford Cobra engines by hand. But information industry jobs do not.
To understand why this is the case, we need to understand what has shaped the modern American worker. In his book Democracy in America, Alexis de Tocqueville observed, "As the conditions of men constituting the nation become more and more equal, the demand for manufactured commodities becomes more general and extensive; and the cheapness which places these objects within the reach of slender fortunes becomes a great element of success." This phenomenon drove the mass production boom of the early 20th century. Mass production taken to extremes essentially reduced the worker to a robot. This is the worker that corporations have become used to.
The transition from the Industrial Age to the Information Age has totally changed the nature of mass production. No longer does physical production and distribution constitute the majority of a product's total cost [1]. With the Internet, products can be copied and delivered for practically nothing. Almost the entire cost of these products is their design. The first cars could be designed and built by a single person. Now it takes hundreds or even thousands of man-years to develop a software product. This fundamental change in the product cost breakdown has caused an increase in the demand for skilled labor.
With unskilled labor, succeeding in spite of your employees is a good thing. Assembly lines set the pace of the workers. Fast workers don't improve anything, and slow workers can't hide. As long as the employee meets a certain minimum threshold, the employer is happy. But skilled labor in the Information Age is very different. Two things have changed. First, variations in worker productivity can now make a big difference to the company. And second, worker productivity has become harder to measure [2]. In this climate, incentives become much more important to decreasing cost, increasing productivity, and improving a company's bottom line.
Corporate practices haven't caught up with the transition from unskilled to skilled labor. The economies of scale that have driven corporate expansion have bred a large workforce chosen indiscriminately. Back in the second industrial revolution almost anyone could perform repetitive mass-production tasks. But now, even entry-level coders writing boilerplate code need a comparatively significant amount of education. Instead of improving how they choose and relate to their workers, large companies have focused on improving process to reduce risk. This is just a fancy (and nicer sounding) restatement of my original premise--that companies are designed to succeed in spite of their employees. What they should be doing is restructuring their companies so their products succeed because they have good people who are given good incentives to produce to their full potential.
There are a few exceptions to this phenomenon. Google is probably the most recognized--due to it's conspicuous search for intelligent employees. Before them there was Microsoft, which was once known as large brain trust. These tech companies have made the transition, but the large part of corporate America hasn't. I believe that this is the single biggest problem facing today's companies. But even tech companies that have gotten it right are not immune to the problem. The recent release of Windows Vista was years behind schedule and devoid of promised features. So there must be more to it than just hiring smart people.
First, once you have smart people, you have to keep them. To keep them, you have to treat them well and keep them happy. There are no shortcuts or tricks you can play to accomplish this. That's the one downside to hiring smart people. They're harder to fool, and will be keenly aware of when their employer is not harnessing their full potential. This brings us to the second problem. Even after a company has succeeded in hiring smart people and making them happy, it is still difficult to resist the tug of the old corporate mindset. As Microsoft has demonstrated, even decent hiring practices have trouble offsetting the creep of unmanageable bureaucracy due to the pervasive big corporate mentalities and culture. I think this is because the old corporate influence is still lurking all over. Any of the many secondary (to the product) departments (i.e. HR) that still do things the old way tend to spread their policies into the people and departments they interact with.
The fact that companies are resisting this change is one of the biggest factors contributing to the surge of startups. The smart people are seeing the opportunity and taking it. They're tired of punching a clock for a pointy-haired boss who doesn't understand. They want to be treated like they are part of the solution, not part of the problem.
[1] When I refer to products and companies, I'm primarily referring to the products and companies in the information industry. There are definitely a host of manufacturing jobs to which my comments here do not apply.
[2] Some skilled jobs still have easily measurable productivity, for example the mechanics who assemble Ford Cobra engines by hand. But information industry jobs do not.
Friday, November 03, 2006
Political Pandering
One thing I can't stand is political pandering. By that, I'm talking about when politicians make fallacious arguments because they sound good and play on the ignorance of the masses to garner support. This tactic is frequently used to cast a negative light on the opponent. It has been used to boost all kinds of positions both right and wrong. Most recently, it has been used by President George W. Bush in an attempt to discredit democrats leading up to the midterm election. In his speeches supporting various republican candidates, he frequently slams the democrats for being soft on terrorism.
In response, I'm thinking of running for congress, or maybe president for that matter. My platform will be that we should nuke all who stand in our way. That's right, nuke 'em. These terrorists hate our guts and want to kill us. If we don't get them, they'll get us. The great thing about this platform is that the things Bush has been saying support it. With the republicans focusing on being tough on terror added to my own claims that both the republicans and democrats are soft on terror, I can't lose. In fact, we wouldn't even need to have an election. We'll just declare me the winner. What? Did you say it's not a good idea to nuke all the terrorists? Of course it is. We have to be tough on terror.
This reasoning is obviously flawed. And the exact same flaw is present in Bush's argument. Bush is conveniently ignoring the fact that being hard on terror affects a lot more people than just the terrorists. Medical professionals should know this well. Pretty much every drug out there does more than just cure. These extra effects are known as side effects. The real question is not whether the drug cures the problem, but whether the cure is better than the side effects.
To extend my satire to the medical analogy let's say terrorism is our national flu. Nuking all the terrorists would be equivalent to committing suicide. End result: no more flu. Side effect: no more us. Well, if the world didn't nuke us, they would certainly be outraged. Bush's policy is more like taking some medicine that cures the flu but leaves us with cancer--the loss of our freedoms (see NSA wiretapping, and suspension of habeas corpus). What we need to find is a political flu shot that is relatively free of side effects.
The republicans aren't the only ones guilty of political pandering. Back in the last election, democrats criticize the war in Iraq by saying that there was no connection between Saddam and bin Laden. This argument just states something obvious with the intent of misdirection. We didn't need proof that Saddam and Osama were childhood pals to still have good reason to go to war. I'm not going to get into that discussion here. The point is not whether going to war was right or wrong, but that the stated argument was flawed. But it was another one of those arguments that sounds good enough to get support from the masses.
So I say to all politicians, stop pandering and give us real arguments. Or, if you don't have any real arguments, admit that you made a mistake and make changes. We'll think better of you for it.
In response, I'm thinking of running for congress, or maybe president for that matter. My platform will be that we should nuke all who stand in our way. That's right, nuke 'em. These terrorists hate our guts and want to kill us. If we don't get them, they'll get us. The great thing about this platform is that the things Bush has been saying support it. With the republicans focusing on being tough on terror added to my own claims that both the republicans and democrats are soft on terror, I can't lose. In fact, we wouldn't even need to have an election. We'll just declare me the winner. What? Did you say it's not a good idea to nuke all the terrorists? Of course it is. We have to be tough on terror.
This reasoning is obviously flawed. And the exact same flaw is present in Bush's argument. Bush is conveniently ignoring the fact that being hard on terror affects a lot more people than just the terrorists. Medical professionals should know this well. Pretty much every drug out there does more than just cure. These extra effects are known as side effects. The real question is not whether the drug cures the problem, but whether the cure is better than the side effects.
To extend my satire to the medical analogy let's say terrorism is our national flu. Nuking all the terrorists would be equivalent to committing suicide. End result: no more flu. Side effect: no more us. Well, if the world didn't nuke us, they would certainly be outraged. Bush's policy is more like taking some medicine that cures the flu but leaves us with cancer--the loss of our freedoms (see NSA wiretapping, and suspension of habeas corpus). What we need to find is a political flu shot that is relatively free of side effects.
The republicans aren't the only ones guilty of political pandering. Back in the last election, democrats criticize the war in Iraq by saying that there was no connection between Saddam and bin Laden. This argument just states something obvious with the intent of misdirection. We didn't need proof that Saddam and Osama were childhood pals to still have good reason to go to war. I'm not going to get into that discussion here. The point is not whether going to war was right or wrong, but that the stated argument was flawed. But it was another one of those arguments that sounds good enough to get support from the masses.
So I say to all politicians, stop pandering and give us real arguments. Or, if you don't have any real arguments, admit that you made a mistake and make changes. We'll think better of you for it.
Tuesday, February 15, 2005
Enablers of 9/11
A comment entitled Terrorism vs. Sabotage in the February 15, 2005 issue of Bruce Schneier's Cryptogram newsletter caught my attention. Here is the most relevant part of the comment:
I had never thought of it like that before. To be sure, I have often mused on various things I think are wrong with the media, but I have never before considered the enormity of its contribution to the affects of terrorism. Consider for a moment what terrorism would accomplish in...say...the 18th century. Let's just give the terrorists the benefit of the doubt and assume that they still had powerful explosives like we have today. So, imagine they blow up some large building with lots of people. About all they would acheive in the 18th century would be a destroyed building and some dead people. The widespread publicity of the terrorists' cause would not be accomplished because news of the attack would not spread quickly.
When you look at it this way, terrorism could only be a recent phenomenon, made possible by mass-communication technology. Does this change the media's responsibilities when it comes to terrorism? I'm not about to advocate censorship here, but voluntary suppression of terrorism stories on the part of media organizations has the potential to make it much more difficult for terrorism to accomplish it's intended goal. But is that right? Does the media have a moral obligation to report everything?
Terrorism is dependent on the value of *terror*, which can be communicated only in the media
I had never thought of it like that before. To be sure, I have often mused on various things I think are wrong with the media, but I have never before considered the enormity of its contribution to the affects of terrorism. Consider for a moment what terrorism would accomplish in...say...the 18th century. Let's just give the terrorists the benefit of the doubt and assume that they still had powerful explosives like we have today. So, imagine they blow up some large building with lots of people. About all they would acheive in the 18th century would be a destroyed building and some dead people. The widespread publicity of the terrorists' cause would not be accomplished because news of the attack would not spread quickly.
When you look at it this way, terrorism could only be a recent phenomenon, made possible by mass-communication technology. Does this change the media's responsibilities when it comes to terrorism? I'm not about to advocate censorship here, but voluntary suppression of terrorism stories on the part of media organizations has the potential to make it much more difficult for terrorism to accomplish it's intended goal. But is that right? Does the media have a moral obligation to report everything?
Friday, January 14, 2005
Statement of Intent
I am creating this blog to provide a forum for thoughts. As the site name suggests, I believe there is great potential in a free exchange of ideas. There are many things that I feel very strongly about. However, I may or may not be right. When opposing views are debated by people who are willing to admit they're wrong, great things can happen. Hopefully this will result in compounded thought with all participants being better for having partaken.
Subscribe to:
Posts (Atom)