Subscribe to DSC Newsletter

# 36 Computer and Data Science Concepts Explained In Layman’s Terms

Broken down in eight categories.

1. Algorithms and Data Structures

• Big O Notation
• Sorting Algorithms
• Recursion
• Big Data - Let’s assume you have a leak in a water pipe in your garden. You take a bucket and some sealing materials to fix the problem. After a while, you see that the leak is much bigger that you need a plumber to bring bigger tools. In the meanwhile, you are still using the bucket to drain the water. After a while, you notice that a massive underground stream has opened. You need to handle gallons of water every second. Buckets aren’t useful anymore. You need a completely new approach to solve the problem because the volume and velocity of water has grown. To prevent the town from flooding, you may need the government to build a massive dam that requires an enormous civil engineering expertise and an elaborate control system. Big data describes data sets so large and complex that is impossible to manage with conventional data processing tools.

2. Artificial Intelligence

• Greedy Algorithm - Imagine you are going for hiking. You already have the map before you start. However, there are thousands of possible paths shown on the map. You are too lazy and simply don’t have the time to evaluate each of them. Screw the map! You started hiking with a simple strategy – be greedy and short-sighted. Just take paths that slope upwards the most.. After the trip ended and your whole body is sore and tired, you look at the hiking map for the first time. Oh my god! There’s a muddy river that I should’ve crossed, instead of keep walking upwards. A greedy algorithm picks the best immediate choice and never reconsiders its choices.
• Hill Climbing
• Simulated Annealing
• Dynamic Programming
• Machine LearningPararth Shah wrote a brilliant analogy here, but it’s too long to be included.
• P vs NP Problem

3. Computer Architecture and Engineering

• How do computers work?

4. Concurrency

• ParallelismEventually, you can’t cope with your job because there’s too much data entry tasks. You complain to your boss and he happily hires a data entry clerk to handle your data entry tasks.
• Race Condition
• Mutual Exclusion (Mutex)
• Semaphore

5. Computer Security

• Computer Hacking
• Brute-force Attack
• Social Engineering
• Security Exploit
• Rootkit
• Distributed Denial-of-service Attack (DDoS)
• Cryptography

6. Computer Network

7. Software Development Methodologies

• Waterfall Development
• Agile Development

8. Common Beginner’s Questions

• What is the difference between computer science and programming?Computer scientist is like a physicist and programmer is like an engineer.
• What is programming?
• Why you shouldn’t interrupt a developer when he/she is in the zone?
• What is the difference between Java and JavaScript?
• What is the difference between JavaScript and JQuery?
• What is the difference between a framework and library?
• How many lines of code does an average software engineer write per day?
• What is object-oriented programming?
• What is an application program interface (API)? - At restaurants, you order food (call API) from the menu (APIs). Once your food is ready (API response is ready), the waiter will serve you the food. The basic idea is: you ask for what you want and the system returns you a response, without exposing what’s happening behind the scene.
• What is the difference between SQL and NoSQL database?

DSC Resources

Follow us on Twitter: @DataScienceCtrl | @AnalyticBridge

Views: 5781

Comment

### You need to be a member of Data Science Central to add comments!

Join Data Science Central

1

2

3

4

5

6

## Videos

• ### Parallelize R Code Using Apache® Spark™

Added by Tim Matteson

• ### The Art of Self-Service Data Analytics

Added by Tim Matteson