PyCon AU 2010 – 26th June – first day

A quick summary of the notes I took for that day.

Keynote: Mark Pesce; “How Not To Be Seen”

Introduced Plexus which is a sort of plumbing for social networks.  The talk seemed to have a bit too much hype but at least there was some code and other people seemed keen.

Making your Python code fast – Mr. Andrew Bennetts

  • disappointed that some profiling tools were bzr specific.
  • timeit
  • lsprof + kcachegrind
  • strace
  • perf (linux-tools)
    • eg “perf stat bzr status”
  • bzr -import-profiling
  • traceback sampling
    • use SIGUSR to dump traceback!
    • sigquit -> debugger/pdb
  • automate tools, make it dead easy to profile
  • sudo tc qdisc add dev lo root netem delay 500ms
    • add a delay to localhops
    • 500ms means if 30s delay means 30 round trips
  • sudo tc qdisc del dev lo root < — to turn off!
  • tcptrace – net tracing through tcp dump
  • cpu freq -set -g performance // remove cpu scalling
  • http://bemusement.org/pycon10

Need for Speed – Dr. Graeme Cross

  • cprofile -> pstats
  • callgraph visualisation:
    • gprof2dot – static
    • pycallgraph
    • RunSnakeRun
  • optimisation steps
    • 1 use existing libs – numpy/scipy
    • 2 improve design
      • algorithms, data structures
      • O notation
      • parallel – threading/multiprocessing
    • 3 improve implementation
      • eg containers range/xrange
    • 4 inline optimisation
      • weave / pyinline
    • 5 write in C /other
      • cython – port of pyrex
      • shedskin – py to C++ converter
      • or SIP/SWING
      • ctypes / boost.python

Using Python in a scientific real-time data collection network – Dr. Paul Dyson

  • great picture summary of some of the data collection equipment used
  • about 10 stations around Australia
  • they’d love to stick with win 2000 just cause its stable and rock solid, but can’t find hardware support anymore, so debian stable now.
  • moving from mixtures of VB, fortran, C to just python everywhere

Don’t Break It: Continuous Integration & Deployment – Benno Rice

examples of tools:

  • buildbot – written in twisted/used by python
  • bitten – for trac
  • Hudson – written in java <– talk centered on this

why Hudson/continuous integration?

  • triggers
  • scm integration
  • generalisation builds
  • different systems
  • artifact retention
  • integration with tools
  • notifications
  • nose for testing
  • hudson
  • virtualenv
  • stdeb – py pkg to deb pkg
  • fabric – remote control a server via ssh
  • pip – package management
  • stdeb can also convert required modules into debian dependencies

There was a great demonstration of the steps necessary in setting up a continuous integration environment which should be evident in the video

Python in Video Games and Multimedia Projects – Mr. Chris McCormick

  • worked on RJDJ (and showed a video).  Make music based on random sounds. Sunglasses for your ears.
  • uses Pure Data – DSP rapid prototyping.  also look at MaxMSP

Infinite 8bit platformer!

  • multiplayer exploration platformer where all users can contribute.
  • infiniteplatformer.com
  • stackless python
  • actor model
  • podsixnet – network lib
  • pygame

Using Python for Natural Language Generation and Analysis – Mr. Tennessee J Leeuwenburg

Using language tools to generate weather reports.  Apparently Victoria is live now and NSW will be live in a few weeks.  Later looked at the word trends in reports.

  • analysis using NLTK
  • read Natural Lang Processing with Ptyhon – Steven Bind 2009
  • NLGEN2

whoops I deployed again – new ways to get your app in the cloud – Dylan Jay

  • silverlining / hostout (fabric + buildout)
  • cool table of options etc
  • fabric – run scripts on server easily
  • buildout – configuration system
  • dependency management
  • hostout – install webapp on other servers
  • check out web framework repoze
  • check out siverlining.. maybe?

Lightning Talks

  • OLPC – now in NT, Australia
  • check out Jython for optimising
  • embedding python interpreter and run from c main()
  • inflect.py – pluralise words!  (some failed but classic mode!)
  • cocos2d – game framework.  check out “Abbey’s grand adventure”
  • working at Google
    • no direction given. Bad idea to say you’ll do what you’re told.
    • you might need to adjust to change
    • always people smarter than you
    • noone will write code for you (unless you’re Guido)
  • python 2.6 can execute zip files and directories!
    • see “import __main__ module”

Dinner – Anthony Baxter

Gentle jabs at Java and Python.  There was some example code from Google Wave which was particularly horrible but Python had it’s own problems.

See the pyconau 2010 website and videos!

This entry was posted in Uncategorized. Bookmark the permalink.