How to explain Software ?

Started by
13 comments, last by Koobazaur 11 years, 8 months ago
Why don't you show them a basic example of software, like a guess-my-number minigame written in simple script like Python. Or even just an "add two numbers" kind of thing. Then you can explain what each line means and how it's basically "giving instructions" to the computer. It's an intangible concept, just as a cooking recipe is (granted, cooking recipes usually come on paper and books whereas software doesn't, but you can always write the code down... if that helps).

Software is to a computer what rules are to a game. Suppose someone comes up to you and gives you a box containing a few various items which look like they may constitute some sort of game, but they omit to give you the rules, you won't know what to do and won't be able to play the game (you could make up your own rules, but you'd be playing a different game, not the one the person intended).

Same if you come up to someone and tell them two numbers. They'll just look at you blankly and say "great, what do you want?". You'll have to say what you want them to do with the numbers, e.g. add them, multiply them, compare them to find the larger one, remember them for later, etc...

“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”

Advertisement
Don't you sometimes feel like the ape at the beginning of 2001: A Space Odyssey who saw the obelisk thingy and started using tools? Now imagine how that ape had to explain to his relatives what tools are. But he didn't, he just showed them.
The problem with the cooking analogy -- which has always bugged me -- is that there aren't complicated control structures in cooking. Most recipes don't contain loops or conditionals.[/quote]

The BASIC programming manual that came either with my Atari 800 or TI-99 had a good cooking analogy for loops and conditionals. The example used was continually adding a pinch of salt to a dish and then tasting it until the flavour was correct.

The problem with the cooking analogy -- which has always bugged me -- is that there aren't complicated control structures in cooking. Most recipes don't contain loops or conditionals.


The BASIC programming manual that came either with my Atari 800 or TI-99 had a good cooking analogy for loops and conditionals. The example used was continually adding a pinch of salt to a dish and then tasting it until the flavour was correct.
[/quote]
When I was a child in elementary school, my cousin (also my classmate) and I went back to my home after school, and my father was out then, so dicided to make noodles, I added a scoop of salt, then he found it was too salt, and then I add a bowl of water, then I found it was tasteless, he then added a scoop of salt, and I found ...he then added a bowl of water ... then ... at the end, the boiler was full of water and it probablly could serve 10 people.
That is:
while(true)
{
if(salt)
{
add_water();
contiune;
}

if(tasteless)
{
add_salt();
continue;
}
break;
}

while(true)
{
if(salt)
{
add_water();
contiune;
}
if(tasteless)
{
add_salt();
continue;
}
break;
}
[/quote]

My version would be more along the lines of:

[source lang="plain"]DO

add_salt(scoop)
taste()

add_water(bowl)
taste()

IF pot = full THEN EXIT(FAIL)

UNTIIL taste = right
EXIT(SUCCESS)[/source]

Once, my mother's brother asked me what software was, I said "for example, softwares were in my mobile phone", he said "open it, let me see it, can I touch it ?"



Tell him you can't open it cause the faries would escape. See, inside every mechanical device, there are many many fairies that float around and carry little pebbles that programmers like to call "bits." Software is basically a little radio recording that constantly plays on the faire's little ipods, telling them where to move the pebbles and, oh, if a green pebble happens to be on the right, then move the green one up. Then, the fairies from the computer tell the fairies from the minitor where to move the little color-coded pebbles inside the monitor (called "pixels") and that is how you see "Hello World!"

Eh the cooking analogy works better.

EDIT: Also, Richard Stallman is the head of the Fairy Union.
Comrade, Listen! The Glorious Commonwealth's first Airship has been compromised! Who is the saboteur? Who can be saved? Uncover what the passengers are hiding and write the grisly conclusion of its final hours in an open-ended, player-driven adventure. Dziekujemy! -- Karaski: What Goes Up...

This topic is closed to new replies.

Advertisement