Editing 1349: Shouldn't Be Hard

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 10: Line 10:
 
This comic refers to a sentiment sometimes expressed by computer users that "what I'm trying to do is really simple β€” it shouldn't be hard."  The statement demonstrates an assumption that because the desired action is conceptually simple, it must therefore be simple to implement. There is a logic to this line of thinking, but in reality, as the off-screen character notes, a computer is a very complicated set of components which effectively can't do ''anything'' (simple or complex) until someone has programmed the functionality into it. Even more abstractly, a random silicon crystal can't do anything at all until someone has applied a complex industrial process to it that allows it to read and execute computer code in the first place.
 
This comic refers to a sentiment sometimes expressed by computer users that "what I'm trying to do is really simple β€” it shouldn't be hard."  The statement demonstrates an assumption that because the desired action is conceptually simple, it must therefore be simple to implement. There is a logic to this line of thinking, but in reality, as the off-screen character notes, a computer is a very complicated set of components which effectively can't do ''anything'' (simple or complex) until someone has programmed the functionality into it. Even more abstractly, a random silicon crystal can't do anything at all until someone has applied a complex industrial process to it that allows it to read and execute computer code in the first place.
  
βˆ’
In terms of a user-interface, the "simplicity" of executing a given task may be more a function of the perceived utility and frequency-of-use of that function, and less a function of its conceptual "simplicity". For example, changing the color of the font in a word processor is often simpler than changing the color of the background/page, even though changing colors of two parts of the document would appear equally "simple" in concept. The different implementation is a design choice by the programmer most likely on the basis that the intended user is considered more likely to want to change the font color than to change the page color.
+
In terms of a user-interface, the "simplicity" of executing a given task may be more a function of the perceived utility and frequency-of-use of that function, and less a function of its conceptual "simplicity". For example, changing the colour of the font in a word processor is often simpler than changing the colour of the background/page, even though changing colours of two parts of the document would appear equally "simple" in concept. The different implementation is a design choice by the programmer most likely on the basis that the intended user is considered more likely to want to change the font colour than to change the page colour.
  
 
This sentiment equally applies to computer programmers: most commonly when they are just beginning to learn a new computer language. Sometimes because of difficulties with the syntax rules of the language or similar problems, a programmer may spend a long time trying to get the computer to do a simple action, such as display a message on the screen, or ask the user for a number. This is also true when a programmer is working in a language which doesn't have an easy way to do something that might be simple in another language. And in computer science, it may often be [[1425:_Tasks|very hard to differentiate the almost impossible from the easy]], especially when compared to what humans can and can't do easily.
 
This sentiment equally applies to computer programmers: most commonly when they are just beginning to learn a new computer language. Sometimes because of difficulties with the syntax rules of the language or similar problems, a programmer may spend a long time trying to get the computer to do a simple action, such as display a message on the screen, or ask the user for a number. This is also true when a programmer is working in a language which doesn't have an easy way to do something that might be simple in another language. And in computer science, it may often be [[1425:_Tasks|very hard to differentiate the almost impossible from the easy]], especially when compared to what humans can and can't do easily.

Please note that all contributions to explain xkcd may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see explain xkcd:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel | Editing help (opens in new window)