「Bloggerもいいけど、SphinxでBlog書きたいなぁ」ということで、Blog移転しました。
新しいBlogの名称は
『kashew_nuts-blog』です。
やはりreStructuredTextで書けると楽ですね。Sphinx便利です。
2012年12月9日日曜日
2012年11月3日土曜日
#ujihisa.vim #3に参加しました。
感想など
ふと思い立って、行って来ましたujihisa.vim。
敢えて一言で感想を言わせてもらうなら、「Vimmer怖い……」
発表がぶっとんでる…… これが上級Vimmerが集まりかと思いました。
(特にマクロの話とかマクロの話とか)
カーソル移動の話は非常に参考になったので、どのように操作したら
効率がいいのか見直したいです。
以下はBlogと言う名のメモ書きになります。
ふと思い立って、行って来ましたujihisa.vim。
敢えて一言で感想を言わせてもらうなら、「Vimmer怖い……」
発表がぶっとんでる…… これが上級Vimmerが集まりかと思いました。
(特にマクロの話とかマクロの話とか)
カーソル移動の話は非常に参考になったので、どのように操作したら
効率がいいのか見直したいです。
以下はBlogと言う名のメモ書きになります。
オープニング
- mixiの方から挨拶
- 飲食はペットボトルのもののみOK
発表(@kaoriya)
- 資料: vim-jpの活動報告
- 村岡太郎 @kaoriya
- vim-jpってなんだっけ?
バグの修正、新機能の提案、啓蒙活動
- vimこわい
- mvp二人が大体日本人が出すパッチの8割を書いてる。
- vimdoc-ja, autofmt
Vim documentation: help
- cpp.vim →vim-jpによって管理されることになった。
- vimrc読書会 http://vim-jp.org/reading-vimrc/
- 月刊vimマガジン http://vim-jp.org/vimmagazine/2012/10/31/vimmagazine.html
- vim-jpの本質
- スタンドプレーから生じるチームワーク
- やれることからやってみる
- 途中で投げ出したって良いじゃない
ちなみに飽きたのは
vim標準の非同期インタフェースが欲しい
- スタンドプレーから生じるチームワーク
- vimの未来
- 単一のメンテナの限界
- グループによる分割統治
vim-jpがやっていることが先駆けになる
- 単一のメンテナの限界
発表(@basyura)
- 資料: ujihisa.vim #3 で発表した TweetVim 1.8 Release!! - basyura’s blog
- The whirlwind evolution of TweetVim
- ずっとjava1.4, C#, Silverlight, Ruby好きです。
- TweetVimご存知のかた→ほぼ全員か。
- TweetVim 24人ぐらい呟いてた→多いと思う。
- Advent Calender 30日目で公開しました。
- TweetVim1.8
- now!今プッシュしたいと思います。リリースされました。
- 末尾が...で省略される問題を解決 rhysd ++
- 検索時の日付表示
- now!今プッシュしたいと思います。リリースされました。
- TweetVim1.9
- 非同期にタイムライン更新とか
- できならいいなと
- 非同期にタイムライン更新とか
発表(@thinca)
- 資料: thinca gist: 4006236 — Gist
- vital.vim
- プラグイン開発者向け
quickrun.vim, neocomplcache, uniteなど他のものでも使われている。
- ライブラリ欲しい。
- 通常のライブラリの欠点
- ユーザに別途入れて貰う必要がある。
- そこでvital.vimですよ。
- ユーザに別途入れて貰う必要がある。
- vital.vimとは
- vim scriptのライブラリ郡
- モジュール単位で管理されている。
- vim scriptのライブラリ郡
- モジュールを充実させたい。全然足りない。help。
- テスト機能見直ししたい。一応あるが、結構適当。
- 外部モジュールも読めるうようにする!
- vital 開発参加者待ってます!
発表(@ujm)
- HDMI出力のためプロジェクターに投影できない。→なんとか解決。
- ujihisa
- マイクラフトを知らない人は調べたり、やってみたりしないこと。
ゲームで〜クラフトとかあるのはやったら駄目です。
- ujihisa.vimのためにカナダから日本に来ました。
- showtime.vimを使うつもりだったが、できない。
- neosnippet.vimの紹介します。作ったのは@ShogoMatsuさんです。
- neocomplcacheを使って、snippetの一覧を出してくれる。
- unitesnippletだと更に簡単にsnippetの一覧を出してくれる。
- C言語のHello, World!デモ
- snippet Setup
- install
- map expand key
- map jump key
- install
発表(toku)
- 資料: vim-jp/ujihisa.vim-3 · GitHub
- 匿名希望さん
- マクロ漁船に乗ろう。
- マクロを使ってお手軽プログラミング
どれくらい使っている?→ほとんど使っていない。
- "[a-z]
- 正規表現で小文字を大文字に変換することはできない→子、孫を使って実現!
- マクロ漁船に乗る準備はいいか!→よくない!
発表(@rbtnn)
- 資料: About regex ujihisa.vim #3
- vimrc800行
- set numberをしてない。rulerに行数表示。
- vimpluginは30個ほど。
- 自分のプラグイン Hexript について
バイナリを書くプラグイン。quickrun対応。vinariseで見れる。
- バイナリを書く上で、欲しい構文を募集中。
- Twitterなどでリプライとかくれれば……
- vital.vimに字句解析入れたいなと。
発表(@deris0126)
- 資料: ujihisa.vim#3で発表してきた - derisの日記
- vim歴2年半。
- カーソル移動について。
- 効率的に移動するには?横、縦移動。
- 横移動
- ステップ1: ^S
行末から近ければ。
- ステップ2: f(F) 行内で1つだけの文字を探す。
記号>数字>大文字>小文字
- ステップ3: w b h l
数単語以内…w b, 同単語or数文字内…hlとf(F)
- ステップ1〜3のそれぞれを一瞬で判断できるように鍛錬が必要。
- あとは慣れと好み。
- ステップ1: ^S
- 縦移動
- 移動箇所が明確の時
- gg G
- 目的の単語を知っている。 *で検索(プラグイン)、その後/で検索
- どう画面内にある。{ } 5j 5k j kでアプローチ。後は横移動
- gg G
- 眺めたいだけの時
- ざっくり Ctrl+F, Ctrl+B
- 細かく Ctrl+D, Ctrl+U
- ざっくり Ctrl+F, Ctrl+B
- 移動箇所が明確の時
- おまけ: kjhl連打、おしっぱ
- カーソル移動系Plugin
vim-smartword, vim-visualstar, vim-easymotion, columnpjump, vim-submode, ……
発表(@ShogoMatsu)
- 資料: neobundle.vimについて+おまけ
- Vim人 Tシャツ
- neobundle.vim プログラマーたちよこれがテキストエディタだ。
- VundleとneobudleはCとC++ぐらい違うよ。
- NeoBundleLazyを使うとプラグインの遅延読み込みができる。
参加者Blog・Toggeter・etc
2012年10月14日日曜日
エキスパートPythonプログラミング読書会 第二期 10に参加しました。 #expertpython
エキスパートPythonプログラミング読書会 第二期 10 - connpass
に参加してきました。
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 10 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(3名程度)で簡単に自己紹介をしました。
しかしお互いに見知った顔過ぎて、
自己紹介が茶番臭いというまさかの事態に(笑)。
2.「第8章 コードの管理」
今回は仕事の都合で参加できなかったのが残念……
久しぶりのお寿司LTだったのでぜひとも参加したかったところですが、
また次回に期待ですね。
4.まとめ
今回は@lincolinnyanさんの代役でTogetterまとめたりしましたが、
実際にその場で参加してないとわからないところがあるなーと思いました。
本は読みなおせばいいけど、LTはその場で聞かないとわからないので、
本編は聞けなくてもLTを聞ける時は迷わず参加したいですね。
参考リンク
に参加してきました。
Tarek Ziade
アスキー・メディアワークス
売り上げランキング: 36822
アスキー・メディアワークス
売り上げランキング: 36822
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 10 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(3名程度)で簡単に自己紹介をしました。
しかしお互いに見知った顔過ぎて、
自己紹介が茶番臭いというまさかの事態に(笑)。
2.「第8章 コードの管理」
- 2人以上だといろいろと難しい。
- SCM(software configuration management) = VCS
- 中央集権型: サーバーがないとコミットできない
- 分散型: 複数の独立したローカルにコミットして同期をとる。
- 中央集中か、分散か。 →プロジェクト状況による。
- PythonのVCSはHGに移行済み→hg.python.org
- DVCSの種類→Git, Mercurial, Bazzar
- ドキュメントとリソースファイルを一緒にするのは無理?
→この辺りに経緯がまとまってたりすので一度目を通すといいかも。
svnからの切り替え先にbzrを検討するなど(最終的にはhgになった‥) - Togetter
→SVNは内部をUnicodeオブジェクトから外部に落とす時にエンコーディング返還してくれる。
→bzrはできる。hgは今頑張ってパッチ書いてる。Gitはまだ。
→設定はあるが、Gitはもう一段Windowsの問題がある。UIの件。
→コマンドラインをデザイナーさんに打ってもらうのはハードルが高い。
→日本語使えねーとMLとかにDDOSして下さい。
- unicodeのメソッドを使うと、大文字小文字の判定、濁点の問題チェック、
east_asian_widthで文字の幅のチェックとか色々できる。
- GitとHgは用語は対応してない。HgとSVNは似ている。
→簡略化しているように感じるかもしれないが、人に説明するにはこっちの方が楽(らしい)。
→Branchが一番違う。あとはHEADとか。addとか。
→ステージの概念はないので、MQとか使った方がいい。
→標準と拡張。
→Gitだと初めから色々出来るが、Hgだと拡張でやったりする。
→MQを入れると履歴を入れ替えたり、コミットの内容そのものを書き換えたりできる。
→Pythonでやると拡張も楽に書ける。内部のUnicodeとかもいじれる。
→Hookをいじると色々できるよ。
- hg serveと渡すと自分をサーバーにすることができる
→PUSHはできない。もう少し設定が必要。PUSHとかCLONEはできる。
- hgのコマンドは日本語マニュアル化されている。言語設定を日本語に設定すればOK。
- hg help add -v とかすると、コマンドの実行例が見れる!
→オンラインで見るとほとんどわかるよ。でもPythonistaの人ならソース見たほうがはやいかも
- Mercurialでプロジェクト管理→Server立てる人が読めばいいと思うよ!
- なんでHG?
→@shimizukawa hg。やりたいことに対してGitは複雑。
→@hirokiky hg。いざとなったらソース読めるし。安心感。
→@shomah4agit。前SVNで。いやで、Hgでやってたのが、なんかのタイミングで壊れたのでGit触ったらいいじゃんと。
誤解を招く表現になっていたので訂正。
なぜgitを選ばれたのかがご説明されています。
Expert Python 読書会 第二期 10 #expertpython - プログラマのネタ帳
→??? SVNを触っていたが、gitやって、それで壊すのはどうなの?あとはTortoiseHGがいい。わかりやすい。
→@tfmagician 4年ぐらい前からGit。WebDBの初めてのGitの特集を読んで。管理は大変だが、
今更戻れない。あとGitHubが素晴らしい。PG管理のツールとしているので。
→@usaturn Windowsを使っていたから。Cygwinで使えばそこそこだが、アンインストールできなかったことが… Yokohama.pyの日にTokyoMercurialに参加することがったのでそれで。
- GitはSCM bootcampのチューターの人でも「Windowsの人はVMにLinuxにいれた方がいいんじゃね?」 というレベル。
→ポータビリティーや使いやすさを重視するとHg。
- Buildbotは使わない方がいい。普通に使う分はJenkins。
→セットアップが面倒くさい。
→Jenkinsが有名でユーザーが多いし、皆がCIに求めるのはJenkins。
→Buildbotのいいところは、ユーザ参加型であること。(自分の環境でテストしてくれる)
- CIやっている人?→2人
→@shomah4a 会社はJenkins。JavaやPython。趣味はTravis CI
- この本はBuildbotは0.7で書いてあるが、0.8からソースコードが大きく分かられている。
→最新版0.8だとドキュメントを自力で読んだほうがはやい。
- DVCSの戦略 git-flowとか使ってるのか?
→カスタマイズしていたり、組織の文化による。
ex)枝は一本vs枝分かれ上等。Branch戦略について。
hg-flow, bpmercurial-workflowドキュメントなど
今回は仕事の都合で参加できなかったのが残念……
久しぶりのお寿司LTだったのでぜひとも参加したかったところですが、
また次回に期待ですね。
4.まとめ
今回は@lincolinnyanさんの代役でTogetterまとめたりしましたが、
実際にその場で参加してないとわからないところがあるなーと思いました。
本は読みなおせばいいけど、LTはその場で聞かないとわからないので、
本編は聞けなくてもLTを聞ける時は迷わず参加したいですね。
参考リンク
2012年10月7日日曜日
ITコミュニティ秋祭りリターンズで登壇してきました! #itmatsuri
まさか去年はいち参加者の立場だったのに、
今年は壇上スピーカーとして話すことになろうとは……(何度でも言う)
終始緊張しっぱなしでしたが、何とか無事終わりました。
普段お話できない方ともお話できるこういった機会は本当に貴重です。
せっかくこうゆう機会を得られたので、
今回参加したことをまとめてみたいと思います。
今年は壇上スピーカーとして話すことになろうとは……(何度でも言う)
終始緊張しっぱなしでしたが、何とか無事終わりました。
普段お話できない方ともお話できるこういった機会は本当に貴重です。
せっかくこうゆう機会を得られたので、
今回参加したことをまとめてみたいと思います。
今日やったこと&できたことリスト
- 壇上スピーカーとしてお話してきたよ!
- ノベルティステッカーもらったよ!
- Pythonコミュニティの紹介してきたよ!
#kaisenpy とか, #kabepy とか
- 以前お会いした人と再開してお話できたよ!
- パネリストの人たちとお話してきたよ!
- Rubyの人たちと仲良くなってきたよ!
- スタートアップRubyを出版された @igaiga555 さんから
本を購入して、サインまで頂いたよ!
まとめ
Pythonコミュニティのお話しをしに行ったはずが、
Rubyの人たちとお話し、Ruby本のサインまでもらってきてしまいました。
この本はRubyの文法うんぬんが書いてあるというより、
Ruby文化や考え方みたいなことが書いてあるようなので
これから読むのが楽しみです。
今回参加して思いましたが、
言語やコミュニティは違っていても思っていることは一緒なのかなと。
これからはRuby ConferenceやYAPCなど自分が全然知らないところにも、
どんどん顔を出していったらもっと面白いかもしれない。
最後に会場を用意していただいた@niftyさん、
参加された方々、スタッフ・登壇者の方々お疲れ様でした!
そしてありがとうございました!
また来年も開催できるといいなって思います。
Pythonコミュニティのお話しをしに行ったはずが、
Rubyの人たちとお話し、Ruby本のサインまでもらってきてしまいました。
この本はRubyの文法うんぬんが書いてあるというより、
Ruby文化や考え方みたいなことが書いてあるようなので
これから読むのが楽しみです。
今回参加して思いましたが、
言語やコミュニティは違っていても思っていることは一緒なのかなと。
これからはRuby ConferenceやYAPCなど自分が全然知らないところにも、
どんどん顔を出していったらもっと面白いかもしれない。
最後に会場を用意していただいた@niftyさん、
参加された方々、スタッフ・登壇者の方々お疲れ様でした!
そしてありがとうございました!
また来年も開催できるといいなって思います。
Labels:
勉強会
2012年10月2日火曜日
IT秋祭り開催間近!!!
去年はこのイベントで「コミュニティ初参加」を果たしたわけですが、
今年はなんと「壇上スピーカー」として登壇することになりました。
登壇者のみささんはたのぐちさんがまとめてくださっています。
ITエンジニアの生き様を見よ!「ITコミュニティ秋祭り・リターンズ」の見どころを妄想紹介 全登壇者のスライド付 - Seize The Day!
この話を引き受けた時の自分の気持ちをぶっちゃけますと、
「自分が登壇?パネリスト?えっいいの!?」
「まわりみんなすごい人ばっかでこわいわ―。」
「Pythonの人だれもいないじゃないですかー。やだー。」
と思っていました。
しかしうだうだいいながらも、
「この1年間感じたことを伝えることでお役に立てるのなら……」
「普段話しをしないような人たちと、意見を交わすのはおもしろそう。」
「この人たちはどんな考え方を持っているのか知りたい!」
と興味や好奇心の方が勝ってしまい、結果登壇することになりました。
一番初めに勉強会やコミュニティに参加した時にも、
「自分はまだそんなすごい技術持ってないし……」
「まわりがみんなすごい人に見える……」
「ぼっちになったらどうしよう……」
といろいろと思ったりしましたが、
「でもやっぱり行ったらおもしろそう!楽しそう!」
という気持ちが一番大事なんだと思い出しました。
この「ITコミュニティ秋祭り・リターンズ」はお祭りです。
みなさんぜひこの機会に参加して、
日々思っていることを語りあいましょう!
チケットはこちら。みなさんの参加お待ちしております。
今年はなんと「壇上スピーカー」として登壇することになりました。
登壇者のみささんはたのぐちさんがまとめてくださっています。
ITエンジニアの生き様を見よ!「ITコミュニティ秋祭り・リターンズ」の見どころを妄想紹介 全登壇者のスライド付 - Seize The Day!
この話を引き受けた時の自分の気持ちをぶっちゃけますと、
「自分が登壇?パネリスト?えっいいの!?」
「まわりみんなすごい人ばっかでこわいわ―。」
「Pythonの人だれもいないじゃないですかー。やだー。」
と思っていました。
しかしうだうだいいながらも、
「この1年間感じたことを伝えることでお役に立てるのなら……」
「普段話しをしないような人たちと、意見を交わすのはおもしろそう。」
「この人たちはどんな考え方を持っているのか知りたい!」
と興味や好奇心の方が勝ってしまい、結果登壇することになりました。
一番初めに勉強会やコミュニティに参加した時にも、
「自分はまだそんなすごい技術持ってないし……」
「まわりがみんなすごい人に見える……」
「ぼっちになったらどうしよう……」
といろいろと思ったりしましたが、
「でもやっぱり行ったらおもしろそう!楽しそう!」
という気持ちが一番大事なんだと思い出しました。
この「ITコミュニティ秋祭り・リターンズ」はお祭りです。
みなさんぜひこの機会に参加して、
日々思っていることを語りあいましょう!
チケットはこちら。みなさんの参加お待ちしております。
Labels:
勉強会
2012年9月15日土曜日
PyConJP2012 スライド・資料まとめ
公式サイト:PyCon JP 2012 開催します! - PyCon JP 2012
発表風景:PyConJP - YouTube
一日目参加してきました。
二日目参加中です。
参加者・発表者のみなさんお疲れ様でした。
見つけられた発表者スライド・資料をまとめてみます。
「これが足りないよ!」というのがあれば、
URL付きでTwitterにメンションなり、
連絡いただければ追加します。 というか是非連絡お願いします。
発表風景:PyConJP - YouTube
参加者・発表者のみなさんお疲れ様でした。
見つけられた発表者スライド・資料をまとめてみます。
「これが足りないよ!」というのがあれば、
URL付きでTwitterにメンションなり、
連絡いただければ追加します。 というか是非連絡お願いします。
Togetter・Twitterまとめ
- PyConJP 2012 1 日目 オープニング 〜 基調講演 - Togetter
- PyConJP 2012 1 日目 昼まで。 #PyConJP - Togetter
- PyConJP 2012 1 日目 昼から1コマ目 #PyConJP - Togetter
- PyConJP 2012 1 日目 14:30 - 15:15 台 #PyConJP - Togetter
- PyConJP 2012 1 日目 15:30 - LT 前まで #PyConJP - Togetter
- PyConJP 2012 1 日目 LT - Party #PyConJP - Togetter
- PyConJP 2012 2日目 開始 - 午前1コマ目 #PyConJP - Togetter
- PyConJP 2012 2日目 11:00-11:45 ぐらい #PyConJP - Togetter
- PyConJP 2012 2日目 昼&オープンスペース #PyConJP - Togetter
- PyConJP 2012 2日目 基調講演 #PyConJP - Togetter
- PyConJP 2012 2日目 午後2コマ目 15:15 - 16:00 #PyConJP - Togetter
- PyConJP 2012 2日目 TeaBreak #PyConJP - Togetter
- PyConJP 2012 2日目 午後2コマ目 16:45 - 17:30 #PyConJP - Togetter
- PyConJP 2012 2日目 午後3コマ目 17:45-18:30 #PyConJP - Togetter
- PyConJP 2012 2日目 Closing から日付変わるまで #PyConJP - Togetter
- PyConJP 2012 3日目 Sprint #PyConJP - Togetter
- 世界初のSphinxカンファレンス『SphinxConJP』 - Yukarin Note
1日目
- PyCon JP 2012 Opening
- Happiness Through Ignorance // Speaker Deck
(PDF版はこちら)
- PyCon JP 2012 Pythonプログラミングハンズオン(初級者向け) — documentation
- 使えるDjango1.4
- App Engine Updates 2012 - Google Docs
- 2012.09.15 PyCon JP 2012 「ナウでヤングな17歳のVPS 構築機」 // Speaker Deck
- Python Type and Object
- Python Type-based class v.s JavaScript prototype @COSCUP 2012
- 20120915 Pythonは本当にBlenderの役に立っているか?
- ソフトシンセを作りながら学ぶPythonプログラミング
- (分散)バージョン管理システムの組織化
- SQLALchemyと僕
- NDB - Google App Engine Datastore API - Google Docs
- Beginning Python
- Refactoring A Python Beginner’s Code
- Pyramid Security
- Build system written in Python #pyconjp - Google Docs
- Django-Celeryで非同期処理 — Django-Celeryで非同期処理 1 documentation
- #kabepy
- Pythonistaの働き方
- 国産 PaaS 、NIFTY Cloud C4SA の中身
- Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
- What can meta class do for you? @PyCon Taiwan 2012
- #himopy Sprint report in Pycon JP Sprints
- PyOpenCLによるGPGPU入門
- PyOpenCLハンズオン in kyoto.py(2011年9月24日) — pykyoto201109 v1 documentation
- Encouragement of porting Python 3
2日目
- atsuoishimoto/pyconjp_2012 GitHub
- pyconjp2012slide/master/Fundamental Technologies Used in PyPy JIT Compiler.pptx at master · ryotaro/pyconjp2012slide · GitHub
- 続・Python on Windows Azure - Google Docs
- Pythonを取り巻く開発環境(PyCon JP 2012資料 #pyconjp) - YAMAGUCHI::weblog
- knzm/pyconjp2012 Wiki GitHub
- dankogai @ 2012.pycon.jp
- methane/pyconjp2012-gevent-slide GitHub
- Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
- Sphinx拡張 探訪 — SphinxCon 2012 documentation
- Trying Continuous Delivery - pyconjp 2012
- Try! Sublime Text // Speaker Deck
- Sphinxを使って本を書こう #pyconjp 2012
- Sphinx HTML Theme Primer
- hekyou Docutilsについて — Gist
- ミニ四駆でPython on Windows Azure
- Pythonコミュニティが私に与えてくれたもの
- Webフレームワークパネル(Django) at PyConJP 2012
- PyCon JP 2012 Closing
Pictures
併設イベントまとめ
参加者Blog
- PyConJP2012一日目
- PyCon JP 2012に参加して刺激を受けてきた #pyconjp | Azrael
- pyconjp2012 行ってきたよ各セッション感想 #pyconjp - AtAsAtAmAtArA
- 小飼弾氏の基調講演を聞いて各言語の join と正規表現の実装についてなんかまあ考えた話 #pyconjp - AtAsAtAmAtArA
- PyCon Jp 2012 の「Top of Pythonista」で2位になりました! - ふゆみけ
- SphinxCon 2012で発表してきました。 — そこはかとなく書くよん。
- Ars longa, vita brevis: pyconjp で発表してきた #pyconjp
- PyCon JP 2012 で発表を聞いたり、当日スタッフをしたりしてきました - 断章10100
- PyCon JP 2012 で広報してきた #pyconjp - プログラマのネタ帳
- ryu22eBlog : PyCon JP 2012に参加しました #pyconjp
- 【レポート】PyCon JP 2012 にスタッフとして参加しました! #pyconjp : ゼロスタートの広報ブログ
- SphinxCon JP 2012で発表させて頂きました - へきょのーと
- PyCon JP 2012に参加した #pyconjp - YAMAGUCHI::weblog
- nishimotzの日記 · NVDAワークショップ・意見交換会が終了
- Fumi's Travelblog: PyCon JP 2012 #pyconjp
2012年7月28日土曜日
Python Developers Festa 2012.07 に参加しました。
Python Developers Festa 2012.07に参加しました。
当日は大きく分けて
・ハンズオン(もしくは自分で持ってきた課題)
・プレゼンテーション
が行われました。
下手すると第一回目に参加した時より置いてけぼりだったかもしれない。
9割Pythonと関係ないことやってました。
早く知識のレベルから抜けだして、次のレベルに進みたいな。
Python Developers Festa 2012.07 開催概要
前回の様子
Togetterまとめ
- Python Developers Festa 2012.07 #PyFes 〜開始まで - Togetter
- Python Developers Festa 2012.07 #PyFes 〜 ハンズオン - Togetter
- Python Developers Festa 2012.07 #PyFes 〜 LT part.1 - Togetter
- Python Developers Festa 2012.07 #PyFes 〜 LT part.2 - Togetter
- Python Developers Festa 2012.07 #PyFes 〜 LT part.3 - Togetter
- Python Developers Festa 2012.07 #PyFes 〜 終了後 - Togetter
Sphinxハンズオンとひとりでもくもくのどちらにしようか迷った挙句、
ひとりでもくもくしていました。
三回目の参加になりますが、ハンズオンに参加しなかったのは初です。
仕事捗らせるためにずっと↓の本を読んでました。
C++クラスと継承完全制覇 (標準プログラマーズライブラリ)
posted with amazlet at 12.07.28
矢沢 久雄
技術評論社
売り上げランキング: 162990
技術評論社
売り上げランキング: 162990
それとハンズオンが開催している間にステッカーもらいました。 防水加工とかしてあるいいやつだそうです。 キラキラしているステッカーもありましたが、 そちらは講師陣・発表者のみだったのが残念…
LT、プレゼン(15:00~)
- 前回はPythonの話が多かったため(?)、今回はほとんどPythonのお話はありませんでした。
- @shomah4a - PyCon JP 2012 参加者募集のお知らせ的な何か
Python使いのためのPython使いによるイベント 9/15~17
併設イベント…Django、Sphinx、App Engine、NVDA
#kabepyもよろしく。
- @johtani - Elasticsearch入門 pyfes 201207
Blog: @johtani の日記
キラキラシールが欲しくて頑張ってスライド作りました。
■elasticsearch って何?
(1)分散型でRESTfulな検索エンジン
(2)OSS - GitHubで公開されている
(3)Apache Lucenseベース
(4)スキーマレスでドキュメント指向
(5)マルチテナント指向
(6)なぜか盆栽がトレードマーク
- @tokoroten - たのしいうぇっぶくろーら
社畜してます。 9:30-1:30
シャチクミイ作りました。please.shachiku.me
元Googleから3文字短い検索エンジンの中の人
るbyの会社で蛇書いてます。
データ欲しい方お声がけ下さい。
ソースコードはGitHubに上がっています。
tiny_web_crawler — Gist
- @ymotongpoo - Sphinxで翻訳してたら本が出てた話
自己紹介と、お願いと、宣伝をしにきました。
Tornadono翻訳で初めてSphinx触った。
「ドキュメント翻訳でもOSSに貢献できる!」
Python界隈ではまだまだ翻訳していないものがたくさんある。
是非翻訳しましょう。
例:django-docs-ja/django-docs-ja · GitHub
SphinxCon JP来て下さい。
- @Seasons - iOS app hacks~バイナリを解析し、知識をつけるための方法~
Blog: Seasons.NET
cocos2dのエバンジェリストやってます。
逆アセンブラはあくまで趣味です。
楽しい発見をして、正しい使用法で活用しましょう。
- @shiumachi - 20分でわかるHBase
アーキテクチャの観点から概要だけでも掴んでもらえば。
HBase本日本語版でました。
HBase…列ファミリ指向DB。KVS。
定期的に「本買ってね!」というCMが入るプレゼン。
幸福は義務です。
- @mkouhei - Git pyfes201207-presen
Gitによるバージョン管理posted with amazlet at 12.07.28岩松 信洋 上川 純一 まえだこうへい 小川 伸一郎
オーム社
売り上げランキング: 22649
数あるなかでGitPythonを試しました。
DebeanのPythonパッケージ名は、Python-git
GitPython - Gitorious
CouchDB勉強会の参加者いつも10人いるかいないのか
というほどなのでよろしくお願い致します。
- @sawonya - 勉強会を成長させる参加者になろう! by やまもと さをん on Prezi
セミナーに言ってみたい人向けのセミナーを開催してます。
東京・静岡・大阪...
「セミナーに行ってみよう講座」 セミナー・勉強会初心者マークのあなたに送ります
勉強会を継続・成長させるためには三者の協力が必要
→自分・開催者・既存の参加者
成長させるための三要素
→新しい人を取り込む・主催者の成長・既存の参加者
- @tmmkr - 8ヶ月間、勉強会を開催してみて
たいやきの人 アジャイルサムライ新宿道場について
「ないならやろう。」というシンプルな発想で開催
投げ出さずに継続できれば自分の自信につながる。
- @kenji_rikitake - Do not invent your own RNGS
jj1bdx/tew · GitHub
RNG…Random Number Generator - 乱数生成器。
自分で乱数を作らない!
こんな酷い乱数を見たことない。
- @yosukehara - Introduce LeoFS
LeoFastStorage…楽天さんが作った分散ファイルシステム。
98%がErlangで後はC。
基本的にStorage、Gateway+Cache、Managerで構築。
コストが著しいところを下げましょう。
- @troter - 継続的デリバリーの話 - Google Docs
Mercurialハンズオンの講師してました。
Windows Azureの仕事していますが、もう嫌です。
継続的デリバリー = 継続的インテグレーションの発展系
→テストしてできたもの(CIでできたもの)を結合テスト環境へ
デプロイして、最後は本番までデプロイする。
「デプロイは日常」
継続的インテグレーションをすべてやるのは大変だが、
環境構築、デプロイなら実現可能。
モックでいいので、やってみると1週間くらいでできる。
- @takufukushima - Behind the scene of the fully client-side dashboard
Javascriptのお話。curl のウェブフロントエンドほしい。
なるべく細かい部品にして管理しやすく。
- @mopemope - Meinheld 0.5 - Google Docs
PythonのWebフレームワークサーバーの作者日本人
「Mozillaは僕の作ったライブラリを使う傾向にあります」
- @tk0miya - 3分間 開発環境クッキング 2012.07 #pyfes
「3分で環境つくれますか?」
ベースイメージはA list of base boxes for Vagrant - Vagrantbox.esに有志が公開している。
しかしセキュリティとか怖いのでVeeWeeを使いましょう。
OSのイメージからVMイメージを作成してくれます。
- @moriyoshi - 気軽にパッケージをあげましょう
Python3系だと 「import ぁっぉ」 ができます。
xaxtsuxoパッケージ作りました。(Python3対応)
Python3対応パッケージだとPyPIのロゴがかわる。
今後の展望未来のあつおを召喚したい。
気軽にパッケージをあげましょう。
- Web魚拓の中の人 - 筋トレについて
「ジムで運動不足を解決するのは無理」
ダイエットの成功率は、
国家公務員一種の合格率「5%」より低い。
ジムが続くための三箇条
・労働時間が10時間以下であること
・ジムが会社か家に近いこと
・そのジム(環境)が好きなこと
ただ歩いたほうが仕事量が確保できる。
ジムよりは二駅あるた方がいい。歩いていると腹筋を使う。
置いてけぼり感がすごいと有名なこの時間。
以下のタイムテーブルで進みました。
懇談会
今回は有志の懇談会にも参加してきました。
場所は会場近くのお寿司屋さんです。
今日のPyFesのこと、普段どんな勉強会に参加しているか、
明日行われるJenkinsConferenceのことなど話していました。
まとめ
今回はステッカーいっぱいもらいました。 独自言語Pythonのステッカーもらえたのも結構うれしかったです。 まだ日取りは決まっていないそうなので、
開催のアナウンスを気長に待つことにします。
会場を提供してくださったOracleさん、
ハンズオンや発表されたみなさん、
参加されたみなさん、お疲れ様でした&ありがとうございました!
参加者・発表者Blog
- 2012 7/28 Pyfes で空気を読まずにiOSの発表をしてきました - Seasons.NET
- Python Developers Festa 2012.07に参加した - YAMAGUCHI::weblog
- 「勉強会を成長させる参加者になろう!」プレゼンしてきました 【 マインドマップ1年生 plus ライフハック! 】
- Python Developers Festa 2012.07に参加してしゃべってきました #pyfes | @johtani の日記
- 『Python Developers Festa 2012.07』に参加してきました - 牌語備忘録 - pygo
- Python Developers Festa 2012.07 でGitの話をしてきました。 — ペンギンと愉快な機械の日々
- #pyfes に参加してきました - hokorobiの日記
- Python Developers Festa ( #pyfes )に参加してきました | Azrael
2012年7月19日木曜日
エキスパートPythonプログラミング読書会 第二期 08に参加しました。
エキスパートPythonプログラミング読書会 第二期 08 - connpass
に参加してきました。
今回は業務が終わってから時間があったので、電車を使わずに歩いて行きました。
会社から20分ちょっとの距離ですのでいい運動ですね。
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 08 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(4名程度)で簡単に自己紹介をしました。
今日はあえて一つ後ろの島に。
今回から参加された方も一緒になり、どこか新鮮でした。
2.「第6章 アプリケーションを作る」
3.ビアバッシュ&LT
4.まとめ
参考リンク
に参加してきました。
Tarek Ziade
アスキー・メディアワークス
売り上げランキング: 36822
アスキー・メディアワークス
売り上げランキング: 36822
今回は業務が終わってから時間があったので、電車を使わずに歩いて行きました。
会社から20分ちょっとの距離ですのでいい運動ですね。
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 08 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(4名程度)で簡単に自己紹介をしました。
今日はあえて一つ後ろの島に。
今回から参加された方も一緒になり、どこか新鮮でした。
2.「第6章 アプリケーションを作る」
- 皆virtualenvどうやって使っているの?
【前提】複数プロジェクトが存在
- 他のプロジェクトに移動した時、切り替えはどうやっているのか。
→プロジェクト1個につき、virtualenv1個以上。
- もしくはSphinxコマンドなど使いたいものだけ、そこにPath通してしまう(bin/)など、
Sphinxとしてプロジェクト一つ作ってもいいと思う。
- 他のプロジェクトに移動した時、切り替えはどうやっているのか。
- 環境変数PIP_DOWNLOAD_CACHEを設定していれば、
環境を再構築する際にキャッシュ利用できるので時間節約になる。
一応最新バージョンの確認をするから、ネットにはつなぐ。
- pip bundleコマンドでインストールするパッケージを一つに固めることができる。
ただしソースしか入っていないので、gccが入っていなくてインストールで落ちるなんてことも。
- easy_install bundleみないなことはできない。→bundleしたファイルはpipでしか使えない。
- テストコードはパッケージに含める。基本的に不可分。
- virtualenvwrapperとか使うと疎結合になるけどどうすれば?
→PyCharmだとPythonのVersion、プロジェクトを作るディレクトリ、site-packageの指定
とかできて、新しくプロジェクトを作ってやることができる。PyCharm便利。
- あくまで使い方のサンプルとしてdoctestを作る。本格的なのはpy_test~とか。
doctestはdocumentとコードの乖離を防ぐために書く。
→両方書くと親切。テスト書けないdocumentは追従するのが面倒なので、
それはdoctest化した方がいい。
参考:25.2. doctest — 対話的な実行例をテストする — Python 2.7ja1 documentation
- sphinx.ext.autodoc とかで、Sphinxに-doctestでできると理想。
だけど多言語化してくると困る。(doctestは英語で、documentは日本語にしたい時など)
- import datetime from * とかの * は基本×。
Eclipseだとimport typeで*を解決してくれる機能がある。
PyCharmだと使っていない関数をグレーアウトしてくれるとかはある。
- doctestの省略のオプション…ELLIPSIS
このフラグを指定すると、期待する出力中の省略記号マーカ (...) が実際の出力中の任意の部分文字列と一致するようになる。
アドレスというか、IDなんかを省略できたりするから便利。
3.ビアバッシュ&LT
- @shimizukawa
- @aodag先生のEuroPython体験記解説。
@aodag先生が話していた内容をメモっていたそうで、それをLTするという流れ。
(↑書いててよくわからない)
Euroでもピザ、帰ってきてもピザばかりでお疲れ様です。
- Python3.3で搭載されるvenvの紹介。
virtualenvに相当する機能らしい。デフォルトで入るのはいいね。
- @aodag先生のEuroPython体験記解説。
- @aodag ヨーロッパでPyramidのLTしてきたよ。
向こうでのLTはネタ(エンジニアと健康とか)に走っていて、
まじめにPythonネタやるんならしっかり枠取ってやれよという空気だったらしい。
- @tfmagician vagrantとかchefとか。
vagrantはVirtualBoxを利用した仮想マシンをコマンドラインから作成してくれるらしい。
chefはサーバOSでのインストール・設定・各サービスの状態管理等、諸々のシステム構築や運用作業を自動化してくれるRuby製のシステム管理ツールらしい。
すごく便利そうというのだけはわかった!
4.まとめ
- ほとんどがvirtualenvとpipの使い方でしたね。
(あとPyCharm便利なのは分かった)
「詳しくはpyproで!」というのもちらほらあった気がする。
実際PIP_DOWNLOAD_CACHEやpip bundleなんかも
書いてあるしね!
次回はzc.buildoutなので、一度しっかり見につけて、
SphinxやGAEの環境作るのに手間取らないようにしたい。
参考リンク
2012年6月17日日曜日
reST→PDF出力の環境を整備した。
reST→PDF出力する環境を整備してみました。
rst2pdfの設定ファイル
当方の環境はMacOSX 10.7になっております。
Windows/Linuxの方はコマンドやディレクトリなどを
ご自身の環境に置き換えて作成下さい。
また以下のものがインストールされている前提となっています。
rst2pdfのインストール
Windows/Linuxの方はコマンドやディレクトリなどを
ご自身の環境に置き換えて作成下さい。
また以下のものがインストールされている前提となっています。
- Python
- pip
コマンドラインから
日本語フォントのインストール
日本語出力のためのスタイル設定
$ pip install rst2pdf
これより下のファイルはプロジェクトディレクトリ内に作成します。
フォントの埋め込み
% vi ja.styleja.styleに以下のように記述します。
{
"fontsAlias" : {
"stdFont": "VL-PGothic-Regular",
"stdBold": "VL-PGothic-Regular",
"stdItalic": "VL-PGothic-Regular",
"stdBoldItalic": "VL-PGothic-Regular",
"stdMono": "VL-Gothic-Regular",
"stdMonoBold": "VL-Gothic-Regular",
"stdMonoItalic": "VL-Gothic-Regular",
"stdMonoBoldItalic": "VL-Gothic-Regular",
"stdSans": "VL-Gothic-Regular",
"stdSansBold": "VL-Gothic-Regular",
"stdSansItalic": "VL-Gothic-Regular",
"stdSansBoldItalic": "VL-Gothic-Regular"
},
"styles" : [
["base" , {
"wordWrap": "CJK"
}],
["literal" , {
"wordWrap": "None"
}]
]
}
% vi ja.jsonja.jsonに以下のように記述します。
{
"embeddedFonts" :
[[
"VL-Gothic-Regular.ttf",
"VL-PGothic-Regular.ttf",
"ipam.ttf",
"ipag.ttf",
"ipagp.ttf",
"ipamp.ttf"
]],
"fontsAlias" : {
"stdFont": "VL-PGothic-Regular",
"stdBold": "VL-PGothic-Regular",
"stdItalic": "VL-PGothic-Regular",
"stdBoldItalic": "VL-PGothic-Regular",
"stdMono": "VL-Gothic-Regular",
"stdMonoBold": "VL-Gothic-Regular",
"stdMonoItalic": "VL-Gothic-Regular",
"stdMonoBoldItalic": "VL-Gothic-Regular",
"stdSans": "VL-Gothic-Regular",
"stdSansBold": "VL-Gothic-Regular",
"stdSansItalic": "VL-Gothic-Regular",
"stdSansBoldItalic": "VL-Gothic-Regular"
},
"styles" : [
["base" , {
"wordWrap": "CJK"
}],
["literal" , {
"wordWrap": "None"
}]
]
}
以下のように作成
$ mkdir ~/.rst2pdf $ vi ~/.rst2pdf/config~/.rst2pdf/configに以下のように記述します。
[general] stylesheets="ja" compressed=flase font_path="~/Library/Fonts" header= footer= fit_mode="shrink" break_level=0
後は以下のように叩くだけでPDFファイルが出力されます。
$ rst2pdf -o output.pdf input.rst
完了後は以下のようなフォルダ構成になっているはずです。
参考リンク
~/.rst2pdf/config -project |-input.rst |-ja.json |-ja.style |-output.pdf以上です。お疲れ様でした!
TokyoMercurial4.5に参加しました。
TokyoMercurial#4.5 - connpassに参加しました。
当日の様子はこちら:
TokyoMercurial #4.5 (Mercurial Queue ハンズオン) - Togetter
課題: Mercurial Queues ハンズオン (TokyoMercurial#4.5) - Google Docs
解答: Mercurial Queues ハンズオン 履歴改変編
当日の様子はこちら:
TokyoMercurial #4.5 (Mercurial Queue ハンズオン) - Togetter
課題: Mercurial Queues ハンズオン (TokyoMercurial#4.5) - Google Docs
解答: Mercurial Queues ハンズオン 履歴改変編
当日の深夜に以下のようなやりとりがあり、
多少自分のスキルに不安をいだきながらも突撃参加しました。
その日の朝にdocumentを舐めてからの参加です。
多少自分のスキルに不安をいだきながらも突撃参加しました。
#TokyoMercurial 参加しようと思ったけど、「名前付きブランチのマージとコンフリクトの解決が出来ること」ってところやったことないなー。Beginnerが参加するのは厳しいのかしら…… / TokyoMercurial#4.5 connpass.com/event/486/
— 吉田花春さん (@kashew_nuts) 6月 8, 2012@flyingfoozy 承知致しました!そのあたりのdocument troter.jp/scmbc-201111-m… をさらっと舐めてから参加したいと思います。(>Д<)ゝ #TokyoMercurial
— 吉田花春さん (@kashew_nuts) 6月 8, 2012その日の朝にdocumentを舐めてからの参加です。
1.アイスブレイク
簡単なアイスブレイクの後、@troterさんによるハンズオン開始。
各々どのぐらいMercurialをしようしているのかを紹介したのですが、
Gitも使っていますと言う方もちらほら。
そうゆう自分もVimのdotfilesやHeroku使うためにGit使っていた頃がありました。
簡単なアイスブレイクの後、@troterさんによるハンズオン開始。
各々どのぐらいMercurialをしようしているのかを紹介したのですが、
Gitも使っていますと言う方もちらほら。
そうゆう自分もVimのdotfilesやHeroku使うためにGit使っていた頃がありました。
2.ハンズオン
以下のように導入編・ハンズオンとわかれていました。
以下のように導入編・ハンズオンとわかれていました。
- 第一部: Mercurial Queues(MQ)の説明、パッチキューの操作
- 第二部: MQを用いた基本操作のまとめ、歴史改変編のハンズオン
MQを使いこなすと、
「MQが無いMercurial = 残念な子」 by @troter #TokyoMercurial
— Yuta SHIMAKAWAさん (@banana_umai) 6月 9, 2012
という印象になるらしい。
自分はそこまで使いこなせてなかったからまだ恩恵を受けられていないのが残念。
恩恵を受けれられた方の例↓
mqすげー、神になった気分。#TokyoMercurial
— 石田 順一さん (@i4djunichi) 6月 9, 2012
3.Tips
- TortoiseHg2.4.1でたよ!
- GUIでMQ使うならTortoiseHg。
SourceTreeだとリビジョンもパッチも全部丸で表示されるから分かりづらい。
- Gitの機能がMercurialにないとかいってる人はMQ使ってから。
懇談会楽しかった!3時間近くいましたかね?勉強会でこれだけ長時間いたのは初めてだったのでとても新鮮でした。
次回のTokyoMercurial5.5はビギナー向けになるそうなので、
一旦そこで基礎力を鍛えようかとも思っています。
主催者の@troterさんTAの方々、参加者の皆さんお疲れ様でした!
Labels:
Git/Mercurial,
勉強会
エキスパートPythonプログラミング読書会 第二期 07に参加しました。
エキスパートPythonプログラミング読書会 第二期 07 - connpass
に参加してきました。
最近Blog書いてないなーということで書きます。
遅刻かと思ったけど、何とか時間までについて良かった。
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 07 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(4名程度)で簡単に自己紹介をしました。
以下自己紹介順に、
パッケージ管理は今のところ distribute + virtualenv(pip)安定ですかね。
エキpyに書いてある内容で2〜3年は使えるそうです。
Python2.7は最低でも2017年までメンテナンスされる見込み(source→Python3と向かい合ってみる)なので、
最新の状況に乗り遅れないようにしつつ、
Pythonと向い合って行きたいです。
参考リンク
に参加してきました。
Tarek Ziade
アスキー・メディアワークス
売り上げランキング: 36822
アスキー・メディアワークス
売り上げランキング: 36822
最近Blog書いてないなーということで書きます。
遅刻かと思ったけど、何とか時間までについて良かった。
当日の様子はこちら。
エキスパートPythonプログラミング読書会 第二期 07 - Togetter
1.アイスブレイク
恒例のアイスブレイク、各島ごと(4名程度)で簡単に自己紹介をしました。
以下自己紹介順に、
- @usaturn 面談したら実は同じ会社だったと言うオチ
- @taison PHPゴリゴリからDjango git wiki google document活用してる。
- @shimizukawa 台湾行って来ました。最近はSencha Touchとかやってる。
- setuptoolsとdistribute使える環境があったらdistributeを使いましょう。
- いままで
- distutils: Python3.2までの標準
- setuptools: 業界標準(ez_setupで入れる)
- distribute: setuptools上位互換
(distribute_setup.pyで入れる)
- pip: setuptools/distributeを活用して使いやすいコマンドライン
- buildout: setuptoolsを活用した環境構築ツール
- virtualenv: Pythonのユーザーランド仮想環境作成ツール
- distutils: Python3.2までの標準
- これから↓
- Distutils2: packagingと同じものでPyhton2.4-3.2で使えるようにしたもの。
(実際はPython2.6-3.2。シンタックス対応が大変だねという話)
→しかしこれによってパッケージの手法が必ずしも綺麗になるわけでないと関係者が頭抱えてる。
- packaging: Python3.3からの標準
- pip?: packaging上で動くようになる?(virtualenvはどうだかわからない)
- pythonv: virtualenvをPython3.2から標準でできるようにしたもの(実装別)
- Distutils2: packagingと同じものでPyhton2.4-3.2で使えるようにしたもの。
- パッケージング: 「パッケージを作ろう」と「Python3.3のパッケージ」がある。
- PyPIの配布物(PYPIにもpackagingという名前で登録されているものがある)
- Python言語自体のパッケージ(import……の,名前空間パッケージ←応用)
- Python言語自体のパッケージは_とつけてれば安心と理解した。手を動かして理解しよう!
- PyPIの配布物(PYPIにもpackagingという名前で登録されているものがある)
- sdist = soure distribution
- eggの圧縮はPython3.3では圧縮される?
→eggがありません。eggみたいなものは今議論されていない(すげー困る。ほとんどの環境で動かなくなる)
- python setup.py check というコマンドがある。
setup.pyの構文チェックができる。
- buildとbdist: バイナリ配布用のパッケージを作ってくれる。
あんま使わないほうがいい → bdistを拡張したbdist_eggを使おう。
- bdist_egg: どのPythonでbuildされたかわかるものが作られる。
eggも出来る。素直な、依存関係のないeggが生成される。
install_requiresで、依存関係のパッケージもPyPIから見つけてインストールしてくれる。
- アンインストールについてはpipにお任せしましょう。
- develop: -linkだとPython PATHに自動的に追加されるので、どこにいても import aodag とかいうことが出来るようになる。-uオプションで削除ができる。
- test: test_suite, tests_requireを確認してくれる。
python setup.py sでオプションが全部出てくる
- PyPIはbasic認証で大変いけてない。
.pypircのPasswordの行を削除すると、毎回Passwordをきいてくれる仕様にできる。
- list printerとかPyPIで調べるといっぱいできる。
→テストで登録したものはちゃんと消しましょう。
- alias: setup.cfgに追記してくれる。
- 最近はまだまともですが、この本の読んでからじゃないとdistutilsガイド、setuptoolsガイドが読みにくいと思われます。
- テンプレートベースのアプローチは有用ではあるが、
大抵がその内メンテしなくなる。
- @shomah4a: PyConTW行って来ました。
写真: PyCon TW 2012
スライド:Welcome to PyCon JP
- @aodag: 写真取るのに夢中で何やったのか記憶が朧
(すみません…)
- @michiyata: Windows AzureでPython対応!
スライド: 続・Python on Windows Azure
パッケージ管理は今のところ distribute + virtualenv(pip)安定ですかね。
エキpyに書いてある内容で2〜3年は使えるそうです。
Python2.7は最低でも2017年までメンテナンスされる見込み(source→Python3と向かい合ってみる)なので、
最新の状況に乗り遅れないようにしつつ、
Pythonと向い合って行きたいです。
参考リンク
2012年5月16日水曜日
「エキスパートPythonプログラミング読書会 第二期 06」に参加してきました。
エキスパートPythonプログラミング読書会 第二期 06 - connpass
参加してきました。
1回来ないと随分久しぶりな気がしますね。
あいにくの雨でしたが楽しんでこれました。
当日の様子は@lincolinnyanさんがまとめてくれています。
エキスパートPythonプログラミング読書会 第二期 06 - Togetter
全体としてはサクサクテンポよく進んでいました。
テーマが「良い名前を選ぶ」で、
コードがあまりでてこなかったからかもしれませんね。
流れとしては以下のとおり。
1.アイスブレイク
2.読書会
3.ビアバッシュ&LT
1.アイスブレイク
毎度おなじみアイスブレイク。
今回も各島ごとに行いました。
自分以外の方は皆さんアプリや自社サービスを行なっている方々ばかり。
@tfmagicianさんがPyramidについて熱弁されてました。
2.読書会
特に気になった点をいくつか。
- PEP8…命名規則。コーディングルールについてまとめたもの。
日本語訳はこちら
PEP 8 - - Style Guide for Python Code
ex)
デリミタで揃える
トップレベルの関数のクラス定義の間は、2行あける
演算子の前後にスペースを1つ入れる
チェックツール:PEP8, pyflakes
小話:Googleは昔インデントスペース2だったのが、4に変わったらしい。
- パブリック変数とプライベート変数
Rubyだとよく使うメソッドは名前を短く,
あまり使わないものは名前を長くする慣習があるらしい。
Pythonの場合は短くするよりも意図をわかりやすく表現するほうが大切。
- プライベート変数を保護する仕組みはPythonにはない。
それっぽいものはあるがプライベートメソッド,フィールドは存在しない。
複雑になるから。Pythonは元々クラスの概念がなかった。
クラスの概念を導入する段階で付けなかった。
継承してプライベートと扱うのはメリットがなかったと考えられる。
- 特殊メソッドは継承、マンダリングされません。
- importする時にallや*はなるべく書かないようにしましょう。
- 引数のベストプラクティス
引数は少しずつ作ろう。必要なものだけ追加していこう。
引数とテストを信頼しよう。つまり「テスト書こう。」
*argsと**kwには注意。本当に着ているか確認するのに、
if文をたくさん書かないといけなくなる。
→フレームワークを作る時や、デコレータを実装する時、
メタプログラミングなどはどうしても必要になってくのだけど、
気をつけて使おう。
- パッケージ名をつけるのは難しい。
グランドルールはPEP8として、ローカルルールでわかりやすくするなど、
読みにくくなる場合はPEP8を破ってもいいのではないか。
- pylintやPEP8とかは今だとCIと組み合わせて
自動レポートとかうまくできるようになる。
- docstring, testcode, 使い方を書くと実装の構成の方にフィードバックを
かける時にテストとしてはやりやすくなる。それを反復し、実装に
反映させていく。
- Pythonのインタプリタから
xkcd: Pythonが見れる。
3.ビアバッシュ&LT
@takanoryさんの「PyCon台湾行くよ!壁Py宣伝してくるよ!」
@shiumachiさんの「Hadoop documentの更新日時検索作りました
(←名前が思い出せない)」
@aodagさんの「フレームワークなしでWSGIプログラミング」からのbuchoパッケージ紹介
でした。
来月とか参加できるかな……
参加できなくても学習は続けていきたいですね。
参加してきました。
1回来ないと随分久しぶりな気がしますね。
あいにくの雨でしたが楽しんでこれました。
当日の様子は@lincolinnyanさんがまとめてくれています。
エキスパートPythonプログラミング読書会 第二期 06 - Togetter
全体としてはサクサクテンポよく進んでいました。
テーマが「良い名前を選ぶ」で、
コードがあまりでてこなかったからかもしれませんね。
流れとしては以下のとおり。
毎度おなじみアイスブレイク。
今回も各島ごとに行いました。
自分以外の方は皆さんアプリや自社サービスを行なっている方々ばかり。
@tfmagicianさんがPyramidについて熱弁されてました。
特に気になった点をいくつか。
- PEP8…命名規則。コーディングルールについてまとめたもの。
日本語訳はこちら
PEP 8 - - Style Guide for Python Code
ex)
デリミタで揃える
トップレベルの関数のクラス定義の間は、2行あける
演算子の前後にスペースを1つ入れる
チェックツール:PEP8, pyflakes
小話:Googleは昔インデントスペース2だったのが、4に変わったらしい。
- パブリック変数とプライベート変数
Rubyだとよく使うメソッドは名前を短く,
あまり使わないものは名前を長くする慣習があるらしい。
Pythonの場合は短くするよりも意図をわかりやすく表現するほうが大切。
- プライベート変数を保護する仕組みはPythonにはない。
それっぽいものはあるがプライベートメソッド,フィールドは存在しない。
複雑になるから。Pythonは元々クラスの概念がなかった。
クラスの概念を導入する段階で付けなかった。
継承してプライベートと扱うのはメリットがなかったと考えられる。
- 特殊メソッドは継承、マンダリングされません。
- importする時にallや*はなるべく書かないようにしましょう。
- 引数のベストプラクティス
引数は少しずつ作ろう。必要なものだけ追加していこう。
引数とテストを信頼しよう。つまり「テスト書こう。」
*argsと**kwには注意。本当に着ているか確認するのに、
if文をたくさん書かないといけなくなる。
→フレームワークを作る時や、デコレータを実装する時、
メタプログラミングなどはどうしても必要になってくのだけど、
気をつけて使おう。
- パッケージ名をつけるのは難しい。
グランドルールはPEP8として、ローカルルールでわかりやすくするなど、
読みにくくなる場合はPEP8を破ってもいいのではないか。
- pylintやPEP8とかは今だとCIと組み合わせて
自動レポートとかうまくできるようになる。
- docstring, testcode, 使い方を書くと実装の構成の方にフィードバックを
かける時にテストとしてはやりやすくなる。それを反復し、実装に
反映させていく。
- Pythonのインタプリタから
import antigravityって打つと、デフォルトのブラウザから
xkcd: Pythonが見れる。
@takanoryさんの「PyCon台湾行くよ!壁Py宣伝してくるよ!」
@shiumachiさんの「Hadoop documentの更新日時検索作りました
(←名前が思い出せない)」
@aodagさんの「フレームワークなしでWSGIプログラミング」からのbuchoパッケージ紹介
でした。
来月とか参加できるかな……
参加できなくても学習は続けていきたいですね。
2012年4月22日日曜日
Sphinx+翻訳 Hack-a-thon 2012.04に行ってきました。
connpass-Sphinx+翻訳 Hack-a-thon 2012.04に行ってきました。
[追記](2012/04/30 16:05)
当日の様子はこちら
Sphinx+翻訳 Hack-a-thon 2012.04 - Yukarin'Note
当日やったことリスト
Sphinxテーマのimpress.js弄った。
Sphinxプラグインのblockdiag触った。
MacにMercurial入れた。
bitbucket試した。
Sphinxテーマのimpress.js弄った。
今まではs6触ってて「これはシンプルでいいなー」と思ってましたが、
"impress.js"っていうのもアニメーションが効いてて良さそうと思ったので試しました。
sphinxjp.themes.impressjs 0.1.0 : Python Package Index
を参考にして、
そしたら何故か以下のようなエラーがでる……
エラーのログを見てみると以下のようになっているので、
「どこか設定ファイルの記述が間違っているのでは?」と予想。
もう一つ出てきたサイト、
shkumagai/sphinxjp.themes.impressjs
を参考にして見ると、先の2行に加えて以下の1行を加える必要があることが判明。
その後は、先のサイトのoutputと、inputを見比べながら進めて行きました。
他に参考にしたサイトは以下になります。
use No::Name; [log][sphinx][python][document]sphinxjp.themes.impressjs 0.1.2 リリースしました。
百式年賀状 powered by impress.js
その時四苦八苦している様子を@usaturnさんがまとめてくれています。
Sphinxのかっこいいスライド作成拡張「sphinxjp.themes.impressjs」 - Yukarin'Note
impress.jsでは以下の設定を記述して、魅せ方の調整を行うようです。
適当に数値を変えてみたら複数のスライドが重なって表示されました。
しっかりと意味あるものにするのには微妙な調整が必要のようです。
実際に試してみないと感覚がつかめないなと思いました。
Sphinxプラグインのblockdiag触った。
Sphinx 拡張:sphinxcontrib-blockdiag — blockdiag 1.0 documentation
を一通り試して終了。
MacにMercurial入れた。
Mercurial binary packages for Mac OS X
から最新版をインストール。
ターミナルからhgを打ったら起動……しない。
あれ?と思って調べてみると、どうやらPATHが通っていない。
更に調べてみるとインストールされたはずの、
/usr/local/bin/以下にアクセスできなくなっていました。
アクセス権限を設定し直したらうまく行きましたが、
以前システム設定の共有の設定を弄った時に変えてからかな……
Mercurialに原因があったわけではありませんが少し気になります。
bitbucket試した。
完全に忘れていましたがアカウントは以前に作成してため、
まずはgithubと同様にdotfilesを上げてみました。
これからはちょくちょくこちらも弄っていきたいです。
まとめ
今月一回も勉強会にこれてなかったので、まずはこれてよかった。
やっぱりmake一発でプレゼン式のPDFなりPPTなりの出力する仕組みが欲しい。
来月もHack-a-thon参加します。
[追記](2012/04/30 16:05)
当日の様子はこちら
Sphinx+翻訳 Hack-a-thon 2012.04 - Yukarin'Note
当日やったことリスト
今まではs6触ってて「これはシンプルでいいなー」と思ってましたが、
"impress.js"っていうのもアニメーションが効いてて良さそうと思ったので試しました。
sphinxjp.themes.impressjs 0.1.0 : Python Package Index
を参考にして、
pip install sphinxjp.themes.impressjsした後、conf.pyに以下の設定を記述しました。
extensions = ['sphinxjp.themecore'] html_theme = 'impressjs'
そしたら何故か以下のようなエラーがでる……
Exception occurred:
File "/Users/***/.virtualenvs/impressjs/lib/python2.7/site-packages/sphinx/jinja2glue.py", line 149, in get_source
raise TemplateNotFound(template)
TemplateNotFound: genindex.html
The full traceback has been saved in /var/folders/cg/8n8k9bvj5vgbp65py_kxf52r0000gn/T/sphinx-err-l8t7JZ.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
Either send bugs to the mailing list at ,
or report them in the tracker at . Thanks!
make: *** [html] Error 1
エラーのログを見てみると以下のようになっているので、
「どこか設定ファイルの記述が間違っているのでは?」と予想。
exception jinja2.TemplateNotFound(name, message=None) Raised if a template does not exist.
もう一つ出てきたサイト、
shkumagai/sphinxjp.themes.impressjs
を参考にして見ると、先の2行に加えて以下の1行を加える必要があることが判明。
html_use_index = False設定を追記したら、あっさりmakeできました。
その後は、先のサイトのoutputと、inputを見比べながら進めて行きました。
他に参考にしたサイトは以下になります。
use No::Name; [log][sphinx][python][document]sphinxjp.themes.impressjs 0.1.2 リリースしました。
百式年賀状 powered by impress.js
その時四苦八苦している様子を@usaturnさんがまとめてくれています。
Sphinxのかっこいいスライド作成拡張「sphinxjp.themes.impressjs」 - Yukarin'Note
impress.jsでは以下の設定を記述して、魅せ方の調整を行うようです。
.. impressjs:: title
:data-x: 0 横軸の設定
:data-y: 0 縦軸の設定
:data-z: -1000 奥行きの設定
:data-rotate-x: -90 回転する角度の設定
:data-scale: 4 表示するスライドの大きさの設定
これの意味が最初ちんぷんかんぷんで、適当に数値を変えてみたら複数のスライドが重なって表示されました。
しっかりと意味あるものにするのには微妙な調整が必要のようです。
実際に試してみないと感覚がつかめないなと思いました。
pip install sphinxcontrib-blockdiagして、
Sphinx 拡張:sphinxcontrib-blockdiag — blockdiag 1.0 documentation
を一通り試して終了。
Mercurial binary packages for Mac OS X
から最新版をインストール。
ターミナルからhgを打ったら起動……しない。
あれ?と思って調べてみると、どうやらPATHが通っていない。
更に調べてみるとインストールされたはずの、
/usr/local/bin/以下にアクセスできなくなっていました。
アクセス権限を設定し直したらうまく行きましたが、
以前システム設定の共有の設定を弄った時に変えてからかな……
Mercurialに原因があったわけではありませんが少し気になります。
完全に忘れていましたがアカウントは以前に作成してため、
まずはgithubと同様にdotfilesを上げてみました。
これからはちょくちょくこちらも弄っていきたいです。
まとめ
2012年4月9日月曜日
今更ながらpythonの開発環境を整えてみる。
Pyfesの時にも思ったのだけど、
前から一度開発環境を整えてみたいと思っていたのでやってみました。
導入したのは以下、
1.MacPorts
2.virtualenv, virtualenvwapper
3.ipyton
4.pythonbrew
1.MacPorts
巷ではHomebrewが人気らしいのですが、
Shibu's Diary: MacPortsは生まれ変わった
を見て導入を決意した次第です。
The MacPorts Project -- Download; Installation
からdmgを選択してインストール。簡単ですね。
2.virtualenv, virtualenvwapper
virtualenvは以前から使用していたのですが、
便利だと言われるvirtualenvwapperも
virtualenv, virtualenvwrapper, pip を使う方法 - Ian Lewis
を参考に導入しました。
その後virtualenvwapperのコマンドを使えるようにするため、
.bashrcに以下のように記述しました。
以下のコマンドを打って完了です。
3.ipyton
IPython — kenkov.jpを参考にして導入。
出力されたファイルに以下の設定を記述しました。
4.pythonbrew
pythonbrewはPyfesの時に導入済みだったのだけど、
何故かsudo付けないと有効化されなかったので以下のようにして入れ直しました。
よしこれでOK!と思っていたら、
何故か毎回
そこで、.bash_profileを作成して以下の1行を追加しておきました。
これで一通りPythonの開発環境を整えることができました。
さあ後は実践するだけ!
前から一度開発環境を整えてみたいと思っていたのでやってみました。
導入したのは以下、
巷ではHomebrewが人気らしいのですが、
Shibu's Diary: MacPortsは生まれ変わった
を見て導入を決意した次第です。
The MacPorts Project -- Download; Installation
からdmgを選択してインストール。簡単ですね。
virtualenvは以前から使用していたのですが、
便利だと言われるvirtualenvwapperも
virtualenv, virtualenvwrapper, pip を使う方法 - Ian Lewis
を参考に導入しました。
$ pip install virtualenvwapperと打つだけでvirtualenvも導入してくれました。
その後virtualenvwapperのコマンドを使えるようにするため、
.bashrcに以下のように記述しました。
export WORKON_HOME=$HOME/.virtualenvs source `which virtualenvwrapper.sh`その後.bashrcに記述した内容を有効化するために、
以下のコマンドを打って完了です。
$ source ~/.bashrc
IPython — kenkov.jpを参考にして導入。
$ sudo port install py27-ipython $ sudo port select --set ipython ipython27その後、設定ファイルを作成しました。
$ ipython profile createでデフォルトの設定ファイルを作成し、
出力されたファイルに以下の設定を記述しました。
c = get_config() # 出力の後の改行をなくす c.TerminalInteractiveShell.separate_in = '' # 入力のプロンプトの変更 c.PromptManager.in_template = '[\\#] >>> ' # 出力のプロンプトの変更 c.PromptManager.out_template = '[\\#] ==> ' # デフォルトのエディタの設定 c.TerminalInteractiveShell.editor = 'vim'
pythonbrewはPyfesの時に導入済みだったのだけど、
何故かsudo付けないと有効化されなかったので以下のようにして入れ直しました。
$ export PYTHONBREW_ROOT=~/.pythonbrew $ curl -kLO http://xrl.us/pythonbrewinstall $ chmod +x pythonbrewinstall $ ./pythonbrewinstall
よしこれでOK!と思っていたら、
何故か毎回
source ~/.bashrcしないとpythonbrewの設定が反映されない…
そこで、.bash_profileを作成して以下の1行を追加しておきました。
source ~/.bashrc
これで一通りPythonの開発環境を整えることができました。
さあ後は実践するだけ!
2012年3月26日月曜日
「エキスパートPythonプログラミング読書会 第二期 04」参加してきました。
connpass-エキスパートPythonプログラミング読書会 第二期 04
に参加しました。
今のところ一度も逃さず参加できている。
我ながら素晴らしい。
当日の様子はお館様がまとめて下さっています。
エキスパートPythonプログラミング読書会 第二期 04 - Togetter
清水川先生のスクリーンログはこちら
エキPy読書会2nd #4 スクリーン — Gist
実をいうと今回は予習なしで参加してしまったので、
オブジェクト指向に理解が乏しい自分にはハードル高めでした。
予習復習大事ですね。本当に。
かろうじて理解したこと
組み込み型の拡張はできるが、大抵の場合組み込み型そのままで十分
super=公式ドキュメントには組み込み関数と書いているが、実態は組み込み型。
継承関係を調整してくれているものがsuperのクラスの役割。
superのdictとただのdictはどう違うのか。
特殊な継承を使う時はsuperのdictを使うと便利なことがある。
オーバーライドしてしまったメソッドの元の方を呼び出したいと言った時に、superが役立つ。
ネームマンダリング=頭に__をつける。
継承の時に名前がぶつからないようにするため。
MROがあるからといって、superがあるとは限らない。
(MRO = Method Resolution Order, メソッド解決順)
Pythonの本体ですらそういううところがある。一意ではない。
だから正しく判断する時はソースコードを見てする。
Python3のパッケージ対応リストーPython 3 Wall of Shame
そんな頭の回っていない自分にはありがたいことに、
今回はなんと「エキPyチロルチョコ」が用意されていました!

本来は2/14に配られる予定が諸々の都合によって中止になったので、
この日に配られたそうです。
作成された@tk0miyaさんが参加されないとのことでしたので、
@usaturnさんが持ってきてくださいました。
実はconnpass-新宿 Book-a-thon #11の時にそのやりとりがあったり。
「エキPyに参加される方はその時に貰って下さい」と、
その時には頂けなかったので何とか貰えて一安心です。
次回はちゃんと予習したから行きたいですね。
せっかくの機会を無駄にしないようにしたいです。
参加者ブログ
エキPy読書会 第二期04参加しました - 絵事後素
ryu22eBlog : エキスパートPythonプログラミング読書会 第二期 04 に参加しました #expertpython
に参加しました。
今のところ一度も逃さず参加できている。
我ながら素晴らしい。
当日の様子はお館様がまとめて下さっています。
エキスパートPythonプログラミング読書会 第二期 04 - Togetter
清水川先生のスクリーンログはこちら
エキPy読書会2nd #4 スクリーン — Gist
実をいうと今回は予習なしで参加してしまったので、
オブジェクト指向に理解が乏しい自分にはハードル高めでした。
予習復習大事ですね。本当に。
かろうじて理解したこと
特殊な継承を使う時はsuperのdictを使うと便利なことがある。
オーバーライドしてしまったメソッドの元の方を呼び出したいと言った時に、superが役立つ。
継承の時に名前がぶつからないようにするため。
(MRO = Method Resolution Order, メソッド解決順)
Pythonの本体ですらそういううところがある。一意ではない。
だから正しく判断する時はソースコードを見てする。
そんな頭の回っていない自分にはありがたいことに、
今回はなんと「エキPyチロルチョコ」が用意されていました!
本来は2/14に配られる予定が諸々の都合によって中止になったので、
この日に配られたそうです。
作成された@tk0miyaさんが参加されないとのことでしたので、
@usaturnさんが持ってきてくださいました。
実はconnpass-新宿 Book-a-thon #11の時にそのやりとりがあったり。
「エキPyに参加される方はその時に貰って下さい」と、
その時には頂けなかったので何とか貰えて一安心です。
次回はちゃんと予習したから行きたいですね。
せっかくの機会を無駄にしないようにしたいです。
参加者ブログ
2012年3月17日土曜日
Python Developer Festa 2012.03行って来ました。
Python Developers Festa 2012.03 on Zusaarに行って来ました!
Python Developers Festa 2012.03 を開催します - Twisted Mind
例の如く、当日の天気は雨模様。
前回はぎりぎりだったので、今回は早めに行きました。
当日の様子はかえるの人(@blaue_fuchs)がまとめてくれています。
Python Developers Festa 2012.03 #PyFes 〜ハンズオン開始まで - Togetter
Python Developers Festa 2012.03 #PyFes 〜ハンズオン中 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT1 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 2 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 3 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 4 - Togetter
Python Developers Festa 2012.03 #PyFes 〜終了後 - Togetter
当日は大きく分けて
・ハンズオン
・プレゼンテーション
が行われました。
・ハンズオン
@voluntasさん、@yokatsukiさんより諸注意の後、
10:00〜15:00まではハンズオンを実施しました。
自分はPython でテスト(仮)に参加しました。
しかし落とし穴が……
講師のシャイデレ(@aodag)さんが来ない!!!
そこでTLを探っていたところ、
……ひとまずハンズオンのURLは公開されていたので、
必要なツールをvirtualenvを使ってインストール。
しかし資料を読み進めながらテストツールをためしていたところ、
「もしかして、Python3が必要……???」
と気づきました。
自分のMBAにはPython2系しか入っていないので、
進めるには新しくPython3系を入れる必要があります。
どうしようかな思いましたがあまり環境を汚したくないので
pythonbrewを導入しました。
pythonbrewはpythonのバージョン管理ができるツールになります。
前々から入れようと思っていたのですが今回ので決意。
しかしはまった!pythonbrew及び、
Python3.2のインストールで午前中を使ってしまいました。
午後一でPython3.2のインストールまで終了したものの、
ハンズオンの内容は半分も進みませんでした。
いかんせん自分のレベルの低さと言うものを実感しましたね。
他のテーブルでは前回同様初心者テーブルは好評だったみたいですね。
隣でやっていたMercurialのテーブルも終始賑やかに見えました。
・発表
今回はPythonの話が多かった気がする。いや気のせいか……
PyCon2012とBPさんからの出版されるPython本
の押しが強かった気がします。
置いてけぼり感がすごいと有名なこの時間。
以下のプレゼンテーブルで進みました。
■しょーま(@shomah4a)さん
PyConJP2012 メンバ募集 -pyfes 2012.03-
→PyConJP2012スタッフ募集中。やる気のある人希望。
PyConで年収が上がりました!(要出典)
■bucho(@torufurukawa)
Python 3.3 チラ見
→今さらながらチェックインアプリ作りました。
mixiと連携してクーポンゲットできるよ!
■ところてん (@tokoroten)さん
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
→FirefoxやMicrosoftではやってます。
Vista時代からやり始めてて、XPに比べてバグが半分になりました。
■Vの人(@voluntas)riak-ja meetup #1 (仮)
→ライアックじゃなくてリアックと読みます。
全部英語だけどイベントやるよ。
■トイプーの人(@atsuoishimoto)
Python3と向かい合ってみる
→あわてるな。Python2.4、2,5を使っている人は、
まずはPython2.7の移行を始めよう。
■ナツ(@natsu_bm)さん
塹壕戦から揚陸艇強襲上陸まで (2012/03/17 pyfes)
→テスト≠品質 システムの価値をあげる手段の一つ。
■しぶや(@lanius)さん
KoshiNukeによる最高のGit体験
→会場の謎の一体感。次々と発せられる感嘆の声。
Hey!Koshinuke!
■清水川先生(@shimizukawa)
PYTHON PACKAGING (PyFes 2012.03 発表資料) - Google Docs
→そんなうまい話はねぇ!
■たきざわ(@turky)さん
実録!電子出版サイト裏の裏!
→「電子書籍について話してください!」と
色々なところでいわれますが、全部断っております。
■くえにし(@kuenishi)さん
できる!ZooKeeper超入門
→「ゲームじゃないよ!」「どうしてこうなった!」
■takabow♨ (@takabow)さん
絵で見てわかる 某分散データストア
→便利でカスタマイズしまくれる分散KVSです。(100%Java!)
Pythonボルダリングイベントきてね!
■Yohei Sasaki(@yssk22)さん
20120317 CloudFoundry #pyfes
→PaaSのカーネル部分を提供。
ぶっちゃけGettingStartedがあるくらいで
ドキュメントありません。CouchDBはオワコン。
■TakuFukushima(@takufukushima)さん
ネットワーク仮想化プラットフォームMidoNetについて
→ネットワーク機器はスケールアウトできる!?
■moriyoshi(@moriyoshi)さん
何か(仮)
→innokoDB。ストレージエンジン。
「泣いてもいいですか?」「あ、insertとかできるんですね」
■Web魚拓の人(@hiroki_niinuma)
ウェブ魚拓史
→1DのAndroidゲーム,トンネルRPG出しました。
魚拓が起こした問題。◯電すごいな(◯い意味で)
次回の日取りは決まっていないそうですが、
引き続き参加したいと思います。
9月ごろとおっしゃっていたので、
その頃はPython3.3がリリースされている頃ですかね。
Python2→3系に移行することになった時のために
もっとPython力を見につけておきたいですね。
会場を提供してくださったOracleさん、
ハンズオンや発表されたみなさん、
参加されたみなさん、お疲れ様でした&ありがとうございました!
参加者ブログ
Python Developers Festa 2012.03 #pyfes でテストハンズオンに参加した - あさとの @drillbits
Even More Addicted to Indentation: Python Developer Festa 2012.03 に行きました。
Python Developers Festa 2012.03に参加してきましたよ! #pyfes - プログラマ行進曲
「Python Developers Festa 2012.03」に参加して来ました。 - 強火で進め
Python Developers Festa 2012.03 に参加してきた - 彷徨えるフジワラ
pyfes 2012.3に参加してきました。 - そこはかとなく書くよ。
Python Developers Festa 2012.03 を開催します - Twisted Mind
例の如く、当日の天気は雨模様。
前回はぎりぎりだったので、今回は早めに行きました。
当日の様子はかえるの人(@blaue_fuchs)がまとめてくれています。
Python Developers Festa 2012.03 #PyFes 〜ハンズオン開始まで - Togetter
Python Developers Festa 2012.03 #PyFes 〜ハンズオン中 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT1 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 2 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 3 - Togetter
Python Developers Festa 2012.03 #PyFes 〜LT 4 - Togetter
Python Developers Festa 2012.03 #PyFes 〜終了後 - Togetter
当日は大きく分けて
・ハンズオン
・プレゼンテーション
が行われました。
・ハンズオン
@voluntasさん、@yokatsukiさんより諸注意の後、
10:00〜15:00まではハンズオンを実施しました。
自分はPython でテスト(仮)に参加しました。
しかし落とし穴が……
講師のシャイデレ(@aodag)さんが来ない!!!
そこでTLを探っていたところ、
開場が10時だと勘違いしていた orz #pyfes
— あおさん (@aodag) 3月 17, 201210:30くらいに着くはず>< #pyfes
— あおさん (@aodag) 3月 17, 2012……ひとまずハンズオンのURLは公開されていたので、
必要なツールをvirtualenvを使ってインストール。
しかし資料を読み進めながらテストツールをためしていたところ、
「もしかして、Python3が必要……???」
と気づきました。
自分のMBAにはPython2系しか入っていないので、
進めるには新しくPython3系を入れる必要があります。
どうしようかな思いましたがあまり環境を汚したくないので
pythonbrewを導入しました。
pythonbrewはpythonのバージョン管理ができるツールになります。
前々から入れようと思っていたのですが今回ので決意。
しかしはまった!pythonbrew及び、
Python3.2のインストールで午前中を使ってしまいました。
午後一でPython3.2のインストールまで終了したものの、
ハンズオンの内容は半分も進みませんでした。
いかんせん自分のレベルの低さと言うものを実感しましたね。
他のテーブルでは前回同様初心者テーブルは好評だったみたいですね。
隣でやっていたMercurialのテーブルも終始賑やかに見えました。
・発表
今回はPythonの話が多かった気がする。いや気のせいか……
PyCon2012とBPさんからの出版されるPython本
の押しが強かった気がします。
置いてけぼり感がすごいと有名なこの時間。
以下のプレゼンテーブルで進みました。
■しょーま(@shomah4a)さん
PyConJP2012 メンバ募集 -pyfes 2012.03-
→PyConJP2012スタッフ募集中。やる気のある人希望。
PyConで年収が上がりました!(要出典)
■bucho(@torufurukawa)
Python 3.3 チラ見
→今さらながらチェックインアプリ作りました。
mixiと連携してクーポンゲットできるよ!
■ところてん (@tokoroten)さん
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
→FirefoxやMicrosoftではやってます。
Vista時代からやり始めてて、XPに比べてバグが半分になりました。
■Vの人(@voluntas)riak-ja meetup #1 (仮)
→ライアックじゃなくてリアックと読みます。
全部英語だけどイベントやるよ。
■トイプーの人(@atsuoishimoto)
Python3と向かい合ってみる
→あわてるな。Python2.4、2,5を使っている人は、
まずはPython2.7の移行を始めよう。
■ナツ(@natsu_bm)さん
塹壕戦から揚陸艇強襲上陸まで (2012/03/17 pyfes)
→テスト≠品質 システムの価値をあげる手段の一つ。
■しぶや(@lanius)さん
KoshiNukeによる最高のGit体験
→会場の謎の一体感。次々と発せられる感嘆の声。
Hey!Koshinuke!
■清水川先生(@shimizukawa)
PYTHON PACKAGING (PyFes 2012.03 発表資料) - Google Docs
→そんなうまい話はねぇ!
■たきざわ(@turky)さん
実録!電子出版サイト裏の裏!
→「電子書籍について話してください!」と
色々なところでいわれますが、全部断っております。
■くえにし(@kuenishi)さん
できる!ZooKeeper超入門
→「ゲームじゃないよ!」「どうしてこうなった!」
■takabow♨ (@takabow)さん
絵で見てわかる 某分散データストア
→便利でカスタマイズしまくれる分散KVSです。(100%Java!)
Pythonボルダリングイベントきてね!
■Yohei Sasaki(@yssk22)さん
20120317 CloudFoundry #pyfes
→PaaSのカーネル部分を提供。
ぶっちゃけGettingStartedがあるくらいで
ドキュメントありません。CouchDBはオワコン。
■TakuFukushima(@takufukushima)さん
ネットワーク仮想化プラットフォームMidoNetについて
→ネットワーク機器はスケールアウトできる!?
■moriyoshi(@moriyoshi)さん
何か(仮)
→innokoDB。ストレージエンジン。
「泣いてもいいですか?」「あ、insertとかできるんですね」
■Web魚拓の人(@hiroki_niinuma)
ウェブ魚拓史
→1DのAndroidゲーム,トンネルRPG出しました。
魚拓が起こした問題。◯電すごいな(◯い意味で)
次回の日取りは決まっていないそうですが、
引き続き参加したいと思います。
9月ごろとおっしゃっていたので、
その頃はPython3.3がリリースされている頃ですかね。
Python2→3系に移行することになった時のために
もっとPython力を見につけておきたいですね。
会場を提供してくださったOracleさん、
ハンズオンや発表されたみなさん、
参加されたみなさん、お疲れ様でした&ありがとうございました!
参加者ブログ
Python Developers Festa 2012.03 #pyfes でテストハンズオンに参加した - あさとの @drillbits
Even More Addicted to Indentation: Python Developer Festa 2012.03 に行きました。
Python Developers Festa 2012.03に参加してきましたよ! #pyfes - プログラマ行進曲
「Python Developers Festa 2012.03」に参加して来ました。 - 強火で進め
Python Developers Festa 2012.03 に参加してきた - 彷徨えるフジワラ
pyfes 2012.3に参加してきました。 - そこはかとなく書くよ。
2012年3月12日月曜日
新宿 Book-a-thon #11に参加してきました。
kashew_nuts-tech: 新宿 Book-a-thon #7 -新春スペシャル-に行って来ました。
以来ずっと仕事が終わらず一向に参加できる気配がなかったのですが、
久しぶりに参加。
気づけばconnpass-新宿 Book-a-thon #11と二桁になっております。
ATNDからconnpassへとイベントページも移行。
気分一新ですね。
当日の様子は@usaturnさんが以下にまとめてくれています。
新宿 Book-a-thon #11 - Yukarin'Note
今回自分が読んだ本は
読んだと言うより記述しているスクリプトを、
VM上のUbuntuで写経していました。
主催の@tk0miyaさんの学生時代のバイト話で盛り上がっていたお陰で
そちらの話が気になりなかなか本に集中できないというおまけも
ついてましたが、
区切りのいいところまでは読み終えることができました。
次回のBook-a-thonイベントももう日にちが決まっているようです。
connpass-新宿 Book-a-thon #12
20日が祝日ということで22日(木)になり、
自分もまさかの補欠になっていますがなんとかなるでしょう。
楽しみです。
以来ずっと仕事が終わらず一向に参加できる気配がなかったのですが、
久しぶりに参加。
気づけばconnpass-新宿 Book-a-thon #11と二桁になっております。
ATNDからconnpassへとイベントページも移行。
気分一新ですね。
当日の様子は@usaturnさんが以下にまとめてくれています。
新宿 Book-a-thon #11 - Yukarin'Note
今回自分が読んだ本は
山森 丈範
技術評論社
売り上げランキング: 13221
技術評論社
売り上げランキング: 13221
読んだと言うより記述しているスクリプトを、
VM上のUbuntuで写経していました。
主催の@tk0miyaさんの学生時代のバイト話で盛り上がっていたお陰で
そちらの話が気になりなかなか本に集中できないというおまけも
ついてましたが、
区切りのいいところまでは読み終えることができました。
次回のBook-a-thonイベントももう日にちが決まっているようです。
connpass-新宿 Book-a-thon #12
20日が祝日ということで22日(木)になり、
自分もまさかの補欠になっていますがなんとかなるでしょう。
楽しみです。
2012年3月11日日曜日
MacとWindowsでvimのdotfiles管理してみた。
去る3/3、TokyoVim#4に行って参りました。
参加登録の〆切は過ぎていたのですが、
主催の@kana1さんに直接連絡することで何とか参加!
いや〜きいてみるものですね。
当日の様子は@usaturnさんがまとめてくれています。
自分が当日やったこととしては以下の3つです。
・NeoBundle.vimを用いてdotfilesの整理
・VMに入れているWindows7にNeoBundle.vim導入
・バイナリエディタとしてのVimの使い方調べ
dotfilesについては以下のURLが詳しいです。
gitが入っていれば2〜3分でいつも使ってる自分の環境が構築出来ます。
ナウなヤングのためのgithub入門講座 -基本機能からdotfiles管理まで- - 馬鹿と天才は紙一重
少し引用させてもらうと、
dotfilesはhomeディレクトリにある各種プログラムの設定ファイルです。
.vimrcとか.screenrcとか、ああいうやつです。
これらがgithubにあると同じ設定ファイルを
例えば会社と自宅のような別環境で使うことができ、
どちらかで設定をしなおすという面倒なこともなくなり便利です。
以前は下記リンクを参考にvundleでやってみましたが、
neobundle.vimでまたやり直してみました。
今回移行しようと思った最大の理由は、
Pluginを入れるたびに出てくるDOS窓が煩わしかったから。
そろそろしっかりvimを使う。dotfilesのgithub管理とvundleの導入。 - holyppの日記
そろそろしっかりvimを使う。github+vundleを利用したWindowsとの同期。 - holyppの日記
vimprocという非同期処理を行う
Pluginを動かすのに少し手こずりましたが、
MBAに入れるときは
30秒で MacVim に VimShell を入れる最速の方法 | ウェブル
を参考に_vimrcに
WindowsでもWindows7 GVim にVimShellをインストールする | karakaram-blog
を参考に解決することができました。
proc.dllをproc.soにリネームして.vim/autoload/にコピーすることで完了。
Vim上で、
これでMacだろうがWindowsだろうが
問題なく自分のVimが使えるようになりました。
参加者のみなさんお疲れ様でした!
参加登録の〆切は過ぎていたのですが、
主催の@kana1さんに直接連絡することで何とか参加!
いや〜きいてみるものですね。
当日の様子は@usaturnさんがまとめてくれています。
TokyoVim#4 - Yukarin'Note
自分が当日やったこととしては以下の3つです。
・NeoBundle.vimを用いてdotfilesの整理
・VMに入れているWindows7にNeoBundle.vim導入
・バイナリエディタとしてのVimの使い方調べ
dotfilesについては以下のURLが詳しいです。
gitが入っていれば2〜3分でいつも使ってる自分の環境が構築出来ます。
ナウなヤングのためのgithub入門講座 -基本機能からdotfiles管理まで- - 馬鹿と天才は紙一重
少し引用させてもらうと、
dotfilesはhomeディレクトリにある各種プログラムの設定ファイルです。
.vimrcとか.screenrcとか、ああいうやつです。
これらがgithubにあると同じ設定ファイルを
例えば会社と自宅のような別環境で使うことができ、
どちらかで設定をしなおすという面倒なこともなくなり便利です。
以前は下記リンクを参考にvundleでやってみましたが、
neobundle.vimでまたやり直してみました。
今回移行しようと思った最大の理由は、
Pluginを入れるたびに出てくるDOS窓が煩わしかったから。
そろそろしっかりvimを使う。dotfilesのgithub管理とvundleの導入。 - holyppの日記
そろそろしっかりvimを使う。github+vundleを利用したWindowsとの同期。 - holyppの日記
vimprocという非同期処理を行う
Pluginを動かすのに少し手こずりましたが、
MBAに入れるときは
30秒で MacVim に VimShell を入れる最速の方法 | ウェブル
を参考に_vimrcに
let g:vimproc_dll_path = $VIMRUNTIME . '/autoload/proc.so'と記述することであっさり動きました。
WindowsでもWindows7 GVim にVimShellをインストールする | karakaram-blog
を参考に解決することができました。
proc.dllをproc.soにリネームして.vim/autoload/にコピーすることで完了。
Vim上で、
:Unite neobundle/install:!と打つとDOS窓がでることなく次々にUpdateが実行されていきます!
これでMacだろうがWindowsだろうが
問題なく自分のVimが使えるようになりました。
参加者のみなさんお疲れ様でした!
Labels:
Git/Mercurial,
Mac,
Vim,
Windows7,
開発環境
2012年2月29日水曜日
久々エントリ
気がつけば1ヶ月もBlog更新していないじゃないか!
というわけで月の終わり間際に書いてみる。
お仕事が忙しいとなかなか。
思えば今月はノるにノれない月だった……
・iPhone4(1年5ヶ月稼働)のバッテリー内蔵型ケースが
壊れて充電できなくなる。
・iPhone4(1年5ヶ月稼働)本体死亡。
・ガラケー(P905i 3年11ヶ月稼働)が操作中急に再起動する。
・お仕事が終わらない!プロジェクトの忙しさMAX!!
・9月以降毎月行ってた勉強会に今月は行かず仕舞い。
(内1つは開催延期)
・情報処理技術者試験の申込忘れる
お陰で生まれた今月の余計な出費一覧
・New!ガラケー(P-06C)
・New!iPhone4S(SIMフリー)
・New!iPhone4/4S対応バッテリー内蔵型ケース
・New!日本通信SIMカード
iPhone4SもSBで運用すれば多少は出費を抑えられた気がしますが、
また2年間縛られるはいやだなと思い一気に決断しました。
確認のし損ないのため
iPhone4Sは届いてもSIMカード持ってないという状態になり、
今はガラケー1本でやっていますが
これで3月の2週目にはまた元のモバイル環境に戻れます。
電車通勤中が手持ち無沙汰になってしまってますが、
丁度いい読書時間に当てられているのでこれはこれでいいです。
iPhoneが使えるようになるとまた読書時間が減りそうですね。
社会人1年目も残り1ヶ月で終わるので、
まわりを見直すいい機会だと捉えていこうと思います。
さー頑張るかー。
というわけで月の終わり間際に書いてみる。
お仕事が忙しいとなかなか。
思えば今月はノるにノれない月だった……
・iPhone4(1年5ヶ月稼働)のバッテリー内蔵型ケースが
壊れて充電できなくなる。
・iPhone4(1年5ヶ月稼働)本体死亡。
・ガラケー(P905i 3年11ヶ月稼働)が操作中急に再起動する。
・お仕事が終わらない!プロジェクトの忙しさMAX!!
・9月以降毎月行ってた勉強会に今月は行かず仕舞い。
(内1つは開催延期)
・情報処理技術者試験の申込忘れる
お陰で生まれた今月の余計な出費一覧
・New!ガラケー(P-06C)
・New!iPhone4S(SIMフリー)
・New!iPhone4/4S対応バッテリー内蔵型ケース
・New!日本通信SIMカード
iPhone4SもSBで運用すれば多少は出費を抑えられた気がしますが、
また2年間縛られるはいやだなと思い一気に決断しました。
確認のし損ないのため
iPhone4Sは届いてもSIMカード持ってないという状態になり、
今はガラケー1本でやっていますが
これで3月の2週目にはまた元のモバイル環境に戻れます。
電車通勤中が手持ち無沙汰になってしまってますが、
丁度いい読書時間に当てられているのでこれはこれでいいです。
iPhoneが使えるようになるとまた読書時間が減りそうですね。
社会人1年目も残り1ヶ月で終わるので、
まわりを見直すいい機会だと捉えていこうと思います。
さー頑張るかー。
Labels:
雑記
2012年1月18日水曜日
エキスパートPythonプログラミング読書会 第二期 03
エキスパートPythonプログラミング読書会 第二期 03
に参加してきました。
今回は定時ダッシュを決められたので、
あまり走らずに済んでよかったです。
1.アイスブレイク
各島ごと(6名程度)で5分間の自己紹介を行いました。
自己紹介順に、
@Qooh0さん、@aodagさん、@drillbitsさん、
@usaturnさん、そして清水川先生でした。
ここでは清水川先生と
「お正月にお雑煮を食べたことがない」
という話題で盛り上がりました。
清水川先生は先日初めてお雑煮を食べたそうです。
自分は未だに食べたことがありません……
2.読書会
前回に引き続きこの本の中では言語として一番難しいところでした。
ツイート数も少なかったように感じます。
islice
-イテレータ向けのslice関数
-ウィンドウに見えているところにだけ切り出している。
-オブジェクトの実態を変えずに、VIEWを参照している。
tee
-Unixのteeと同じなはず。2つに分けるのがtee
-一時的に先読みしたい時先ので読み込んで、必要なら全部読み込むなどできる。
-最初の数バイト読み取って置いて、
もう片方はまったく受け取っていないオブジェクトとして、
そのまま使いまわすことができる.
groupby
-個数が入っているわけではない。a a a a などになっている。
-カウントが欲しい時は自分でカウントの処理を書いてやる。
-「aabbcda」のような後ろの方にあるaは取れない。
-数を数えたい時はソートして同じ物を整列させて挙げる必要がある。
-目的次第で分けて考える。
-GAEだと泣きそうになるほど使うそうらしい。
imap, izip, ifilter
-python3でimap, izipがmap, zipになる。
-filter reduce は残るが、グローバルの組み込み関数でなくなる
-(2012/01/25 0:30追記:functools.reduceに移動する) -リスト内包表記でできるのはなくなっていく方向らしい。
-関数型言語で使っているような表現をそのまま使っっている。
-itertoolsはジェネレータ普通に使おうとするとよく使うが、
やってみないと感覚がつかめない。
オペレーターとlambda
-オペーレーターモジュールにあるよってツッコミがある。
しかしlambdaの方が短くていいじゃんという意見もある。
「標準モジュールをつかってやるのは悪いこっちゃ無いです。」
デコレータ
-Pythonには、"クラスメソッド"、"インスタンスメソッド"がある。
-@がついているものは関数呼び出しで、
その直後にくるメソッドを読み込んで渡している。
-普通はちょっとした処理を追加したい時にデコレータを使う。
-デコレータは実装しようとすると難しいので、まずは使ってみたほうがいい。
-デコレータはオブジェクトを受け取れればなんでもいいので、
クラスでも、関数でも呼び出し可能であればなんでもいい。
with
-try~finallyとclose()が要らなくなる。
-with文に対応するには、withプロトコルに対応している必要がある。
→ __enter__, __exit__
-DBとかLibraryとかだとだいたい実装してくれているので、
書くことはほとんどない。
-清水川先生もwithが出た当時はそれほど試さなかった。
本を訳すまでは使ったことなかった。
なので、こんなものがあったなあと必要な時に思い出してくれれば。
contextlib
-yield文で分割している。
-yieldより前が__enter__相当、yieldより後が__exit__相当
-closing:ファイルとかだと勝手にクローズしてくれるが、
してくれないやつはこれを使うことでcloseを呼び出す。wrapper。
デコレータの注意点
-デコレータを使うと、関数がラッパー関数になり、引き剥がしができない。
-デコレータにする以前の状態にできないので、
テストの時毎回通ってしまうという問題も。
ツイート数が少なかったのとは別問題かと思いますが、
初めてTwitterでの質問を最後になるまで拾わなかったですね。
内容を理解するのでお腹いっぱいでした。
書き上げた内容もまだまだ説明が足りていない気がします。
3.ビアビッシュ
今回は予めビアビッシュの時間に
LT枠を取ってやろうという初の試みだったわけですが、
なんと発表予定者が全員キャンセルしてしまうという非常事態に。
なので当日公募という形で行われました。
行われたのは、
主催の@tfmagicianさんのmongoDB即興セットアップ
PyPyの方のPyPy紹介(お名前を失念してしまいました。すみません。)
@aodagさんのメタクラスプロトコル解説
@aodagさんのメタクラスプロトコル解説は特に印象的でしたね……
"メタクラスプロトコル"という名に
似合わぬファンシーな感じのスライド。
あれは注目の的でしょう。
内容もすごく濃かったと思います。
「どのネタがいい?」と聞かれた時は、
「えっ。何本あるんですか?」と驚きました。
10本くらいは準備しているそうです。
"いつ来るか分からない15分のために常に準備をしているのがプロ"
"来ないかもしれないからと言って準備をしないのがアマチュア"
とどこかで見たことがあります。
自分はまだまだですね。
いざと言う時に自分の力を出し切れるようにしたいです。
(追記:Gigazineでした。リンクはこちら)
次回の日程も既にconnpassにでています。
日程を聞いた時はまさかと思いましたが、どのようになるのか楽しみです。
エキスパートPythonプログラミング読書会 第二期 04
参考リンク
Togetter:エキスパートPythonプログラミング読書会 第二期 03
エキ Py 読書会02 2章後半
に参加してきました。
今回は定時ダッシュを決められたので、
あまり走らずに済んでよかったです。
1.アイスブレイク
各島ごと(6名程度)で5分間の自己紹介を行いました。
自己紹介順に、
@Qooh0さん、@aodagさん、@drillbitsさん、
@usaturnさん、そして清水川先生でした。
ここでは清水川先生と
「お正月にお雑煮を食べたことがない」
という話題で盛り上がりました。
清水川先生は先日初めてお雑煮を食べたそうです。
自分は未だに食べたことがありません……
2.読書会
前回に引き続きこの本の中では言語として一番難しいところでした。
ツイート数も少なかったように感じます。
-イテレータ向けのslice関数
-ウィンドウに見えているところにだけ切り出している。
-オブジェクトの実態を変えずに、VIEWを参照している。
-Unixのteeと同じなはず。2つに分けるのがtee
-一時的に先読みしたい時先ので読み込んで、必要なら全部読み込むなどできる。
-最初の数バイト読み取って置いて、
もう片方はまったく受け取っていないオブジェクトとして、
そのまま使いまわすことができる.
-個数が入っているわけではない。a a a a などになっている。
-カウントが欲しい時は自分でカウントの処理を書いてやる。
-「aabbcda」のような後ろの方にあるaは取れない。
-数を数えたい時はソートして同じ物を整列させて挙げる必要がある。
-目的次第で分けて考える。
-GAEだと泣きそうになるほど使うそうらしい。
-python3でimap, izipがmap, zipになる。
-
-(2012/01/25 0:30追記:functools.reduceに移動する) -リスト内包表記でできるのはなくなっていく方向らしい。
-関数型言語で使っているような表現をそのまま使っっている。
-itertoolsはジェネレータ普通に使おうとするとよく使うが、
やってみないと感覚がつかめない。
-オペーレーターモジュールにあるよってツッコミがある。
しかしlambdaの方が短くていいじゃんという意見もある。
「標準モジュールをつかってやるのは悪いこっちゃ無いです。」
-Pythonには、"クラスメソッド"、"インスタンスメソッド"がある。
-@がついているものは関数呼び出しで、
その直後にくるメソッドを読み込んで渡している。
-普通はちょっとした処理を追加したい時にデコレータを使う。
-デコレータは実装しようとすると難しいので、まずは使ってみたほうがいい。
-デコレータはオブジェクトを受け取れればなんでもいいので、
クラスでも、関数でも呼び出し可能であればなんでもいい。
-try~finallyとclose()が要らなくなる。
-with文に対応するには、withプロトコルに対応している必要がある。
→ __enter__, __exit__
-DBとかLibraryとかだとだいたい実装してくれているので、
書くことはほとんどない。
-清水川先生もwithが出た当時はそれほど試さなかった。
本を訳すまでは使ったことなかった。
なので、こんなものがあったなあと必要な時に思い出してくれれば。
-yield文で分割している。
-yieldより前が__enter__相当、yieldより後が__exit__相当
-closing:ファイルとかだと勝手にクローズしてくれるが、
してくれないやつはこれを使うことでcloseを呼び出す。wrapper。
-デコレータを使うと、関数がラッパー関数になり、引き剥がしができない。
-デコレータにする以前の状態にできないので、
テストの時毎回通ってしまうという問題も。
ツイート数が少なかったのとは別問題かと思いますが、
初めてTwitterでの質問を最後になるまで拾わなかったですね。
内容を理解するのでお腹いっぱいでした。
書き上げた内容もまだまだ説明が足りていない気がします。
3.ビアビッシュ
今回は予めビアビッシュの時間に
LT枠を取ってやろうという初の試みだったわけですが、
なんと発表予定者が全員キャンセルしてしまうという非常事態に。
なので当日公募という形で行われました。
行われたのは、
@aodagさんのメタクラスプロトコル解説は特に印象的でしたね……
"メタクラスプロトコル"という名に
似合わぬファンシーな感じのスライド。
あれは注目の的でしょう。
内容もすごく濃かったと思います。
「どのネタがいい?」と聞かれた時は、
「えっ。何本あるんですか?」と驚きました。
10本くらいは準備しているそうです。
"いつ来るか分からない15分のために常に準備をしているのがプロ"
"来ないかもしれないからと言って準備をしないのがアマチュア"
とどこかで見たことがあります。
自分はまだまだですね。
いざと言う時に自分の力を出し切れるようにしたいです。
(追記:Gigazineでした。リンクはこちら)
次回の日程も既にconnpassにでています。
日程を聞いた時はまさかと思いましたが、どのようになるのか楽しみです。
エキスパートPythonプログラミング読書会 第二期 04
参考リンク
2012年1月13日金曜日
新宿 Book-a-thon #7 -新春スペシャル-に行って来ました。
hb qp bp study 新年LT&ビアバッシュ2012行けなかった...
このまま1日が終わるのも癪だからブログ書きます。
新宿 Book-a-thon #7 -新春スペシャル-に行って来ました。
いつもは余裕で参加できるのに、
まさかの補欠者がでるという事態になりました(笑)
自分は当初エキPyを読むつもりでしたが、
年末年始で読みきれなかったBeing Geekを読むことにしました。
Book-a-thonは前回と同じように最初に読む本を各自紹介して、
そのあともくもくと持ってきた本を読み続けるというものでした。
大人7人が集まってほとんど話しもせずに
もくもく本を読んでいる図はシュールだったでしょう。
@tk0miyaさん曰く、
「集まって各々がバラバラのゲームを無言でやってる状態です」
なるほど!確かに!
何が楽しいのかって…やっている本人が楽しければいいんです!
読書自体は前回と同じように結構捗り、
7,8割のところまで読むことができました。
正月ボケが抜け切らない頭をしゃきっとさせるにはすごく良かったです。
実際問題無理矢理にでもこうゆうまとまった時間を取らないと、
なかなか本を読む機会なんて作れないと思う。
毎週第1、3火曜日に行われている新宿Book-a-thonだけど、
主催者の@tk0miyaのご都合で次回の開催日は未定。
何読むか考えておかないとな……
新宿道場の前だとアジャイルサムライに決定だろうけどね。
このまま1日が終わるのも癪だからブログ書きます。
新宿 Book-a-thon #7 -新春スペシャル-に行って来ました。
いつもは余裕で参加できるのに、
まさかの補欠者がでるという事態になりました(笑)
自分は当初エキPyを読むつもりでしたが、
年末年始で読みきれなかったBeing Geekを読むことにしました。
Tarek Ziade
アスキー・メディアワークス
売り上げランキング: 20751
アスキー・メディアワークス
売り上げランキング: 20751
Michael Lopp
オライリージャパン
売り上げランキング: 25733
オライリージャパン
売り上げランキング: 25733
Book-a-thonは前回と同じように最初に読む本を各自紹介して、
そのあともくもくと持ってきた本を読み続けるというものでした。
大人7人が集まってほとんど話しもせずに
もくもく本を読んでいる図はシュールだったでしょう。
@tk0miyaさん曰く、
「集まって各々がバラバラのゲームを無言でやってる状態です」
なるほど!確かに!
何が楽しいのかって…やっている本人が楽しければいいんです!
読書自体は前回と同じように結構捗り、
7,8割のところまで読むことができました。
正月ボケが抜け切らない頭をしゃきっとさせるにはすごく良かったです。
実際問題無理矢理にでもこうゆうまとまった時間を取らないと、
なかなか本を読む機会なんて作れないと思う。
毎週第1、3火曜日に行われている新宿Book-a-thonだけど、
主催者の@tk0miyaのご都合で次回の開催日は未定。
何読むか考えておかないとな……
新宿道場の前だとアジャイルサムライに決定だろうけどね。
登録:
投稿 (Atom)










![[改訂新版] シェルスクリプト基本リファレンス --#!/bin/shで、ここまでできる (WEB+DB PRESS plus)](http://ecx.images-amazon.com/images/I/41GMyWgQ3cL._SL160_.jpg)

