A look at the GPIO Zero library for Raspberry Pi yields the blueprint for a Pythonic API for programming the behaviour of interconnected devices.
GPIO Zero provides a multi-paradigm programming interface to GPIO devices: - procedural (polling) - procedural (blocking) - event-driven (callbacks) - declarative
Start with simple scripts to control LEDs and buttons on a breadboard, learn to prototype ideas and move on to declaring interaction between more advanced devices in the home and beyond.
These options for device programming, along with the extensibility of the library, provide the means to program complex behaviour using simple Pythonic code.
I would like to work with open source projects to create a branch of the tree with all of the best videos for your open source project. Please send me an email if you are interested.