If you are working with objects in Python, and you want to create attributes that behave in new and unusual ways, then you might well want to use “descriptors.” In this talk, Simeon Franklin describes what descriptors are, how they work, and how you might want to use them in your own programs.
Python is used in a wide variety of settings. Somewhat surprisingly, it’s becoming particularly popular for “big data” analysis, looking for trends and correlations in large data sets. In this talk, Ville Tuulos describes his company’s uses of Python in big-data analysis. He compares different techniques and technologies that can be applied to big data, and talks about how (and why) his company uses Python, which is often seen as a slow language — not appropriate or such large data sets.
Python has been popular for many years, but now its popularity is growing even faster. What does the future hold for Python? And why is it becoming so popular among so many different groups? In this talk, Jessica McKellar describes the current state of affairs, and where Python is weak — and thus needs to improve, in order to attract new developers. She especially encourages people who love Python to contribute to the community, so that the language can avoid the fate of Perl, whose popularity has declined significantly in the last two decades.
Python 3 was released more than five years ago — and yet, most Python developers are still using version 2.x of the language. In this talk, well-known Python author, lecturer, and contributor David Beazley demonstrates one of the advantages of Python 3 that isn’t often discussed: The degree to which metaprogramming (i.e., writing programs that write programs) is possible. The entertaining three-hour talk introduces metaprogramming concepts, along with many examples of when and why you would want to use these techniques.
The idea of REST has been around for a while, and a number of Web application frameworks depend on it. There’s only one problem: Not everyone agrees on just what REST is, and how it should influence the architecture of our Web applications. In this talk, Stefan Tikov talks about what REST is, what it isn’t, and how it can and should affect the way in which you think about and build Web applications.
Python’s decorators allow you to intercept the definition or execution of a function (or class), and to inject or replace the code with your own. This talk, by Colton Myers, introduces this powerful technique, stepping through its syntax and use in different ways. He also demonstrates use of the wrapt library, which makes it easier and cleaner to create decorators.
Python, like many other high-level languages, is often seen as slow. However, this doesn’t mean that it’s impossible to optimize Python programs, or even to make them run quickly. In this talk, David Schachter takes a real-world application and shows how he combined a number of techniques to achieve a much faster execution speed.
One of the reasons for Python‘s popularity is the large number of open-source packages available for it. Many come with Python, in the standard library. Others are available online, especially at PyPI, the Python Packaging Index, which as of this writing has nearly 60,000 different packages — and the number keeps growing every day.
However, Python has a number of different packaging libraries and standards, and this has long caused some confusion among Python developers. In this talk, Richard Jones introduces the topic and then describes the current state of affairs in Python packaging.
Python is famous for making it easy to get into programming: The syntax is simple, the constructs readable, and the data structures rich. Python also makes it easy to create new classes and work with objects.
In some ways, though, Python makes it too easy to create and work with objects. Python, unlike some other programming languages, doesn’t require that you use classes, but makes that possible. This means that developers wills sometimes create new classes when it is unnecessary — when functions and Python’s built-in data structures more than suffice.
In this talk, Python core committer Jack Diederich describes and demonstrates many cases in which Python developers went overboard, creating and using classes when there was no good reason to do so. Using classes made the resulting code slower and more complex than as otherwise necessary.
Python is a very popular open-source programming language. PostgreSQL is a very popular open-source relational database. It shouldn’t surprise us, then, to discover that many people are using PostgreSQL to store and retrieve data in their Python projects. This talk, given by Christophe Pettus, introduces PostgreSQL from the perspective of a Python programmer; the emphasis is on PostgreSQL, but there are also Python elements here. If you are thinking of using PostgreSQL in your project, but feel like you don’t know enough about it, this is a good place to start.