What exactly is abstraction?

pop__bull5.jpg

I started The Flatiron School two weeks ago, and I met up with one of its founders, Avi Flombaum. He talked to me all about abstraction and what it really is, quoting Edsger W. Djeikstra:

Being abstract is something profoundly different from being vague… The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.

There are two main fundamental concepts in communication: syntax and semantics. The syntax is pretty much the front-end of what is being communicated. It is the word, the letter, how it’s organized, the outlining structure. The semantics on the other hand, is the back-end. What the word means, what that thing does, why it’s organized, the underlining structure.

APPLE #

Did you read that big word? Read it again. Close your eyes and think about the word. Seriously, close your eyes. If you’re a normal human being, you’re probably thinking of an apple right now. What is the word apple? Is it a fruit? I’m afraid to say that it is not a fruit. The world apple is simply a word.

That is the syntax. What do you think of when you see the word apple? As we’ve established, a red (or green or yellow or purpl–), edible, juicy, apple. But that’s only because you know what an apple is. You have seen an apple before, you have most likely eaten an apple before, so your brain knows that the word apple is in correlation with the fruit. They are associates, buddies, friends.

But what if, someone who has never seen, heard, or eaten an apple before, was told the word “apple”? Would he still think about the fruit?

Abstraction is such a beautiful concept. Much like the apple, mostly everything else in the world was abstracted to a smaller point. If you wanted to tell someone about an apple like thousands of years ago before the invention of writing, you would show them an actual physical apple. After writing, you would simply write the word apple. After the invention of imagery, you could simply show them a picture of an apple. This has been applied across countles

 
11
Kudos
 
11
Kudos

Now read this

From Pythonistas To Rubyists

DISCLAIMER: I’ve been coding in Python for the past 4 years. It was my very first programming language. While I love Python, I tried to be as unbiased as possible. This is not a stab at the Ruby programming language. I love Ruby too.... Continue →