Slides TOC

  • Opener

    • Subtitle: 20 cool things you can do with Python
  • Who am I

    • History
    • Credentials
  • Who uses Python?

    • Everyone!
    • Who doesn’t use Python?
    • NASA, Canonical in Ubuntu, Google, et al
    • Startups, Scientists, Animation Studios, et al
  • What is Python?

    • 20 years old and mature
    • A programming language named after Monty Python
    • Dynamically typed scripting language
  • Python is similar to:

    • Ruby
    • Lisp
    • et al
  • Python is different than:

    • Ruby
    • Java
    • Lisp
  • Core concepts

    • Philosophy of Core devs

      • Conservative growth
      • We read Knuth so you don’t have to
      • Aim for simple implementation
    • Zen of Python

      • A few of my favorite lines
    • PEP-8

  • Which Python to use?

  • 20 Cool things you can do with Python

  1. Learn it fast

    • Experienced developers take a week to get competent in Python
    • Java takes 6 months
    • C takes 2 years
  2. Introspect

    • String basic type
    • dir
    • help
  3. Play with Strings

    • Concatenation
    • String formatting
    • Join iterables
  4. Express yourself to laymen

    • Don’t know Python? Bet you can read this!
  5. Play with the REPL

    • Standard python shell
    • ipython
    • bpython
  6. List Comprehension

    • [x for x in range(15)]
    • List Generators for ultimate power
  7. Generate Exceptions

  8. Create small, isolated environments for installing packages

    • Good for testing different versions of the same library:

    easy_install pip pip install virtualenv virtualenv my_env source my_env/bin/activate

  9. Generate the code coloration used in these slides.

    • http://pygments.org/
    • Show demo
    • Mention that both bitbucket and github use Pygments to colorize code.
  10. Go faster than C and Javascript

  11. Persist

    • LRU caching
    • Connect to SQL databases
    • Connect to NoSQL
  12. Build websites

  13. Internationalize

    • unicode
    • gettext implementation