Uploaded August 2025 | Updated September 2026, 2 weeks ago
In this course I teach you problem-solving techniques by focusing on the problem from the Decode the Drawings competition: youtu.be/bZ8uSzZv0ew?si=HJzT4YIEj2z_3GiK
You can download the videos from the competition page: radufromfinland.com/decodeTheDrawings
I chose that problem because it has many layers; it can be broken down into many smaller problems using the right techniques. I’ll teach you how to identify these sub-problems, how to prioritize them and what to do when they’re interconnected: how to isolate them so they can be worked on independently? And how you know if they’re correct or not?
We'll build a solution from the ground up using first principles. The goal isn’t finding a quick fix, it's developing a thought process: how to use simple reasoning and the math you know from school to tackle tough problems. We'll explore several approaches: first by hand, then by automating the steps with simple but powerful algorithms.
All algorithms will be implemented from scratch and explained step-by-step using simple language and visuals. So this course is perfect for beginners to sharpen their skills!
I use JavaScript because it’s easy to get started (you probably have the tools already installed). The syntax is easy for beginners and it’s good at visualizing things in the browser. But you can choose another language to follow along as well.
Karelia University Course Page (REGISTRATION ENDED):
ella.eduplan.fi/karelia/computational-problem-solving/682722ead4168f741689894f
💻 Discord: discord.com/invite/gJFcF5XVn9
⭐ My videos that go deeper on some topics ⭐
Pythagorean Theorem: youtu.be/iqSlzYXdFzw?si=PEA6nGBb1yMYs6aj
Euclidean Distance: youtu.be/3rPwfmrCwVw?si=OudD3sqvBA5zRR5H
Circle Equation: youtu.be/1sJDuUSawRQ?si=3ckcZFhd4OVaoGrp
Trigonometry Lesson: youtu.be/xK3vKWMFVgw?si=qO9casbZNGhZINwu
Vectors Lesson: youtu.be/nzyOCd9FcCA?si=5e88Ylw17aJaSnVw
Roundness Measure: youtu.be/MdhM0kZjtD4?si=MkFjzstfZpaNEtdl
Draw the Portal Game Tutorial: youtu.be/0SxiyLk2IMM?si=liWS6a9V16x7kTwr
Why the Circle Encloses the Largest Area: youtu.be/CFBa2ezTQJQ?si=yHNiioLm6G_Utx1w
⭐ Desmos Demo Pages ⭐
Circle Equation: desmos.com/3d/nvdcrvqjqh
Surface: desmos.com/3d/kz11vijtd2
⭐ Tools I Use ⭐
VS Code editor: code.visualstudio.com
Google Chrome: google.com/chrome
⭐ Other Links ⭐
@Veritasium Analog Computers: youtu.be/GVsUOuSjvcg?si=3f7moC1oEyS_Iu23
@Veritasium Strandbeests: youtu.be/IFaAjR_RRJs?si=9gQR46C94yVfla-6
@Mark Rober SAT GUS: youtu.be/6KcV1C1Ui5s?si=mElaYau4aPdcxG0F
@Stand-up Maths Pi on the Moon: youtu.be/nGtVej1Qx5Y?si=kQOYVjZq6gPqZ0Hf
@3Blue1Brown Interview with Terence Tao: youtu.be/YdOXS_9_P4U?si=SGGiHU8hGihMRyYA
My Strandbeest live streams: youtube.com/playlist?list=PLB0Tybl0UNfZ5LmYT_Mht1_mocUqniAJg
Karelia ICT Video: youtu.be/p70TFyDUGlA?si=tGCERtFi3ndDtuSp
Lahari's Webpage: cs.uef.fi/~lahari
Lahari's Paper on Local Search and TSP: mdpi.com/2076-3417/9/19/3985
Pasi's Webpage: cs.uef.fi/pages/franti
Pasi's Video on Clustering: youtu.be/b04OS6kCrRk?si=YAfaE5J0nPsZ7NPo
Pasi's Paper on Random Swap Clustering: link.springer.com/content/pdf/10.1186/s40537-018-0122-y.pdf
Brilliant: brilliant.org
ThreeJS: threejs.org
Include ThreeJS in the script tag like this: cdn.jsdelivr.net/npm/three@0.110.0/build/three.min.js
⭐ My Other Courses ⭐
Self-driving Car Course: youtube.com/playlist?list=PLB0Tybl0UNfYoJE7ZwsBQoDIG4YN9ptyY
No Black Box Machine Learning Course: youtube.com/playlist?list=PLB0Tybl0UNfYe9aJXfWw-Dw_4VnFrqRC4
⭐ Videos with Leonard :-) ⭐
Code Battle Tutorials: youtu.be/h24ircatoHI?si=-k-DzndoWQvSAJSm
Pair Programming: youtu.be/Omp5_6M2QH4?si=hDvJquTTEXdtigpt
Coding Interview: youtu.be/I4YP8sAErK0?si=DGzrvdwdKEoYHlJ-
💻 COMPETITION WINNERS' SOLUTIONS 💻
Ayo SUS: github.com/MNA4/decode-the-drawings
James: github.com/epipolarity/Decode-Drawings-V5
Bas: github.com/basboot/decode_drawings
Yusuf: github.com/Iyusuf40/decode-the-drawing
Dmytro: drive.google.com/file/d/1t7O341qnWKdkDHelYxmw5B7aXkbVosWN/view
Miniontoby: github.com/Miniontoby/RadusDecodeTheDrawingsChallenge
☕Buy me a Coffee?☕
buymeacoffee.com/radum
⚡️Join this Channel⚡️
youtube.com/@Radu/join
⭐Timestamps⭐
00:00:00 What it's all about
00:03:38 Chapter 1: Introduction
00:13:03 Chapter 2: Automation
01:11:45 Chapter 3: Simulation
01:39:10 Chapter 4: Distortion
02:21:23 Chapter 5: Rotation
02:41:43 Chapter 6: Optimization
03:11:57 Chapter 7: Triangulation
03:53:30 Chapter 8: Conclusion
In this course I teach you problem-solving techniques by focusing on the problem from the Decode the Drawings competition: youtu.be/bZ8uSzZv0ew?si=HJzT4YIEj2z_3GiK
You can download the videos from the competition page: radufromfinland.com/decodeTheDrawings
I chose that problem because it has many layers; it can be broken down into many smaller problems using the right techniques. I’ll teach you how to identify these sub-problems, how to prioritize them and what to do when they’re interconnected: how to isolate them so they can be worked on independently? And how you know if they’re correct or not?
We'll build a solution from the ground up using first principles. The goal isn’t finding a quick fix, it's developing a thought process: how to use simple reasoning and the math you know from school to tackle tough problems. We'll explore several approaches: first by hand, then by automating the steps with simple but powerful algorithms.
All algorithms will be implemented from scratch and explained step-by-step using simple language and visuals. So this course is perfect for beginners to sharpen their skills!
I use JavaScript because it’s easy to get started (you probably have the tools already installed). The syntax is easy for beginners and it’s good at visualizing things in the browser. But you can choose another language to follow along as well.
Karelia University Course Page (REGISTRATION ENDED):
ella.eduplan.fi/karelia/computational-problem-solving/682722ead4168f741689894f
💻 Discord: discord.com/invite/gJFcF5XVn9
⭐ My videos that go deeper on some topics ⭐
Pythagorean Theorem: youtu.be/iqSlzYXdFzw?si=PEA6nGBb1yMYs6aj
Euclidean Distance: youtu.be/3rPwfmrCwVw?si=OudD3sqvBA5zRR5H
Circle Equation: youtu.be/1sJDuUSawRQ?si=3ckcZFhd4OVaoGrp
Trigonometry Lesson: youtu.be/xK3vKWMFVgw?si=qO9casbZNGhZINwu
Vectors Lesson: youtu.be/nzyOCd9FcCA?si=5e88Ylw17aJaSnVw
Roundness Measure: youtu.be/MdhM0kZjtD4?si=MkFjzstfZpaNEtdl
Draw the Portal Game Tutorial: youtu.be/0SxiyLk2IMM?si=liWS6a9V16x7kTwr
Why the Circle Encloses the Largest Area: youtu.be/CFBa2ezTQJQ?si=yHNiioLm6G_Utx1w
⭐ Desmos Demo Pages ⭐
Circle Equation: desmos.com/3d/nvdcrvqjqh
Surface: desmos.com/3d/kz11vijtd2
⭐ Tools I Use ⭐
VS Code editor: code.visualstudio.com
Google Chrome: google.com/chrome
⭐ Other Links ⭐
@Veritasium Analog Computers: youtu.be/GVsUOuSjvcg?si=3f7moC1oEyS_Iu23
@Veritasium Strandbeests: youtu.be/IFaAjR_RRJs?si=9gQR46C94yVfla-6
@Mark Rober SAT GUS: youtu.be/6KcV1C1Ui5s?si=mElaYau4aPdcxG0F
@Stand-up Maths Pi on the Moon: youtu.be/nGtVej1Qx5Y?si=kQOYVjZq6gPqZ0Hf
@3Blue1Brown Interview with Terence Tao: youtu.be/YdOXS_9_P4U?si=SGGiHU8hGihMRyYA
My Strandbeest live streams: youtube.com/playlist?list=PLB0Tybl0UNfZ5LmYT_Mht1_mocUqniAJg
Karelia ICT Video: youtu.be/p70TFyDUGlA?si=tGCERtFi3ndDtuSp
Lahari's Webpage: cs.uef.fi/~lahari
Lahari's Paper on Local Search and TSP: mdpi.com/2076-3417/9/19/3985
Pasi's Webpage: cs.uef.fi/pages/franti
Pasi's Video on Clustering: youtu.be/b04OS6kCrRk?si=YAfaE5J0nPsZ7NPo
Pasi's Paper on Random Swap Clustering: link.springer.com/content/pdf/10.1186/s40537-018-0122-y.pdf
Brilliant: brilliant.org
ThreeJS: threejs.org
Include ThreeJS in the script tag like this: cdn.jsdelivr.net/npm/three@0.110.0/build/three.min.js
⭐ My Other Courses ⭐
Self-driving Car Course: youtube.com/playlist?list=PLB0Tybl0UNfYoJE7ZwsBQoDIG4YN9ptyY
No Black Box Machine Learning Course: youtube.com/playlist?list=PLB0Tybl0UNfYe9aJXfWw-Dw_4VnFrqRC4
⭐ Videos with Leonard :-) ⭐
Code Battle Tutorials: youtu.be/h24ircatoHI?si=-k-DzndoWQvSAJSm
Pair Programming: youtu.be/Omp5_6M2QH4?si=hDvJquTTEXdtigpt
Coding Interview: youtu.be/I4YP8sAErK0?si=DGzrvdwdKEoYHlJ-
💻 COMPETITION WINNERS' SOLUTIONS 💻
Ayo SUS: github.com/MNA4/decode-the-drawings
James: github.com/epipolarity/Decode-Drawings-V5
Bas: github.com/basboot/decode_drawings
Yusuf: github.com/Iyusuf40/decode-the-drawing
Dmytro: drive.google.com/file/d/1t7O341qnWKdkDHelYxmw5B7aXkbVosWN/view
Miniontoby: github.com/Miniontoby/RadusDecodeTheDrawingsChallenge
☕Buy me a Coffee?☕
buymeacoffee.com/radum
⚡️Join this Channel⚡️
youtube.com/@Radu/join
⭐Timestamps⭐
00:00:00 What it's all about
00:03:38 Chapter 1: Introduction
00:13:03 Chapter 2: Automation
01:11:45 Chapter 3: Simulation
01:39:10 Chapter 4: Distortion
02:21:23 Chapter 5: Rotation
02:41:43 Chapter 6: Optimization
03:11:57 Chapter 7: Triangulation
03:53:30 Chapter 8: Conclusion










