To try everything Brilliant has to offer—free—for a full 30 days, visit https://brilliant.org/DougMercer
You'll also get 20% off an annual premium subscription.
———————————————————————————————
Sign up for 1-on-1 coaching at https://dougmercer.dev
———————————————————————————————
I made my own reactive programming library (in Python). It's awesome.
In this video, I show how I created a useful reactive programming toolkit by leveraging the Observer design pattern, decorators, and operator overloading/magic methods.
In particular, we talk about Signals and Computed objects, which provide reactive values and functions. These objects are containers for values that can change, and will automatically notify any object observing them whenever their value changes. This creates a dynamic graph of computation that's particularly useful for UI and animation applications.
On top of that, you'll receive a surprise type hinting lesson on Generics and TypeVars.
Chapters
---------------
0:00 Intro
0:33 What is reactive programming?
1:19 How do we make objects reactive?
2:53 The Observer Design Pattern
4:13 This isn't that cool yet...
8:03 Draw the rest of the owl...
9:21 Prove it, buck-o
12:15 How do you type hint this?
16:35 How do you know it mostly works?
Credits
------------
Thanks to Siara M. for creating the animations in Section 3!
Software mentioned
---------------------------------
Signified GitHub - https://github.com/dougmercer/signified
Signified Docs - https://dougmercer.github.io/signified/
Signified PyPI - https://pypi.org/project/signified/
Disclosure
-----------------
This video was sponsored by Brilliant.
#python #reactive-programming