Computational and Algorithmic Thinking

8 Weeks

·

Cohort-based Course

Master the art of problem-solving while improving your programming skills. Break down tasks, recognize patterns and design solutions.

Previously at - collaborating with:

Sae
ALGOSUP
AUEB
 LightBuzz
AegeanOmiros College

Course overview

Everything you need to upgrade your problem-solving skills, in one place

🤔 What?


Computational thinking is a problem-solving approach that draws upon principles from computer science to tackle complex issues across various domains. It involves breaking down problems into smaller, manageable parts, identifying the patterns and algorithms to address them, and devising efficient strategies for their solution.


At its core, computational thinking emphasizes logical reasoning, abstraction, algorithmic design, and pattern recognition, which are essential skills in navigating the increasingly digital world we inhabit. By promoting structured and analytical thinking, computational thinking not only empowers individuals to effectively utilize technology but also fosters creativity and innovation in problem-solving.


🎯 Why?


Computational thinking is essential for problem-solving in today's digital era. It empowers individuals across all skill levels and disciplines to tackle complex challenges effectively.


💡 For novice programmers, computational thinking offers a structured approach that goes beyond following tutorials, empowering them to break down complex problems into manageable parts, identify patterns, and devise efficient solutions. By cultivating logical reasoning and algorithmic design skills, novice programmers can tackle challenges with greater independence and creativity, laying a solid foundation for their journey into coding and problem-solving.


💡 While experienced programmers may have mastered the technical aspects of coding, computational thinking equips them with the theoretical underpinnings necessary to apply their expertise across diverse domains. By understanding the principles of abstraction, algorithmic efficiency, and pattern recognition, experienced programmers can adapt their skills to solve complex problems beyond traditional programming contexts, such as data analysis, system optimization, or algorithmic trading.


💡 Computational thinking is not exclusive to coding; it's a valuable skill set that enhances problem-solving abilities in various career fields and everyday tasks. By fostering logical reasoning and abstraction, computational thinking enables non-programmers to approach challenges with a structured and analytical mindset.


Whether it's optimizing workflows in business operations, troubleshooting technical issues in customer support, or analyzing data trends in marketing, computational thinking provides a framework for effective problem-solving in diverse contexts, ultimately enhancing productivity and innovation across industries.


👨‍💻 How?


Cultivating computational and algorithmic thinking skills usually takes time. One may also acquire them after years of experience in programming, sub-optimally in many cases.


However:


👨🏽‍🏫 Through live lectures, you are going to get acquainted with all the fundamental concepts in a fun and interactive way and experiment with them by engaging in hands-on practice over real-world paradigms.


🗂️ Through practical projects, you are going to thoroughly comprehend the concepts delivered in the classroom, while solving actual problems. You will be able to level-up your game in the programming language of your choosing or pick a new one, or even your first, on the way!


👨‍👨‍👦‍👦 Your instructor is an experienced programmer and computer science tutor, who has been teaching the concepts of computational thinking for the better part of the past decade, to learners across various fields and skill levels.



🚀Come and join a vibrant cohort of learners who wish to empower themselves with the most indispensable skills for the new era!

This course is for you, if you are...

01

interested in programming and its many applications, you want to learn more and maybe pick up your first programming language.

02

a novice programmer, tired of super-specific technical tutorials, lacking the tools you need to attack general real-world problems.

03

an experienced programmer, master of the tools of your trade, but lacking the underlying theory to translate your skills to other fields.

04

tech-savvy or just curious about how you can leverage your digital environment's potential and improve your productivity and efficiency.

What you’ll get out of this course

Master the art of systematic problem-solving.

Unlock the systematic approach to problem-solving. Craft clear problem definitions for effective solutions. Employ strategic decomposition in order to break down complex tasks and harness modelling, abstraction and pattern generalization for intricate challenges.

Employ logical and algorithmic thinking.

Grasp the significance of logic in computational thinking. Comprehend Boolean logic's pivotal role and embrace algorithmic principles. Identify and rectify common logical mistakes and pitfalls and learn how you can formulate efficient algorithms yourself.

Practice your mastery on real-world coding problems.

Apply the systematic approach behind problem solving on real, state-of-the-art challenges. Witness how principles such as decomposition, modeling and abstraction translate into applicable solutions using pseudocode, C#, Python or any other programming language.

Learn how to evaluate and improve a solving process.

Just because there is a solution, it doesn't mean that it it's THE solution. Assess the efficiency and elegance of your proposed methodology and unlock ways to provide better, faster and more robust responses to real problems.

This course includes

8 interactive live sessions

Lifetime access to course materials

8 in-depth lessons

Direct access to instructor

7 projects to apply learnings

Guided feedback & reflection

Private community of peers

Course certificate upon completion

Maven Satisfaction Guarantee

This course is backed by Maven’s guarantee. You can receive a full refund within 14 days after the course ends, provided you meet the completion criteria in our refund policy.

Course syllabus

Week 1

Jun 5—Jun 9

    Jun

    5

    Lecture 1: Computational Thinking and the Ways of the Force

    Wed 6/54:00 PM—7:00 PM (UTC)

    1. Computational Thinking and the Ways of the Force

    2 items

Week 2

Jun 10—Jun 16

    Jun

    14

    Lecture 2: Logical, Algorithmic Thinking and the Art of Reasoning

    Fri 6/144:00 PM—7:00 PM (UTC)

    2. Logical, Algorithmic Thinking and the Art of Reasoning

    2 items

Week 3

Jun 17—Jun 23

    Jun

    19

    Lecture 3: Definition, Decomposition and How to Divide and Conquer

    Wed 6/194:00 PM—7:00 PM (UTC)

    3. Definition, Decomposition and How to Divide and Conquer

    2 items

Week 4

Jun 24—Jun 30

    Jun

    26

    Workshop 1: Building Blocks and Code Tidiness

    Wed 6/264:00 PM—7:00 PM (UTC)

    W1. Building Blocks and Code Tidiness

    2 items

Week 5

Jul 1—Jul 7

    Jul

    5

    Lecture 4: Abstractions, Modelling and The Art of Deception

    Fri 7/54:00 PM—7:00 PM (UTC)

    4. Abstractions, Modelling and The Art of Deception

    1 item

Week 6

Jul 8—Jul 14

    W2. Hands-on Abstractions and Modelling

    2 items

Week 7

Jul 15—Jul 21

    Jul

    18

    Workshop 2: Hands-on Abstractions and Modelling

    Thu 7/184:00 PM—7:00 PM (UTC)

    5. Handling and Avoiding Errors or How I Learned to Love the Bug

    2 items

Week 8

Jul 22—Jul 28

    Jul

    24

    Lecture 5: Handling and Avoiding Errors or How I Learned to Love the Bug

    Wed 7/244:00 PM—7:00 PM (UTC)

    Jul

    25

    Lecture 6: Solution Evaluation and The Pursuit of Perfection

    Thu 7/254:00 PM—7:00 PM (UTC)

    6. Solution Evaluation and The Pursuit of Perfection

    2 items

Week 9

Jul 29—Jul 30
    Nothing scheduled for this week

Meet your instructor

Georgios Tsatiris

Georgios Tsatiris

Computer science educator | HCI/ML researcher and programmer

Georgios has been a professional programmer, researcher and computer science tutor since 2011.


He holds a BSc in Informatics, a MSc in Computer Science and is currently in pursuit of a PhD degree in Human-Computer Interaction and Machine Learning.


He has been teaching in higher education institutions, both private and public, since the age of 24. He has also participated in numerous private and EU-funded research projects, as a developer and researcher.


Through his career as a freelance R&D specialist, Georgios has collaborated with esteemed institutions and companies, producing solutions in state-of-the-art fields such as human activity analysis, interaction design, user and player profiling and game-based learning.


Georgios currently holds the position of Program Coordinator at SAE Athens, GR. He has also provided teaching and research services in such institutions as the Athens University of Economics and Business, the National Technical University of Athens, SAE London UK and ALGOSUP.


Visit Georgios' LinkedIn profile here.


You can also check his academic publications here.

A pattern of wavy dots

Be the first to know about upcoming cohorts

Computational and Algorithmic Thinking

Course schedule

5-7 hours per week

  • Wednesdays

    18:00 - 21:00 CET

    All live sessions will take place on Wednesdays and start at 18:00 Central European Time (17:00 UK)


    All sessions will last a total of 3 hours (180 minutes), including a 15-20 minute break.

  • Wednesday June 5, 2024

    18:00 CET, 17:00 UK

    The first live session is scheduled for Wednesday, June 5, at 18:00 Central European Time, 17:00 UK Time.


    The student portal will open the same day.

  • Weekly projects and lessons

    2-4 hours per week

    Live sessions aside, students should dedicate 2 to 4 hours per week going through the prepared lessons, working on their projects, communicating with the cohort & the instructor and studying the provided material.

Frequently Asked Questions

Learning is better with cohorts

Learning is better with cohorts

Active hands-on learning

This course builds on live, interactive workshops, discussion and hands-on projects.

Interactive and project-based

You’ll be interacting with your instructor and other learners through breakout rooms, common workshops and communication channels.

Learn with a cohort of peers

Join a community of like-minded people who want to learn and grow alongside you.

Connect with your tutor

Ask questions during lectures, get live feedback and communicate asynchronously with your instructor.

Stay in the loop

Sign up to be the first to know about course updates.

A pattern of wavy dots

Be the first to know about upcoming cohorts

Computational and Algorithmic Thinking