PYTHON AND THE WEB      J ame s Taub e r         @jtauber
Python   Web
Python   Web
Python   Web
Python   Web
Python   Web
“python” in talk and “web” in talk
HISTORY                       1989TBL writes proposal for what would become WWW            GvR starts work on Python      ...
Python   Web
Batter ies Included
NumPy  SciPyMatplotlib pandas
N LTK
music21se ba st ia n / c ze r ny
Sphinxread t h ed o c s .o r g
PyPIc r a t e . io
You can’t use a specialist language        to build a system
•computer   scientists•domain   experts•system   administrators•web   developers
“Programs are meant to be read byhumans and only incidentally for computersto execute”                                  —D...
Python   Web
H T M L , H T T P, U R L s
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
Im a g es             CSSS e r ve r S i d e I n c l u d e s
CGICommon Gateway Interface
I nver ti ng C od e a n d M a r kup         PHP and ASP
D a t a b a s e - b a c ke d We b s i t e s
LAMP
Jav a sc r ip t
XM L
Web Ser vices
A JAX
JSON
what is a web p a ge ? wha t is a web s i te ?
Candelabr a Demo
jtauber. g it h u b. c om de mo
Python   Web
L A MP         Python
ZOPEPlone
WSGI
MVC
database mappingHTML templating req u est rou t i n g
Tu r b o G e a rs 1   SQLObject       Kid    Cher r yPy
Tu r b o G e a rs 2  S Q L A l c h e my      Genshi      Pylons
R e p o ze B F G   Pylons P y ra m i d
FlaskWer kzeur g  Jin ja 2
Dja ngo
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
timezonesS E L E C T F O R U P DAT E  password hashing    signed cookiesproject/app templates         wsgi.py  in-browser ...
a layer above?
why layer?
por tability of higher layer s
r e us ab i l i t y o f l owe r l aye r s
“We read Knuth so you don’t have to”                                 —Tim Peters
idea                     realizationWhat you do for a living is not be creative, what               you do is ship        ...
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
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
Announcements              OAuth  Attachments              OpenID     Avatars              Pagination      Badges         ...
caching (Redi s )s e a r ch (Solr / H ay s tac k)m e ssage queues ( Ce l e r y )
Providing Web APIs
Consuming Web APIs
PYTHON AND THE WEB      J ame s Taub e r         @jtauber
Python and the Web
Python and the Web
Python and the Web
Python and the Web
Upcoming SlideShare
Loading in …5
×

Python and the Web

1,461 views

Published on

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

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,461
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
22
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

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

×