Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Python and the Web

1,622 views

Published on

Keynote for Day 2 of PyCon Taiwan 2012, by James Tauber

Published in: Technology
  • Be the first to comment

Python and the Web

  1. 1. PYTHON AND THE WEB J ame s Taub e r @jtauber
  2. 2. Python Web
  3. 3. Python Web
  4. 4. Python Web
  5. 5. Python Web
  6. 6. Python Web
  7. 7. “python” in talk and “web” in talk
  8. 8. HISTORY 1989TBL writes proposal for what would become WWW GvR starts work on Python 1994 First WWW conference Python 1.0 released W3C founded 1997 Python 1.5 released HTML 3.2 released
  9. 9. Python Web
  10. 10. Batter ies Included
  11. 11. NumPy SciPyMatplotlib pandas
  12. 12. N LTK
  13. 13. music21se ba st ia n / c ze r ny
  14. 14. Sphinxread t h ed o c s .o r g
  15. 15. PyPIc r a t e . io
  16. 16. You can’t use a specialist language to build a system
  17. 17. •computer scientists•domain experts•system administrators•web developers
  18. 18. “Programs are meant to be read byhumans and only incidentally for computersto execute” —Don Knuth
  19. 19. Python Web
  20. 20. H T M L , H T T P, U R L s
  21. 21. S e r v i n g s t a t i c fi l e s w i t h hy p e r l i n k s
  22. 22. Im a g es CSSS e r ve r S i d e I n c l u d e s
  23. 23. CGICommon Gateway Interface
  24. 24. I nver ti ng C od e a n d M a r kup PHP and ASP
  25. 25. D a t a b a s e - b a c ke d We b s i t e s
  26. 26. LAMP
  27. 27. Jav a sc r ip t
  28. 28. XM L
  29. 29. Web Ser vices
  30. 30. A JAX
  31. 31. JSON
  32. 32. what is a web p a ge ? wha t is a web s i te ?
  33. 33. Candelabr a Demo
  34. 34. jtauber. g it h u b. c om de mo
  35. 35. Python Web
  36. 36. L A MP Python
  37. 37. ZOPEPlone
  38. 38. WSGI
  39. 39. MVC
  40. 40. database mappingHTML templating req u est rou t i n g
  41. 41. Tu r b o G e a rs 1 SQLObject Kid Cher r yPy
  42. 42. Tu r b o G e a rs 2 S Q L A l c h e my Genshi Pylons
  43. 43. R e p o ze B F G Pylons P y ra m i d
  44. 44. FlaskWer kzeur g Jin ja 2
  45. 45. Dja ngo
  46. 46. 1.0 S ep t em b er 2 0 0 8 1. 1 Ju ly 2 0 09 1. 2 M ay 2 01 0 1.3 M a rc h 2 0 1 1 1.4 M a rc h 2 0 1 2
  47. 47. timezonesS E L E C T F O R U P DAT E password hashing signed cookiesproject/app templates wsgi.py in-browser testi ng
  48. 48. a layer above?
  49. 49. why layer?
  50. 50. por tability of higher layer s
  51. 51. r e us ab i l i t y o f l owe r l aye r s
  52. 52. “We read Knuth so you don’t have to” —Tim Peters
  53. 53. idea realizationWhat you do for a living is not be creative, what you do is ship — Seth Godin
  54. 54. Pi n ax provides wh at m any s i te sh ave in common so you c an fo c u so n wha t m akes you r si t e d i ffer ent
  55. 55. Project layout Default templatesAc c o u n t M a n a g e m ent R e u s a bl e a p p s Star ter Projects
  56. 56. Announcements OAuth Attachments OpenID Avatars Pagination Badges Photos Blogs Profiles Bookmarks Sign up codes Contact import TaggingEmail confirmation Tasks Friends Threaded-comments Invitations Timezones Markup User-to-user messages Microblogging Voting Notification Wikis
  57. 57. caching (Redi s )s e a r ch (Solr / H ay s tac k)m e ssage queues ( Ce l e r y )
  58. 58. Providing Web APIs
  59. 59. Consuming Web APIs
  60. 60. PYTHON AND THE WEB J ame s Taub e r @jtauber

×