My pyhack 1301

497 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
497
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

My pyhack 1301

  1. 1. Pyhack でやったこと Contributing to Django 2012/1/22 @hirokiky13年1月24日木曜日
  2. 2. hackしていますか? ✤ ライブラリ、フレームワークを作る ✤ アプリケーション、ツールを作る ✤ OSSに参加する13年1月24日木曜日
  3. 3. Python mini hack-a-thon ✤ Pythonのhack-a-thon ✤ 今月は雪山での合宿でした13年1月24日木曜日
  4. 4. 私がpyhackでやったこと ✤ Contributing to Django13年1月24日木曜日
  5. 5. pyhackでやったこと(話すこと) ✤ HttpResponseRedirectにurlというプロパティを追加 ✤ decorator_from_middlewareで複数のMiddlewareを扱え るようにした13年1月24日木曜日
  6. 6. HttpResponseRedirect.url✤ response[‘Locale’]と書く必要があった✤ response.urlってあったらテスト書きやすよね13年1月24日木曜日
  7. 7. 実装 ✤ url = property(lambda self: self[Location])13年1月24日木曜日
  8. 8. それだけ ✤ ( ´ー`)フゥー... ✤ あとはテストをそれなりに書いておしまい13年1月24日木曜日
  9. 9. Needs documentation13年1月24日木曜日
  10. 10. Djangoのドキュメントを書くには ✤ Writing documentationを読みましょう ✤ https://docs.djangoproject.com/en/dev/internals/contributing/writing-documentation/13年1月24日木曜日
  11. 11. 書ける英文 ✤ もともと大した機能じゃないからビビったわりには書けた ✤ 翻訳をとおしてドキュメントの書き方を知っていたのが大きい13年1月24日木曜日
  12. 12. Tips ✤ Ian M Lewisさんにみてもらう ✤ Jonas Obristさんにみてもらう13年1月24日木曜日
  13. 13. Thanks to Jonas for the review13年1月24日木曜日
  14. 14. decrator_from_middleware改良 ✤ MiddlewareClassをビューごとに適応する ✤ 単一のMiddlewareしか扱えなかった13年1月24日木曜日
  15. 15. だめよ @decorater_from_middleware(Ritsu) @decorator_from_middleware(Mio) def k_on_view(request): ...13年1月24日木曜日
  16. 16. 間違った順番で呼ばれてしまう ✤ Ritsu.process_request ✤ Ritsu.process_request ✤ Ritsu.process_view ✤ Mio.process_request ✤ Mio.process_request ✤ Ritsu.process_view ✤ Mio.process_view 正しくは ✤ Mio.process_view ✤ k_on_view ✤ k_on_view ✤ Mio.process_response ✤ Mio.process_response ✤ Ritsu.process_response ✤ Ritsu.process_response13年1月24日木曜日
  17. 17. こうしましょう @decorater_from_middleware(Ritsu, Mio) def k_on_view(request): ...13年1月24日木曜日
  18. 18. 実装: 単純にforループでまわした https://github.com/hirokiky/django/commit/2db135897f7dcc86861d4e3d6328e8d86a3ecf4c13年1月24日木曜日
  19. 19. Dive into Django ✤ Djangoのソースコードを読み書きしましょう ✤ そしてパッチを投げましょう ✤ こわくない13年1月24日木曜日
  20. 20. easy pickupから始めよう ✤ 最初は簡単なチケットから初めるのがよいようです ✤ Trackerでチケットの検索条件に「easy pickup」を追加するだけ13年1月24日木曜日
  21. 21. Loose Coupling Principle ✤ すべてのソースコードを理解する必要はない ✤ 各コンポーネントはLoose Couplingなので問題なし ✤ 私はHttpHandling, GenericViewあたりが好き13年1月24日木曜日
  22. 22. Preston says... ✤ Dissecting the source code when you have the purpose to fix a problem, gives you a much better understanding of how things are working - as you NEED to understand them in order to properly fix/extend them. http://hirokiky.tumblr.com/post/40425743120/you-might-want-to-attempt-to-write-a-patch-for-an13年1月24日木曜日
  23. 23. Enjoy hacking13年1月24日木曜日

×