Skip to main content

The 30-Day Design Challenge

8h 52m 30s
English
Paid

Course description

This course is designed for those who want to go beyond theoretical knowledge and develop skills in working with production code. Regardless of your level of experience - whether you are a junior developer looking to improve your skills or a data specialist who wants to structure your code - the course will help you move on to more complex tasks.

Read more about the course

The course offers 30 engaging software design assignments that will unlock your potential in problem-solving and creative programming approaches. You will encounter tasks of varying complexity: from simple examples focusing on design principles to deep practical exercises, such as creating an API with FastAPI and SQLAlchemy, working with GUI code, functional and object-oriented programming, as well as detailed type annotations in Python.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 53 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome!

All Course Lessons (53)

#Lesson TitleDurationAccess
1
Welcome! Demo
01:59
2
Solution: KISS
02:14
3
Solution: Type Annotations
09:34
4
5 Tips To Achieve Low Coupling In Your Python Code
18:30
5
Solution: Decoupling
03:31
6
Solution: DRY
03:42
7
F-strings In Python_ Everything You Need To Know
23:29
8
Solution: String Formatting
02:33
9
Solution: Law Of Demeter
03:19
10
Solution: Better Discounts
04:32
11
The Strategy Pattern_ Write BETTER PYTHON CODE Part 3
15:31
12
How to Implement the Strategy Design Pattern in Python
27:20
13
Solution: Payment Strategy
03:08
14
Why the Plugin Architecture Gives You CRAZY Flexibility
24:06
15
Solution: Plugins
05:52
16
Functions vs Classes_ When to Use Which and Why_
10:49
17
Solution: Object Oriented To Functional
06:32
18
Cohesion and Coupling_ Write BETTER PYTHON CODE Part 1
26:14
19
Solution: Cohesion
03:53
20
Which Software Architecture Should You Use_ MVC, MVP, or MVVM_
24:27
21
Solution: MVP
05:18
22
Composition Is Better Than Inheritance in Python
23:29
23
Solution: Inheritance
03:39
24
Dependency INVERSION vs Dependency INJECTION in Python
17:52
25
Solution: Abstraction
02:26
26
You Can Do Really Cool Things With Functions In Python
19:47
27
Solution: Higher-Order Functions
03:12
28
Solution: Configuration
02:59
29
Next-Level Concurrent Programming In Python With Asyncio
19:19
30
How To Easily Do Asynchronous Programming With Asyncio In Python
23:09
31
Solution: Concurrency
08:18
32
Solution: Refactoring
03:36
33
A Deep Dive Into Iterators and Itertools in Python
21:01
34
Solution: Itertools
02:10
35
Solution: Inappropriate Intimacy
01:58
36
End of Part 1
00:32
37
Real-Life Case of the Command Design Pattern
32:25
38
Solution: Undo/Redo
03:32
39
Raw SQL, SQL Query Builder, or ORM?
16:19
40
Solution: SQL to ORM
04:29
41
Solution: Unit Tests (Basic)
02:48
42
Solution: Unit Tests (Advanced)
02:15
43
Solution: Operations Layer
04:35
44
Solution: Ticket Cancellation
03:32
45
Observer Pattern Tutorial: I NEVER Knew Events Were THIS Powerful
15:17
46
Solution: Messaging
04:30
47
Attrs, Pydantic, or Python Data Classes?
17:10
48
Do We Still Need Dataclasses? // PYDANTIC Tutorial
16:33
49
Solution: Validation
02:30
50
Let's Take The Bridge Pattern To The Next Level
17:13
51
Solution: Bridge
04:52
52
Solution: Mixins
03:33
53
Wrapping Things Up
00:57

Unlock unlimited learning

Get instant access to all 52 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Prompt Engineering Bootcamp (Working With LLMs): Zero to Mastery

Prompt Engineering Bootcamp (Working With LLMs): Zero to Mastery

Sources: zerotomastery.io
Stop memorizing random prompts. Instead, learn how Large Language Models (LLMs) actually work and how to use them effectively. This course will take you from be
31 hours 45 minutes 3 seconds
Grow From Mid-Level To Senior Engineer: L4 To L5

Grow From Mid-Level To Senior Engineer: L4 To L5

Sources: Alex Chiou
"Senior Software Engineer" is a title that sounds prestigious and is coveted by every engineer. Top-notch senior engineers are in high demand...
3 hours 50 seconds
Python for Financial Analysis and Algorithmic Trading

Python for Financial Analysis and Algorithmic Trading

Sources: udemy
Welcome to Python for Financial Analysis and Algorithmic Trading! Are you interested in how people use Python to conduct rigorous financial analysis and pursue algorithmic tradi...
16 hours 54 minutes 20 seconds
Advanced Software Engineering Fundamentals

Advanced Software Engineering Fundamentals

Sources: Caleb Curry
Deepen your knowledge in software development. Learn Rust and Go, multithreading, virtualization with Docker, and create modern applications with WebAssembly.
8 hours 3 minutes 38 seconds
Advanced Radix UI

Advanced Radix UI

Sources: Build UI
Radix UI has become one of the most popular component libraries in the React ecosystem. It has more than 20 low-level primitives packed with functionality that make building cus...
2 hours 13 minutes 5 seconds