This is a short presentation on Design Patterns. Design patterns are a set of "reusable design ideas" -- and there are a number of good "collections" of design patterns.
The most widely known patterns are from the standard "Gang of Four" collection (the patterns in the 1994 book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides).
This short talk presents a few of the Gang of Four patterns, but it also surveys several other groups of patterns:
The most involved example is a simple example of the Active Object pattern, which is very useful for distributed, concurrent, and multi-threaded applications. To make things easy, the talk goes through a simplified Active Object implementation in Python, based on one of the examples in the book Exercises in Programming Styles by Crista Lopes. Of course, there are many ways to implement the Active Object pattern in many different languages.