Those products you mention are unstable hacks that crumble under high load, much the same as the complaints against OSS RDBMS that are mentioned here. They are no match for commercial enterprise systems. You've just proven the original poster's point.
What amazes me is that not only was this article "great news" to you, it was so "great" that you even replied to it!
If you already heard the story, then go onto the next one. I don't see people writing in to newspaper editors complaining that they saw an article that had some information they already knew.
If you don't care about MS and Cisco and/or their respective values, go ready a different story! Why even bother going "Read More" on it, let alone "Reply"?
I found Q-Bert on PC once and was immensely disappointed. I later found its speccy clone and my disappointment continuted.
It is a poor ripoff of the original Speccy game "PI-BALLED". I played this for months on end. Probably the highlight was that I called the frog guy "IRS", but later found out his name was "JAS" and they just used such a pissy small font that it was impossible to tell the difference.
Chess computer software uses all sorts of heuristics and positional factors and so on, and not just brute force. Brute force gets you nowhere in chess due to its complexity. For some example chess playing code, download GNUchess (it's reasonalby strong, andit is opensource).
The example of tournament results quoted earlier does not show anything, because the scores are all quite close together; a difference in pairings by chance could have caused that, for equal strength machines.
The way human players beat computers is not by messing it up. In fact, computers do best in tactical positions because they can calculate the possibilities millions of times more quickly than the human.
Humans beat computers by playing positionally, that is, making moves which have a deep long-term advantage, but nothing perceptible in the short term. Hence , a computer will not realise that it has conceded this advantage, unless it has been specifically programmed to look for it (which can be difficult).
For example, exchanging your opponent's light-squared bishop in a Stonewall, or having equal material but a queen-side pawn majority; or having two bishops.
Maybe you should play some chess and clarify your ideas a bit.
There are 119,060,324 possibilities for a chess game that lasts *3 moves each*. Considering that computers need to at least six moves each ahead (if not 15), then I don't think brute force is an option.
Now, INT_MAX is odd. At some point, i will take the value (INT_MAX - 1). The loop code will execute. Then it gets 2 added to it. Having reached INT_MAX, the value of i is now large and negative (in fact, -INT_MAX + 1). So it is still less than INT_MAX. Loop continues...
Similar to another common bug: using an unsigned int , and testing to see if it is >= 0
Infinity is often confusing to non-mathematicians, and downright incomprehensible to computers. Hence it is no surprise that trying to write a computer program to "carry out" a proof will fail miserably.
A human can make judgments such as "The diagonal number is not a member of the list" (which I hope you agree is rather obvious), whereas a computer cannot judge this without completing a search of the whole list (which is where your loop problem comes in).
And now for something different.. it is situations like this that have convinced me that traditional computers will never be able to think like a human, they are incapable of making "insights" such as that fact about the diagonal number. Try explaining Russell's paradox in C.
Are you sure you understand it?:) The tricky step in Cantor's proof is this one:
"the number on the diagonal is both in the list (since it is a real number), and not in the list (since it differs from everything in the list). this is a contradiction, therefore the list cannot exist."
Studying this led Bertrand Russell to state the following very serious paradox that uses the same logic:
[a definition first] to any intelligible condition there corresponds a class whose members are all and only those things that meet that condition; for example Torvalds is a member of the class of "men", and also of the class "non-goats". Also, the class "men" is itself a member of the class "non-goats" (a class is hardly a goat). Note that the class "non-goats" is a member of itself.
Now for the paradox: Let R be the class of all classes which are not members of themselves. Is R a member of itself?
In view of Cantor's argument, one is forced to reason: "R is a member of itself (because if it isn't, then it is by definition) and R is not a member of itself (because if it is then it isn't), therefore R cannot exist."
However, R is a well-defined class ! Whoops.
The upshot of all this is that people have tried to find a way to fix Russell's paradox without disturbing Cantor's proof (since Cantor's proof is quite beautiful), and have come up with all sorts of messy modifications to Russell's but nothing that actually resolves it.
The amount of waffle on Borland's website about Kylix is remarkable. They go on for pages and pages about crap and this and that and then they get into some specifics, but never give anything useful. I gather (after spending half an hour on their website) that it is a linux port of C++Builder ?
This Borland-waffle applies to their help files too. Their website has jack shit, if it weren't for all the private fan sites there would be no online help (unlike MS's several terabytes of documentation on MSDN).
The help files in Delphi and C++Builder are atrocious. They explain what is obvious, leave out the small details that would have helped to avoid bugs, and give totally irrelevant examples. To figure out how some item works you have to try using it and blunder round until you can make a guess at its function and implementation. The only reason I use it is because it has a much better compiler and much higher ease of doing most of the development on a project.
Now, in order to resurrect some chance of not getting Score 0, I'd like to point out how I think product documentation should be better, most especially in development tools (as opposed to games etc.) It just sucks needing to know how to do something and not having the help available. Most documentation is in the nature of a few tutorials to do specific tasks (all well and good if your goal is to do exactly that specific task, but otherwise useless) and some sort of index of all functionality but with not much useful to say on each topic. As a programmer I know how hard it is to write good documentation. The attitude is "Well I know how it works, so they should be able to figure it out". This is actually quite stupid when you think about it. I'd gladly pay more for a product with thorough, practical documentation so that I could suss anything out when I needed it.
I think you are confusing things with win95 (where all filenames are 8.3, but files have a "long name" associated with them for display purposes.)
In NTFS, there is no such restriction, but you can still name a file 8.3 if you want.
I'll note at this point how wildcards are better on NT in some respects. It is sooo handy to rename a bunch of files by going:
ren Foo.* Bar.*
or even
copy Foo.* Bar.*
but to achieve the same effect on unix, you have to go through a rather complicated procedure of for loops and expr and so on. Someone should port dos copy and dos move to unix..
(*) its also COMPLETELY wrong. according to attrition's archive of hacked sites,
And this is supposed to be the almanac of all hacking on Internet? Gosh
When a Win box gets hacked, the hacker does their bit on its/index.html and it gets reported. When someone breaks into a unix box, they steal its information and install their bandwidth-stealing tools and the box's owner is none the wiser. Or they format the box or perform malicious activities, but no-one bothers to report it most of the time.
You can root an insecured box (eg. default install of most Linux or Solaris distros) in about ten seconds with the tools (which are all too common).
This kind of FUD gets "5"? An obvious rush of mindwashed unixers moderated this. Let me answer your points:
It has an operating system whose applications, even those written by the OS authors, can ignore the TEMP environment variable and scribble temporary files where-ever they want and fail to operate if they can not do as they wish.
You are saying that Unix does not allow one to create a temporary file anywhere other than where TEMP indicates? I wasn't aware of this, how restrictive. If an application developer ignores procedure, that is hardly an OS problem. How would you react if I said that Linux sucks because I installed an app that keeps all of its files and libraries in/etc ?
I have seen the future. The future is filled with continued support for legacy drive letters and 8.3 file names with rename.ini kludges during installs.
FYI backward compatibility is a good thing. I don't mind if older filesystems (FAT) are supported. I certainly have no problem whatsoever using filenames of any length. Drive letters are quite handy: I often map a directory to a drive letter, and then I can handily switch to that directory just by entering the drive letter. It is also very convenient for copying - no typing out long pathnames, just "copy r:*". For example, at work I map S: to my source, R: to an output dir, U: to user files and T: to documentation. It is very useful. With Win2k's NTFS supporting hard links as well as soft links, even those who prefer that method will have nothing to be worried about.
The future is an operating system where you have to shell out serious dollars to buy third-party utilities to get around security deficiences in the design of the OS. After all, why fix that pesky virus problem when so many anti-virus companies would go under without that revenue stream coming in.
You merely point out that most viruses are written for Windows, and hence most virus victims are Windows users.
It has operating systems whose file systems don't support the concept of being able to delete a file yet have it not actually get deleted until the last remaining process that has it open dies first.
This is a great advantage. As a programmer, I should not have to worry about whether someone deletes my currently open file from under me. If I were using direct disk writes, then this would be disastrous. Many system processes (on any OS I'm sure) also maintain open files. I certainly wouldn't want to disrupt those. However, it is sometimes desirable to do this anyway, so Win2K has taken steps so that new DLLs can be installed without having to reboot or close the apps using them.
The only advantage for Unix that you point out is that user security is tighter on Unix. I won't argue with this, since it is true. However, user security on both OSs is being improved constantly, so let us make suggestions and look to the future, rather than denouncing each other.
NT already has a real shell (Explorer etc.) and it is easily user-extensible (you can add your own things to all its menus, with a little coding).
If you mean a real commandline interface, then IMO windows NT CMD prompt is much better than DOS. It has command compatibility, and it has extra invaluable features like tab completion, "cd bl*" etc., and command history. (Quite like unix, one thing that Unix definitely got right was having a great commandline shell). Except that (IMO) nt tab completion is better than *sh's.
Win CE is this. It has the stability of the NT kernel, [note for snide users: NT kernel is stable, but common device drivers are not], and the versatility of NT interfaces (the GUI, COM, etc.) but not the bulk and bloat of: a) massive hardware support and drivers, and b) powerful processes that servers need.
It was originally designed for embedded systems and laptops, but it also makes the perfect terminal for ASP-type systems.
I have a sneaking suspicion that the MS X-Box will in fact be the perfect such terminal, and MS may even serve the games via Internet.
I know a 16 year old who could hax and format almost any unix box. What's your point?
Don't respond with "But not if it was set up properly", because a) most companies don't set it up as such, and b) you can say the same thing about Windows NT.
It may be easy to crash and DoS NT machines, but it is almost impossible to gain root (or whatever) on them, so doing damage or stealing sensitive information is rare.
In fact, most Windows "hacking" is done by getting the unsuspecting user to run a trojan. Hardly the fault of the OS; the fact that this happens much more on Windows is merely a reflection of the fact that almost all people who would fall for a trojan use Windows.
The fact that Unix has a commandline interface accessible remotely has a lot to do with its hackability, and is a major reason why 95%(*) of rooted boxes are not Windows.
Note: This doesn't mean remote CLI is bad, it is simply that powerful features can be used for good or bad.
(*) I made this up, but based on various information I hear, it's in the general vicinity
BTW, that i^(-i) equation doesn't seem to be correct, mainly because i^i is complex and the righthand side isn't. You can get to Euler's formula from that one, but not the other way around, so they aren't equivalent
Re:I already submitted this!
on
Happy Pi Day!
·
· Score: 1
The fact that this got marked "0, Troll" by the moderators can only be evidence that what it says is true. They mark it down to 0 so that readers with Threshhold 1 don't see it and still think that the fiefdom does not exist.
How long until it gets hacked and someone puts Linux on it?
And how long until they upgrade the transmitter things to be repeaters? Then, when enough people have them, there will be a continuous net across the country: free wireless internet! You could/. with Lynx. And you get the date thing on top of all this. I think I'm in heaven
And could we put linux on them, make a beowulf cluster, and then show pictures of Natalie Portman eating hot grits?
Those products you mention are unstable hacks that crumble under high load, much the same as the complaints against OSS RDBMS that are mentioned here. They are no match for commercial enterprise systems. You've just proven the original poster's point.
What amazes me is that not only was this article "great news" to you, it was so "great" that you even replied to it!
If you already heard the story, then go onto the next one. I don't see people writing in to newspaper editors complaining that they saw an article that had some information they already knew.
If you don't care about MS and Cisco and/or their respective values, go ready a different story! Why even bother going "Read More" on it, let alone "Reply"?
I found Q-Bert on PC once and was immensely disappointed. I later found its speccy clone and my disappointment continuted.
:(
It is a poor ripoff of the original Speccy game "PI-BALLED". I played this for months on end. Probably the highlight was that I called the frog guy "IRS", but later found out his name was "JAS" and they just used such a pissy small font that it was impossible to tell the difference.
I don't have pi-balled on my spec em tho
So the Traveling Salesman is dead?
Where are you getting your ideas?
Chess computer software uses all sorts of heuristics and positional factors and so on, and not just brute force. Brute force gets you nowhere in chess due to its complexity.
For some example chess playing code, download GNUchess (it's reasonalby strong, andit is opensource).
The example of tournament results quoted earlier does not show anything, because the scores are all quite close together; a difference in pairings by chance could have caused that, for equal strength machines.
The way human players beat computers is not by messing it up. In fact, computers do best in tactical positions because they can calculate the possibilities millions of times more quickly than the human.
Humans beat computers by playing positionally, that is, making moves which have a deep long-term advantage, but nothing perceptible in the short term. Hence , a computer will not realise that it has conceded this advantage, unless it has been specifically programmed to look for it (which can be difficult).
For example, exchanging your opponent's light-squared bishop in a Stonewall, or having equal material but a queen-side pawn majority; or having two bishops.
Maybe you should play some chess and clarify your ideas a bit.
Chess programs using brute force algorithms?
There are 119,060,324 possibilities for a chess game that lasts *3 moves each*. Considering that computers need to at least six moves each ahead (if not 15), then I don't think brute force is an option.
You aren't a VB programmer by any chance, are you?
The article said that all numbers up to 400,000,000,000,000 had been checked.
However this is less than 1% of all numbers.
There's still quite a ripe picking field if you want to look for a counterexample.
Duh. It's not a non-ANSI extension. It's legal code. "Undefined" merely means that it could give an unexpected result (depending on the compiler).
Similar to things like: a = a++;
Your program has a rather funny bug:
for(i = 4; i < INT_MAX; i += 2)
Now, INT_MAX is odd. At some point, i will take the value (INT_MAX - 1). The loop code will execute. Then it gets 2 added to it. Having reached INT_MAX, the value of i is now large and negative (in fact, -INT_MAX + 1). So it is still less than INT_MAX. Loop continues...
Similar to another common bug: using an unsigned int , and testing to see if it is >= 0
You mean, he used unrelated disciplines that existed but hadn't been discovered in Fermat's time.
Infinity is often confusing to non-mathematicians, and downright incomprehensible to computers. Hence it is no surprise that trying to write a computer program to "carry out" a proof will fail miserably.
A human can make judgments such as "The diagonal number is not a member of the list" (which I hope you agree is rather obvious), whereas a computer cannot judge this without completing a search of the whole list (which is where your loop problem comes in).
And now for something different.. it is situations like this that have convinced me that traditional computers will never be able to think like a human, they are incapable of making "insights" such as that fact about the diagonal number. Try explaining Russell's paradox in C.
Are you sure you understand it?:)
:)
The tricky step in Cantor's proof is this one:
"the number on the diagonal is both in the list (since it is a real number), and not in the list (since it differs from everything in the list). this is a contradiction, therefore the list cannot exist."
Studying this led Bertrand Russell to state the following very serious paradox that uses the same logic:
[a definition first] to any intelligible condition there corresponds a class whose members are all and only those things that meet that condition; for example Torvalds is a member of the class of "men", and also of the class "non-goats". Also, the class "men" is itself a member of the class "non-goats" (a class is hardly a goat). Note that the class "non-goats" is a member of itself.
Now for the paradox:
Let R be the class of all classes which are not members of themselves.
Is R a member of itself?
In view of Cantor's argument, one is forced to reason:
"R is a member of itself (because if it isn't, then it is by definition) and R is not a member of itself (because if it is then it isn't), therefore R cannot exist."
However, R is a well-defined class ! Whoops.
The upshot of all this is that people have tried to find a way to fix Russell's paradox without disturbing Cantor's proof (since Cantor's proof is quite beautiful), and have come up with all sorts of messy modifications to Russell's but nothing that actually resolves it.
A good place to get your thinking started
The amount of waffle on Borland's website about Kylix is remarkable. They go on for pages and pages about crap and this and that and then they get into some specifics, but never give anything useful. I gather (after spending half an hour on their website) that it is a linux port of C++Builder ?
This Borland-waffle applies to their help files too. Their website has jack shit, if it weren't for all the private fan sites there would be no online help (unlike MS's several terabytes of documentation on MSDN).
The help files in Delphi and C++Builder are atrocious. They explain what is obvious, leave out the small details that would have helped to avoid bugs, and give totally irrelevant examples. To figure out how some item works you have to try using it and blunder round until you can make a guess at its function and implementation.
The only reason I use it is because it has a much better compiler and much higher ease of doing most of the development on a project.
Now, in order to resurrect some chance of not getting Score 0, I'd like to point out how I think product documentation should be better, most especially in development tools (as opposed to games etc.)
It just sucks needing to know how to do something and not having the help available.
Most documentation is in the nature of a few tutorials to do specific tasks (all well and good if your goal is to do exactly that specific task, but otherwise useless) and some sort of index of all functionality but with not much useful to say on each topic.
As a programmer I know how hard it is to write good documentation. The attitude is "Well I know how it works, so they should be able to figure it out". This is actually quite stupid when you think about it.
I'd gladly pay more for a product with thorough, practical documentation so that I could suss anything out when I needed it.
I think you are confusing things with win95 (where all filenames are 8.3, but files have a "long name" associated with them for display purposes.)
In NTFS, there is no such restriction, but you can still name a file 8.3 if you want.
I'll note at this point how wildcards are better on NT in some respects. It is sooo handy to rename a bunch of files by going:
ren Foo.* Bar.*
or even
copy Foo.* Bar.*
but to achieve the same effect on unix, you have to go through a rather complicated procedure of for loops and expr and so on. Someone should port dos copy and dos move to unix..
(*) its also COMPLETELY wrong. according to attrition's archive of hacked sites,
And this is supposed to be the almanac of all hacking on Internet? Gosh
When a Win box gets hacked, the hacker does their bit on its /index.html and it gets reported. When someone breaks into a unix box, they steal its information and install their bandwidth-stealing tools and the box's owner is none the wiser. Or they format the box or perform malicious activities, but no-one bothers to report it most of the time.
You can root an insecured box (eg. default install of most Linux or Solaris distros) in about ten seconds with the tools (which are all too common).
This kind of FUD gets "5"? An obvious rush of mindwashed unixers moderated this. Let me answer your points:
It has an operating system whose applications, even those written by the OS authors, can ignore the TEMP environment variable and scribble temporary files where-ever they want and fail to operate if they can not do as they wish.
You are saying that Unix does not allow one to create a temporary file anywhere other than where TEMP indicates? I wasn't aware of this, how restrictive. /etc ?
If an application developer ignores procedure, that is hardly an OS problem. How would you react if I said that Linux sucks because I installed an app that keeps all of its files and libraries in
I have seen the future. The future is filled with continued support for legacy drive letters and 8.3 file names with rename.ini kludges during installs.
FYI backward compatibility is a good thing. I don't mind if older filesystems (FAT) are supported. I certainly have no problem whatsoever using filenames of any length.
Drive letters are quite handy: I often map a directory to a drive letter, and then I can handily switch to that directory just by entering the drive letter. It is also very convenient for copying - no typing out long pathnames, just "copy r:*". For example, at work I map S: to my source, R: to an output dir, U: to user files and T: to documentation. It is very useful.
With Win2k's NTFS supporting hard links as well as soft links, even those who prefer that method will have nothing to be worried about.
The future is an operating system where you have to shell out serious dollars to buy third-party utilities to get around security deficiences in the design of the OS. After all, why fix that pesky virus problem when so many anti-virus companies would go under without that revenue stream coming in.
You merely point out that most viruses are written for Windows, and hence most virus victims are Windows users.
It has operating systems whose file systems don't support the concept of being able to delete a file yet have it not actually get deleted until the last remaining process that has it open dies first.
This is a great advantage. As a programmer, I should not have to worry about whether someone deletes my currently open file from under me. If I were using direct disk writes, then this would be disastrous.
Many system processes (on any OS I'm sure) also maintain open files. I certainly wouldn't want to disrupt those.
However, it is sometimes desirable to do this anyway, so Win2K has taken steps so that new DLLs can be installed without having to reboot or close the apps using them.
The only advantage for Unix that you point out is that user security is tighter on Unix. I won't argue with this, since it is true. However, user security on both OSs is being improved constantly, so let us make suggestions and look to the future, rather than denouncing each other.
NT already has a real shell (Explorer etc.) and it is easily user-extensible (you can add your own things to all its menus, with a little coding).
If you mean a real commandline interface, then IMO windows NT CMD prompt is much better than DOS. It has command compatibility, and it has extra invaluable features like tab completion, "cd bl*" etc., and command history. (Quite like unix, one thing that Unix definitely got right was having a great commandline shell). Except that (IMO) nt tab completion is better than *sh's.
I hate using win 9x dos prompts now.
Win CE is this. It has the stability of the NT kernel, [note for snide users: NT kernel is stable, but common device drivers are not], and the versatility of NT interfaces (the GUI, COM, etc.) but not the bulk and bloat of: a) massive hardware support and drivers, and b) powerful processes that servers need.
It was originally designed for embedded systems and laptops, but it also makes the perfect terminal for ASP-type systems.
I have a sneaking suspicion that the MS X-Box will in fact be the perfect such terminal, and MS may even serve the games via Internet.
I know a 16 year old who could hax and format almost any unix box. What's your point?
Don't respond with "But not if it was set up properly", because a) most companies don't set it up as such, and b) you can say the same thing about Windows NT.
It may be easy to crash and DoS NT machines, but it is almost impossible to gain root (or whatever) on them, so doing damage or stealing sensitive information is rare.
In fact, most Windows "hacking" is done by getting the unsuspecting user to run a trojan. Hardly the fault of the OS; the fact that this happens much more on Windows is merely a reflection of the fact that almost all people who would fall for a trojan use Windows.
The fact that Unix has a commandline interface accessible remotely has a lot to do with its hackability, and is a major reason why 95%(*) of rooted boxes are not Windows.
Note: This doesn't mean remote CLI is bad, it is simply that powerful features can be used for good or bad.
(*) I made this up, but based on various information I hear, it's in the general vicinity
sup?
e^(Pi*i) = -1
so, ie = the (Pi*i)th root of -i.
Do we have an equation for netscape too?
BTW, that i^(-i) equation doesn't seem to be correct, mainly because i^i is complex and the righthand side isn't. You can get to Euler's formula from that one, but not the other way around, so they aren't equivalent
The fact that this got marked "0, Troll" by the moderators can only be evidence that what it says is true. They mark it down to 0 so that readers with Threshhold 1 don't see it and still think that the fiefdom does not exist.
How long until it gets hacked and someone puts Linux on it?
/. with Lynx. And you get the date thing on top of all this. I think I'm in heaven
And how long until they upgrade the transmitter things to be repeaters? Then, when enough people have them, there will be a continuous net across the country: free wireless internet! You could