今年も Workshop が開催されたので、行ってみた :-)
Python Workshop the Edge 2007(2007年6月30日開催)
http://www.python.jp/Zope/workshop/200706
今回は、セミナーとハンズオンセミナーが平行で走っていたので、すべてに参加することはできませんでした。別の理由で 10時からのセミナーも出てませんが(いや、休日の朝は眠いですよね〜 ;-p))
Tシャツが貰えたのが地味に嬉しい :-)
■ Python Webフレームワーク総ざらえ2007 (セミナー)
Python には、多数の Webフレームワークがあるけど、特に Django, TurboGears, web.py, Pylons について。
- Django
すべて自前のコンポーネント。パフォーマンスが高い。人気も高い。
最近リリースされた 0.96では、
- newforms
- URLconf強化
- テストフレームワーク
- 管理画面でのユーザ管理の強化
などが行なわれているらしい。Unicodeブランチも切られている。もちろん、Unicodeブランチじゃなくても日本語は使えるんだけど、文字列の扱いに一貫性を持たせるなど、サポートを強化するらしい。0.97で?
- TurboGears
Django が自前コンポーネントなら、TurboGears は、組合せによるメガフレームワーク。
- CherryPy
- Kid
- SQLObject
- MochiKit
などが、内包されている。最近では、Kidから Tracでも採用(予定?)の Genshi への入れ替え、SQLObjectからSQLAlchemy への入れ替えなどが進んでいるらしい。
- web.py
0.21 がリリース。ただし、とうとう複数ファイル化に ;-)
- WSGI(PEP333), Paste, Pylons
- WSGI
WSGI は Python 製の Webフレームワークにおける取り決めみたいなものらしい。大抵の人は「ダヴゥリューエスジー」と読むみたい。「うえすぎ」と読む人もいるらしい。
- Paste
低レベルの WSGIフレームワーク
- Pylons
Pasteに基づいた Webフレームワーク
去年に比べて、Pylons が出て来たことが変化? トレースバックが強力な点が人気の秘密らしい。
質疑応答では、人にすすめるフレームワークと、自分で使うフレームワークについて質問が。人に進めるなら Django, 自分で使うなら、web.py とのこと。
発表資料
http://www.python.jp/Zope/workshop/200706/web-framework.pdf
発表者の Blogサイト
http://playrecord.org/pbomc/
■ Tracの活用(セミナー)
会社でも大活躍な Trac について :-)
Trac を活用するには、コミットルールなどや、チケット運用を決めておいた方がいいよとのこと。そういえば、このあたりは、明文化してないなぁ。その内、整理しておいた方がよいかも。
あと、0.11 での新機能について紹介がありました。
- フレキシブルワークフロー
- WebAdmin
WebAdmin はプラグインとして、すでに会社で使ってますが、ウェブ上から、コンポーネント名やチケット属性を追加・削除・変更できるので、大変便利。
trac-0.11 については、インタアクト株式会社さんの方で、すでに日本語化が進められているそうです。感謝 :-)
発表資料
http://www.python.jp/Zope/workshop/200706/UsingTrac.pdf
■ Twisted(ハンズオンセミナー)
思わず Twitter と勘違いしそうですが、イベント駆動型プログラミングモデルだそうです。コールバックを書いて、それを登録することで、プログラムを動かして行きます。
時間が限られていましたが、なかなか面白かったです。
Twitter で
- 友達の更新情報を取得
- 自分のデータを更新できるように
といった宿題付きでした :-)
■ Django(ハンズオンセミナー)
有名な Django についてです。特に、view と URL conf との連携を中心に話しが進みました。だいたいのチュートリアルがモデルを中心に進むので、これは効果的なセミナーだったと思います。
発表資料
http://www.python.jp/Zope/workshop/200706/django_handson.pdf
■ Pythonコード添削道場(セミナー)
大変おもしろかったです。聞き入ってしまっていたので、メモを取り忘れてしまいましたが、断片的にキーワードを書くと
- Pythonic, PEP8-ism
- import this 読む
- パッチも PEP8 に従ってないと、相手にされないよ
- モジュール名の慣習は Windowsでの制限が由来
- assert分は最適化で消える。debug文ではどんどん使うべき
- 空気読め
こんな感じ。
■ TurboGears(ハンズオンセミナー)
TurboGears は昔 1度触ったっきりだったので、復習も兼ねて。
一応 TurboGears をセットアップしておいたんだけど、
$ start-tgbbs.py
でエラーが......結局 python2.4, python2.5 on Debian/sid ではうまく行かず、python2.3 でインストールし直しました。で、そんなこんなしている間に、セミナーは進み……まぁあとでゆっくり発表資料を読もう (^^;
発表資料
http://www.python.jp/Zope/workshop/200706/turbogears.pdf
■ ライトニングトーク
途中から参加。こっちもあまりメモれず。
- Pythonの禅を実践するフレームワーク Pylons
TurboGears が Pylons上で動くらいし……
- IronPythonで作った Firebirdの管理ツール
起動が遅いらしいけど、起動後はそこそこのスピードで動作。
- xxxの回し者(http://d.hatena.ne.jp/yach/20070701)
普段は Ruby でコードを書くことが多いらしい。Ruby Kaigi で「あなたのツールを愛さなければならない」とDave Thomasが話していたのを聞いて「やっぱり私は Python を愛しているのだ」と目覚めたというお話<ちょっと違う
Stay happy!
■ 懇親会
- オライリーの「Python クックブック」のTシャツゲット! :-)
■ その他
お? Blogでの感想へのリンク集を作っているサイトを発見。
Python Workshop the Edge 2007総括
http://coreblog.org/ats/python-workshop-the-edge-2007-report
http://gihyo.jp/admin/serial/01/puppet/0001
次世代 cfengine として期待される Ruby で書かれた Puppet について、連載が始まった模様。
http://d.hatena.ne.jp/ktat/20070626/1182874640
http://d.hatena.ne.jp/spiritloose/20070627/1182938714
http://forge.mysql.com/wiki/MySQL_Proxy
via http://d.hatena.ne.jp/spiritloose/20070628/1183008971
http://googlejapan.blogspot.com/2007/06/google-linux.html
お? さっそくいれてみた :-)
いろいろあって、改善される模様。次の開発は CentOS4 + Catalyst でやる予定だったので、大変助かりました :-)
http://buribullet.net/svntrac/buribullet/wiki?p=Fedora%E3%81%AEPerl%E3%81%8C%E9%81%85%E3%81%84%E4%BB%B6
http://blog.yappo.jp/yappo/archives/000515.html
http://d.hatena.ne.jp/viver/20070624/p1
おおー!調べようと思ってたことが、書いてある :-)
Linux スラブ・アロケーターの徹底調査
http://www-06.ibm.com/jp/developerworks/linux/library/l-linux-slab-allocator/index.shtml
Linux のメモリ管理について
https://www.microsoft.com/japan/msdn/books/requirements/chapter1.asp
プログラマのための移行ガイド(Rails勉強しなきゃと不安になっている日とへ)
http://www.littlevoice.jp/works/event/objectclub2007summer/j2j/Java2Java.html
http://pythonbeginner.blog78.fc2.com/blog-entry-311.html
http://anond.hatelabo.jp/20070621153600
Catalyst::Manual::Cookbook::Deployment
http://d.hatena.ne.jp/nitsuji/20070526/1180155326
そうそう、最近の Catalyst は、利用するモジュールごと、PARで固めてくれるんですよね。大変便利 :-)
http://by774.blog73.fc2.com/blog-entry-2813.html
ほのぼの :-)
http://jay-notes.blogspot.com/2007/06/testing-django-applications.html
http://d.hatena.ne.jp/holidays-l/20070621/p1
http://www.getfirebug.com/jp.html
via http://d.hatena.ne.jp/shogo4405/20070619/1182252389
http://d.hatena.ne.jp/fbis/20070620/1182325914
http://cell.fixstars.com/ps3linux/index.php/Google-perftools%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6CPU%E3%83%97%E3%83%AD%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AA%E3%83%B3%E3%82%B0%E3%82%92%E3%81%A8%E3%82%8B
google-perftoolsについて。おおーこんな便利なツールがあったとは :-)
http://www.linuxuser.at/vuln-search/
via http://kikuz0u.x0.com/td/?date=20070618#p02
http://codezine.jp/careerup/article/aid/1426.aspx
CROSSFIRE DBとコンパイラの日記
http://d.hatena.ne.jp/i-zuka/
WEBアプリを HTML+SQLのみで開発するフレームワーク、Alinous の作者の日記
ちと古い話題ながら
論理的思考の放棄
http://d.hatena.ne.jp/softether/20070324#p1
を読むと、著者は、1日 3,000行〜10,000行以上のプログラムを書けるらしい。Cと Perl とでは単純比較はできないだろうけど、自分の場合はどうなんだろう? と思って簡単にしらべてみた。5000行程度のプログラムで、5日程度。うち、NaturalDoc用のコメントが 15%ぐらい含まれているので、1日1000行も書けてない計算になりますな。
NaturalDocについてはこちら [2006-12-19]
SHIFT - JIS と Unicode 間の変換問題
http://support.microsoft.com/default.aspx?scid=kb;ja;JP170559
Shift-JIS と Unicode の間で 1対 1にマッチしないコードについて。
http://www.nslabs.jp/round-trip.rhtml
ニホンジンは文字コードにうるさい
http://python.matrix.jp/tips/string/encoding.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20061122/254626/
http://www.atmarkit.co.jp/im/cpm/serial/team04/team04a.html
http://labs.unoh.net/2007/06/python_2.html
http://d.hatena.ne.jp/kinneko/20070614/p2
ニコニコ動画のコメントで、マクロスプラスのリマスター版ができることを知る。
うはっ、これは買わねば(^^;
って、定期的に言ってる気がするけど、sid で module の組み込み時に失敗するようになった。any-any パッケージを使ってもだめ。困ったなぁと思ったら
http://www.vmware.com/community/message.jspa?messageID=649741
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=425458
に解決方法が。それは
modules-init-tools のダウングレード
とりあえず、3.3-pre4-2 に戻してみた。お、うまくいった :-)
http://dis.4chan.org/read/prog/1180084983/
http://www.networkworld.com/news/2007/060707-microsoft-vista-ipv6-incompatible.html
あとで読む。
http://www.newsclip.be/news/2007606_011787.html
ありえない……
http://www-06.ibm.com/jp/developerworks/linux/041119/j_l-optperl.html
ちと思うところあって、読み返してみる。なるほどと納得するところ多々。
http://itpro.nikkeibp.co.jp/article/COLUMN/20070530/272928/
Puppet
http://blog.mizzy.org/articles/2007/05/25/learning-puppet
次世代 cfengine?との期待の高い puppet について。あとで読まねば。
http://journal.mycom.co.jp/news/2007/06/06/012/index.html
む? と思ったけど、赤いポッチがついてない...
IPv6 Information Hub
http://www.juniperipv6.com/
こんなサイト出来てたんだ...
SVNParentPath 設定するなら SVNListParentPath on
http://d.hatena.ne.jp/dayflower/20070604/1180941582
おおーこれは必須の設定ですな。Subversion 1.3以降で有効らしいです。Apache の設定で、
SVNParentPath /var/lib/svn
とある箇所に
SVNParentPath /var/lib/svn
SVNListParentPath on
と、SVNListParentPath を on にすることで、/var/lib/svn 以下に設置している個々のリポジトリの一覧を得ることができます。これは便利! :-)
IPv4/IPv6 meter |
思ったより安い……時もある、Amazon |