Considering that you and I probably wouldn't have our jobs if not for IP law, does this mean that our salaries are ill-gotten, and that if we donate to charity, it doesn't count?
I mean, I'll agree with you on the anti-trust issues, and I guess the government-mandated proprietary document formats are arguable, but I think he'd still have a hell of a lot of money without those...
That's not the point. For what period of time does it pump out 10kW?
Most likely, it 100kJ for 0.1 seconds or so.
100kJ in 0.1s would be 1000kW, or 1GW.
Your electric meter doesn't measure things in J, it uses kW.
My electic meter measures energy in neither joules nor kilowatts. My electric meter measures in kilowatt-hours (kWh), which is how much energy you use if you use one kilowatt of power for one hour. A kilowatt hour is exactly 3.6 megajoules.
Honestly, if you have no understanding of the subject, why do you post?
They say it generates, on average, 10kW of power each time a car crosses. OK, great, but a watt is a measure of energy over time. So, for how long does it generate 10kW of power? Is it 10kW for a half second? 10 seconds? An hour? A millisecond?
If I have a 100W light bulb, how long can I power it off of the energy generated by one car crossing this ramp? With the information given, I have no way to calculate this. The "10kW" number is completely meaningless.
Energy is measured in joules, dammit. A watt is one joule per second.
(1) The idea that reading a book -- especially an entirely unrelated book like this -- would be evidence that you are a terrorist is perposterous. The DHS is not improving our security in any way whatsoever by doing this.
(2) It creates a state of fear, where people will avoid reading books they would otherwise want to read because they are afraid that the DHS will start watching them and visiting them. This is not a fun way to live. In fact, it is effectively censorship of the books in question. Being watched and visited by the DHS is effectively your punishment if you read these books. Maybe a visit from some agents doesn't sound so bad to you (many others would disagree), but how would you feel if they stopped letting you board airplanes based on your reading list?
BTW, the professor was obviously referring to the book as harmless, not Mao Zedong himself.
When you connect, you hit a firewall, possibly implemented in hardware, or at least very simple software. If it hasn't seen your IP before, it sends you through the gauntlet. It sends you a redirect to/?ABCDEFGH and closes. This it can do with a very minimal amount of logic.
Until you hit/?ABCDEFGH, the hardware firewall continues to bounce you. Once you hit it, it puts your IP into its whitelist and sends another redirect. The next time you connect, it lets you connect through to the web server. After some amount of time, your IP expires, and you have to go through the redirect loop once again.
This is actually quite ingenious, IMO. Imagine if a typical internet worm -- designed to exploit a buffer overflow in Apache, say -- were to hit this. What are the chances that such a worm would be designed to parse HTTP and follow redirects? Just about zero, unless it was specifically designed to attack this firewall, which is itself pretty damned unlikely. Voila, this server is practically immune to worms. Yes, it's security by obscurity, but worm defense often is.
It would also greatly reduce the load of a DDoS attack. This forwarding service probably has to look up the domain name in some sort of database for every request. This operation is obviously going to be much more expensive than responding with canned HTTP headers. Since a DDoS also probably wouldn't bother to follow redirects, this scheme greatly reduces the computing resources that a DDoS would consume.
That's my guess, anyway. Note that not only is it plausible and consistent with the evidence, but it also suggests that GoDaddy's setup is actually quite intelligent, whereas your theory suggests that they are just idiots. Since I find it hard to imagine that a large tech company like them would employ total idiots, I am inclined to favor the "intelligent" theory.:) (Although, I suspect that they bought this technology from a vendor, not implemented it themselves.)
I was wrong about one thing, BTW: The "firewall" actually does parse the first line of the request. It figures out what URL you are requesting, and it makes that part of the URL it forwards you to, in order to avoid clobbering the path you requested.
Imagine if you could create as many identities for yourself as you wanted. You could go so far as to create a separate identity for every single site you visit, even. Imagine that you can program your web browser to invent dummy identities automatically in order to accomplish this. There; privacy issues solved.
The nice part about this system is that you'd never have to enter a password or a credit card number again, and no one would be able to steal your identity without stealing your physical computer.
I only spent 30s on this analysis, but I'm arrogant^H^H^H^H^H^H^H^H^Hexperienced enough to know I'm right.;)
The hilarious part is that you are actually wrong. Your speculation -- and your arrogance in assuming it is correct -- is exactly the kind of stupidity that the guy was complaining about.
Their server replies after the first packet because they DO NOT CARE about the information in the request. The server always gives exactly the same reply to the request, so for simplicity of implementation they just had it reply right away. I'm guessing this is a low-level, perhaps embedded server where they wanted to keep the implementation as minimal as possible.
There is nothing wrong with replying before receiving the full request. Why would the client be reading from the connection before a request has been sent?
There is a problem with closing a connection before receiving the complete request, since it could cause a write error on the client side. This is probably why they wait for the first packet at all: they figure that by the time they receive a packet, the client has already written the full request. This seems like a reasonable assumption, even if it breaks spec. I doubt it is the cause of the problem.
If I were to guess at the real cause, I would blame the fact that they're redirecting from / to/?ABCDEFGH and then back to / again. The second time you hit/, it actually displays the site. It's obvious how this could be confusing to a browser; some browsers might assume this is a redirect loop and give up.
But, I haven't done enough testing to know if that is the Real True cause of the problem, and I'm not arrogant enough to assume I'm right without doing any real testing.
PS. Nice job breaking Slash (so to speak) with your username...
IIRC, the claim was made in court, under oath. It's far more likely that Ballmer's denial is the lie, since Ballmer wasn't legally bound to tell the truth when he made his denial.
But what the article describes is more like a hack someone came up with to fix the still broken system.
No more of a hack than KDE session management, which you need to restart X without losing your session state.
I wouldn't say Windows is "broken" here... it's just a fact of life that if you update a library you have to restart all the programs using the library, and it most cases the easiest way to do this is to reboot. This is true in Linux, too. If a vulnerability is found in OpenSSL and you install an update, you then have to restart every process which uses OpenSSL -- probably all your servers and several clients. Personally, if I were you, I'd reboot the entire machine to be safe.
I guess the big difference is that Linux lets you replace library files while running processes are using them. This doesn't mean the process has been updated, of course; it continues on with the outdated version of the library, and you may very well not realize that this is happening. I bet inexperienced Linux admins install updates like this all the time, feeling proud of themselves for not having to reboot, not realizing that their running servers are still vulnerable.
On Windows, on the other hand, you can't modify or delete a DLL while a program is using it. I'm not saying this is better, but at least it avoids the pitfall. Unfortunately, the problem of automatically killing all programs using a DLL so that it can be updated is very hard, regardless of the OS you are using. So, Microsoft has resorted to forcing you to reboot, whereas Linux has left it up to the user to restart their services.
It looks like now Microsoft has come up with a system which can actually manage restarting all processes using a particular DLL. Linux really should have something like this, too, in order to prevent users from screwing up and leaving themselves vulnerable.
There's one, maybe Install Shield, that insists on searching all the drives connected to a computer for some strange reason.
I have seen installers do this, but only for specific programs, and it's very rare. I remember installing some sort of browser plugin, and the installer insisted on searching for all browser installations rather than letting me point out where my browser was installed (or just using the registry). In any case, I haven't come across one of these in years. (And I'd notice: Between my various RAID arrays I have a TB of disk space containing around 250k files.)
Aside from the obviously questionable nature of the press release itself, what is described is nothing like "true" AI. A "true" AI would learn all of the things which they are claiming to have directly programmed into their system.
Their target market is kind of sad, too. "We created a sentient being and the first thing we're going to use it for is to make better interactive monkey-punching banner ads!"
I'm no fan of Microsoft, but I don't see any reason to believe that they can't make this work if they really want to. The article sure makes it sound like it will be possible to update the window manager and graphics drivers without a full reboot.
But then, how often is the Windows core UI updated, anyway? The majority of patches apply to IE and various user-mode services.
Incidentally, if a vulnerability were found in glibc or some other core library and required an update, you'd be forced to reboot Linux. With this Windows restart manager, though, it sounds like the C runtime could potentially be updated without a reboot if all running programs implement the restart manager API. Granted, I'm guessing most programs won't support it since it wouldn't be worth the effort, but hey... better than Linux.
I actually had Linux shoved down my throat at work. After trying to adjust to it for a few months I switched to using a Windows laptop and just shelling in to the Linux machine to compile and run stuff.
Because GAIM pops up a goddamn focus-stealing window in my face every time it disconnects. That'd be a showstopper for me on its own, but it's only one item in a long list of things I can't stand about GAIM's UI. And, no, I don't want to write or install half a dozen third-party plugins just to make the UI bearable.
Unfortunately for me, every single IM client in existence has at least one problem that I consider a showstopper.
Yes, anonymous inner classes work... but the are awfully cumbersome to use.
they combine multiple functions with a lexical scope instead of being limited to just one function.
I prefer to add such complication only when it is actually needed. In a typical functional language you can always group a bunch of closures into an aggregate if that's what you want.
void doSomething(Resource r) {
AcquireAndRun(r, lambda () { // Here, r has been acquired.
read(r);
write(r);
}); // Once we get here, r has been released. }
(Note: Those comments were indented properly, but Slashdot messed them up.)
Of course, this will be hard to use unless your language supports closures. Sadly, most imperative languages (e.g. Java) do not. But, hey, I'm a functional language person so I'm not going to try to defend them.
Some programming languages, which usually predictable memory management, can also be made to behave like they are garbage collected - for example, Boost provides various C++ smart pointer classes.
Aside from the obvious problem with cycles, note that reference counting is slow. Very, very slow. Since you need to use an atomic counter, every copy of a refcounted pointer requires inter-processor communication (on a multiprocessor system). Do not underestimate how slow this is. Yes, it is much slower than real GC.
Human customer service is much more expensive than automated systems. Unless they make you pay per call (which probably isn't what you're going for), these costs will be returned to the consumer through higher product prices. Is this really what you want?
Say Microsoft were to contact Google and say "You're infringing on 452 of our patents, and we want you to pay $X for them.". If Google had no patents, they'd be kind of screwed. But, if Google has tons of patents on random crap like advertising in RSS and personalized search results, they can say "Well, you're infringing on 521 of ours, so screw you.".
I think this is the point of "defensive patents". (Of course, I am not in charge of Google's patent policies, so I wouldn't know for sure.)
I was trying to troubleshoot my mom's computer problems over AIM. I tried to direct her to take a screenshot of a window, but she couldn't seem to do it. Then she said "hold on" and signed off for awhile. When she returned, she explained what she had done: First, she opened MS Word and typed out all the text from the window manually. That's fine; more work than she needed to do, but it got the job done.
But, then she proceeded to print out the word document, scan it, and then send me the resulting image.
Yeah. Your guess is as good as mine.
The scariest part is that this same woman has assembled computers from parts and installed Windows on them without outside help in the past.
I'm not aware of any fossil evidence showing half-way mutated species. If someone knows of some, could they provide a link to a reputable website detailing this evidence?
Shares of his publicly held company, Circle Group Holdings, quadrupled in price early last year amid reports that its new fat substitute, Z-Trim, was being tested by Nestlé....
Circle Group stock fell below a dollar in a year of combat with Miles and the anonymous bashers on Yahoo (and after Nestlé dropped Z-Trim).
Clearly it was the bloggers' fault that his stock fell, not the fact that its whole reason for being up in the first place fell through.
Also, slander and libel didn't exist before the internet.
Considering that you and I probably wouldn't have our jobs if not for IP law, does this mean that our salaries are ill-gotten, and that if we donate to charity, it doesn't count?
I mean, I'll agree with you on the anti-trust issues, and I guess the government-mandated proprietary document formats are arguable, but I think he'd still have a hell of a lot of money without those...
If it's 10 kW, it must average 10kJ for 1 second.
That's not the point. For what period of time does it pump out 10kW?
Most likely, it 100kJ for 0.1 seconds or so.
100kJ in 0.1s would be 1000kW, or 1GW.
Your electric meter doesn't measure things in J, it uses kW.
My electic meter measures energy in neither joules nor kilowatts. My electric meter measures in kilowatt-hours (kWh), which is how much energy you use if you use one kilowatt of power for one hour. A kilowatt hour is exactly 3.6 megajoules.
Honestly, if you have no understanding of the subject, why do you post?
They say it generates, on average, 10kW of power each time a car crosses. OK, great, but a watt is a measure of energy over time. So, for how long does it generate 10kW of power? Is it 10kW for a half second? 10 seconds? An hour? A millisecond?
If I have a 100W light bulb, how long can I power it off of the energy generated by one car crossing this ramp? With the information given, I have no way to calculate this. The "10kW" number is completely meaningless.
Energy is measured in joules, dammit. A watt is one joule per second.
But those of us with hybrid cars are already reclaiming that energy...
Because:
(1) The idea that reading a book -- especially an entirely unrelated book like this -- would be evidence that you are a terrorist is perposterous. The DHS is not improving our security in any way whatsoever by doing this.
(2) It creates a state of fear, where people will avoid reading books they would otherwise want to read because they are afraid that the DHS will start watching them and visiting them. This is not a fun way to live. In fact, it is effectively censorship of the books in question. Being watched and visited by the DHS is effectively your punishment if you read these books. Maybe a visit from some agents doesn't sound so bad to you (many others would disagree), but how would you feel if they stopped letting you board airplanes based on your reading list?
BTW, the professor was obviously referring to the book as harmless, not Mao Zedong himself.
I tried doing what you suggested (even though it wasn't my post) and here is my reaction:
"Microsoft is giving AOL's ads preferential treatment over other ads it serves? Whoop-de-freeking-do! I ignore ads anyway."
So, I don't think I see your point.
I think I figured it out: It's a firewall.
/?ABCDEFGH and closes. This it can do with a very minimal amount of logic.
/?ABCDEFGH, the hardware firewall continues to bounce you. Once you hit it, it puts your IP into its whitelist and sends another redirect. The next time you connect, it lets you connect through to the web server. After some amount of time, your IP expires, and you have to go through the redirect loop once again.
:) (Although, I suspect that they bought this technology from a vendor, not implemented it themselves.)
When you connect, you hit a firewall, possibly implemented in hardware, or at least very simple software. If it hasn't seen your IP before, it sends you through the gauntlet. It sends you a redirect to
Until you hit
This is actually quite ingenious, IMO. Imagine if a typical internet worm -- designed to exploit a buffer overflow in Apache, say -- were to hit this. What are the chances that such a worm would be designed to parse HTTP and follow redirects? Just about zero, unless it was specifically designed to attack this firewall, which is itself pretty damned unlikely. Voila, this server is practically immune to worms. Yes, it's security by obscurity, but worm defense often is.
It would also greatly reduce the load of a DDoS attack. This forwarding service probably has to look up the domain name in some sort of database for every request. This operation is obviously going to be much more expensive than responding with canned HTTP headers. Since a DDoS also probably wouldn't bother to follow redirects, this scheme greatly reduces the computing resources that a DDoS would consume.
That's my guess, anyway. Note that not only is it plausible and consistent with the evidence, but it also suggests that GoDaddy's setup is actually quite intelligent, whereas your theory suggests that they are just idiots. Since I find it hard to imagine that a large tech company like them would employ total idiots, I am inclined to favor the "intelligent" theory.
I was wrong about one thing, BTW: The "firewall" actually does parse the first line of the request. It figures out what URL you are requesting, and it makes that part of the URL it forwards you to, in order to avoid clobbering the path you requested.
Imagine if you could create as many identities for yourself as you wanted. You could go so far as to create a separate identity for every single site you visit, even. Imagine that you can program your web browser to invent dummy identities automatically in order to accomplish this. There; privacy issues solved.
The nice part about this system is that you'd never have to enter a password or a credit card number again, and no one would be able to steal your identity without stealing your physical computer.
Sorry, when I said "exactly what the guy was complaining about", I meant this guy, in a sibling post.
I totally understand how you feel. I find reading comments on Google articles to be absolutely hilarious.
Sad that you got modded troll.
I only spent 30s on this analysis, but I'm arrogant^H^H^H^H^H^H^H^H^Hexperienced enough to know I'm right. ;)
/?ABCDEFGH and then back to / again. The second time you hit /, it actually displays the site. It's obvious how this could be confusing to a browser; some browsers might assume this is a redirect loop and give up.
The hilarious part is that you are actually wrong. Your speculation -- and your arrogance in assuming it is correct -- is exactly the kind of stupidity that the guy was complaining about.
Their server replies after the first packet because they DO NOT CARE about the information in the request. The server always gives exactly the same reply to the request, so for simplicity of implementation they just had it reply right away. I'm guessing this is a low-level, perhaps embedded server where they wanted to keep the implementation as minimal as possible.
There is nothing wrong with replying before receiving the full request. Why would the client be reading from the connection before a request has been sent?
There is a problem with closing a connection before receiving the complete request, since it could cause a write error on the client side. This is probably why they wait for the first packet at all: they figure that by the time they receive a packet, the client has already written the full request. This seems like a reasonable assumption, even if it breaks spec. I doubt it is the cause of the problem.
If I were to guess at the real cause, I would blame the fact that they're redirecting from / to
But, I haven't done enough testing to know if that is the Real True cause of the problem, and I'm not arrogant enough to assume I'm right without doing any real testing.
PS. Nice job breaking Slash (so to speak) with your username...
IIRC, the claim was made in court, under oath. It's far more likely that Ballmer's denial is the lie, since Ballmer wasn't legally bound to tell the truth when he made his denial.
But what the article describes is more like a hack someone came up with to fix the still broken system.
No more of a hack than KDE session management, which you need to restart X without losing your session state.
I wouldn't say Windows is "broken" here... it's just a fact of life that if you update a library you have to restart all the programs using the library, and it most cases the easiest way to do this is to reboot. This is true in Linux, too. If a vulnerability is found in OpenSSL and you install an update, you then have to restart every process which uses OpenSSL -- probably all your servers and several clients. Personally, if I were you, I'd reboot the entire machine to be safe.
I guess the big difference is that Linux lets you replace library files while running processes are using them. This doesn't mean the process has been updated, of course; it continues on with the outdated version of the library, and you may very well not realize that this is happening. I bet inexperienced Linux admins install updates like this all the time, feeling proud of themselves for not having to reboot, not realizing that their running servers are still vulnerable.
On Windows, on the other hand, you can't modify or delete a DLL while a program is using it. I'm not saying this is better, but at least it avoids the pitfall. Unfortunately, the problem of automatically killing all programs using a DLL so that it can be updated is very hard, regardless of the OS you are using. So, Microsoft has resorted to forcing you to reboot, whereas Linux has left it up to the user to restart their services.
It looks like now Microsoft has come up with a system which can actually manage restarting all processes using a particular DLL. Linux really should have something like this, too, in order to prevent users from screwing up and leaving themselves vulnerable.
There's one, maybe Install Shield, that insists on searching all the drives connected to a computer for some strange reason.
I have seen installers do this, but only for specific programs, and it's very rare. I remember installing some sort of browser plugin, and the installer insisted on searching for all browser installations rather than letting me point out where my browser was installed (or just using the registry). In any case, I haven't come across one of these in years. (And I'd notice: Between my various RAID arrays I have a TB of disk space containing around 250k files.)
Aside from the obviously questionable nature of the press release itself, what is described is nothing like "true" AI. A "true" AI would learn all of the things which they are claiming to have directly programmed into their system.
Their target market is kind of sad, too. "We created a sentient being and the first thing we're going to use it for is to make better interactive monkey-punching banner ads!"
I'm no fan of Microsoft, but I don't see any reason to believe that they can't make this work if they really want to. The article sure makes it sound like it will be possible to update the window manager and graphics drivers without a full reboot.
But then, how often is the Windows core UI updated, anyway? The majority of patches apply to IE and various user-mode services.
Incidentally, if a vulnerability were found in glibc or some other core library and required an update, you'd be forced to reboot Linux. With this Windows restart manager, though, it sounds like the C runtime could potentially be updated without a reboot if all running programs implement the restart manager API. Granted, I'm guessing most programs won't support it since it wouldn't be worth the effort, but hey... better than Linux.
I actually had Linux shoved down my throat at work. After trying to adjust to it for a few months I switched to using a Windows laptop and just shelling in to the Linux machine to compile and run stuff.
Because GAIM pops up a goddamn focus-stealing window in my face every time it disconnects. That'd be a showstopper for me on its own, but it's only one item in a long list of things I can't stand about GAIM's UI. And, no, I don't want to write or install half a dozen third-party plugins just to make the UI bearable.
Unfortunately for me, every single IM client in existence has at least one problem that I consider a showstopper.
Yes, anonymous inner classes work... but the are awfully cumbersome to use.
they combine multiple functions with a lexical scope instead of being limited to just one function.
I prefer to add such complication only when it is actually needed. In a typical functional language you can always group a bunch of closures into an aggregate if that's what you want.
Of course, this will be hard to use unless your language supports closures. Sadly, most imperative languages (e.g. Java) do not. But, hey, I'm a functional language person so I'm not going to try to defend them.
Some programming languages, which usually predictable memory management, can also be made to behave like they are garbage collected - for example, Boost provides various C++ smart pointer classes.
Aside from the obvious problem with cycles, note that reference counting is slow. Very, very slow. Since you need to use an atomic counter, every copy of a refcounted pointer requires inter-processor communication (on a multiprocessor system). Do not underestimate how slow this is. Yes, it is much slower than real GC.
Umm... Some articles posted within the 10 hours before this one include this one, this one, this one, this one, and this one.
Human customer service is much more expensive than automated systems. Unless they make you pay per call (which probably isn't what you're going for), these costs will be returned to the consumer through higher product prices. Is this really what you want?
Just asking.
Say Microsoft were to contact Google and say "You're infringing on 452 of our patents, and we want you to pay $X for them.". If Google had no patents, they'd be kind of screwed. But, if Google has tons of patents on random crap like advertising in RSS and personalized search results, they can say "Well, you're infringing on 521 of ours, so screw you.".
I think this is the point of "defensive patents". (Of course, I am not in charge of Google's patent policies, so I wouldn't know for sure.)
That's nothing.
I was trying to troubleshoot my mom's computer problems over AIM. I tried to direct her to take a screenshot of a window, but she couldn't seem to do it. Then she said "hold on" and signed off for awhile. When she returned, she explained what she had done: First, she opened MS Word and typed out all the text from the window manually. That's fine; more work than she needed to do, but it got the job done.
But, then she proceeded to print out the word document, scan it, and then send me the resulting image.
Yeah. Your guess is as good as mine.
The scariest part is that this same woman has assembled computers from parts and installed Windows on them without outside help in the past.
Out of curiosity, how would you design an experiment that would demonstrate that macro-evolution was false?
29+ Evidences for Macroevolution, each of which is falsifiable.
I'm not aware of any fossil evidence showing half-way mutated species. If someone knows of some, could they provide a link to a reputable website detailing this evidence?
Morphological intermediates, from the above site.
Clearly it was the bloggers' fault that his stock fell, not the fact that its whole reason for being up in the first place fell through.
Also, slander and libel didn't exist before the internet.