Programming: Beyond the Basics

11h 14m 57s
English
Paid
September 21, 2024

There are countless ways to write any program. This course is designed so that you have all the tools necessary for fully expressing your ideas through code, including functional composition and recursion, object-oriented programming, and basic knowledge of parallelism.

If you are already familiar with the concepts discussed above, you can choose interesting tasks or move on to studying computer systems.

I also use this course to share my programming philosophy and my preferences in the approach to programming. I do not claim to have the final opinion on these matters, as there is no single correct way. Nevertheless, others have found my thoughts useful, and perhaps you will too.

The backbone of this course is a sequence of tasks for each topic. You should strive to solve each task, using ready-made solutions and additional explanations if necessary.

As additional material, I recommend "Composing Programs" by John DeNero or the classic textbook SICP, on which it is based, be it in the original version in Scheme or the newer version in JavaScript. For a more playful, task-oriented approach, I also recommend "The Little Schemer," especially on the topics of higher-order functions and recursion.

Primarily, I will be using Python as the main language, but you can work in another language if you prefer. Languages that do not support higher-order functions and/or classes may pose difficulties in adapting some tasks.

Watch Online Programming: Beyond the Basics

Join premium to watch
Go to premium
# Title Duration
1 001 Luhn algorithm 01:13:12
2 002 Tic-tac-toe 58:30
3 003 A quick tour of iterators in Python 16:43
4 004 Reduce everything 39:54
5 005 Memoize 27:45
6 006 Basic recursion 49:05
7 007 Pretty print 22:41
8 008 Trampoline 35:35
9 009 Refactor life 01:23:51
10 010 Vector class 55:58
11 011 DIY objects 26:27
12 012 DIY basic inheritance 25:00
13 013 Bytecode interpreter 45:32
14 014 The two most common mistakes I see in data modeling 27:04
15 015 A complete beginners guide to deploying web applications 25:04
16 016 The only software development methodology I recommend cut 27:34
17 017 Looking inside the Python interpreter 35:02

Similar courses to Programming: Beyond the Basics

Computer Systems

Computer Systems

Duration 28 hours 15 minutes 48 seconds
Master System Design and Design Pattern

Master System Design and Design Pattern

Duration 11 hours 33 minutes 6 seconds
Operating Systems

Operating Systems

Duration 29 hours 33 minutes 35 seconds
Building AI Apps with the Gemini API

Building AI Apps with the Gemini API

Duration 3 hours 43 minutes 41 seconds
Refactoring UI - Complete Package

Refactoring UI - Complete Package

Duration 40 minutes 42 seconds
The Many Hidden Worlds of Quantum Mechanics

The Many Hidden Worlds of Quantum Mechanics

Duration 11 hours 56 minutes 32 seconds
Macroeconomics Made Clear

Macroeconomics Made Clear

Duration 12 hours 34 minutes 14 seconds
NativeScript + Angular: Build Native iOS, Android & Web Apps

NativeScript + Angular: Build Native iOS, Android & Web Apps

Duration 20 hours 11 minutes 23 seconds