Explore Key Computer Science Concepts With These Everyday Analogies

What is the difference between computer science and programming? How do you explain big data to a non-technical person? Sometimes everyday analogies are better than technical explanations. This list simply explains 40 key computer science concepts.

The list is compiled by CarlCheo and comes from various sources such as Stack Overflow and Programmers Stack Exchange. These are the concepts that most computer science students will become familiar with in college, and they can make complex concepts easier to grasp or just “click”.

Here are a few of my favorites:

Q4 – What is the difference between Java and JavaScript?

Java and Javascript are similar as machine and carpet are similar. ~ Greg Hugill / Stack Overflow

Q7 – How many lines of code does a programmer write per day on average?

Measuring the performance of software with lines of code is like measuring the progress of an airplane by its weight. ~ Bill Gates

Q8 – What is Object Oriented Programming?

Objects are like people. They are living, breathing beings who have the knowledge of how to do something and the memory inside them so they can remember things. And instead of interacting with them at a very low level, you interact with them at a very high level of abstraction, as we are doing right here.

Here’s an example: if I am your subject of washing, you can give me your dirty clothes and send me a message that says, “Can you wash my clothes, please.” I know where the best laundry is in San Francisco. I speak English and I have dollars in my pockets. So I get out, stop a taxi and tell the driver to take me to this place in San Francisco. I go to wash your clothes, jump back into a taxi, come back here. I give you clean clothes and say, “Here are your clean clothes.”

You have no idea how I did it. You don’t know anything about laundry. Maybe you speak French and can’t even get a taxi. You can’t pay for one, you don’t have dollars in your pocket. And yet I knew how to do it all. And you didn’t need to know anything about it. All this complexity was hidden inside me, and we could interact at a very high level of abstraction. That’s what objects are. They encapsulate complexity, and the interfaces of this complexity are at a high level. ~ Steve Jobs / Rolling Stone Interview

While not all analogies are perfect, they are of interest to explain. Check out the full post below to find out more. (Thanks Dan!)

40 Key Computer Science Concepts Explained in Layman’s Terms | CarlCheo

More…

Leave a Reply