How to think like a machine? A quick article about computational thinking
When I started using AI tools, it reminded me of the beginning of search engines on the Internet at the end of the last millenary (25 years ago). “Google-fu” became an unvaluable unformal skill that shaped the entire IT industry. It feels very similar, and I see AI mastery as the next productivity differentiator.
It’s been fantastic to see all this knowledge being accessible by more and more people, however it’s still hard to get a good result from a prompt. And it gets increasingly difficult as you try to generate pictures or code. Some people just seem to be more natural at interacting with machines than others.
Here are some key concepts related to computational thinking, which I believe would be helpful if you want to up your prompt game and interaction with computers in general.
Core computational thinking concepts
- Abstraction:
- Simplify complex problems by focusing on essential details and ignoring irrelevant specifics.
- Representing real-world scenarios using models or simplified versions.
- Decomposition:
- Break down a problem into smaller, manageable parts.
- Analyze each part independently and solve them step by step.
- Pattern Recognition / Data Representation:
- Identify recurring patterns or structures in data.
- Represent data using appropriate formats (e.g., tables, graphs, or matrices).
- Algorithm Design:
- Create step-by-step instructions (algorithms) to solve a problem.
- Consider efficiency, correctness, and scalability.
A concrete example: decomposing this blog in smaller parts
Understand the key components of a blog.
- Content Creation:
- Writing articles, creating images, and designing visuals.
- Website Structure:
- Defining pages (e.g., home, about, blog posts).
- User Interaction:
- Comments, sharing buttons, and navigation.
- Styling and Layout:
- Fonts, colors, and responsive design.
Divide into Subtasks:
- Content Creation:
- Research topics.
- Write drafts.
- Edit and proofread.
- Website Structure:
- Plan page hierarchy.
- Create wireframes.
- Set up navigation.
- User Interaction:
- Implement comment system.
- Add social media sharing buttons.
- Styling and Layout:
- Choose fonts and colors.
- Design responsive layouts.
Sequentially Tackle Subtasks:
Prioritize and work on subtasks one by one.
- Start with defining the website structure and features
- Work on the most basic features:
- Writing and publishing articles
- Write contents
- Add extra features when needed