Saturday, May 10, 2014
Sunday, April 6, 2014
Interacting with technology
I've been thinking about different ways of interacting with technology. I break the roles down into five categories:
With most mechanical and electronic devices, I am an Operator. With cars, I am an Operator and a weak Technician. I can drive drive pretty well and handle situations I haven't been trained for. I can also do very basic diagnostics and repairs. With electronic devices, I'm a more advanced Operator; I can figure out how to operate most electronics effectively without any training. I'm still only a weak Technician.
The only case I can think of where I might be something akin to a Scientist is running experiments (i.e. A/B tests) on users to derive principles about their behavior.
Obviously the most dominant role in my professional life is that of an Engineer. I produce novel systems to reliably solve a set of problems. This has been dominated of late by working through others, but I don't think that diminishes it (certainly not in the hands-on way I do it).
What's interesting is that even as an Engineer, one can also play the roles of User, Operator, and Technician. A lot of Engineers build systems that contain useful technology built by other people. It's almost impossible to avoid that these days. Depending on how sophisticated their usage is, they could be either Users, Operators, or Technicians.
A lot of valuable and interesting businesses and products are built this way. I wonder about Engineers who are happy building systems where the all the technically interesting stuff was invented by other people. I personally would be bored out of my mind. At my job, I get to invent new systems that didn't previously exist to solve problems that either weren't solved at all or were solved poorly. That's what keeps it interesting.
Update: after thinking about this for another 6 months, I realized Operator and Technician are two different roles and updated this to reflect that.
- User - knows how to follow a specific series of steps to produce specific outcomes
- Operator - has a mental model of the system that she can use to come up with new processes that produce outcomes outside of her instructions
- Technician - has a more powerful mental model of the system that she can use to diagnose malfunctions, open up the system, and make a limited set of alterations to improve its functioning
- Scientist - discovers new principles and proves the possibility of new concepts
- Engineer - applies principles and concepts to produce a novel system to reliably solve a set of problems
With most mechanical and electronic devices, I am an Operator. With cars, I am an Operator and a weak Technician. I can drive drive pretty well and handle situations I haven't been trained for. I can also do very basic diagnostics and repairs. With electronic devices, I'm a more advanced Operator; I can figure out how to operate most electronics effectively without any training. I'm still only a weak Technician.
The only case I can think of where I might be something akin to a Scientist is running experiments (i.e. A/B tests) on users to derive principles about their behavior.
Obviously the most dominant role in my professional life is that of an Engineer. I produce novel systems to reliably solve a set of problems. This has been dominated of late by working through others, but I don't think that diminishes it (certainly not in the hands-on way I do it).
What's interesting is that even as an Engineer, one can also play the roles of User, Operator, and Technician. A lot of Engineers build systems that contain useful technology built by other people. It's almost impossible to avoid that these days. Depending on how sophisticated their usage is, they could be either Users, Operators, or Technicians.
A lot of valuable and interesting businesses and products are built this way. I wonder about Engineers who are happy building systems where the all the technically interesting stuff was invented by other people. I personally would be bored out of my mind. At my job, I get to invent new systems that didn't previously exist to solve problems that either weren't solved at all or were solved poorly. That's what keeps it interesting.
Update: after thinking about this for another 6 months, I realized Operator and Technician are two different roles and updated this to reflect that.
Labels: deep thoughts
Monday, October 7, 2013
DSLR
If you've looked at the kids' blogs lately, you may have noticed them looking even more beautiful than before. DSLRs are magic.
Sunday, October 14, 2012
Maximizing your earnings from stock options
tl;dr: you need to avoid short-term capital gains because the taxes will destroy much of your gains. This means exercising as much as you can as early as you can, if you are confident that it's a good investment.
Disclaimer: I'm not a tax lawyer, accountant, or otherwise qualified to give reliable tax advice. This is not meant to be a comprehensive primer on what stock options are or how they work; there's plenty of information available elsewhere. If you choose to act on anything I describe here, confirm with a proper tax adviser that what I say is correct, up to date, and makes sense for your personal situation.
When you begin working at a startup, you may be given a grant of stock options. You need to know what they're worth. You actually need to know this before you accept the offer. It's part of your compensation, after all. I'm not going to try to describe how to do that right now; it's involved, even in brief form, and fraught with ambiguity. I'm also not going to explain what stock options are; there's tons of information already out there, and I strongly urge you to research it. Don't just stick that options grant paperwork into a drawer somewhere and forget about; it may cost you dearly.
The very first thing you need to do is to stockpile some cash. You need to have the cash necessary to exercise your options at will. News may come without warning, and you want to have the ability to take advantage of it. You also need some extra cash to deal with tax liability (see below). Lacking this cash on hand will force you into strategies that fail to maximize your return.
Let's just suppose that you know what the shares are worth, and you have some reasonable expectation of what they'll be worth a few years down the road. If you're not confident that the shares will be worth several times your strike price, sit tight and do nothing. However, if you are confident that they are worth 2-3 times your strike price, it's time to start doing something.
The multiple at which you do something is related to how soon you're likely to be able to liquidate. If you think the shares are worth 50% more than your strike price, and your employer is having an IPO in 2 months, you want to do something right away. If it's only 2x your strike price, and any kind of liquidity event is likely years away, you may want to hold off. You want to do this to build in some protection against misfortune, and also because your tax liability isn't likely to be that great with just 2x. Valuations can go down as well.
The first thing to establish is whether your stock options can be exercised before they're vested. If they are, this process can be easy. If not, then you need to manage the process more directly. There's a component of the Alternative Minimum Tax that that relates to stock options. There's a lot of information available on this as well. The key idea is that buying stock below its "fair value" forces you to recognize the difference between your price and its fair value as income. If your AMT liability exceeds the taxes you owe as part of the standard income tax, you have to pay extra when doing your taxes for that year (you also have to file some stuff; read up on 83(b) and AMT).
There is a huge, huge thing to know about the AMT. This is something I did not know, and that bit of ignorance has been enormously costly. This essential bit of information: if you pay AMT as a result of exercising stock options, you can get it back later. Again, I'm not a tax lawyer or an attorney, but you can find a lot of support for this.
If you spread your exercises over multiple tax years, you'll avoid or reduce your AMT liability in each year. This obviously saves you money up front. However, the later you wait to exercise, the more likely your investment will end up being a short-term one, and thus getting taxed at the normal income tax rate. If you exercise all of your options as early as possible, you will likely pay a much higher alternative minimum tax in that year.
However, and this is the crucial part, you will maximize the chances of holding those shares for the year and a day required to consider them long-term investments, and you will get that money back. You're basically loaning the IRS some money at 0%.
That's a lot better than paying an extra 25% to 30% of your capital gain. The 2012 top tax rate is 35%, turning to 39.6% in 2013. Those apply to short-term gains, while it's only 15% for long term gains. Avoiding 25%-30% in taxes is like getting +33% to +43% return on your investment. Note that this is far different from evading your taxes. The government wants you to hold investments for a long time; that's why they have a lower tax rate.
Returning to the question of whether you can exercise unvested shares. If you can exercise them, and you're confident of their long-term value, exercise as soon as you can. You will have to pay extra taxes up front, but you can get that money back. If you leave the company, even involuntarily, they have to give you your money back for whatever was not vested at the time of departure.
If you cannot exercise unvested options, try to exercise in quarterly tranches. Vesting is usually monthly, but quarterly is close enough. Annually isn't good enough. That means more paperwork, but every time you do so, you're increasing the chances of turning your investment into a long-term one. If doing this saves you $500 each time, it's easily worth it.
Disclaimer: I'm not a tax lawyer, accountant, or otherwise qualified to give reliable tax advice. This is not meant to be a comprehensive primer on what stock options are or how they work; there's plenty of information available elsewhere. If you choose to act on anything I describe here, confirm with a proper tax adviser that what I say is correct, up to date, and makes sense for your personal situation.
When you begin working at a startup, you may be given a grant of stock options. You need to know what they're worth. You actually need to know this before you accept the offer. It's part of your compensation, after all. I'm not going to try to describe how to do that right now; it's involved, even in brief form, and fraught with ambiguity. I'm also not going to explain what stock options are; there's tons of information already out there, and I strongly urge you to research it. Don't just stick that options grant paperwork into a drawer somewhere and forget about; it may cost you dearly.
The very first thing you need to do is to stockpile some cash. You need to have the cash necessary to exercise your options at will. News may come without warning, and you want to have the ability to take advantage of it. You also need some extra cash to deal with tax liability (see below). Lacking this cash on hand will force you into strategies that fail to maximize your return.
Let's just suppose that you know what the shares are worth, and you have some reasonable expectation of what they'll be worth a few years down the road. If you're not confident that the shares will be worth several times your strike price, sit tight and do nothing. However, if you are confident that they are worth 2-3 times your strike price, it's time to start doing something.
The multiple at which you do something is related to how soon you're likely to be able to liquidate. If you think the shares are worth 50% more than your strike price, and your employer is having an IPO in 2 months, you want to do something right away. If it's only 2x your strike price, and any kind of liquidity event is likely years away, you may want to hold off. You want to do this to build in some protection against misfortune, and also because your tax liability isn't likely to be that great with just 2x. Valuations can go down as well.
The first thing to establish is whether your stock options can be exercised before they're vested. If they are, this process can be easy. If not, then you need to manage the process more directly. There's a component of the Alternative Minimum Tax that that relates to stock options. There's a lot of information available on this as well. The key idea is that buying stock below its "fair value" forces you to recognize the difference between your price and its fair value as income. If your AMT liability exceeds the taxes you owe as part of the standard income tax, you have to pay extra when doing your taxes for that year (you also have to file some stuff; read up on 83(b) and AMT).
There is a huge, huge thing to know about the AMT. This is something I did not know, and that bit of ignorance has been enormously costly. This essential bit of information: if you pay AMT as a result of exercising stock options, you can get it back later. Again, I'm not a tax lawyer or an attorney, but you can find a lot of support for this.
If you spread your exercises over multiple tax years, you'll avoid or reduce your AMT liability in each year. This obviously saves you money up front. However, the later you wait to exercise, the more likely your investment will end up being a short-term one, and thus getting taxed at the normal income tax rate. If you exercise all of your options as early as possible, you will likely pay a much higher alternative minimum tax in that year.
However, and this is the crucial part, you will maximize the chances of holding those shares for the year and a day required to consider them long-term investments, and you will get that money back. You're basically loaning the IRS some money at 0%.
That's a lot better than paying an extra 25% to 30% of your capital gain. The 2012 top tax rate is 35%, turning to 39.6% in 2013. Those apply to short-term gains, while it's only 15% for long term gains. Avoiding 25%-30% in taxes is like getting +33% to +43% return on your investment. Note that this is far different from evading your taxes. The government wants you to hold investments for a long time; that's why they have a lower tax rate.
Returning to the question of whether you can exercise unvested shares. If you can exercise them, and you're confident of their long-term value, exercise as soon as you can. You will have to pay extra taxes up front, but you can get that money back. If you leave the company, even involuntarily, they have to give you your money back for whatever was not vested at the time of departure.
If you cannot exercise unvested options, try to exercise in quarterly tranches. Vesting is usually monthly, but quarterly is close enough. Annually isn't good enough. That means more paperwork, but every time you do so, you're increasing the chances of turning your investment into a long-term one. If doing this saves you $500 each time, it's easily worth it.
Wednesday, August 8, 2012
Sunday, July 15, 2012
Wednesday, June 27, 2012
Sunday, April 29, 2012
The purpose of a college education
The standard parent answer for the value of a college education is that you get one to get a job*. Blech. College is not a vocational school. Another common answer is that it's to learn, which is true but not particularly useful. There are all kinds of learning, and not all of them are of equal value.
The best answer that I have come up with is that a college education** is the best way to get control over your own destiny. You're just one person in a world of 7 billion governed by forces much bigger than you.
Without a solid, advanced education, you don't understand how that world works. You don't have much value to bargain with, so you're at the mercy of others. It's harder for you discover what it is that is most significant and meaningful to you, so it's harder for you to find your satisfaction.
* The standard Indian parent answer is that forma education is an end in and of itself, to the point of advocating it even when it is not worth it. Well, at least some educated Indian parents. Hmm. I sense a circularity.
** a well-rounded one where you also specialize in something meaningful and useful, not a BS major like communications. Sidebar: what's not a phony major? A real major needs to combine theory and practice. Pure theory is wanking. Pure application is vocational school (which has its place, but not at a university). And "useful" is defined as something that adds to the collective sum of human prosperity. It might be intrinsically useless, but it can also be made useless by circumstances if it's not economically viable for you to practice it.
The best answer that I have come up with is that a college education** is the best way to get control over your own destiny. You're just one person in a world of 7 billion governed by forces much bigger than you.
Without a solid, advanced education, you don't understand how that world works. You don't have much value to bargain with, so you're at the mercy of others. It's harder for you discover what it is that is most significant and meaningful to you, so it's harder for you to find your satisfaction.
* The standard Indian parent answer is that forma education is an end in and of itself, to the point of advocating it even when it is not worth it. Well, at least some educated Indian parents. Hmm. I sense a circularity.
** a well-rounded one where you also specialize in something meaningful and useful, not a BS major like communications. Sidebar: what's not a phony major? A real major needs to combine theory and practice. Pure theory is wanking. Pure application is vocational school (which has its place, but not at a university). And "useful" is defined as something that adds to the collective sum of human prosperity. It might be intrinsically useless, but it can also be made useless by circumstances if it's not economically viable for you to practice it.
Wednesday, April 11, 2012
Sunday, April 1, 2012
Sunday, March 18, 2012
The far corners of the Earth
I am fascinated by extremely remote places. I want to visit them. Specific destinations I have in mind:
I don't know why they fascinate me; most of them are quite cold. There are other places that I've come across in Wikipedia that I can't remember.
- Kerguelen Island in the South Indian Ocean
- Inaccessible Island in the South Atlantic Ocean
- Svalbard in the Barents Sea
- Socotra in the Arabian Sea
- Baffin Island in Northern Canada
- The Yenisei River in Russia
- The Amu Darya River in Central Asia
- Haida Gwaii in Northwestern British Columbia.
- Burketown, Australia, which is apparently the best place to see Morning Glory clouds
- The Wakhan Corridor, that narrow strip of land at the very northwestern part of Afghanistan that connects it to China
I don't know why they fascinate me; most of them are quite cold. There are other places that I've come across in Wikipedia that I can't remember.
Saturday, March 3, 2012
Not stupid: 640K ought to be enough for anybody
Supposedly, Bill Gates once said, "640K ought to be enough for anybody." Maybe he said it, maybe he didn't. Let's say he said it. Also ignore that the decision decision wasn't entirely his; IBM had their own requirements.
Anyway, he got ridiculed for it, but it was actually a pretty sane decision. The target microprocessor only supported 20-bit addresses, meaning it could deal with at most 1MB of RAM. The 640K of RAM was for OS and application stuff, leaving 384K for supporting services like video. You could argue that the line should have been drawn in a different place, but the implication of those mocking that quote is that he could have avoided drawing a line.
Okay, so it's 1981, and you're working on this operating system for the original IBM PC. You have an easy way to support 640K of RAM. Do you stick to that or go for the fancy way of doing things that allows you to use more? If you go the fancy route, you:
The last part is the most important one. The machine supported 64KB RAM standard and 256KB if you maxed it out. Nobody had experience with a PC-like system that needed much more RAM than that. They could have guessed what future systems would need, and they'd probably be wrong. Not only would they be wrong, but they'd be wrong and boxed into a naive, ignorant implementation.
Better to kick that can down the road to a time when they needed to solve it. Waiting until then isn't (just) lazy, it's also a way to increase the chances of solving the problem right, because waiting until you need something generally means you end up with a pretty good idea of what you need.
"640K ought to be enough for anybody who's running DOS." If they get to a point where they need more than that, they're already so far beyond DOS's design that the 640K RAM limitation will be only one of multiple. Why eliminate just one of the blockers to that future user? It costs more now, costs more later, and doesn't even help. There's no such thing as infinite scalability, and building in hard limits to a system's capacity is the only sane way to build anything.
You have to draw a box around what you're trying to do. You've got to say, "I'm only going to solve this much." If you make the box a little too big, you probably won't solve anything well. If you make the box much too big, you won't solve anything at all. Solve the smaller problem well, and then come back later to make the box bigger.
Anyway, he got ridiculed for it, but it was actually a pretty sane decision. The target microprocessor only supported 20-bit addresses, meaning it could deal with at most 1MB of RAM. The 640K of RAM was for OS and application stuff, leaving 384K for supporting services like video. You could argue that the line should have been drawn in a different place, but the implication of those mocking that quote is that he could have avoided drawing a line.
Okay, so it's 1981, and you're working on this operating system for the original IBM PC. You have an easy way to support 640K of RAM. Do you stick to that or go for the fancy way of doing things that allows you to use more? If you go the fancy route, you:
- Take more time to develop
- Introduce complexity
- Risk doing it wrong
The last part is the most important one. The machine supported 64KB RAM standard and 256KB if you maxed it out. Nobody had experience with a PC-like system that needed much more RAM than that. They could have guessed what future systems would need, and they'd probably be wrong. Not only would they be wrong, but they'd be wrong and boxed into a naive, ignorant implementation.
Better to kick that can down the road to a time when they needed to solve it. Waiting until then isn't (just) lazy, it's also a way to increase the chances of solving the problem right, because waiting until you need something generally means you end up with a pretty good idea of what you need.
"640K ought to be enough for anybody who's running DOS." If they get to a point where they need more than that, they're already so far beyond DOS's design that the 640K RAM limitation will be only one of multiple. Why eliminate just one of the blockers to that future user? It costs more now, costs more later, and doesn't even help. There's no such thing as infinite scalability, and building in hard limits to a system's capacity is the only sane way to build anything.
You have to draw a box around what you're trying to do. You've got to say, "I'm only going to solve this much." If you make the box a little too big, you probably won't solve anything well. If you make the box much too big, you won't solve anything at all. Solve the smaller problem well, and then come back later to make the box bigger.
Labels: tech
Tuesday, February 21, 2012
Why smart people behave stupidly
People are ruled by habits, good and bad. We are slaves to routine. We make knee-jerk assessments instead of thinking things through. We suck at probability and large numbers. We are easily manipulated by advertising. Small adjustments in the way things are framed can lead us into making completely different decisions. We persist in believing foolish things long after the weight of evidence makes their foolishness clear. We're complacent, ignoring serious problems until we can't avoid or deny them any longer.
This isn't just dumb people. People who are demonstrably smart do this too. And I figured out why.
Natural selection drove the human species to develop a big brain. The capacity to think is essential in outwitting bigger, faster, stronger competition. It allowed all kinds of things from social organization to tool use. There's a big but here, though. It's the capacity to think. The problem is that the brain is expensive. It accounts for some 20% of our energy consumption (at rest). Perhaps that was even higher back when we didn't get so many calories.
As a result, evolution favored humans who possessed big brains but avoided using them unless absolutely necessary. It favored big, lazy brains. Humans who were always thinking were always burning calories while rarely gaining by it. We evolved many cognitive shortcuts that resulted in inferior but good enough results at a much lower caloric cost. Smart people being stupid is basically millions of years of evolution. That's hard to fight. Maybe this will help me be more tolerant.
This isn't just dumb people. People who are demonstrably smart do this too. And I figured out why.
Natural selection drove the human species to develop a big brain. The capacity to think is essential in outwitting bigger, faster, stronger competition. It allowed all kinds of things from social organization to tool use. There's a big but here, though. It's the capacity to think. The problem is that the brain is expensive. It accounts for some 20% of our energy consumption (at rest). Perhaps that was even higher back when we didn't get so many calories.
As a result, evolution favored humans who possessed big brains but avoided using them unless absolutely necessary. It favored big, lazy brains. Humans who were always thinking were always burning calories while rarely gaining by it. We evolved many cognitive shortcuts that resulted in inferior but good enough results at a much lower caloric cost. Smart people being stupid is basically millions of years of evolution. That's hard to fight. Maybe this will help me be more tolerant.
Labels: deep thoughts
Sunday, January 29, 2012
Tuesday, December 27, 2011
That's not what "experience" means
Thanks, Harvard Business School, for clearly signalling what your Executive MBA is worth. Now if you'll excuse me, I have to prep for surgery; I had a discussion about appendectomies with some surgeons the other night, and I'm ready to go.
Labels: stupid
Wednesday, November 2, 2011
Thursday, October 20, 2011
Fighting pointless battles
The United States recently committed to upgrading Taiwan's F-16 fighters. China, as one might expect, made a stink about it. Why bother? China knows they're not going to change the outcome. This is a battle they won't win. Is this just China being China, with dramatic, belligerent posturing?
The Free Software Foundation recently started a new campaign to prevent computer manufacturers from restricting their hardware to running Windows. Their fear is that Microsoft will use a new security feature as a Trojan horse to lock out Linux and other competitors. To me, it's obvious that Microsoft will not do that. They're under too much scrutiny from the United States Justice Department and the EU's anti-trust enforcers. Something this blatant would get smacked down hard. This is a battle the FSF has already won. Is the FSF just being overly-sensitive and panicking over nothing?
In both cases, the battle is not the thing that matters. China knows they can't prevent the F-16 fighter upgrade. The FSF knows that Microsoft isn't going to induce PC makers to restrict their hardware to Windows. This battle is irrelevant. What matters is the next battle, and the one after that.
For China, the next battle is replacing Taiwan's decades-old F-5 fighters with new F-16s. The battle after that is preventing Taiwan from getting the still-in-development F-35. There are innumerable battles after that, ranging from further arms sales to US Navy exercises in the Western Pacific to economic agreements and so forth.
China is drawing a line in the sand. Actually, they're drawing two lines in the sand, the drama line and the real line. The United States is crossing the drama line, but is also acutely aware of the real line and how close to it they are. By making a stink now, China is sending a clear signal how much they're willing to tolerate. They're promising a huge fight if the United States gets too close to the real line. It's not even about winning the next battle, or the one after that. It's about convincing the United States today to not even offer battle tomorrow.
By behaving this way now, China is telegraphing how they will behave in the future. They're training the United States government in how to think, in how to approach cost/benefit analyses of initiatives involving Taiwan in the future by raising the perceived costs. This battle is lost to China, but they're making it more expensive for the United States, and they're making it crystal clear that future battles will be expensive as well, quite possibly making them so expensive that we don't even try some things we would have wanted to do.
Similarly, the FSF is sending a clear signal to Microsoft. Don't even think about stepping out of line. You're being watched. They too have drawn a line in the sand. Microsoft is stepping close to it. This campaign isn't about winning this battle; it's already won, it's just not public yet. This campaign is about drawing the line, and making sure Microsoft knows the line is there. Next time Microsoft has a bright idea like this, they'll kill it before it gets out of Redmond, and that will be because the FSF made them understand where the line was, and how close they could get.
Winning battles is nice, but the best victories are the ones where your opponent doesn't even try to oppose you.
The Free Software Foundation recently started a new campaign to prevent computer manufacturers from restricting their hardware to running Windows. Their fear is that Microsoft will use a new security feature as a Trojan horse to lock out Linux and other competitors. To me, it's obvious that Microsoft will not do that. They're under too much scrutiny from the United States Justice Department and the EU's anti-trust enforcers. Something this blatant would get smacked down hard. This is a battle the FSF has already won. Is the FSF just being overly-sensitive and panicking over nothing?
In both cases, the battle is not the thing that matters. China knows they can't prevent the F-16 fighter upgrade. The FSF knows that Microsoft isn't going to induce PC makers to restrict their hardware to Windows. This battle is irrelevant. What matters is the next battle, and the one after that.
For China, the next battle is replacing Taiwan's decades-old F-5 fighters with new F-16s. The battle after that is preventing Taiwan from getting the still-in-development F-35. There are innumerable battles after that, ranging from further arms sales to US Navy exercises in the Western Pacific to economic agreements and so forth.
China is drawing a line in the sand. Actually, they're drawing two lines in the sand, the drama line and the real line. The United States is crossing the drama line, but is also acutely aware of the real line and how close to it they are. By making a stink now, China is sending a clear signal how much they're willing to tolerate. They're promising a huge fight if the United States gets too close to the real line. It's not even about winning the next battle, or the one after that. It's about convincing the United States today to not even offer battle tomorrow.
By behaving this way now, China is telegraphing how they will behave in the future. They're training the United States government in how to think, in how to approach cost/benefit analyses of initiatives involving Taiwan in the future by raising the perceived costs. This battle is lost to China, but they're making it more expensive for the United States, and they're making it crystal clear that future battles will be expensive as well, quite possibly making them so expensive that we don't even try some things we would have wanted to do.
Similarly, the FSF is sending a clear signal to Microsoft. Don't even think about stepping out of line. You're being watched. They too have drawn a line in the sand. Microsoft is stepping close to it. This campaign isn't about winning this battle; it's already won, it's just not public yet. This campaign is about drawing the line, and making sure Microsoft knows the line is there. Next time Microsoft has a bright idea like this, they'll kill it before it gets out of Redmond, and that will be because the FSF made them understand where the line was, and how close they could get.
Winning battles is nice, but the best victories are the ones where your opponent doesn't even try to oppose you.
Labels: observations, politics