Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python - What's In It For Me?

Python - What's In It For Me?

Presentation by Travis Hansen - @PacRimInfoSys given at our Mini Language Fest meetup on 5/8/2013

Transcript

  1. Python What's in it for me? or MATH AND WHITESPACE

  2. Coding Style Guides @P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";sub p{

    @p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*=2)+=$f=!fork;map {$P=$P[$f^ord ($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;map{$p{$_} =~/^[P.]/&& close$_}%p;wait until$?;map{/^r/&&<$_>}%p;$_=$d[$q];sleep rand(2) if/\S/;print
  3. Python was designed to be readable def function name( arg1,

    agr2): 1st block line 2nd block line return x function block_head( $arg1, $agr2) { 1st block line; 2nd block line; return $x; } Python PHP
  4. Engineering, Not Art Guido van Rossum • Dutch • received

    a masters degree in mathematics and computer science. • Employed at several large research facilities • Employed at Google(2005-2012) • Currently Employed at Dropbox Guido van Rossum • First created in 1999 • Stated Goals of easy, simple , readable and fast • Heavily used in large research facilities • Heavily used Google, youtube. • Named after Monty Pythons Flying Circus
  5. Simple is fun

  6. Users • Google - App engine, youtube ("Python where we

    can, C++ where we must") • Reddit • Yahoo Maps • BattleField 2 • ILM("The Phantom Menace") • ABN AMRO (Dutch State owned banked) • Red Hat • Los Alamos National Labs • NASA • NSA (rumored ;) http://wiki.python.org/moin/OrganizationsUsingPython
  7. Speed is king "At least in our shop (Argonne National

    Laboratory) we have three accepted languages for scientific computing. In this order they are C/C++, Fortran in all its dialects, and Python. You’ll notice the absolute and total lack of Ruby, Perl, Java."
  8. Webframe works • Django - "The Web framework for perfectionist

    with deadlines" • Pyramid/Pylons - influenced by ROR
  9. Language specifics • Dynamically typed/Duck Typing "if it walks like

    a duck, and quacks like a duck, then it is a duck" • Garbage collection • OO, functional and imperative • Extremely portable - QNX, VxWorks(powers rovers, asimo) - Cray and IBM supercomputers - Palm, nokia systems - Game consoles and iPods - Toasters
  10. Usage Stats - Popularity http://www.langpop.com/

  11. Usage Stats - CL job postings http://www.langpop.com/

  12. Usage stats - module counts http://www.modulecounts.com/

  13. And now for something completely different!