Fun with Learning Technology
LearnCoursesQuestionsTracksToolsNewsExplorePractice
Fun with Learning Technology

A new problem, explained clearly, every day.

Subscribe
Learn
  • Lessons
  • Topics
  • News
  • Tools
  • Courses
  • Career tracks
  • Everything
Site
  • About
  • Contact
  • Support
  • Privacy
  • Terms
Get the daily one

One email per new problem. No spam.

Request a tutorial

Requests shape what gets made next.

ยฉ 2026 Fun with Learning TechnologyRSS
65+ free lessons ยท a new one every day

Crack the coding interview, one lesson a day.

Daily video walkthroughs on Python, LeetCode, SQL and AI โ€” the working code and the intuition behind it. Free to watch, no account needed.

Browse lessonsStart practicing โ†’
  • โœ“ 65+ lessons
  • โœ“ Updated daily
  • โœ“ 100% free โ€” no login

๐Ÿ”ฅ Trending now

What learners are watching most

6:51Free

Python Lesson 1: Install Python & Run Your First Code (REPL + .py Files)

General
5:20Free

Python Lesson 5: User Input & Output โ€” input(), f-strings & Your First Interactive Program

General
6:44Free

Sequential Digits Explained in Python โ€” Sliding Window Over a String (LeetCode 1291)

Twopointer
5:08Free

Python Lesson 2: Variables & Data Types (int, float, str, bool) Explained

General

๐Ÿ“š Browse by topic

Every lesson, sorted into tracks

4:40Free

Minimum Number of Pushes to Type Word I โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Daily Python Solution (10 letters, one formula)

Greedy
7:52Free

Minimum Number of Pushes to Type Word I โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Daily Python Solution ('abcdefghi' = 10 pushes?)

Greedy
4:24Free

Minimum Number of Pushes to Type Word I โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Daily Python Solution ('abcdefghi' = 10 pushes)

GreedyMedium
3:30Free

SQL Lesson 6: Why NULL = NULL Never Returns True

Sql
3:29Free

Python File Handling: One Word (with) Saves Your Work

Python
4:06Free

Smallest Palindromic Rearrangement II โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Daily Python Solution (stop building the whole string)

Greedy
6:22Free

Smallest Palindromic Rearrangement II โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Daily Python Solution (why you only solve half)

Greedy
4:48Free

Smallest Palindromic Rearrangement II โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Daily Python Solution (the trick nobody sees)

GreedyHard
3:36Free

SQL Lesson 5: Why Does OFFSET 1000000 Crawl?

Sql
4:23Free

Lesson 14: One Bad Line Can Crash Your Whole Program

Python
3:58Free

Smallest Palindromic Rearrangement I โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Daily Python Solution (half the string, mirror the rest)

General
6:22Free

Smallest Palindromic Rearrangement I โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Daily Python Solution (the trick nobody sees)

GreedyEasy
4:32Free

Smallest Palindromic Rearrangement I โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Daily Python Solution (why not just try every order?)

Greedy
3:38Free

SQL Lesson 4: Why Do Your Rows Come Back in Random Order?

Sql
3:35Free

Python Lesson 13: Turn 4 Lines Into 1 With Comprehensions

Python
4:01Free

SQL Lesson 3: Why Does WHERE age > 21 OR 25 Silently Return Everyone?

Sql
4:08Free

Lesson 12: Why Does Python Ignore Your Variable Change?

Python
4:57Free

Maximum Product of Two Elements in an Array โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Python Solution (One Pass Trick)

StackEasy
3:55Free

Maximum Product of Two Elements in an Array โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Python Solution (why it returns 1)

Stack
6:10Free

Maximum Product of Two Elements in an Array โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Python Solution (why [2,2] returns 1)

Stack
3:49Free

SQL Lesson 2: Pull 3 Rows From 1,000,000 in One Line

Sql
4:28Free

SQL Lesson 1: Every App You Use Is Just Boxes in a Cabinet

Sql
0:39Free

Speed challenge: spot the bug in under 30 seconds, five rounds

General
5:45Free

Maximum Product of Three Numbers โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Python Solution (the negative trap)

GeneralEasy
3:28Free

Maximum Product of Three Numbers โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Daily Python Solution (the two-negatives trap)

General
4:55Free

Maximum Product of Three Numbers โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Daily Python Solution (the two-negative trap)

Greedy
4:03Free

74% of Women Lived. 19% of Men Didn't. The Data Explains Why

General
17:59Free

Median of Two Sorted Arrays โ€” LeetCode Daily Python Solution (the trick nobody sees)

BinaryHard
27:59Free

Lesson 11: Why Does return None Happen to Everyone?

General
3:50Free

Lesson: The 10 Python Functions You've Used 1,000 Times

General
4:29Free

Maximum Product of Two Digits โ€” ๐Ÿ”ด Advanced (3/3) โ€” LeetCode Daily Python Solution (swap one digit, +60)

General
3:50Free

Maximum Product of Two Digits โ€” ๐ŸŸก Intermediate (2/3) โ€” LeetCode Daily Python Solution (swap one digit, +60)

Dp
6:40Free

Maximum Product of Two Digits โ€” ๐ŸŸข Beginner (1/3) โ€” LeetCode Daily Python Solution (the trick nobody sees)

General
4:03Free

Lesson: How Does an AI Agent Catch Its Own Mistakes?

Dp
5:33Free

Lesson: How Do Apps Survive a Million Users Without Crashing?

StackHard
4:59Free

Sum of GCD of Formed Pairs โ€” LeetCode Daily Python Solution (Two Pointers Eats It Alive)

TwopointerMedium
4:42Free

Python Basics: Variables, Loops, Lists & Functions Explained Simply

General
13:33Free

Number of Unique XOR Triplets I โ€” LeetCode Daily Python Solution (the trick nobody sees)

General
7:08Free

Rank Transform of an Array โ€” Sort, Set & Hash Map in Python (Explained Simply)

HashmapEasy
0:33Free

How a Web Request Actually Works (in One Diagram)

General
16:15Free

Maximize Active Section with Trade II โ€” LeetCode Daily Python Solution (the 0-1-0 sandwich trick)

GeneralHard
0:41Free

Binary Search Explained Visually โ€” 1,000,000 Items in 20 Steps

Binary
3:26Free

Lesson 9: Tuples and Sets โ€” Why Does Python Have THREE Ways to Store a List?

Hashmap
5:12Free

Why Does list[5] Crash? Python Lists From Zero to Confident

General
19:07Free

Maximize Active Section with Trade I โ€” LeetCode Daily Python Solution (Zero Bridge trick)

Greedy
4:15Free

What If 20 Lines of Code Beat Most Traders' Intuition?

General
5:45Free

GCD of Odd and Even Sums: Why the Answer Is Always n

General
6:44Free

Sequential Digits Explained in Python โ€” Sliding Window Over a String (LeetCode 1291)

Twopointer
8:11Free

Count Subsequence Pairs With Equal GCD โ€” DP Explained Step by Step

DpHard
5:00Free

Lesson: Code That Reads Like English Still Breaks You

General
4:32Free

Sorted GCD Pair Queries โ€” LeetCode Daily Python Solution (5 Billion Pairs, No List)

GeneralHard
4:40Free

Python Lesson 3: Strings & String Methods (Indexing, Slicing, F-Strings, split/join/strip)

General
6:51Free

Python Lesson 1: Install Python & Run Your First Code (REPL + .py Files)

General
5:10Free

Smallest Subsequence of Distinct Characters โ€” LeetCode Daily Python Solution (the greedy stack trick nobody sees)

Graph
4:44Free

Shift 2D Grid โ€” LeetCode Daily Python Solution (the trick nobody sees)

General
4:10Free

Python Lesson 7: while & for Loops Explained (range, break, continue)

General
5:20Free

Python Lesson 5: User Input & Output โ€” input(), f-strings & Your First Interactive Program

General
5:08Free

Python Lesson 2: Variables & Data Types (int, float, str, bool) Explained

General
4:10Free

Python Lesson 6: Conditionals โ€” if, elif, else, Truthiness & Nested Logic

General
15:57Free

Number of Unique XOR Triplets II โ€” LeetCode Daily Python Solution (the trick nobody sees)

General

Reading about code isn't the same as writing it.

Run real mock interviews, get instant feedback, and track your progress โ€” free, no card needed.

Start practicing free โ†’