Quasi-interesting add-on expense item. See the Wall Street Journal article which pegs the cable companies' cost for using utility poles at $5 to $7 per pole per year, and how those costs could go up significantly in the future.
The general figure for the cable industry is about $750 per home passed for the installation of a two-way network. Assume (just for the sake of argument) that you could do something else, say CAT-5 and hardened Etherswitches, for half that: $375 per home passed. Assume that 33% of homes will subscribe (optimistic) and you spend $1125 per subscriber just for the outside plant. Assuming you want to get your money back in four years, and ignoring the time value of money, you need to charge... $23.44 per sub per month to pay for the distribution network.
You also need to pay for ongoing operations: help desk and sales agents and billing systems and trucks and repair staff and spare parts and air-conditioned space for the people and electricity to run everything. And the network is not worth much unless it's connected to the Internet, so you'll have routers and T3s and all that good stuff.
I work on this stuff and I'm always surprised that we ever make any money. Overbuilders, companies that want to be the "second" cable company in a city, are finding it very difficult to raise money for construction these days.
Two ethnographic studies of some of our high-speed data customers, about a year apart in time, showed that while the amount of time each customer spent online had increased somewhat, the number of sites they visited each day had declined dramatically. They returned regularly to a small number of sites for news, weather, shopping, etc. Lots less "random" browsing.
All the headlines I've seen about this are positive -- Microsoft victory, or Microsoft decision overturned, or whatever.
Having waded through the decision itself, I don't understand this interpretation. The appeals court agreed that (a) the facts were as Judge Jackson presented them, (b) MS is a monopoly, (c) the deals with OEMs, ISPs, and ISVs threatening their access to Windows unless they dropped Navigator were illegal, (d) the deal with Apple was illegal, (e) almost the whole Java thing was illegal, and (f) code mingling (applications and Windows) is illegal. The part about MS bundling IE with Windows (just as an application) and the breakup remedy were remanded. They're still guilty, just not of quite so many things. The chances of getting the guilty verdict overturned would now seem to be remote.
If I were MS, I would be almost as afraid of procedural remedies for that list of activities as an actual breakup. WinXP is clearly illegal due to code mingling, how much time and money will they lose fixing that? Will they have to go back and fix everything since Win98? MS is still likely going to have to implement procedures and audits and reports to the court or the DOJ for years to show that none of the illegal activities are going on. Having been through the AT&T breakup back in the '80's, those kind of procedures take up a lot of corporate resources.
Plus, violating procedural remedies tends to get you put in jail for contempt -- not one of the best recruiting tools around.
Please keep in mind that the glut is in long-haul fiber, that runs point-to-point in big bundles where there's typically one or a few points per metropolitan area. What's needed for distribution fiber (the stuff that feeds your home) is single pairs of fiber run to a node that supports a few hundred homes. Unsurprisingly, the two situations are in different locations and require different procedures.
Distribution fiber typically requires a lot more labor per fiber-foot to install. Long-haul fiber runs mainly in trenches along railroad right-of-way, or in obsolete oil/gas pipelines, or similar situations. With distribution fiber, not only are the bundles much smaller, but running it through someone's backyard without disturbing the landscaping (or having to restore the landscaping to its previous condition) takes a lot more manual work.
Very little of the long-haul fiber is physically positioned such that it could be used for distribution.
Having watched the development of OLED technology for the past three years (tech forecasting is part of my job), it looks like everything should come together in just about five years (three years ago I was predicting eight). Three main factors-- the size of the current prototypes, the brightness and lifetime of the polymers, and the fabrication techniques-- all have trends that suggest commercial displays at competitive prices in five more years.
My personal prediction is that in ten years, once the quantities ramp up and the manufacturing techniques are improved, it will be darned hard to buy a CRT, as the OLED flat screens will have displaced them.
I have often speculated that the natural end state for any particular industry in an unregulated capitalist system is a monopoly and/or trust (a trust being a small group of companies acting in unison on issues such as pricing and distribution). Given a large number of initial competitors, some will desire to grow, some will have owners that want to sell out, some will make stupid mistakes and go broke. At some point the barrier to entry for new firms gets really high because of some factor (in MS's case, you have to write 25 million lines of code). Once new companies can't enter, random forces like those mentioned will reduce the number of companies to one or a few who decide to cooperate.
Monopolies seem to fail only when (a)they get broken by the government (Standard Oil) or (b)they miss out on something that fundamentally changes the world (IBM didn't understand PCs). Linux and much of the Open Source movement is an interesting experiment where a bunch of geeks attempt to overcome one of MS's (and other companies before MS) barriers to entry by donating code. I don't think Linus had this in mind when he started, but Stallman might have. Whether they can overcome the other barriers and recreate a competitive OS industry remains to be seen.
Fast food as an industry arose as society changed--two-worker families have less time for household chores, cooking at home is time-consuming, and fast food is an "answer" to the situation. So are TV dinners and all those other frozen entrees. Once there's an industry, the natural processes mentioned above would eventually yield a monopoly/trust set of companies.
Disregarding the use of MPEG as a preferred implementation, I know there's prior art for at least some of the claims because I did it. Unfortunately, it was internal to a large corporation, and I don't recall off hand to what degree it was documented or if any of the documentation was ever public. I'm sure that there are public examples from the old MBONE as well: boxes that were recording a compressed digital video stream to disk while playing out one or more different streams.
Anyone who has put a frame grabber in their PC or workstation and written software that compresses live video and writes it to the disk, and there must be hundreds of us, recognizes (in about 30 seconds) that they can record one stream while playing back another. It's a simple matter of CPU cycles (or hardware support, which Tivo uses) and disk bandwidth. Isn't the patent requirement that the technique or concept be nonobvious to someone experienced in the art?
The MRAM sounds really cool. I buy the arguments about low-power and high-density, since it looks like it's just two layers of metal and a hunk of magnetic stuff for each bit -- doesn't draw power except during read/write, doesn't need the four/six transisters of a static RAM cell, doesn't need the big ol' capacitor of a DRAM cell. Write time much faster than FLASH since you don't have to wait around for all those electrons to do quantum tunneling.
I'll also buy that this would be really helpful for situations like a notebook where the computer it's used in is frequently shut down in a controlled fashion. Does it buy you any quicker boot in the case of a power failure? My PC running Linux is a complex system in which the processor (registers and pipeline), the cache controller, the cache, the main memory, and the disk (virtual memory) all have to be in a coherent state. Does the non-volatile nature of MRAM really make it possible to recover that complete state, or do I still need to go through something like a reboot? Commercial power failure is far and away the most common cause of a "shutdown" on my desktop system...
I'm going to be the incurable optimist here -- once someone discovers a way to do the job with a very rare (hence very expensive when there's a big demand for it) element, the materials science folk seem to find other ways to do the same job with more readily available elements.
Some conflicts are bound to arise when producing the work costs $100M (with a cast of thousands) and the "author" is a corporation. The "author" has to make a lot of money in order to undertake another product on that scale. If some products are extremely successful (to offset the ones that are a bust), and the wealth generated by the corporation is concentrated into the hands of a small number of people, fabulous wealth results. Should corporate charters allow that?
Should corporations be entitled to be "persons" in the sense of the Constitution's provisions on IP? Until the late 1800's they weren't, when a judge with (by modern standards) a serious conflict of interest invented the legal theory that corporations had basically all the same rights as people, except they couldn't vote. I believe the case involved a railroad in which he owned stock needing to be a "person" in order to receive government freebies.
As an economic system, free markets and capitalism seem to work when there are lots of small producers for every product. When production becomes limited to a small number of entities, it tends to go to hell. The same would seem to be true for when IP protections work well!
I guess I should have added, if the goal is to get fabulously wealthy, making a million users pay you $100 per year to use the program is an even better business model. If you can get away with it.
In my opinion, the GPL is intended to build a strong software community at the expense of a strong commercial software business model.
Succint and accurate. IMO, The GPL provision that requires that redistribution not be restricted is what really conflicts with the "conventional" commercial software business model. If I have a piece of GPL'ed software in my hands, I can redistribute it under the same terms. If your business model assumes that you can control distribution, so that only people who pay can have a copy, you have to hate the GPL. If, OTOH, you want to be a member of a community where everyone benefits from the collective creative efforts, the redistribution requirement is a key element.
If you want to get fabulously wealthy, controlled distribution is the way to go. Spend $1M to develop the program, then sell a million copies at $100. If you "give away" a million copies and then sell support, advice, custom development, etc., you have to bill a million hours at $100 in order to have the same revenue. You (and the army of others billing those hours) may live comfortably, even handsomely, but you're not going to get fabulously wealthy.
Unfortunately, a fabulously wealthy corporation has a lot of "tools" at its disposal for making life difficult for the GPL community (embrace and extend, buy out competitors, advertising campaigns). As long as none of those corporations get too big, they do tend to focus on competing with each other and the community can flourish "under the radar". I view the fact that MS has gotten around to attacking the community as prima facie evidence that they enjoy a monopoly status, that there are no commercial competitors remaining.
When people ask me "Mike, what would you do with a billion ops per second?" my first answer is "Never write another piece of compiled code in my life. Run everything under an interpreter that gives me bounds checking, symbolic debugging, and all of that good stuff all of the time."
Some people will regard some of the following as spoilers for those who have not read the book. Be advised. By the time I got through the book I was basically just disappointed. There were at least a couple of bits with potential, but so little seemed to be done with them. As if I have any right to complain; being a good story-teller is hard, and I can't do it. Two specifics:
Real-time visual overlays of the world. Done as external hardware rather than implants (eg, the visors and contact lenses in The California Voodoo Game), these could potentially be cheap enough to be widespread. What happens when everyone sees the world through such an overlay? How does a detective function when all of the eyewitnesses saw something different?
Small technology gone amuck, as in the little flying devices that attack aircraft (and apparently reproduce, since they don't run out of them). We already have problems coping with regular insects; how might we deal with smart mechanical beasties whose programming contained inadvertant errors? What might bugs designed to clean indoor floors do when they got outside and tried to clean there? I suppose you have to assume that they're smart enough to steal power as well as reproduce...
Since it sounds like you are using multiple libraries, and there are no problems when you don't use threads, my working assumption would be that one or more of the libs is not thread-safe. It's amazing how often a static variable or two used to share state information or preserve it across multiple calls sneaks into the code. Only takes one of those to break a threaded app.
My own approach, at least in C, matches the suggestion of a previous post: a polling loop and a switch statement (or equivalent). Breaking code up into appropriate blocks to handle the underlying events (I got a packet; I got a button click; I got something from a pipe) can certainly yield some ugly code. But it does let you guarantee that critical sections are handled properly, and any code that invokes library routines that you can't verify as thread-safe are critical sections.
I wouldn't want to try this approach if there are a lot of threads (dozens, hundreds) involved.
Twenty years or so ago, the Smithsonian museum had an exhibit about fiber optics that included a working model of Alexander Bell's "light phone" (it mechanically modulated a beam of sunlight) and his original lab notebook (borrowed from Bell Labs' engineering records). The notebook was still legible because (a) the paper was acid-free and (b) the ink was pigment-based. Even though I keep a notebook, it will not be legible in 100 years (perhaps one of my great grandchildren will be interested) because either (a) the high-acid paper will have decomposed or (b) the parts written with dye-based ink will have faded.
The fairly recent PBS documentary on the US Civil War was based in large part on letters and journals written by soldiers using (you guessed it!) acid-free paper and pigment-based ink.
Make tomorrow's history! Write letters and keep journals using acid-free paper and pigment-based ink -- if it's all that survives, it will be the authoritative material on the typical daily life!
In other words, your encrypted files may only be as secure as the computer and network on which the key resides.
And at least for the computer, we all know that the average PC isn't very secure at all. While we all love to knock Windows, Linux has also had its share of recent reports where unauthorized code manages to run with sufficient permissions to do a large amount of damage.
My favorite attack continues to be a small hunk of code that manages to hijack low-level input in a transparent fashion (that is, it passes a copy of the input on, or is listening in parallel, so nothing appears to be "broken"). Monitor the input, keystrokes for example, looking for text that matches whatever you're looking for. Scan likely places on the hard disk. When you find something promising, report it. Try to propogate yourself in non-intrusive ways -- sending lots of e-mail may be quick, but it's obvious -- not good if you're trying to stay undetected.
What I worry about these days is that it has gotten very difficult to know just what software is actually running on the box, regardless of the OS.
A couple of years ago my daughter brought this one home from junior high (none of the junior high kids worked it out in the limited time), and I eventually turned it into a little lecture on organizing search techniques for the lunch-time talk series here at work.
You stop at the local Seven-Eleven and pick out four items. The sum of the four prices is $7.11. The product of the four prices is also 7.11. What are the prices of the four items? Is the solution unique? Are there other sum/product values with solutions? For those who insist on making things more complicated than necessary: there are no taxes, the prices are all integral in cents, and the product is exactly 7.11, not just close and rounded off.
Good question. If I wrote the software and made it dependent on version 6.3.1 of some DLL, and the end user installed other software after mine that replaced the DLL with incompatible version 6.4.7, who's at fault?
Me, because my software crashes now?
The user, who replaced the library?
The author of the other software that installed the incompatible library?
The OS author, who provided a system that doesn't allow multiple versions of the DLL to coexist and be used appropriately?
As long as we're going to bash MS, we might as well bash them for specific faults.
You're absolutely right. The software to recognize the situation and extract the password(s) needed for getting single-use card numbers is more complicated than that needed to recognize a valid card number, but the same basic approach of would work.
My favorite anecdote about stealing regular card numbers and the appropriate place to do so:
One of the major national banks apparently charged a couple of their IT guys to write a program that would steal card numbers. Their response was a Windows virus that grabbed the keyboard interrupt and captured all character sequences that were entered that looked like a legitimate card number. Key strokes were passed on to the regular code, so it didn't ever "feel" like anything odd was going on. At some point in the future, the code would send any collected numbers in an IP packet to a listening server. And of course, it would try to spread itself to other machines. IIRC, the mechanism for spreading was an e-mail attachment with pictures of famous people naked.
No attempts to break encryption. No attempts to sniff packets on the network. Just exploit the obvious weakest link -- millions and millions of machines that run an OS with serious security problems... One-time-use card numbers clearly defeat this kind of approach.
Another reason that many companies will be against this is that it doesn't provide any channel compression. Pure digital TV allows multiple standard definition streams to be delivered in a single 6 MHz piece of spectrum. Direct broadcast satellite (eg DirecTV) and digital cable operate as high as 12:1 channel compression -- twelve digital channels in the same spectrum that carried a single analog channel.
Over-the-air broadcasters expect to be able to achieve at least 4:1 compression of standard definition signals. This allows many additional revenue opportunities during those times when they aren't broadcasting high-def content. Given that high-def production costs are significantly higher, there will continue to be a lot of standard-def stuff around.
It may not apply to the difference between CS and CE question, but the difference between a decent CS degree and someone who just programs (a topic that many others have raised) is that the CS person has learned enough to build tools, not just use them. You may use someone else's parser-generator, but you know enough to build a simple one if you want to. You may use someone else's thread coordination package, but you understand what semaphors are for in that context. You may use someone else's FIFO class, but you could write a passable one yourself.
Some people will be able to learn this stuff with just a textbook; many will do better if they have a structured curriculum that puts you through classes in a reasonable order and access to an instructor that can explain concepts in more than one way.
I predict, with reasonable certainty, that money will not exist in 25 years, and capital will be pure ideas.
Money is a means of exchange, a way of seperating a sale by one person from a purchase by another. Without money, everything is barter. Paper money may disappear for something more convenient, but "dollars" will still exist. Even today the most restricted definition of "money" used by the Federal Reserve is much larger than the amount of currency.
Capital is accumulated money, or the things that can be acquired with accumulated money. The "new Internet economy" is highly dependent on capital. How long is it going to work without computers, routers, fiber optics, cable modems, the factories that build those things, the infrastructure for shipping them, power plants to generate the electricity they slurp down, etc?
Certainly ideas can be valuable, hence "intellectual property". But in order to feed me, my ideas have to be shared with others who will exchange other goods/services for them (or money!). I work for a company that pays me to have ideas for services that they can provide to other people in exchange for money. They give me some of the money in advance, assuming the risk that the ideas are good and will generate more money for them in the future.
Even the solitary creative artist has the same problem. The idea (eg, magnificent song about unrequited love) is valuable, but must be converted into a "thing" in order to exchange it with other people. Money makes such exchanges easier (sing for cash, not for a beer). Capital provides the means to produce more efficient ways of exchanging (press a million CDs, don't just sing in the corner bar).
Quasi-interesting add-on expense item. See the Wall Street Journal article which pegs the cable companies' cost for using utility poles at $5 to $7 per pole per year, and how those costs could go up significantly in the future.
You also need to pay for ongoing operations: help desk and sales agents and billing systems and trucks and repair staff and spare parts and air-conditioned space for the people and electricity to run everything. And the network is not worth much unless it's connected to the Internet, so you'll have routers and T3s and all that good stuff.
I work on this stuff and I'm always surprised that we ever make any money. Overbuilders, companies that want to be the "second" cable company in a city, are finding it very difficult to raise money for construction these days.
Just another anecdotal data point...
Michael Cain
AT&T Broadband
Having waded through the decision itself, I don't understand this interpretation. The appeals court agreed that (a) the facts were as Judge Jackson presented them, (b) MS is a monopoly, (c) the deals with OEMs, ISPs, and ISVs threatening their access to Windows unless they dropped Navigator were illegal, (d) the deal with Apple was illegal, (e) almost the whole Java thing was illegal, and (f) code mingling (applications and Windows) is illegal. The part about MS bundling IE with Windows (just as an application) and the breakup remedy were remanded. They're still guilty, just not of quite so many things. The chances of getting the guilty verdict overturned would now seem to be remote.
If I were MS, I would be almost as afraid of procedural remedies for that list of activities as an actual breakup. WinXP is clearly illegal due to code mingling, how much time and money will they lose fixing that? Will they have to go back and fix everything since Win98? MS is still likely going to have to implement procedures and audits and reports to the court or the DOJ for years to show that none of the illegal activities are going on. Having been through the AT&T breakup back in the '80's, those kind of procedures take up a lot of corporate resources.
Plus, violating procedural remedies tends to get you put in jail for contempt -- not one of the best recruiting tools around.
Distribution fiber typically requires a lot more labor per fiber-foot to install. Long-haul fiber runs mainly in trenches along railroad right-of-way, or in obsolete oil/gas pipelines, or similar situations. With distribution fiber, not only are the bundles much smaller, but running it through someone's backyard without disturbing the landscaping (or having to restore the landscaping to its previous condition) takes a lot more manual work.
Very little of the long-haul fiber is physically positioned such that it could be used for distribution.
My personal prediction is that in ten years, once the quantities ramp up and the manufacturing techniques are improved, it will be darned hard to buy a CRT, as the OLED flat screens will have displaced them.
Monopolies seem to fail only when (a)they get broken by the government (Standard Oil) or (b)they miss out on something that fundamentally changes the world (IBM didn't understand PCs). Linux and much of the Open Source movement is an interesting experiment where a bunch of geeks attempt to overcome one of MS's (and other companies before MS) barriers to entry by donating code. I don't think Linus had this in mind when he started, but Stallman might have. Whether they can overcome the other barriers and recreate a competitive OS industry remains to be seen.
Fast food as an industry arose as society changed--two-worker families have less time for household chores, cooking at home is time-consuming, and fast food is an "answer" to the situation. So are TV dinners and all those other frozen entrees. Once there's an industry, the natural processes mentioned above would eventually yield a monopoly/trust set of companies.
Anyone who has put a frame grabber in their PC or workstation and written software that compresses live video and writes it to the disk, and there must be hundreds of us, recognizes (in about 30 seconds) that they can record one stream while playing back another. It's a simple matter of CPU cycles (or hardware support, which Tivo uses) and disk bandwidth. Isn't the patent requirement that the technique or concept be nonobvious to someone experienced in the art?
I'll also buy that this would be really helpful for situations like a notebook where the computer it's used in is frequently shut down in a controlled fashion. Does it buy you any quicker boot in the case of a power failure? My PC running Linux is a complex system in which the processor (registers and pipeline), the cache controller, the cache, the main memory, and the disk (virtual memory) all have to be in a coherent state. Does the non-volatile nature of MRAM really make it possible to recover that complete state, or do I still need to go through something like a reboot? Commercial power failure is far and away the most common cause of a "shutdown" on my desktop system...
I'm going to be the incurable optimist here -- once someone discovers a way to do the job with a very rare (hence very expensive when there's a big demand for it) element, the materials science folk seem to find other ways to do the same job with more readily available elements.
Some conflicts are bound to arise when producing the work costs $100M (with a cast of thousands) and the "author" is a corporation. The "author" has to make a lot of money in order to undertake another product on that scale. If some products are extremely successful (to offset the ones that are a bust), and the wealth generated by the corporation is concentrated into the hands of a small number of people, fabulous wealth results. Should corporate charters allow that?
Should corporations be entitled to be "persons" in the sense of the Constitution's provisions on IP? Until the late 1800's they weren't, when a judge with (by modern standards) a serious conflict of interest invented the legal theory that corporations had basically all the same rights as people, except they couldn't vote. I believe the case involved a railroad in which he owned stock needing to be a "person" in order to receive government freebies.
As an economic system, free markets and capitalism seem to work when there are lots of small producers for every product. When production becomes limited to a small number of entities, it tends to go to hell. The same would seem to be true for when IP protections work well!
I guess I should have added, if the goal is to get fabulously wealthy, making a million users pay you $100 per year to use the program is an even better business model. If you can get away with it.
If you want to get fabulously wealthy, controlled distribution is the way to go. Spend $1M to develop the program, then sell a million copies at $100. If you "give away" a million copies and then sell support, advice, custom development, etc., you have to bill a million hours at $100 in order to have the same revenue. You (and the army of others billing those hours) may live comfortably, even handsomely, but you're not going to get fabulously wealthy.
Unfortunately, a fabulously wealthy corporation has a lot of "tools" at its disposal for making life difficult for the GPL community (embrace and extend, buy out competitors, advertising campaigns). As long as none of those corporations get too big, they do tend to focus on competing with each other and the community can flourish "under the radar". I view the fact that MS has gotten around to attacking the community as prima facie evidence that they enjoy a monopoly status, that there are no commercial competitors remaining.
When people ask me "Mike, what would you do with a billion ops per second?" my first answer is "Never write another piece of compiled code in my life. Run everything under an interpreter that gives me bounds checking, symbolic debugging, and all of that good stuff all of the time."
Some people will regard some of the following as spoilers for those who have not read the book. Be advised. By the time I got through the book I was basically just disappointed. There were at least a couple of bits with potential, but so little seemed to be done with them. As if I have any right to complain; being a good story-teller is hard, and I can't do it. Two specifics:
My own approach, at least in C, matches the suggestion of a previous post: a polling loop and a switch statement (or equivalent). Breaking code up into appropriate blocks to handle the underlying events (I got a packet; I got a button click; I got something from a pipe) can certainly yield some ugly code. But it does let you guarantee that critical sections are handled properly, and any code that invokes library routines that you can't verify as thread-safe are critical sections.
I wouldn't want to try this approach if there are a lot of threads (dozens, hundreds) involved.
Twenty years or so ago, the Smithsonian museum had an exhibit about fiber optics that included a working model of Alexander Bell's "light phone" (it mechanically modulated a beam of sunlight) and his original lab notebook (borrowed from Bell Labs' engineering records). The notebook was still legible because (a) the paper was acid-free and (b) the ink was pigment-based. Even though I keep a notebook, it will not be legible in 100 years (perhaps one of my great grandchildren will be interested) because either (a) the high-acid paper will have decomposed or (b) the parts written with dye-based ink will have faded.
The fairly recent PBS documentary on the US Civil War was based in large part on letters and journals written by soldiers using (you guessed it!) acid-free paper and pigment-based ink.
Make tomorrow's history! Write letters and keep journals using acid-free paper and pigment-based ink -- if it's all that survives, it will be the authoritative material on the typical daily life!
And at least for the computer, we all know that the average PC isn't very secure at all. While we all love to knock Windows, Linux has also had its share of recent reports where unauthorized code manages to run with sufficient permissions to do a large amount of damage.
My favorite attack continues to be a small hunk of code that manages to hijack low-level input in a transparent fashion (that is, it passes a copy of the input on, or is listening in parallel, so nothing appears to be "broken"). Monitor the input, keystrokes for example, looking for text that matches whatever you're looking for. Scan likely places on the hard disk. When you find something promising, report it. Try to propogate yourself in non-intrusive ways -- sending lots of e-mail may be quick, but it's obvious -- not good if you're trying to stay undetected.
What I worry about these days is that it has gotten very difficult to know just what software is actually running on the box, regardless of the OS.
You stop at the local Seven-Eleven and pick out four items. The sum of the four prices is $7.11. The product of the four prices is also 7.11. What are the prices of the four items? Is the solution unique? Are there other sum/product values with solutions? For those who insist on making things more complicated than necessary: there are no taxes, the prices are all integral in cents, and the product is exactly 7.11, not just close and rounded off.
As long as we're going to bash MS, we might as well bash them for specific faults.
You're absolutely right. The software to recognize the situation and extract the password(s) needed for getting single-use card numbers is more complicated than that needed to recognize a valid card number, but the same basic approach of would work.
One of the major national banks apparently charged a couple of their IT guys to write a program that would steal card numbers. Their response was a Windows virus that grabbed the keyboard interrupt and captured all character sequences that were entered that looked like a legitimate card number. Key strokes were passed on to the regular code, so it didn't ever "feel" like anything odd was going on. At some point in the future, the code would send any collected numbers in an IP packet to a listening server. And of course, it would try to spread itself to other machines. IIRC, the mechanism for spreading was an e-mail attachment with pictures of famous people naked.
No attempts to break encryption. No attempts to sniff packets on the network. Just exploit the obvious weakest link -- millions and millions of machines that run an OS with serious security problems... One-time-use card numbers clearly defeat this kind of approach.
Over-the-air broadcasters expect to be able to achieve at least 4:1 compression of standard definition signals. This allows many additional revenue opportunities during those times when they aren't broadcasting high-def content. Given that high-def production costs are significantly higher, there will continue to be a lot of standard-def stuff around.
It may not apply to the difference between CS and CE question, but the difference between a decent CS degree and someone who just programs (a topic that many others have raised) is that the CS person has learned enough to build tools, not just use them. You may use someone else's parser-generator, but you know enough to build a simple one if you want to. You may use someone else's thread coordination package, but you understand what semaphors are for in that context. You may use someone else's FIFO class, but you could write a passable one yourself.
Some people will be able to learn this stuff with just a textbook; many will do better if they have a structured curriculum that puts you through classes in a reasonable order and access to an instructor that can explain concepts in more than one way.
Money is a means of exchange, a way of seperating a sale by one person from a purchase by another. Without money, everything is barter. Paper money may disappear for something more convenient, but "dollars" will still exist. Even today the most restricted definition of "money" used by the Federal Reserve is much larger than the amount of currency.
Capital is accumulated money, or the things that can be acquired with accumulated money. The "new Internet economy" is highly dependent on capital. How long is it going to work without computers, routers, fiber optics, cable modems, the factories that build those things, the infrastructure for shipping them, power plants to generate the electricity they slurp down, etc?
Certainly ideas can be valuable, hence "intellectual property". But in order to feed me, my ideas have to be shared with others who will exchange other goods/services for them (or money!). I work for a company that pays me to have ideas for services that they can provide to other people in exchange for money. They give me some of the money in advance, assuming the risk that the ideas are good and will generate more money for them in the future.
Even the solitary creative artist has the same problem. The idea (eg, magnificent song about unrequited love) is valuable, but must be converted into a "thing" in order to exchange it with other people. Money makes such exchanges easier (sing for cash, not for a beer). Capital provides the means to produce more efficient ways of exchanging (press a million CDs, don't just sing in the corner bar).