Django is a popular, powerful web framework for Python. It has lots of "batteries" included, and makes it easy to get started. But all of the power means you can write low quality code that still works. Effective Django means building applications that are testable, maintainable, and scalable. This tutorial will introduce attendees to Django with an emphasis on testing, maintenance, and scale.
Read more.

Scrapy lets you straightforwardly pull data out of the web. It helps you retry if the site is down, extract content from pages using CSS selectors (or XPath), and cover your code with tests. It downloads asynchronously with high performance. You program to a simple model, and it's good for web APIs, too. If you use requests, mechanize, or celery for HTTP, you should probably switch to scrapy.
Read more.

Web applications are world wide spread nowadays requesting an acceptable response time across all the GEOs. That can be achieved by the use of caching systems. But, how do you know your data can be cached? And even more, how long?
This presentation will show how to use Selenium WebDriver from python and doing web scraping for identifying the datasets and the time frame to use for a web site.
Read more.

Processes in a cluster can require controlled access to shared resources, tracking available processes, and sharing state. Unfortunately most tools in this category are oriented around Java. In this talk I cover how to use Python to interact with Apache Zookeeper -- a fault-tolerant consistent data-store -- to write coordinated distributed fault-tolerant applications in Python.
Read more.

Our culture's default assumption is that everybody should always be striving for perfection -- settling for anything less is seen as a regrettable compromise. This is wrong in most software development situations: focus instead on keeping the software simple, just "good enough", launch it early, and iteratively improve, enhance, and re-factor it. This is how software success is achieved!
Read more.

C++ brought exceptions to mainstream programming; Java goes further with checked exceptions. But are exceptions the one way to report all errors? Scala and Go suggest there is more than one kind of error, so there should be more than one kind of error reporting, and different responses to errors. I’ll show the Scala and Go approaches to the error problem, and how to apply this to Python.
Read more.

The biomedical research community is amidst a data revolution driven by the adoption of electronic health records and the arrival of next generation genomic technologies. Researchers require tools that scale with this increase without added complexity. To address this need we have developed Harvest, an open source framework for rapid development of purpose-built data discovery web applications.
Read more.

From the elegant for statement through list/set/dict comprehensions and generator functions, this talk shows how the Iterator pattern is so deeply embedded in the syntax of Python, and so widely supported by its libraries, that some of its most powerful applications can be overlooked by programmers coming from other languages.
Read more.

Learn about what has been called "most important numerical algorithm of our lifetime" - the Fast Fourier Transform (FFT). In this talk, you will get foundational knowledge of the Fourier Transform and learn how to use Python to extract useful information from sound clips.
Read more.