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.

20190126 yapc tokyo keynote

6,312 views

Published on

YAPC::Japan 2019 Tokyo

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

20190126 yapc tokyo keynote

  1. 1. YAPC::Tokyo 2019 Keynote Perl Community への 報恩感謝 2019.01.26(Sat) tokuhirom
  2. 2. How do you like perl? Perl 好きな⼈人? Perl を仕事で使ってる⼈人 Perl が⾃自社のメイン⾔言語だ よって⼈人 Perl が嫌いな⼈人
  3. 3. Perl と私 • 2005年年 に学校を卒業。 • それまでは Python 等を使っていた • 当時から numpy が優秀だったので。。 • 2005年年 から Perl を始めた。 • 就職にともない。
  4. 4. Perl を利利⽤用し始めた理理由 • Perl で開発している会社に⼊入ったから • その会社が Perl だったのは、最初の CTO がエッジ出身だったから
  5. 5. その頃の Perl • Shibuya.PM がイケイケだった • livedoor とかがイケイケだった • Blog とかが流⾏行行っていた頃
  6. 6. その頃⾃自分がやっていたこと • 着メロ/着うた • ポイントサイト • モバイルアフィリエイト • ブログマーケティングサービス等
  7. 7. やっていたこと • 1ヶ⽉月ぐらいでプロトタイプ作って、リリースして売りに⾏行行って売れな かったら潰す、みたいなのをやってた • → 速く開発したい
  8. 8. 速く開発するためのくふう • すきをみて、とにかく開発を速くするためのライブラリを書く • 普通にライブラリ使ってると • もっと⾼高速に実装できるのではないか • 使いやすいインターフェースにできるんじゃないか • という疑問が出てくる
  9. 9. 短いサイクルで プロトタイピングすると。。 • リリースしてもすぐに終わるサービス多発 • リリースまですらいかないことも。 • → モチベーション維持のために、新しいチャレンジを1プロダクトにつ き1個⼊入れたい
  10. 10. そしてそもそも • なんか既存のライブラリ・ソリューションに対する不不満を、コードで表明 したかった。
  11. 11. 実際にどんなことをやったのか
  12. 12. PSGI/Plack • HTTP::Engine のリプレースプロジェ クト • YAPC の⼀一週間ぐらい前から盛り上 がってきた。 • miyagawa san,Yappo san, and me を 中⼼心に始まった。 • miyagawa さんがフライトの間にガン バッテ実装して、概要を YAPC の トーク差し替えてプレゼンした。
  13. 13. Amon2 • Web Application Framework • Fast, Simple, PSGI based. • Sledge に対するアンチテーゼ
  14. 14. Teng • nekokak さんが中⼼心となって開発された O/R Mapper • CDBI/DBIC への不不満から開発がスタートしている • 開発の初期から参加 • 当時、kamipo さんが⾔言うところの「クソクエリ」が 問題になっていた。 • クソクエリが発⽣生しづらい O/R Mapper を作れない か、というのがテーマの⼀一つだった
  15. 15. Furl • 昔の YAPC は東⼯工⼤大で開催されて いて、芝⽣生でビール飲みながら餃 ⼦子⻝⾷食べながら最近の技術的課題を 語っていた。 • 速い HTTP Client の必要性がその 中で話題になった • YAPC の LT で開発者を募集して翌 ⽇日から開発開始した
  16. 16. Text::Xslate • XS を活⽤用した⾼高速なテンプレートエンジン • 開発の初期から関わっていた
  17. 17. Perl Hackers ⽂文化 「こういう問題があるね」 「解決しましょう」 → ライブラリ爆誕
  18. 18. Software IC
  19. 19. CPAN の良い⽂文化 • ちょっとしたものでもアップロードしていい • 「CPANは幼稚園児の砂場じゃないよね」という話もあるけれど。。
  20. 20. OSS と私 • 「OSS 活動をしたい」というモチベーションで始めたわけではない • OSS に不不満があるからコントリビュートする • 最近は github の草をはやしたい、という話もあるけれど。。
  21. 21. コミュニティと私 • コミュニティとは「利利⽤用するもの」であり、かつまた「貢献するもの」 • 気負いすぎてもなァ。 • 貢献とは。。 • コード・発信・ユーザーサポート、などなど
  22. 22. コミュニティを利利⽤用するとは • 「こういうライブラリないの?」 • 「このライブラリのこういう挙動って仕様なの?」 • ⾃自分ひとりでは書き上げるのが⼤大変なライブラリの開発に仲間を巻き込ん で⼤大きな仕事をする • などなど。
  23. 23. コミュニティへの貢献への⼀一例例
  24. 24. ブログを書く • Qiita でも OK • Twitter にメモするのでもいいけれど、、 • 検索にひっかかることが重要 • ツイッターやチャットでコミュニティに聞い たことはブログにまとめる → コミュニティ への貢献につながる • イベント参加レポートも⼤大事
  25. 25. 初⼼心者をサポートする • チャットでの質問に答える • ただし、Perl Hacker のサポートは • 「こういう正規表現どう書けば良いんですか?」「perldoc perlre」みた いなのが多い気はするけれど。。
  26. 26. 勉勉強会を開催する • オフラインでのコミュニケーションもやっぱり⼤大事。 • ⼀一度顔合わせたことあるというだけで、Twitter とかでも絡みやすい。
  27. 27. カンファレンスに参加する • ⽇日本⼈人はカンファレンス真⾯面⽬目に話聞 きすぎ問題 • みんなでディスカッションしましょう。
  28. 28. Issue を上げる • Issue を上げるのも⽴立派な貢献 • Vote するのも⽴立派な貢献
  29. 29. コードを書く • Pull-Request を出すのはもちろんのこと • 新規のライブラリを⽴立ち上げるのも⼤大事
  30. 30. 他にも他にも
  31. 31. perldoc.jp の リニュアール作業
  32. 32. FrePAN CPAN Module
 Updates
  33. 33. いろいろやった結果
  34. 34. 海海外への渡航⽀支援
 YAPC::NA
  35. 35. そして今
  36. 36. お前、Perl 書いてないん じゃないの??
  37. 37. Perl とやりつくした感 • O/R Mapper, Web Application Framework, Template Engine etc. • だいたい全部の再発明に関わった。
  38. 38. Javaと私 • Perl やりつくした感じがあったのと会社の環境もあって Java へ。。
  39. 39. プログラミング⾔言語と エンジニアの⽣生活 • Hacker は、プログラミング⾔言語は複数を常時使える状態をキープしてお くのが当たり前だと思っています( How to become a hacker 世代) • 会社/社会の環境にあった⾔言語を選択していけば、個⼈人的には何で書いて もいいんじゃないかなあ、と思っています。
  40. 40. ⼀一次の Perl は領域を広げ過ぎたのでは問題 • もともとは Reporting ⽤用途 のためのテキスト処理理⾔言語 • ⼤大きなソフトウェアを書く には型があったほうが便便利利 な⾯面も perldoc perlform
  41. 41. Perl のつらみ • 0, "" が falsy • wantarray が難しい • AWS とか Google とかが SDK を出してくれない
  42. 42. とはいえ Perl 便便利利 • 正規表現リテラル便便利利 • s/foo/bar/ 便便利利。。 • $_ 便便利利。。。 • __DATA__ 便便利利。。
  43. 43. use strict; while (<DATA>) { chomp; my @row = split /,/, $_; print "INSERT INTO foo (id, name) VALUES (@{[ join ',', @row ]});n"; } __DATA__ 1,miyagawa 2,naoya 3,charsbar
  44. 44. Perl は sed や awk より ⾼高機能!!!!!!!! なので引き続き使っていきます
  45. 45. みんなと⼀一緒に Hack を楽しんできた
  46. 46. Future Perl Community is You! これからの Perl Community を作るのは、 登壇者の皆さんと YAPC スタッフの皆さん、 そして、客席のあなたたちです!

×