Then solve the problem some other way. Stop whining and start hacking. You're posting on Slashdot, not AOL, right?
Or just cough up the dough. If you want a connection to the Internet on your own terms, then pay for out of your own pocket. You want something cheap, then accept that you'll have to compromise with the other people helping to pay the bill.
"USENET is not a right."
"USENET is a right, a left, a jab, and a
sharp uppercut to the jaw. The postman hits! You have new mail."
-- Ed Vielmetti & Chip Salzenberg
Re:Small towns and geographic monopoly
on
MAPS Sued Again
·
· Score: 1
MAPS isn't forcing MAPS on ISPs, but often the only ISP whose modem is a local call in your town forces MAPS on its customers.
As I said elsewhere (in response to an identical comment on this story), this is easy to get around. You just get a POP mailbox from some other provider that doesn't use MAPS. Or you set up your own mail server and run it how you please.
Sure, this may cost you a few bucks more a month, but that's how capitalism works. If you want what everybody wants, then it's cheap. People who want unusual things have to pay more. And damned few people are clamoring for more spam.
What about users behind local ISPs that have a geographical monopoly in their small town? No, most ISPs' modems are not a local call in Bluffton, Indiana.
If being able to get mail from spammers is that important to you, a POP-accessible mailbox from somebody other than your ISP is somewhere between cheap and free. I'm sure you can find one that doesn't use the RBL.
Yeah, you have to pay extra for that. But that's how capitalism works: the things that most everybody wants are much cheaper than the the things a few people want. And most people just don't want spam.
Although the stock market isn't exactly a coin flip, it's a lot closer than you think; and "productivity of industry" doesn't have much to do with why it's not.
"Productivity of industry" will compensated for in the price of a stock. If I think that stock XYZ has a future payout plus value gains yielding a present value of x, then I'll only sell the stock if you offer me more than x.
That's why stock prices are so sensitive to new information. If you buy GE today and tomorrow they lower their earnings expectations you'll be hurting, even though their productivity is the same. But if you buy a completely unproductive company (like many internet companies) then you can make money if there is good news the next day. "Productivity of industry" as nothing to do with it.
But this means that in the long term, you can only beat the average by
being smarter or more knowledgeable than the people who have the stocks now, or
by being lucky
For the average amateur investor, then, it is basically a coin flip. Many novice investors have been lulled into a sense of confidence by the long bull market. Those of us know with longer memories know that stocks can also go down, down, down.
It's true that a well-managed portfolio should make more money over time than putting the money in a less risky investment like, say, government bonds. (Or like putting it in your mattress.) But that doesn't really have to do with being "based on the productivity of industry"; it has to do with the fact that equities are riskier, and riskier investments pay higher returns.
For more infomation, start reading about ;ri sk premiums. You'll find it enlightening.
Four international executives are playing golf. On the third hole a ringing sound is heard. The British golfer fumbles in his bag, picks out his cellular phone, turns away from his partners and has a brief conversation.
"Terribly sorry chaps, but one has to keep one's finger on the pulse and all that." His companions murmur acknowledgment.
On the fourth hole, there is another ring. The American says "excuse me", places his thumb to his ear and holds his pinkie near his mouth, and has an intense conversation.
He turns back to the bewildered group. "Oh, this is the latest thing on the Coast," he says "I've got a microphone grafted into my pinkie and a receiver in my thumb. It's really convenient."
They play on for a few more holes, at which point there is a loud ring. The German, who had been leaning over his putt, snaps to attention. "Ja, verstehen, verstehen, ja, ja. Auf Wiedersehen." He snaps back to normal.
"This is really the state of art," he tells his playing partners. "I have the microphone grafted into my lower lip, and the receiver grafted into my earlobe. All I have to do to answer the telephone is to straighten my neck." Everyone is impressed.
Finally, on the 18th hole, muted chimes are heard. The Japanese businessman drops his clubs, blurts "so sorry" and runs into the bushes. Everyone waits.
After 15 minutes the American goes to check on his colleague. He finds Mr. Tanaka squatting, trousers around his ankles, eyes closed and grimacing. "You okay, Tanaka-san?" he asks.
"Everything is fine," Mr. Tanaka replies. "Just awaiting fax from home office."
Although design flaws have made some BIND bugs worse, all the BIND exploits that I can think of have their roots in plain old bad development rather than some specialized security problem.
Take the classic problem, the buffer overflow. Some programmer makes an incorrect assumption about the size of a chunk of data, and ka-blooie, you've written garbage all over memory. Although this can, with a lot of trickery, turn into a security problem, it's really just bad programming.
Good programming is all about making sure that your code does only what it's supposed to, neither more nor less. As part of making a program robust, you'll automatically take care of most of the sloppiness that leads to security flaws.
This isn't to say that security is easy or unimportant, but the first poster is right; security is mainly a design issue. From the perspective of a coder, security errors are a small subset of the errors you aim to eliminate when coding for maximum reliability.
I'm not sure how big people are going with apache these dayys, but i'm assuming 50-100 hits per second is doable
On one single-processor 600MHz Pentium III box I happily serve about 70 hits/sec of mostly static content, or about 250,000 hits per hour during peak.
The main bottlenecks I've had are I/O related; the hits are spread over about 4.5 million indivdual files. But a half-gig of RAM takes care of that pretty well. I expect that the box will top out at about 110 hits/sec.
If you don't, someone else will. And that person, less technically competent, will soon be telling you what to do.
This is you chance to do it right. Over the last ten years, you've built up a big catalog of stupid boss tricks. You can now be the kind of boss you wished you had.
You can tackle bigger things. There's a limit to what one person can do. If you build and lead a good team, you'll be able to build a lot more cool stuff than you can as The Lone Coder.
Really, it's worth a go. If you hate it, you can always go back to doing straight technical work. Here are a few tips:
Be honest with your people. You have the great advantage of managing techs, who prefer the honest, unvarnished facts. If they come to you, as a manger, with a problem that you don't know how to handle, just ask them what they are hoping you'll do for 'em. That may seem a little lame, but it's much better than saying "Oh, that's an issue; let me get back to you." Geeks are good at detecting bullshit, and you will lose their respect quickly if you aren't honest.
Learn diplomacy. Although frankness works well with your fellow geeks, it is frequently not the best way to handle the other folks you'll soon be forced to deal with. And although some managers seem to think differently, note that "being diplomatic" isn't the same as "lying your ass off".
Protect your people. In your team, you should strive mightily to create a little bubble of sanity, isolated from external nuttiness.
Learn politics. Yes, politics is ugly, disgusting, and depressing. Of course, so are many APIs, but sometimes you still gotta use 'em. Find a political mentor who understands the ever-shifting balance of power at your organization, and have them explain things to you frequently.
Don't burn out. As a manager, much of your job is to provide sanity, balance, and perspective. If you are overworked or burnt out, you can't do any of those.
Unfortunately, you didn't mention what part of management you're being asked to take on. There are a lot of things they might be expecting:
Techincal lead - This is just being in charge of the geeky decisions.
Project manager - Perhaps they also want to you do schedules, timelines, progress reports, resource planning, and the like.
Personnel manager - Will the people on your team look to you for things like performance reviews, raises, vactation scheduling, and so on?
Technical mentor - Do you plan to spend time helping the junior developers get to be kick-ass coders?
Liaison - Your team may have to deal with customers, vendors, QA, user testing, marketing, and about eight million other people. If it's not explicitly somebody else's job, it will be yours.
These are all different sorts of management, requiring time and effort. None of them are easy. If you are being asked to take them all on for a team of four, 20% of your time isn't enough. (It's more like 120%.:-) ) Make sure that your responsibilities are clear before you sign up.
You also asked for books I liked. These have come in handy for me:
Getting To Yes: Negotiating Agreement Without Giving In, Roger Fisher - A great general book on negotiating, a skill you'll soon need a lot.
Rapid Development, Steve McConnell - A great book for you, and a great one to hand to PHBs when they ask you to do something impossible. Full of useful statistics that help you defend your decisions, like, "This study showed that 73% of projects that [did stupid thing X] failed utterly."
The Mythical Man-Month, Fred Brooks - Deservedly, a classic.
Extreme Programming, Kent Beck - If this fits with your product life-cycle, many of these techniques can be great.
Actually, I'm suggesting that words in links are the problem. If you search for "Ass" on epinions, you'll see that there's a link from the movie "The Golden Ass" to this URL:
http://www.epinions.com/book_mu-2053922
Now if I were writing a link parser for a search engine, I might throw out that last part, since it's not obviously HTML or a directory. (Yes, that wouldn't be optimal, but it's a reasonable mistake.) And presumably you can find similar links for "gerber", "forks", and "babies", too.
So perhaps Google's engine sees about a zillion links with all sorts of words pointing to Epinion's top level, and assumes that epinions top level is relevant to those. It's generally a pretty good assumption, even if it falls down in the case of Epinions.
Of course, it's completely possible that the guys at Epinions walk a briefcase full of cash over to Google on the first of every month, and that's why Epinions ranks highly for people wanting to fork babies in their asses. But there are other possibilities, too, so maybe you should give Google the benefit of the doubt.
Although I'm generally in favor of supporting people doing weird geekery, I'm not going to receive a bunch of spam on the off chance that somebody, just for kicks, wants to send me mail from a MTA on an ISP's dialup.
AFAIK, all DUL-listed netblocks are owned by ISPs that provide relay service, so it's not a big burden for you to use them. Or you can provide your own relay on some permanently connected box that you own.
If you want to yell at somebody about this, yell at the spammers who ruined it for you. And politely ask your congressman to bitch-slap them, too.
Isn't this clear evidence that google is accepting money from other companies in return for higher rating and even inclusion in searches that don't match?
Not really. If you click on the "cached" link on the Google results page, you can see another way this could happen.
Google, wisely I think, uses the words in links leading to a page to index stuff. But it gives a way for people to cheat. So it could be that Epinions is the culpable party here, not Google.
[...] including the DUL which is the worst piece of half-baked crap for valid (non-spam) emails I've ever seen [...]
If you don't like it, don't use it. For me, it works fine; for the last six months I've been sorting all my DUL- and RBL-listed mail into a folder of it's own, and it's been 100% spam. Note that if you use the DUL you shouldn't block any mail that originates at a dialup; only block things that are delivered direct from a dialup to your server.
I purchased three servers from them. All of them were faulty, and one of them was put together by an idiot (missing parts, missing screws, wrong stuff installed).
Eventually, they made good on everything, but it took me an amazing amount of work to get them to cough up replacements. They gave the impression of being nice but only semi-competent.
Luckily, all experienced sysadmins know how to use the Jedi Mind Trick on lame-o tech support:
"My system is faulty."
"Uh... From my diagnosis, I'd say you have some faulty hardware."
"You need to send me replacement RAM."
"Tell you what, why don't I send you some replacement RAM!"
"And hookers."
"Boy, I feel bad about our mistakes. Why don't I send the RAM over with some hookers!"
Although I'd agree that a dedicated router box is generally better than running a box with an general-purpose OS, the decision isn't as clear-cut as some posters are making it out to be.
For modern hardware, there's no appreciable performance difference for the kinds of loads most people will see. For one of my clients, I set up dual Celeron-based Linux boxes as routers. One is the active router, and the other is a hot spare, automatically failing over if anything happens to the primary. (Kudos, BTW, to the folks at the High Availability Linux Project.)
This solution happily routes about 15 Mb/s around the clock, and I've tested it up to 100 Mb/s. Total cost for the pair was about $3200 in 1U rackmount cases. I can run all the latest Linux security tools on them. And other Linux sysadmins can work on them without learning, say, Cisco's arcane configuration language.
So a dedicated router may be better on the same hardware, but using a full-blown OS can make a lot of sense.
It's certainly true that people here assume the worst from Microsoft. But can you blame them? Most things Microsoft makes are woefully inelegant, however useful they might be. And because Microsoft is so focused on crushing competitors (as opposed to being focused exclusively on making good products), it's only wise to ask yourself, "What does Microsoft hope to crush with this?"
That said, it'd be nice if people were a little less biased in their evaluations. The only way we'll beat Microsoft is by carefully watching them and stealing all their best tricks.
The Economist has a good editorial this week dealing with this topic. Their basic take:
It is time for record companies to take the plunge and change their pricing and business models to reflect the new Internet environment. The success of Napster is both a response to, and an indictment of, their hesitations.
For subscribers, they also have a very good article briefly explaining distributed storage systems like Gnutella, and why they're so important. This is unlike the Security Focus article, where you get the impression that the writer didn't quite get what he was writing about.
You get them from RetHat's site. Using a machine that is secure. And put them on a floppy. Duh.
Admittedly, RedHat (and other vendors) could make this easier on novice users. For example, during the install they could, leaving all services disabled, go to the RedHat site and get the latest security updates.
Until then, y'all should check out Kirk Bauer's AutoRPM, which is an excellent way to keep your systems up to date. It runs from cron, letting you know what has been updated. And it will optionally install the goods for you, even checking signatures first.
Heisenberg's work isn't part of chaos theory, bucko. Check out the excellent Chaos Page at the University of Maryland.
Chaos theory deals with "simple nonlinear deterministic systems" that "behave in an apparently unpredictable and chaotic manner".
Sorry, but quantum mechanics doesn't count.
Although now that I think about it, many Anonymous Cowards are simple detministic systems that behave in a chaotic manner. Maybe you should go in as a lab animal.:-)
XML is basically a big ol' delimited text file. The only things separating it from a 30-year old text file is the fact that it's hierarchical and the fact that there are parsers that let you navigate the tree structure easily.
The fact that it's parseable with a generic parser makes all the difference in the world.
I don't know how many times I've had to implement parsers for weird-ass, half-baked, undocumented file formats apparently written by chimpanzees. (For example, RTF.) And then once I've figured out the features, I have to run about a zillion tests to make sure I'm emulating the right bugs, too. And of course, once somebody gets the idea to change the file format, then I need to do it all over again.
With XML, this problem goes away. I can focus on the data, not the representation. That's a big win!
A good comparision is programming a garbage-collected language versus one where you have to do memory management yourself. Sure, I can write C code that is more hardware-efficient than the same stuff written in Perl (or Java). But writing the Perl is faster (and the Java's more maintainable) because I can focus on higher-level issues than pointer arithmetic. I'm generally willing to burn CPU cycles to free up my cycles. That's what computers are for.
XML gives the same boost to data exchange between loosely coupled systems. It surely uses more disk space and processing time. But so what? Thanks to Moore's law, hardware doubles in capacity every 18 months. Programmers, sadly, don't. Use this fact to your advantage!
Chaos theory doesn't demonstrate much of anything about quantum mechanics. The mathematics of chaos work perfectly well with our friends the integers and the reals; no exotic particles required. Sorry.
This has always been true for mail-order purchases in the states I've lived in, and I'm pretty sure that almost every state does it. If you buy something, you pay sales tax.
The fine folks at Jakarta (the Apache-related server-side Java group) have a product called Watchdog that is an automated test library to verify conformance with the Java Servlet and JSP specs.
Watchdog doesn't define compliance; only the spec does that. But I understand that Watchdog is a great way to check an implementation. At JavaOne today, the Tomcat developers say that they regularly run Watchdog against their implementations to make sure that they don't break anything.
Then solve the problem some other way. Stop whining and start hacking. You're posting on Slashdot, not AOL, right?
Or just cough up the dough. If you want a connection to the Internet on your own terms, then pay for out of your own pocket. You want something cheap, then accept that you'll have to compromise with the other people helping to pay the bill.
MAPS isn't forcing MAPS on ISPs, but often the only ISP whose modem is a local call in your town forces MAPS on its customers.
As I said elsewhere (in response to an identical comment on this story), this is easy to get around. You just get a POP mailbox from some other provider that doesn't use MAPS. Or you set up your own mail server and run it how you please.
Sure, this may cost you a few bucks more a month, but that's how capitalism works. If you want what everybody wants, then it's cheap. People who want unusual things have to pay more. And damned few people are clamoring for more spam.
What about users behind local ISPs that have a geographical monopoly in their small town? No, most ISPs' modems are not a local call in Bluffton, Indiana.
If being able to get mail from spammers is that important to you, a POP-accessible mailbox from somebody other than your ISP is somewhere between cheap and free. I'm sure you can find one that doesn't use the RBL.
Yeah, you have to pay extra for that. But that's how capitalism works: the things that most everybody wants are much cheaper than the the things a few people want. And most people just don't want spam.
Although the stock market isn't exactly a coin flip, it's a lot closer than you think; and "productivity of industry" doesn't have much to do with why it's not.
"Productivity of industry" will compensated for in the price of a stock. If I think that stock XYZ has a future payout plus value gains yielding a present value of x, then I'll only sell the stock if you offer me more than x.
That's why stock prices are so sensitive to new information. If you buy GE today and tomorrow they lower their earnings expectations you'll be hurting, even though their productivity is the same. But if you buy a completely unproductive company (like many internet companies) then you can make money if there is good news the next day. "Productivity of industry" as nothing to do with it.
But this means that in the long term, you can only beat the average by
For the average amateur investor, then, it is basically a coin flip. Many novice investors have been lulled into a sense of confidence by the long bull market. Those of us know with longer memories know that stocks can also go down, down, down.
It's true that a well-managed portfolio should make more money over time than putting the money in a less risky investment like, say, government bonds. (Or like putting it in your mattress.) But that doesn't really have to do with being "based on the productivity of industry"; it has to do with the fact that equities are riskier, and riskier investments pay higher returns.
For more infomation, start reading about ;ri sk premiums. You'll find it enlightening.
Thanks to a page at joedietzel.com for a print version of one of my favorite jokes.
Although design flaws have made some BIND bugs worse, all the BIND exploits that I can think of have their roots in plain old bad development rather than some specialized security problem.
Take the classic problem, the buffer overflow. Some programmer makes an incorrect assumption about the size of a chunk of data, and ka-blooie, you've written garbage all over memory. Although this can, with a lot of trickery, turn into a security problem, it's really just bad programming.
Good programming is all about making sure that your code does only what it's supposed to, neither more nor less. As part of making a program robust, you'll automatically take care of most of the sloppiness that leads to security flaws.
This isn't to say that security is easy or unimportant, but the first poster is right; security is mainly a design issue. From the perspective of a coder, security errors are a small subset of the errors you aim to eliminate when coding for maximum reliability.
On one single-processor 600MHz Pentium III box I happily serve about 70 hits/sec of mostly static content, or about 250,000 hits per hour during peak.
The main bottlenecks I've had are I/O related; the hits are spread over about 4.5 million indivdual files. But a half-gig of RAM takes care of that pretty well. I expect that the box will top out at about 110 hits/sec.
- If you don't, someone else will. And that person, less technically competent, will soon be telling you what to do.
- This is you chance to do it right. Over the last ten years, you've built up a big catalog of stupid boss tricks. You can now be the kind of boss you wished you had.
- You can tackle bigger things. There's a limit to what one person can do. If you build and lead a good team, you'll be able to build a lot more cool stuff than you can as The Lone Coder.
Really, it's worth a go. If you hate it, you can always go back to doing straight technical work. Here are a few tips:- Be honest with your people. You have the great advantage of managing techs, who prefer the honest, unvarnished facts. If they come to you, as a manger, with a problem that you don't know how to handle, just ask them what they are hoping you'll do for 'em. That may seem a little lame, but it's much better than saying "Oh, that's an issue; let me get back to you." Geeks are good at detecting bullshit, and you will lose their respect quickly if you aren't honest.
- Learn diplomacy. Although frankness works well with your fellow geeks, it is frequently not the best way to handle the other folks you'll soon be forced to deal with. And although some managers seem to think differently, note that "being diplomatic" isn't the same as "lying your ass off".
- Protect your people. In your team, you should strive mightily to create a little bubble of sanity, isolated from external nuttiness.
- Learn politics. Yes, politics is ugly, disgusting, and depressing. Of course, so are many APIs, but sometimes you still gotta use 'em. Find a political mentor who understands the ever-shifting balance of power at your organization, and have them explain things to you frequently.
- Don't burn out. As a manager, much of your job is to provide sanity, balance, and perspective. If you are overworked or burnt out, you can't do any of those.
Unfortunately, you didn't mention what part of management you're being asked to take on. There are a lot of things they might be expecting:- Techincal lead - This is just being in charge of the geeky decisions.
- Project manager - Perhaps they also want to you do schedules, timelines, progress reports, resource planning, and the like.
- Personnel manager - Will the people on your team look to you for things like performance reviews, raises, vactation scheduling, and so on?
- Technical mentor - Do you plan to spend time helping the junior developers get to be kick-ass coders?
- Liaison - Your team may have to deal with customers, vendors, QA, user testing, marketing, and about eight million other people. If it's not explicitly somebody else's job, it will be yours.
These are all different sorts of management, requiring time and effort. None of them are easy. If you are being asked to take them all on for a team of four, 20% of your time isn't enough. (It's more like 120%.Actually, I'm suggesting that words in links are the problem. If you search for "Ass" on epinions, you'll see that there's a link from the movie "The Golden Ass" to this URL:
http://www.epinions.com/book_mu-2053922
Now if I were writing a link parser for a search engine, I might throw out that last part, since it's not obviously HTML or a directory. (Yes, that wouldn't be optimal, but it's a reasonable mistake.) And presumably you can find similar links for "gerber", "forks", and "babies", too.
So perhaps Google's engine sees about a zillion links with all sorts of words pointing to Epinion's top level, and assumes that epinions top level is relevant to those. It's generally a pretty good assumption, even if it falls down in the case of Epinions.
Of course, it's completely possible that the guys at Epinions walk a briefcase full of cash over to Google on the first of every month, and that's why Epinions ranks highly for people wanting to fork babies in their asses. But there are other possibilities, too, so maybe you should give Google the benefit of the doubt.
Although I'm generally in favor of supporting people doing weird geekery, I'm not going to receive a bunch of spam on the off chance that somebody, just for kicks, wants to send me mail from a MTA on an ISP's dialup.
AFAIK, all DUL-listed netblocks are owned by ISPs that provide relay service, so it's not a big burden for you to use them. Or you can provide your own relay on some permanently connected box that you own.
If you want to yell at somebody about this, yell at the spammers who ruined it for you. And politely ask your congressman to bitch-slap them, too.
Tidy desk, tidy mind.
Empty desk...
I purchased three servers from them. All of them were faulty, and one of them was put together by an idiot (missing parts, missing screws, wrong stuff installed).
Eventually, they made good on everything, but it took me an amazing amount of work to get them to cough up replacements. They gave the impression of being nice but only semi-competent.
Luckily, all experienced sysadmins know how to use the Jedi Mind Trick on lame-o tech support:
Although I'd agree that a dedicated router box is generally better than running a box with an general-purpose OS, the decision isn't as clear-cut as some posters are making it out to be.
For modern hardware, there's no appreciable performance difference for the kinds of loads most people will see. For one of my clients, I set up dual Celeron-based Linux boxes as routers. One is the active router, and the other is a hot spare, automatically failing over if anything happens to the primary. (Kudos, BTW, to the folks at the High Availability Linux Project.)
This solution happily routes about 15 Mb/s around the clock, and I've tested it up to 100 Mb/s. Total cost for the pair was about $3200 in 1U rackmount cases. I can run all the latest Linux security tools on them. And other Linux sysadmins can work on them without learning, say, Cisco's arcane configuration language.
So a dedicated router may be better on the same hardware, but using a full-blown OS can make a lot of sense.
Last I checked, FTP runs on other platforms than Linux. And my copies of RedHat have come with pretty little cards telling me where to get updates.
And you were talking about work, not home. Is this really your very first computer at work? In 2000? No wonder they almost fired you.
It's certainly true that people here assume the worst from Microsoft. But can you blame them? Most things Microsoft makes are woefully inelegant, however useful they might be. And because Microsoft is so focused on crushing competitors (as opposed to being focused exclusively on making good products), it's only wise to ask yourself, "What does Microsoft hope to crush with this?"
That said, it'd be nice if people were a little less biased in their evaluations. The only way we'll beat Microsoft is by carefully watching them and stealing all their best tricks.
So if my mom's an attorney, then when did she find out about it?
For subscribers, they also have a very good article briefly explaining distributed storage systems like Gnutella, and why they're so important. This is unlike the Security Focus article, where you get the impression that the writer didn't quite get what he was writing about.
You get them from RetHat's site. Using a machine that is secure. And put them on a floppy. Duh.
Admittedly, RedHat (and other vendors) could make this easier on novice users. For example, during the install they could, leaving all services disabled, go to the RedHat site and get the latest security updates.
Until then, y'all should check out Kirk Bauer's AutoRPM, which is an excellent way to keep your systems up to date. It runs from cron, letting you know what has been updated. And it will optionally install the goods for you, even checking signatures first.
Heisenberg's work isn't part of chaos theory, bucko. Check out the excellent Chaos Page at the University of Maryland.
:-)
Chaos theory deals with "simple nonlinear deterministic systems" that "behave in an apparently unpredictable and chaotic manner".
Sorry, but quantum mechanics doesn't count.
Although now that I think about it, many Anonymous Cowards are simple detministic systems that behave in a chaotic manner. Maybe you should go in as a lab animal.
XML is basically a big ol' delimited text file. The only things separating it from a 30-year old text file is the fact that it's hierarchical and the fact that there are parsers that let you navigate the tree structure easily.
The fact that it's parseable with a generic parser makes all the difference in the world.
I don't know how many times I've had to implement parsers for weird-ass, half-baked, undocumented file formats apparently written by chimpanzees. (For example, RTF.) And then once I've figured out the features, I have to run about a zillion tests to make sure I'm emulating the right bugs, too. And of course, once somebody gets the idea to change the file format, then I need to do it all over again.
With XML, this problem goes away. I can focus on the data, not the representation. That's a big win!
A good comparision is programming a garbage-collected language versus one where you have to do memory management yourself. Sure, I can write C code that is more hardware-efficient than the same stuff written in Perl (or Java). But writing the Perl is faster (and the Java's more maintainable) because I can focus on higher-level issues than pointer arithmetic. I'm generally willing to burn CPU cycles to free up my cycles. That's what computers are for.
XML gives the same boost to data exchange between loosely coupled systems. It surely uses more disk space and processing time. But so what? Thanks to Moore's law, hardware doubles in capacity every 18 months. Programmers, sadly, don't. Use this fact to your advantage!
Chaos theory doesn't demonstrate much of anything about quantum mechanics. The mathematics of chaos work perfectly well with our friends the integers and the reals; no exotic particles required. Sorry.
This has always been true for mail-order purchases in the states I've lived in, and I'm pretty sure that almost every state does it. If you buy something, you pay sales tax.
Why should the Internet be different?
The fine folks at Jakarta (the Apache-related server-side Java group) have a product called Watchdog that is an automated test library to verify conformance with the Java Servlet and JSP specs.
Watchdog doesn't define compliance; only the spec does that. But I understand that Watchdog is a great way to check an implementation. At JavaOne today, the Tomcat developers say that they regularly run Watchdog against their implementations to make sure that they don't break anything.