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.

Hand Made WSGI

2,091 views

Published on

My presentation for PyconPL'09 conference

Published in: Technology, News & Politics
  • Be the first to comment

Hand Made WSGI

  1. 1. Hand-made WSGI framework Jarek Zgoda <jarek.zgoda@gmail.com>
  2. 2. Django obsysa <ul><li>Pylonsy obsysają
  3. 3. TurboGears obsysa </li><ul><li>„dwójka” ssie na maksa, bo jest oparta na Pylons </li></ul><li>web.py obsysa
  4. 4. web2py obsysa
  5. 5. Tornado obsysa
  6. 6. twisted.web obsysa </li></ul>
  7. 7. Każda webowa ramówka obsysa <ul><li>zbyt wolna, zbyt skomplikowana, zbyt zasobożerna
  8. 8. zły ORM, złe szablony, zła metodyka
  9. 9. wszyscy jesteście cieniasami
  10. 10. cholerni lamerzy! </li></ul>
  11. 11. Zdradliwe WSGI <ul><li>wygląda prosto
  12. 12. kusząco prosto: </li><ul><li>nic tylko siąść i napisać własną ramówkę
  13. 13. sława, zimny szampan, truskawki, piękne kobiety </li></ul><li>pikuś! </li></ul>
  14. 14. Pan pikuś <ul><li>ale nie od razu </li><ul><li>początkowa łatwość usypia czujność </li></ul><li>aż tu trzeba sparsować parametry GET lub zawartość POST
  15. 15. co robisz, chłopczyku i dziewczynko? </li><ul><li>bardzo źle: kombinuję
  16. 16. źle: patrzę, jak zrobili to inni
  17. 17. dobrze: jeszcze do tego dojdziemy </li></ul></ul>
  18. 18. Kłody pod nogi <ul><li>unikod / kodowanie żądania
  19. 19. żądania wieloczęściowe </li><ul><li>przesyłanie plików – na co to komu?! </li></ul><li>sesje i cookies
  20. 20. typ MIME odpowiedzi </li><ul><li>czego oni ode mnie chcą?! </li></ul><li>keszowanie w przeglądarce i „po drodze” </li></ul>
  21. 21. HTTP obsysa! <ul><li>ok, weź i się obraź na rzeczywistość: </li><ul><li>Flash / ActionScript
  22. 22. aplikacje desktopowe
  23. 23. RPG / CL / COBOL – terminal 5250 rulez! </li></ul></ul><ul><ul><ul><li>tudzież 3270 </li></ul></ul></ul><ul><li>świat jest zły </li></ul>
  24. 24. Dygresja nr 1 <ul><li>nasz sposób użytkowania komputerów nie zmienił się tak bardzo w ciągu ostatnich 15 lat
  25. 25. robimy rzeczy, które robiliśmy do tej pory, tylko przy użyciu innych narzędzi </li><ul><li>i w nieco większej skali </li></ul><li>web2.0 to tak naprawdę web1.x
  26. 26. postmodernizm? </li></ul>
  27. 27. Back to work <ul><li>lekcja uniwersalizmu: rzeczy potrzebne zazwyczaj już istnieją </li><ul><li>primo: znaleźć
  28. 28. secundo: użyć </li></ul><li>i to jest to „dobre podejście” ™
  29. 29. web1.0 ułatwi pracę dzięki Google </li></ul>
  30. 30. Google your toolbox <ul><li>http://www.google.pl/search?q=wsgi+tools
  31. 31. http://www.google.pl/search?q=python+templates
  32. 32. http://www.google.pl/search?q=python+orm
  33. 33. ... </li></ul>
  34. 34. Czego potrzebujemy? <ul><li>narzędziówki WSGI: </li><ul><li>Werkzeug, WebOb </li></ul><li>silnika szablonów: </li><ul><li>Mako, Genshi, Jinja2 </li></ul><li>ORM: </li><ul><li>SQLAlchemy, Storm </li></ul><li>lub ogólniej data storage: </li><ul><li>CouchDB, MongoDB, Google Datastore </li></ul></ul>
  35. 35. Moja narzędziówka <ul><li>Werkzeug
  36. 36. Beaker
  37. 37. MongoDB
  38. 38. Jinja2
  39. 39. WTForms </li></ul>
  40. 40. C'mon, make some noise! (podglądanie kodu)
  41. 41. Zasoby <ul><li>kod: http://bitbucket.org/zgoda/pyconpl09/
  42. 42. prezentacja: </li></ul>
  43. 43. Warto czytać <ul><li>Armin Ronacher http://lucumr.pocoo.org/
  44. 44. Graham Dumpleton http://blog.dscpl.com.au/
  45. 45. Ian Bicking http://blog.ianbicking.org/ </li></ul>

×