We all write functions. But do we create functions that are effective — efficient in the ways that they work, and in the ways that we invoke them? How (and why) should we take advantage of Python‘s many supports for functional arguments? Why should you consider using generators, rather than returning lists? In this talk, Brett Slatkin provides numerous examples of how we can improve our functions. If you’re a Python developer who wants to take their functions to the next level, this talk will provide you with some good, new ideas.