by Mark Ramm
There’s been a lot of buzz about “Lean Startups,” “Customer Development,” “Business Model Generation” and related topics lately. And there is a real transformation in the way we design and build products at work behind all that buzz.
But the fundamental principle behind all of them is applying scientific and experimental methodologies to product design decision making. The tools of Lean Startups are:
Fortunately Python is a great tool for those looking to apply data science to product design.
Python can help with everything from statistical analysis, to rapid development of viable products, to the creation of complex models that can be used to tweak the levers of growth, and it’s easy to combine these with off the shelf tools that help you analyze traffic patterns and figure out what product changes actually make a difference.
by Graeme Cross
Python is a fantastic scripting language. It is easy to hack up quick scripts for all sorts of problems - without a lot more effort, that hack can become a robust, easily maintained command line application that your users love.
Come along to learn how to write useful, well-behaved command line applications that are a joy to use.
You will learn how to:
This tutorial will assume a very basic knowledge of Python and some familiarity with the command line environment of your choice.
We will use bash (running on Linux or Mac OS X) as our default platform, but we will also show how these applications can run with the Windows command prompt.
by Ivan Teoh
Head to head - popular templating engines using in the Python world will be compared and contrasted. Increasingly, frameworks allow many different choices in templating engines. In this talk I’ll discuss the different approaches, demo and pros and cons to help you decide if there is a better templating engine for you.
Architecture. It's an oxymoron all by itself, and using Python is no silver bullet to the perennial problem of code rot and design complexity. How does complexity bite us in practise? What tools exist to simplify and explain architecture? Is anybody doing this right? This talk will cover some tools that exist for visualising Python codebases, examining architectures and how to deal with things in practise.
by Ryan Kelly
Do you enjoy writing test cases for your web application? If so then this may not be the talk for you. I'm going to show you how to make a single test suite perform triple testing duty, so you can get on with writing the fun stuff.
First, I'll show you how to use WebTest to construct a simple functional testsuite for your application. By running in-process against a WSGI callable, the tests can be fast and light enough to form part of your regularly-executed suite.
Second, we'll use WSGIProxy to turn this into a deployment/acceptance test script that you can point at a real live server to verify its behaviour. Run this after every deployment to make sure you haven't broken something in the wild.
Finally, we'll connect the suite to FunkLoad and pummel the server with a distributed barrage of tests, to see how it copes under pressure.
Persona is a new cross-browser login and identity system for the web that is pragmatic, federated, and serves the user.
Unlike other popular solutions, it puts a strong emphasis on privacy protection and makes your browser the trusted intermediary. Developed by Mozilla, it is based on the simple idea of users demonstrating ownership of their email address (with a generous serving of crypto magic under the hood).
This talk will give a high-level overview of the system and then show how simple it is to add support for it in a Python webapp. If you want to make it easy for users to log into your site but don't want the risks and hassle of storing passwords, or if you cannot quite get your head around complicated authentication systems, then this talk is for you!
by Danielle M
GObject-Introspection is a new technology at the core of GNOME 3. In brief, GObject-Introspection is a mechanism to annotate C APIs written using GLib so that they can be used from other languages via a single binding module (in Python's case PyGObject).
This means no more per-library API bindings that must be installed, and the ability to immediately expose new API into Python (and every other language) without having to know anything about writing API bindings in Python or the Python/C interface.
This talk will cover what GObject-Introspection/PyGObject are and demonstrate how to bind an new API we've just written.
Monitoring tools will record the result of what happened to your web application or system when a problem arises, but for some classes of problem are of limited help in working out what happened, except through inference or by way of anecdotal evidence.
This talk will describe the limitations on what monitoring tools can help you with. It will then move onto look at a range of debugging tools and techniques which can be applied to web applications, but also separate them into what can and cannot be used on live production web applications.
Topics which will be discussed will include:
The Natural Language Toolkit (NLTK) suite offers powerful tools for natural language processing and analysis. Like many other code libraries, it enables programmers to achieve results when working with data they may not be an expert in the handling of - in this case, human language. The NLTK is particularly valuable as human language skills are in general something programmers can get along without, and therefore they are likely to be ill-equipped with the tools to most effectively work with language data. However, while NLTK provides programmers with a way to work with all the relevant parts of language without needing to rely on their own grammar skills, there are many concepts in the field of natural language processing that require basic comprehension of natural language operation, which may make knowing where to start working with the NLTK difficult for the average programmer.
This presentation will demonstrate some of the NLTK's powerful and impressive features, while covering the concepts that will enable any programmer to work cool tricks on natural language. The application of the NLTK to a very basic artificial intelligence will be shown.
by Peter Lovett
Python can be deceptive - it looks so simple. Surely it will take only 5 to 10 minutes to learn.
Self taught programmers often miss important fundamentals in Python - including:
* Everything is an Object. Yes everything. Integers, 'real' objects, functions, classes. Ooooh template metaprogramming.
* It's only a name. Whoops. True, False, no longer None.
* 'Objects can change their type'. Not.
* How the heck to a actually make a copy
* Which parts of tuples are constant?
* Deep and Shallow - weren't not talking philosophy here
* Accidental name creation - there's no easy solution
* Argument passing, Mutable arguments, default arguments, Mutable default arguments
Aesthetic design is not unicorn magic; It is a pragmatic, predictable and achievable process. Let's get to know the syntax!
Would you like to better understand why some things are ugly and know what to do? This talk is for you!
This talk runs a marathon of content starting at the design basics and journeying right through to the two worlds of user experience and user interface design.
You are already a great designer — know it
by Ed Schofield
This is a tutorial about using Python for scientific and engineering purposes, focusing on the latest and best tools available in 2012. It will walk you through exploring a variety of interesting domains and problems using the latest tools and packages, such as the IPython Notebook, scikits.learn, and the Pandas toolkit for data analysis. It will show why Python is an outstanding tool for science and engineering work, and getting better.
Presentation will go in-depth on the architecture of a web application service built on Amazon Web Services (AWS) cloud infrastructure, including:
From a business point of view I will also talk about the opportunities that modern cloud computing platforms present to developers and how to best exploit them.
A highly visual (racing videos) presentation showing the TORCS racing simulator, a Python implementation of a virtual robot car, and a covering of the basic AI algorithms required to make the wheels go round. AI, math, Python and eye candy. What could possibly go wrong... what indeed :)
by Amit Saha
PiCloud (http://www.picloud.com) is a cloud computing solution which provides a three step procedure to run your code on the cloud. It automatically understands the modules your program uses and transfers them to the 'cloud' and executes it there before making the results available to the client. The attendees of this talk will be able to start using PiCloud in realtime. Its that simple!
The talk will roughly have the following structure:
by Duncan Macneil
Every now and then you'll find yourself with one of life's tricky situations. OK, so maybe not a literally life-threatening one. But when you remember Python is a batteries-included, script-like programming language found pretty much everywhere, it really will feel like a lifesaver. A one-line web server? A super-simple GUI test automation suite? Come and hear about all those handy tips and tricks that will get you out of a bind. One day, somewhere you'll be glad you did!
by Aaron Iles
This is Dave. Dave works in an ordinary, corporate and usually quiet IT environment. Today, while Dave verifies a new firewall in their network, he will notice some suspicious network activity. The series of events that follow will lead Dave to apply his skills with Python, Python's ctypes module, libpcap and the external filemagic package to investigate this activity. By the end of the day Dave will have convinced his supervisor they need to contact the appropriate authority to report a network intrusion.
Come join Dave for his unexpected journey.
by Mark Rees
I have followed the development of PyPy since 2004 and played with various releases to see what the PyPy team had achieved. It wasn't until the release of PyPy 1.18 that I actually ran some existing production python code under it. The perceived performance improvement of this exercise inspired me to implement a more scientific method for comparing the runtime performance of CPython and PyPy running various Python production code sets that we use in the company I work for. This presentation will discuss the results of this comparison and the positives and negatives with utilising PyPy in production.
Python’s ecosystem is held up to a high standard, but it falls short in a few key areas. A handful of crucial APIs are an absolute pain to work with. We’ll go over where these APIs went wrong and learn about strong and elegant API design. The high barriers to entry in Python will be discussed. Potential solutions will be proposed.
by Roger Barnes
It's no secret that python is fantastic when it comes to rapid prototyping and development. When it comes to deploying a web application, the road to glory isn't as well paved and navigating the array of techniques and tools can be daunting.
This talk will address the advantages of continuous deployment, the success factors involved and the tools available, mainly focusing on experiences with Django web development.
18th–19th August 2012