|
|
|
|
|
by pinkythepig
3232 days ago
|
|
I like to equate it to giving instructions to someone who takes everything you say extremely literally. Ask me to make a PB&J? If you tell me to stick the knife in the PB, since you didn't specify what side to stick in, I sometimes put it in handle first, sometimes knife edge first, depending on how I found it. To make a successful program, you would need to account for all the possible inputs (the different orientations of the knife in the drawer, the possibility that there might not be a knife, etc.). The difference between good software and bad software is that the good software will properly handle all of these error conditions, and the bad software will either do the wrong thing (sticking it in handle first, because the instructions assumed the knife was always oriented correctly) or will crash when something unexpected happens (such as there not being any more knifes, or running out of peanut butter half way through making a sandwich). |
|