プログラマ行進曲第二章

主にソフトウェア関連の技術をネタにした記事を執筆するためのブログ

PyCon JP 2015に参加してきたので振り返る #pyconjp

PyCon JP 2015に参加してきました。今年のPyConも盛況に終わり、参加者も600名を超えるまでに増加したとのことです。イベント開催に尽力した運営スタッフをはじめ、関係者の方の努力には頭が下がるばかりです。

例年真面目に参加エントリを書こうと気負いすぎて全てのことを一度に書こうとして、いつも仕上げられずにお蔵入りする羽目になっているため、今回は少し手法を変えて書いてみます。

取りあえず思いついた感想を数点書いて一旦公開、それから時間を見つけて参加したトークの感想や感じたことなどを気の済むまで追記していく、というスタイルでやってみようかと思います。

後で書くつもりのことは"Todo"とか書いておいて目印にするつもり。時間が無くて書けなくなったらしれっと消すと思いますが。

チュートリアル

昨年のPyCon JPが終わったあとのブログ記事やら感想を見ていたら「チュートリアル参加したかった」という後悔が強くなったということがあったので、今年はちゃんと射程を合わせて有給を取ってフルで参加しようと思い、実行。

チュートリアルの全体的な感想

有休使ってお金を払って午前も午後も参加してよかった!と思いました。

というのも、今回のチュートリアルで個人的に狙っていた効果は以下のようなもので、それが達成されたからです。

  1. 自習すると無駄に時間がかかりそうな分野の知識・情報を概観して後で自学自習する効率を高めるようにすること
  2. お金を払って受講することで習ったことを無駄にしないようにある種の強制力を働かせること

今後の活動にいい影響が出るかどうかは今後の私次第なのでなんとも言えませんが、少なくとも「機械学習」と「ベイズ推定」に関しては数時間かけて詰め込んだことと豊富な参考資料をゲットしたことを考えると、後で振り返る際の取っ掛かりが出来たのではないかと思います。

Machine Learning Bootstrapの感想

チュートリアルは1日券を購入したのですが、それは午前にも午後にもちょうど参加してみたいものがあったからです。その一つがこのMachine Learning Bootstrapでした。

前々から機械学習には興味があって、空いた時間で勉強していたんですが、どの資料を読んでコードを書いてもそもそもの理論が難しかったり前提となる知識が多くて「全然分からん!」となっていました。特にPackt Publishingで半額期間の時に買ったこの本を読んでいたときにそう感じました。

Building Machine Learning Systems With Python: Get More from Your Data Through Creating Practical Machine Learning Systems With Python

Building Machine Learning Systems With Python: Get More from Your Data Through Creating Practical Machine Learning Systems With Python

英語とかそういう以前に、読んでいて「確率的勾配降下法って何?読んでも分からん…」と分からなくなることが多く、機械学習の習得を少し諦めていたという流れがあったところに丁度よさげなチュートリアルが出てきてしめしめと思い、参加。

実際の内容を細かく書こうとすると多分また書き切れなくてボツ行き になると思うので軽めに書くとすると、(環境構築が事前に必要とは言え)細かい所に時間を割かずに実際に動くアプリケーション環境が事前に用意されていてそれを動かしながら学習の様子を試すことが出来たので、自分で環境構築とエラーを出し続けるコードと闘いながら本を読み進めるよりかはずっと効率的に学べた気がします。

実際やった内容の自習編がQiitaで公開されているので興味がある人、興味があるけど参加できなかった人は見てみるといいと思います。

qiita.com

エンジニアのためのベイズ推定入門:確率論的プログラミングのすすめの感想

(詳しくは後日書く。ハミルトニアンモンテカルロ法とNo-U-Turn-Samplerという単語だけは持ち帰った)

午後にはこのチュートリアルに参加しました。参加した正直なところをいうと、自分には前提知識が足りなすぎて消化不良を起こした感があります。

ただ参加して無駄だったかというとそうではなく、後で確率論的プログラミングを習得してみたいと思った時に復習できるポイントをいくつも提示されたのでそれだけでも価値があるのと、一応自分なりの理解として以下のことを何となく持ちかえることが出来たのでそれが成果かなと思います。

  • MCMCは絶対に収束する。が、いつ収束するか分からない。
  • ハミルトンモンテカルロ法は汎用的に収束を速くする手法(らしい)
  • ハミルトンモンテカルロ法はパラメータの調整がすごく重要で難しかった
  • そういう中、No-U-Turn Samplerが考案されてそのパラメータ調整が非常に楽になった。
  • そのNo-U-Turn Samplerを使って実装されているものの一つがpymc3

メモ書きからの抜粋なので間違っている可能性大なので、間違っていたら教えてくれると嬉しいです。

PyCon JP 2015

PyCon JP 2015の全体的な感想

(各トークの感想を律儀に最初から書いていたら書き終わらずに旬を逃すので、後で少しずつ書いていくつもり)

個人的に非常に勿体ないことというか、後悔したことは「チュートリアルの日以外寝不足で頭が回らず、聞きたかったトークも集中して聞けないことがあった」ということです。

チュートリアルの日を除いたどの日も(スプリントの日も!)前日は22〜23時という早い時間に床につくようにしていたのに、PyConに参加するのが楽しみだったのか全然寝付けず、そのせいで母語である日本語のトークなのに全然意味が頭の中に入ってこないで理解できないという状態になったところもあり、非常に勿体ないなと思いました。

そんなこともありましたが、一応事前に参加したいトークを決め、前年の反省を踏まえて「聴講しに行くトークは本当に参加したいものだけに絞り、空いた時間で休んだり他の人とコミュニケーション取ったり、スポンサーブースを見て回ったりしよう」ということを実践したおかげで、燃え尽きずに平均的に楽しめたので少しはイベント参加経験値上がったなと思いました。

そのおかげでこういうことも経験できました。

オープンスペースで勃発的に発生した講義に運良く参加して知見を得られるというのもイベントの醍醐味ですね。

Todo: 各トークの感想を少しずつ書く

(全てではないにしろ、聴講したトークの感想とかを後でかくつもり…)

まとめ

来年のPyCon JPも楽しく参加したいですね!

後、一回くらい海外のPyConにも参加してみたいと思いました。ワーキングプアなので行くとしても近場(韓国か台湾)になると思いますが。そこまでお金を貯めて他の娯楽に散在したくなる誘惑を抑えるというハードルが高そうなのでどうなるかは分かりません。

まあ、そんな感じです。

PyCon JP 2015 参加者のブログ記事をできるだけまとめてみました #pyconjp

まとめサイトが嫌いなのにまとめサイトと同じ事をしていてダブルスタンダードを感じる今日この頃です。

やろうと思った理由

スライド資料、動画、Togetter公式サイトがもう既にまとめているのですが、参加者のブログ記事は労力考えると運営スタッフ主導でまとめないだろうなと思ったのと、自分が後で振り返って読みたいからです。

と思っていたら、運営スタッフの方がこんなツイートを。

もしかしたら後で公式サイトでもまとめられるのかも知れませんね。その時は適当にこのサイトのまとめ内容利用してください。

追記(2015/10/15 21:37時点)

とのことなので、本エントリの意義は半分は果たした!

これから見る人は上記の公式サイトまとめで感想ブログをフォローしていくといいと思いますよ。

それとは関係なく、まだ追加してなかった感想ブログの存在に気がついたらコソッと追加すると思いますけど。

(追記終わり)

それでは以下「スピーカー系」「参加者系」「スポンサー関係者系」というくくりで分けてまとめました。順番は適当です。 スピーカー兼スポンサー企業関係者の方など、複数属性の方が何人かいらっしゃいましたが、そこは独断と偏見で特定の一つのカテゴリに分けるようにしています。

あともちろん見落としもあると思います。単なる有志のまとめなのでクオリティに期待しないで!という注意だけ言っておきます。

スピーカー系

トークの登壇者だけでなく、チュートリアルのヘルプに入っていた人も私が知っている範囲内でここのカテゴリに入れてます。

nwpct1.hatenablog.com

d.hatena.ne.jp

shinyorke.hatenablog.com

ihcomega.hatenadiary.com

t2y.hatenablog.jp

f-shin.net

amacbee.hatenablog.com

sinhrks.hatenablog.com

librabuch.jp

shacho.beproud.jp

blog.ymyzk.com

http://mocobeta-backup.tumblr.com/post/131025586072/pyconjp-janome
mocobeta-backup.tumblr.com

memo.laughk.org

参加者系

nnsnodnb.hatenablog.jp

dackdive.hateblo.jp

chezou.hatenablog.com

d.hatena.ne.jp

yoshiki-utakata.hatenablog.com

soy-curd.hatenablog.com

soy-curd.hatenablog.com

rinnegrid.hatenablog.com

http://takuti.me/note/pyconjp-2015/takuti.me

www.tento-net.com

hogespace.hatenablog.jp

xaro.hatenablog.jp

arvelt.hatenablog.com

tanishiking24.hatenablog.com

nakagami.blog.so-net.ne.jp

スポンサー関係者系

aial.shiroyagi.co.jp

projectphone.lekumo.biz

projectphone.lekumo.biz

最後に

気が向いたら&新しく記事を見かけたら追記するかも知れません。

2015年9月まとめ

はじめに

前回のまとめはこちら。

takuan-osho.hatenablog.com

8月まとめは盛大に遅れたので今回は間に合わせたいと思いながら書いている状態。

やったこと

  • Sphinx+翻訳ハッカソンに参加。
    • 今回はSphinx自体をいじるのではなく、Gitの社内勉強会用資料をSphinxで作るために参加しました。
    • が、参加者の人と色々話していく内に、資料作りよりも前に課題の洗い出しとかが必要だと気づかされたので、あまり目立った成果は出ず。
  • 平日夜にすごいH本をちょびちょび読む会 18回目19回目に参加。
    • Haskellの話しはほとんどしなくなっていますが、圏論的な話しを元にFunctorの話しとかをゆるふわで色々聞けたり話せる機会があるって良いことだと実感する勉強会だなと毎回思います。
    • 直近の会ではMonoid、Homomorphism、Endomorphism、endofunctor、Monoidal Functor、Monoidal Categoryなど新しいことがドバっと出てきて、世界は広いなあと感じる次第。
  • 久々に一人旅をしました。
    • 八戸、奥入瀬渓流のあたりを旅行してきました。
    • なぜこの辺りに旅行したかというと、人生初の一人旅がここだったので、久し振りに訪れたくなったからです。
      • Foursquareによると、5年前の2010年5月に行っていたみたいですね。
    • 大自然が一杯の中でリフレッシュして、晩ご飯には美味しいビュッフェを堪能し、露天風呂で疲れた身体を癒やすことが出来、余った時間でOpenStackとかSwiftによるiOSアプリ開発の勉強が出来て体操よかったですね。
    • 旅行の様子を写真で紹介。

季節の関係か、残念ながら今回はうみねこの大群にはお目にかかれなそうですな。それでも参拝者がちゃんといる所はいいですね、

海でサーフィンしてる人もいる。

渓流眺めながら朝食。朝は寒い。

コントラストだけ上げて撮影してみた。

十和田湖に来てみた。

  • 写真だけだと伝わりづらい様子も以下の動画で今回は伝えられるので紹介。

所感

今月は主にシルバーウィークから始まった長期休暇中にOpenStackとSwiftの学習を集中的に行い、普段よりもずっと深いレベルまで学習することが出来たのがとてもよかったですね。

奥入瀬の静かな自然の中、お金を奮発して堪能したホテルで優雅に過ごしつつまったりと集中して勉強できる幸せを感じ、普段の生活もこの1/5でいいから幸せ感じて勉強したいと思いました。はい。

目に見える成果としては以下の通り。

これから

プログラミングの記事をアウトプットするのと、人前で発表する訓練積みたいところです。できれば多人数いる場所ではなく、こじんまりとした場所で練習したいですね。

2015年8月まとめ

はじめに

前回のまとめはこちら

takuan-osho.hatenablog.com

そしてもう9月が終わろうとしているのに8月まとめを書いていることに対して色々思うことはある。 9月まとめは今日中にやらないとまた死亡する。

私の今の場合、インプット優先するの、よくないですね、と思いました。

やったこと

自分のカレンダーを見ながら思い出すの、辛い…

  • Rebuild meetupに参加した。
    • After showのなんとも言えない空気感を体験して、現場にいる醍醐味を感じました。
  • YAPC Asia TOKYO 2015に参加した。
    • 未だブログに感想エントリ書いてないので、俺のYAPCは終わってない!
    • 今から書くのもどうだろうと思いつつ、うーんとなっているところ。
    • 簡単に今思い出せるだけの感想を言うと、ワンライナーのセッションが一番感心しました。
      • というのも、ある質問に対する登壇者の回答の仕方が素晴らしかったからです。
      • 気が向いたらそのことを含めて書くかも。
  • AnnictのMeetupという名の飲み会に参加した。
    • 最近忙しくて使用頻度が落ちているとはいえ、アニメ視聴記録用に重宝しているサービスなので参加できてよかったですね。
    • 参加した全員がAuthor or Contributerだったのには笑いました。
    • 色々開発の話しも聞けたので、時間を作ってちょくちょくPR投げられるようにしたいという思いを新たにしたところ。
  • 第23回Haskellもくもく会 @ 朝日ネットに参加。
    • こういう機会でHaskell勉強しているけれど、やはり遅々として進まないのでもう少しどうにかしたいところ。
    • とはいえ、あれもこれも手を広げすぎているので、少し抑えた方がいいのではないかと思いつつ、Haskell勉強したい欲はそれなりにあるのでどうしたものか、と考えています。
  • ゼーガペインのリセット祭としてサンライズフェスティバルに参加。
    • 行ってみたらセレブラントがたくさんいたので、熱の高まりを感じました。
    • 来年は10周年で大きな花火の予告がちらほら出ているので、今から楽しみです。

毎回やる度に、箇条書きの中でですます調とだである調が混じるという不具合勃発してますね。

所感

全てが後手後手に回ってしまって今更書いてしまうという体たらくなのが痛い。

これから

プログラミング系のアウトプットできていないのは7月から変わっていないので、どうしたものかと思案中。

Annictをローカルで動かそうと試してみてハマった箇所を記録してみた #annict

Annictというアニメ視聴記録サービスがあります。結構前から利用していて、私がアニメ視聴記録サービスに求めているものが結構あるので、個人的に重宝しているサービスです。Github会議の時に開発者の方とお話しする機会があった際、「こんな機能が欲しい*1んですよね!」と訴えるくらいには使っています。

さて、このAnnictというサービス、日本のアニメ視聴記録サービスとしては珍しい特徴(恐らく現時点では唯一?)があります。それはOSSであるということです。

github.com

今回はこのAnnictをローカルで動かそうとしたときにハマってしまったポイントをメモ代わりに残そうかと思います。

前提条件

開発環境はVagrantを使用して、Ubuntu 14.04を仮想マシンのOSに選びました。

Annictを動かすのに必要なツール類はこの記事が書かれた時点でのREADMEに書かれた指示通りにやっていてみました。

bundle installに失敗する

これはnative extensionを必要とするgemをインストールするときに事前に入れておかなければいけないソフトウェアを入れていなかったことが原因でした。具体的に言うとpgとかrmagickとかのgemをインストールするときの話しですね。

具体的に何を入れておけば問題なかったかどうかは色々試行錯誤しながらだったので全ては覚えていませんがrmagickを入れるためにsudo apt-get install libmagick++-devをして、pgを入れるためにpostgresqlだけでなくsudo apt-get install libpq-devをしたのは覚えています。

bundle exec rake db:createが失敗する

bundle installが成功したのも束の間、次はbundle exec rake db:createが失敗して途方に暮れるという事態に。

エラーを見ていてpostgresql周りの設定が出来ていないのだろうと当たりをつけて色々ググった結果、pg_hba.confという設定ファイルの設定の仕方に問題がありそうだということがなんとなく分かりました。

要するにRailsの知識ではなくてPostgreSQLの知識が足りなくて失敗していたということです。

で、根本原因を突き詰めると知識不足もあり果てしなく時間がかかりそうだったので、とりあえず急場しのぎとしてpg_hba.conf内のauth_methodがmd5になっている箇所をtrustに変更してみたら無事bundle exec rake db:createが通るようになり、続くbundle exec rake db:migratebundle exec rake db:seedも成功するようになって解決。

ただ、これはpg_hba.confの設定をよく分からずにやっているよろしくない例なので、今後設定の意味をちゃんと調べて安全なやり方でやってみたいところですね。

ポートフォワーディングしてもVirtualbox上の開発環境にアクセスできない

ここまで出来たから後はアクセスするだけだ!と思ったのも束の間、今度はbundle exec rails sしたVirtualbox内のRailsにホストマシンからアクセスできない状態に苦しめられました。

ここのポイントは「ポートフォワードを正しく設定しているのにアクセスできない」というところで、原因が本当に分からずに死にました。

色々調べて最終的に分かったことは、Rails 4.2からrails serverのデフォルトホストが変わったことが影響しているということでした。

これはRack側の変更の影響とのことですが、これにより仮想マシンで動かしているRailsにアクセスしようとしても依然と同じようにはアクセスできないため、この記事を書いている時点でのREADMEの説明だとアクセスできなくなっていたということが判明したので、Rails 4.2のリリースノートに書いてあるように-b 0.0.0.0オプションをつけてbundle exec rails sして解決しました。

で、コレに関しては既存のものを恐らく壊さないだろうし、私でも間違えずに貢献できそうだと思ったので、Pull Requestを送っていましたが、記事を書いている間にMergeされました!

Twitterの認証に失敗する

で、これでようやくRailsにアクセスできるようになって「やった!」と思ったら、認証にハマりました。

結論を言うと、これも結局Railsの知識とかではなく、Twitterのアプリケーション登録しているかどうかという話しでした。

Twitterのアプリ登録をして得たConsumer KeyとConsumer Secretを、一連の作業の中で出来たconfig/application.ymlの中の設定に書き込んで解決。

この時地味にハマるのが、Twitterのアプリ登録時にCallback URLを設定していないと認証するときにエラーになるということ。(参考記事)

…こう書いていると自分の知識の無さにへこみますね…

最後に

とりあえず画像変換サーバーのtomboを動かしてやっているわけではないので画像周りは表示されませんが、無事にローカルで動くようになったので、とりあえずよしとしたいです。

今後の開発者が試しやすくなるようにVagrantfileとかDockerfileとかdocker-compose.ymlとかを用意してPull Requestを送れるようになったら送ろうと考えて今四苦八苦しています。

今後も何かしらいじってみて貢献できたらいいなと思って利用していくつもりです。

*1:「アニメ視聴ステータスにHummingbirdでいうOn Holdにあたるステータスを追加して欲しい」という要望でしたが、これは後日、ありがたいことに「中断という視聴ステータスが追加」という形で実装されました

2015年7月まとめ

はじめに

前回のまとめをまず貼ることから。

takuan-osho.hatenablog.com

今回も当月中にまとめがアップできていないのである。

やったこと

  • gulpでslimやsassのコンパイル楽にする方法を覚えた。
    • 秘伝のタレ化してしまいがちなところに気をつけていれば有用なツールっぽい。
    • とはいえ、秘伝のタレになるくらいならnpmだけで対処した方がいいのかも?とか思う今日この頃。
  • react.jsの基本的なところはやっと覚えてきた。
  • 会社の懇親会に出た。
    • いつもこういうのには出てないので、たまには出るかと思って出てみたら意外とよかった。
    • ただ、コレに出る関係でHちょびよみに一回出られなかったのは痛かった。
  • Swiftの勉強会に再び参加。
  • 久しぶりにHちょびよみに参加。
    • 7/30の回でFuntorとApplicative Functorの箇所を学ぶ。
    • 本格的に始まる前に前回までのノートを写してもらう時間があったので非常に助かりましたね。遅れていた分を少しは取り戻せてよかったかな、と。

所感

なんとなく少しはまともに過ごせた気がする1ヶ月だったと思います。

これから

今回も7月まとめを8月にやっているという状態なので、どうにかしたいところ。

とはいえ、ブログ更新も少しずつまた出来るようになってきたので、少しアウトプットを意識してやってみたいですね。

特に、書いたコードのアウトプットが最近出来ていないのでそこをもう少しどうにかしたいです。

まず手始めに、「最近学んだgulpとか使って開発時に色々楽をする」というところから記事にする、という感じかと思ってます。

PyConJP 2015のプロポーザル一覧を把握しやすいようにざっくり整理してみた

何でこんなことしたか?

PyConJP 2015のプロポーザル一覧ページが種類別とかレベル別にソートできない仕様で、かつabstractも含まれている関係でページが縦長になっていて、投票したくなるプロポーザルを把握できなかったから少しスクレイピングしてデータ整理(リンク付きタイトルを抽出して一覧化)してみたかったというのが理由。

つまり自分用です。なので、リンク間違い・タイトル間違いあっても勘弁して下さい。 後、Twitter見てるとチュートリアルはもう既に採用されたものが何個か決まっているみたいですけど気にしないことにしました。

以下、自分なりに整理したプロポーザルです。ソートは適当。というかしていない。

個人的に把握しやすいように整理したプロポーザル一覧

talk(初級)

  1. セカイノカオ by チーム・カオ(ja)
  2. Integrating Django with Centralised Identity Management(en)
  3. Doing Math with Python(en)
  4. Sphinxで作る貢献しやすいドキュメント翻訳の仕組み(ja)
  5. PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう(ja)
  6. Pythonで3Dデータモデリング&3Dプリント(ja)
  7. Cyber attack: About DNS DDoS, and analysis it with Python(en)
  8. データベースドライバーひと巡り(ja)
  9. Translation of Python Programs into non-English Languages for Learners without English Proficiency (en)
  10. PyCon JP を支える技術 2015(ja)
  11. with modern_peripherals: Python and Flask(en)
  12. PyCharm Essentials(en)
  13. 野球Hack!~Pythonを用いたデータ分析と可視化(ja)
  14. MinecraftをPythonで遊ぶ(ja)
  15. なぜWeb画面自動テストはうまく行かないのか(ja)
  16. 14歳からの関数型プログラミング in Python(ja)
  17. 10年続くWebサービスでも使えるOpsのためのfabric入門(ja)
  18. pythonが支える、データ駆動型コンテンツの創出(ja)
  19. Infrastructure as Code with Ansible(en)
  20. Breaking backwards compatibility: The easy way! (en)
  21. Dissecting the Stack: How things were glued together(en)
  22. Teaching Data Structures with Python(en)
  23. Python, the next Brazilian generation(en)
  24. JSONSchema with Python(ja)
  25. Python3を利用して良かったこと(ja)
  26. Mezzanine, the best CMS on Python(en)
  27. エンジニアの技術力評価は難しい? - 相互評価制度を約4年やってみたけど、わりと良い感じかもしれない -(ja)
  28. はじめてのドローン・プログラミング(ja)
  29. Web2.0せんせーが進路相談!(ja)
  30. 日本のオープンデータプラットフォームをPythonでつくる(ja)
  31. Pythonで作る俺様サウンドエフェクター(ja)
  32. Gandi CLI: Open Source command line interface to manage domain names and hosting infrastructures(en)
  33. kaa - Python製テキストエディタ(ja)
  34. tse - Pythonによるテキスト整形ユーティリティ(ja)
  35. Learning by Experience, Devploying pyxbackup(en)
  36. Kivyの基礎: アプリケーション開発の楽しさを考える(ja)
  37. Ways to avoid overfitting when developing a trading strategy(en)
  38. Pythonで作るリコメンデーションシステム(ja)
  39. DevOps ツールの選びかた・使いかた 〜ヌーラボの場合〜(ja)
  40. PyLadies Tokyo-初心者女性向けPython体験ワークショップ開催の裏側(ja)
  41. PythonとYAMLでGCPをDeploy!「Google Cloud Deployment Manager」(ja)
  42. Rise of the Static Site Generator(en)
  43. Better Python DevOps Security(en)
  44. Karaoke-style Read-aloud System Using Speech Recognition and Text-to-Speech Technology(en)
  45. 強くなるためのプログラミング ープログラミングに関する様々なコンテストとそのはじめ方ー(ja)
  46. 失敗と成功のあいだ:ゼロからはじめる強化学習(ja)
  47. 土木でも使えるPython☆彡(ja)
  48. ユニットテストのあれやこれや(ja)
  49. クローラーと僕(ja)
  50. PyPIデビュー 2015(ja)
  51. On SageMathCloud - Doing Mathematics and Python programming on cloud.(en)
  52. Pythonによる科学技術計算入門(ja)

talk(中級)

  1. 組合せ最適化を体系的に知ってPythonで実行してみよう(ja)
  2. Sphinx autodoc: APIドキュメントの自動生成(ja)
  3. データ可視化技術の過去/現在/未来(ja)
  4. Python で作って学ぶ形態素解析(ja)
  5. Program Pepper in Python(en)
  6. Python3 WSGIアプリケーション入門(ja)
  7. Packaging最前線(ja)
  8. Tornado/Websocketを使ったモバイルゲームアプリケーションの事例紹介(ja)
  9. Web Scraping in Python(ja)
  10. Writing Fast Code(en)
  11. Pythonによる未知語・重要語キーワード抽出とその応用(ja)
  12. Tornado/ElasticSearchで実現する大量ツイートのリアルタイム関連文書判定(ja)
  13. Making Python coexist with others(en)
  14. Ansible x AWS -- Infrastructure as Code for Small Team(ja)
  15. Threads and Callbacks for Embedded Python(en)
  16. Building a Scalable Python gRPC Service using Kubernetes(en)
  17. NAO + iPadで実現するコミュニケーションロボット!tornado/websocketで実装するタブレットを使った対話ロボットアプリの事例(ja)
  18. Djangoとフロントエンドフレームワークの共存事例(ja)
  19. pandasによるデータ加工:テストのコツ・注意点やライブラリの紹介(ja)
  20. uWSGI/Dockerを利用したWebサービス運用事例(ja)
  21. How we realize SOA by Python(en)
  22. アドネットワークのデータ解析チームを支える技術(ja)
  23. Python × Bluemix でやったHack-a-thonでの超短期間認識系アプリ開発事例(ja)
  24. Introduction to Theano -- not only for deep learning(en)
  25. Data selection techniques in pandas(en)
  26. Pythonでマイクロサービス構造のWebサービスを実現する(ja)
  27. CFFI Is the Future(en)
  28. Mochiの紹介(ja)
  29. Python と型ヒント (Type Hints)(ja)
  30. 個人の写真から分かる過去と未来 ~機械学習を添えて~(ja)
  31. Introduction to nipype and creating stable NeuroImaging pipelines using it (en)
  32. Cython at rescue .(en)
  33. Machine Learning to solve grass root level problems .(en)
  34. pandas internals(en)
  35. Python and the Semantic Web: Building a Linked Data Fragment Server with Asynco and Redis(en)
  36. Pythonによる4足歩行ロボットの制御と強化学習による歩行動作獲得の実例(ja)
  37. fabricを用いたサーバーメトリクスの収集と可視化(ja)
  38. Cython による他言語の拡張(ja)
  39. 2015年決定版! 博士のPythonでハードウェアを扱う方法(ja)
  40. Scaling and Launching Python on AWS(en)
  41. Djangoのエントリポイントとアプリケーションの仕組み(ja)
  42. Pythonで作る、少し未来のオフィス(ja)
  43. Give your scripts the power of the Web! Web automation through Python(en)
  44. Let's prevent bugs by checking our types in Python(ja)
  45. Getting started with PySpark(en)
  46. Let it crash: what Python can learn from Erlang.(en)

talk(上級)

  1. Jumping the Python Ship: Better Alternatives To Python(en)

poster

  1. Sphinx-users.jp(ja)
  2. Python x Edison = New World!!(ja)
  3. ニューラルネットの実装が簡単なChainerを用いた音声からの感情識別(ja)

tutorial

  1. Sphinxハンズオン(ja)
  2. 【初心者向けPythonチュートリアル】Webスクレイピングに挑戦してみよう(ja)
  3. Pythonを使った機械学習入門(ja)
  4. Python x Edison x AWSではじめる IoT(ja)
  5. Effective Pandas(ja)
  6. エンジニアのためのベイズ推定入門:確率論的プログラミングのすすめ(ja)
  7. Machine Learning Bootstrap(ja)

どうやってプロポーザル一覧を整理したか?

全然高度なことしていないですが、メモ代わりに残しておきます。

  1. kimonolabsを活用して、プロポーザル一覧ページや各プロポーザル一覧のページのデータをスクレイピングしてjson化する
  2. 作ったjsonPythonで処理して、各プロポーザルの詳細ページへのリンク付きタイトルリストをmarkdown形式にするように吐き出す
  3. markdownを処理できるブログとかに貼り付ける

最初はスクレイピングも勉強がてらPythonでやってみようかと思っていましたが、該当ページのDOMの構造見てたら「面倒臭そう…」と感じてしまったのでkimonolabs使ってサボりました。が、目的は「PyConJP 2015のプロポーザル一覧を早くしやすくする」という所だったので、前処理で疲れ果てると本末転倒だからこれでいいかと思っています。

余談ですが、kimono便利なので、知らない人は活用してみるといいと思います。

思ったこと

公式ページ自体にソートっぽい機能があるといいなと思いました。

あと、投票していないので聴きたいtalkをさっさと投票しないといけないですね。