Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / Simple question with a complex answer

Author
Message
Suicidal Sledder
20
Years of Service
User Offline
Joined: 17th Aug 2004
Location: Tikrit, Iraq
Posted: 19th Jun 2009 00:23
Question: Can computers make mistakes?

Some would look at the tons of errors they get everyday and say yes. But are those errors caused by human interference?

All physical malfunctions aside, can a piece of software make a mistake?

So let's hear what you have to say. I wanna get a good old fashon debate going here.

Thraxas
Retired Moderator
19
Years of Service
User Offline
Joined: 8th Feb 2006
Location: The Avenging Axe, Turai
Posted: 19th Jun 2009 00:26
Not as far as I'm concerned... software can only do what it is programmed to do, so the errors are all human.

NeX the Fairly Fast Ferret
20
Years of Service
User Offline
Joined: 10th Apr 2005
Location: The Fifth Plane of Oblivion
Posted: 19th Jun 2009 00:28
The day humans are no longer needed to write programs is the day software is perfect.

I.e. never.

draknir_
18
Years of Service
User Offline
Joined: 19th Oct 2006
Location: Netherlands
Posted: 19th Jun 2009 00:48
Any and every software error which is not caused by outside interference is caused by human error. The human error could be obscured by many layers of complexity, but it's always there.
C0wbox
18
Years of Service
User Offline
Joined: 6th Jun 2006
Location: 0,50,-150
Posted: 19th Jun 2009 03:59
It depends on how you define: error
I simply make error out to be an undesired outcome of a system. (But a valid outcome none-the-less.)

But as computers have no desires, whatever their outcome, it is not an error unless a human says it is.

Grog Grueslayer
Valued Member
20
Years of Service
User Offline
Joined: 30th May 2005
Playing: Green Hell
Posted: 19th Jun 2009 04:06
You can force the computer to make a mistake... it's just too dumb to not follow our directions to the letter.



That's actually why I'm working on my current project... to get rid of all the annoying user error that creeps into the program we use at work now. Reducing the Human element always helps programs run better.

IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 19th Jun 2009 15:22
Yes, computers can produce incorrect results - the smaller the circuitry within the processor, the more easily it's affected by radiation, which can cause bit-flips at random times in memory or on the processor itself.

That's one reason that NASA still uses 8086's on shuttle control systems.

Darth Kiwi
20
Years of Service
User Offline
Joined: 7th Jan 2005
Location: On the brink of insanity.
Posted: 19th Jun 2009 15:33
I believe that when transferring bits from one place to another, there is a small chance the bit will not copy correctly - so you'd get a 1 instead of a 0 and vice versa. There are ways to get around this: you can have a "check bit" which describes the number of 1s or 0s in a byte. So, for example, if your byte has five 0s but the check bit is set to, say, 1, and "1" means "there is an even number of bits in this byte" then you know that the byte didn't copy correctly and the computer requests the byte again.

But generally, no, it's mostly people not coding *exactly* what they want.

Secretary of Unknowable Knowledge for the Rock/Dink administration '08
draknir_
18
Years of Service
User Offline
Joined: 19th Oct 2006
Location: Netherlands
Posted: 19th Jun 2009 17:45
Quote: "You can force the computer to make a mistake... it's just too dumb to not follow our directions to the letter.

a$="2"
print "I'm a computer and I'm always right."
print a$+" + "+a$+" = "+a$+a$
wait key"


This isn't a mistake by the computer, the software you wrote there will do exactly what it's told to. If you wanted the output to be 4, then you, the human, made a mistake.
David R
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: 3.14
Posted: 19th Jun 2009 18:43
Quote: "can a piece of software make a mistake?"


Well... no. You've ruled out the software being error prone and any possible physical phenomena, so no, it can't. It's deterministic, and hence ruling out the first two possibilities leaves you with "unless it goes self-aware somehow"

09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0
NeX the Fairly Fast Ferret
20
Years of Service
User Offline
Joined: 10th Apr 2005
Location: The Fifth Plane of Oblivion
Posted: 19th Jun 2009 18:50 Edited at: 19th Jun 2009 18:50
It's my opinion that self aware software is impossible given our current design of processors. Sure, you could simulate the physics of an entire brain and so the simulation would be self aware but not the software itself.

Here's an interesting idea; you remember that "every possible picture" thread we had a long while back? What about "every possible program"?

Leon Kennedy
16
Years of Service
User Offline
Joined: 7th Sep 2008
Location: Neither here nor there
Posted: 19th Jun 2009 19:43
There are a whole bunch of thoughts surrounding this issue, and I'm gonna try to tackle some of them. Grab your popcorn, boyos - this is gonna be a long post.

The general question here is "Can software make a mistake". And this will depend on how it's interpreted. If taken at face value, then the answer could be "Yes". Software CAN make a mistake. If someone programs a piece of software that places the decimal point in a financial calculation one space too far to the left or right, then the software is going to spit out the incorrect data. Although the fault of the error or mistake is not seated with the software - it's the result of poor programming - the software doesn't know that it's incorrect and will spit it out as what it perceives to be correct. Hence, it can make a mistake.

If the question is interpreted as "Can software intentionally make a mistake or error without any outside interference or bad programming", then the answer has to be no. Software as of yet has not evolved to be either self-aware or able to learn through the process of intentionally making mistakes. As such, software cannot make a "conscious" decision to make a mistake for the purpose of doing so. Hence, it cannot make a mistake without any outside interference or bad programming.

But what if the question is interpreted as "Can software intentionally make a mistake or error WITH outside interference or bad programming"? This becomes a grey area that really cannot be completely looked at. Why? Let's start with viruses. A virus can change code and force a program to do things that it wasn't originally designed to do. But neither the virus NOR the software it affects is making a conscious decision to do so. So the answer here is both yes and no - a mistake can be made, but it isn't the reuslt of a conscious decision or intentional attempt to do so.

Another side of the above paragraph is in hardware failure. Hardware can fail for various reasons, and in some cases cause the same effects on software as a virus does. This then goes back to the fact that a mistake can be made, but not consciously or intentionally. And none of this includes situations where the programming is good, no viruses are present, the hardware is sound, and yet the end user inputs bad data causing incorrect data to be spit out.

Now, try to remember that (for the second time) software up to this point has yet to become so advanced as to be self-aware or having the ability to learn through making mistakes. But let's assume for a moment that we have. Say, for example, we have a software package that has become self-aware, and is now considered a sentient being. The only way to learn is to make mistakes, right? But machines (in the typical, classical definition) don't make mistakes - they make calculated attempts to perform a task. If they fail, that isn't a mistake - it's just an incorrect way to accomplish the task. Machines don't see themselves as making mistakes, but rather potentially taking multiple attempts at completing a task. The failures in this case are not mistakes but failed attempts that may work IF the set of variables were to be changed.

Overall, I believe that while programmers, end users, viruses, and hardware failures can cause results that aren't expected, I wouldn't say that software can make a mistake.

Priest of the Church of Joe Wood

In memory of Nanee. 9/1/1993 - 5/16/2009. Rest in Peace, little girl.
TheComet
17
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 19th Jun 2009 20:16
If I look at SoulHunter (made by zzz), random errors popped up and didn't happen again after I restarted my computer. So I would say, yes, a computer can make errors. BUT... I connect these errors with IanM's bitflip theory. And if you examine that closely, his theory is due to physical errors, not digital errors. That makes me say no, a computer can not make errors, it only does what you tell it to do, and is affected by surrounding elements.

TheComet


Make the path of your enemies easier with Waypoint Pro!
Grog Grueslayer
Valued Member
20
Years of Service
User Offline
Joined: 30th May 2005
Playing: Green Hell
Posted: 19th Jun 2009 23:46
Quote: "This isn't a mistake by the computer, the software you wrote there will do exactly what it's told to. If you wanted the output to be 4, then you, the human, made a mistake."


True, to us it's just programmed that way but to non-programmers the computer made an error. It's all relative.

draknir_
18
Years of Service
User Offline
Joined: 19th Oct 2006
Location: Netherlands
Posted: 20th Jun 2009 03:03
Quote: "True, to us it's just programmed that way but to non-programmers the computer made an error. It's all relative."


I disagree, there is only one truth. Whether the user understands that the error is human is irrelevant.

Login to post a reply

Server time is: 2025-05-31 21:21:52
Your offset time is: 2025-05-31 21:21:52