僕が最初にPerlを学んだ方法 #perlbeginners

2,676 views

Published on

2013/07/25行われた PerlBeginners#9 にてトークした基調講演のスライドです。

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,676
On SlideShare
0
From Embeds
0
Number of Embeds
306
Actions
Shares
0
Downloads
9
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

僕が最初にPerlを学んだ方法 #perlbeginners

  1. 1. 僕が最初に Perlを学んだ方法 尾形 鉄次 (OGATA Tetsuji) Twitter: @xtetsuji 2013/7/23 PerlBeginners#9 基調講演
  2. 2. 自己紹介 • 尾形 鉄次 (OGATA Tetsuji) • Twitter: @xtetsuji • Blog: http://post.tetsuji.jp/ • Perl歴は2003年から断続的に10年ほど
  3. 3. 今回コードの話は ほぼしません
  4. 4. タイトルについて • 「僕が最初にPerlを学んだ方法」 • これだけだと、ただの僕の昔話になる ので、その話題をしつつも、皆さんが 今「最初にPerlを学ぶには」どうすれば いいか、考えてみようと思います
  5. 5. 歴史と文化 • 本トークでは主にPerlの歴史や勉強法を メインに語りますが、個々の具体例に あまり踏み込まず、抽象的にPerlの文化 に触れています • 具体的な文化の話は他のトークに期待
  6. 6. Perlとの出会いまでを 振り返ってみる
  7. 7. Perlとの出会い以前 • 子供の頃はただのテレビゲームっ子 • 高校時代にMSX BASICが分からず • 大学時代はWindowsからLinuxまで触っ たけど、プログラミングは頭のいい人 が書くものだと思って避けていた
  8. 8. 社会人になる • 学生時代に得たサーバ管理のスキルで 食いつなごうと思って適当に入社する • 先輩のスキルが高すぎて自分のサーバ 管理スキルを使ってもらえなかった • 雑用係になる
  9. 9. 雑用いろいろ • 情シス的なこと • 社内サーバの簡単な保守運用作業 • 商用サーバのログ監視や各種処理
  10. 10. Perlとの出会い • 2003年に入社した今の会社の商用環境 の大部分はPerlを採用していた • 先輩開発者はみんなPerlを使っていた • 高度なログ処理をシェルスクリプトの 知識だけでできなくなったので、Perlを 使ってみることにした
  11. 11. Perlを選んだ理由 •テキスト処理が得意 • 当時既にRubyやPHP等はあったけど、 困ったときに先輩に質問できる環境 • 当時情報も多くて、インタプリターが どこにでもあった
  12. 12. ログ処理から始める #!/usr/bin/perl use strict; use warnings; while(<>) { print if /keyword/; } 最初はなんとか書いて動かしてみる
  13. 13. ログ処理から始める #!/usr/bin/perl use strict; use warnings; my $count = 0; while(<>) { $count++ if /keyword/; } print "keyword count: $sumn"; 少しずつ成長させる
  14. 14. 最初のPerl勉強法 • 習うより慣れろのアプローチ • 当時ログ処理という「題材」があった • 細部の不明な部分は「そう書くもの」 として、後で理解出来るだろうと理解 の後回しをした → 結構重要
  15. 15. 書籍を読もう • 古い・間違っているネット情報も多い • 真贋が分かるまで経験が必要 • 定評のある良書をまずは頑張って読む • 書籍だと体系的な知識が身につく
  16. 16. 例えば 初めてのPerl(オライリー・ジャパン)
  17. 17. 最近だと Perl徹底入門(Web+DB Press Plus) (技術評論社)
  18. 18. 学ぶ時に必要なもの • 好奇心や好きという気持ち • 信頼できて分かりやすい書籍等の情報 • 共に同じ言語を愛でる仲間 • アウトプットする心
  19. 19. 僕のその後 • 2004年頃からウェブアプリを書く • 2006年頃から後輩に教える立場になる • 2007年から毎年YAPC::Asia Tokyoに通う • 2011年にHokkaido.pmにて人生初トーク • 2012年にYAPC::Asiaの大舞台で初トーク
  20. 20. 今の初学者の Perl勉強法は?
  21. 21. 言語を選ぶ段階 • 好きになれそうな言語 • 周囲に頼れる人がいる言語 • 業務ややりたい事に必要な言語
  22. 22. みなさん Perlは好きですか? もしくは好きになれそうですか?
  23. 23. Perlは好きになれる? • Perlは歴史が深く、「古いPerl」から 「新しいPerl」まで様々 → 多様な文化 • 今の他言語から見ても「新しいPerl」は 洗練されていて、しかも学習しやすい • Perlを勉強するならまず「新しいPerl」 を勉強しよう
  24. 24. 周囲に頼れる人はいる? • 学校や会社でPerlを採用している場合は 最初の環境として有利 • 仲間がいなければこのPerlBeginnersの場 で仲間を作りませんか? → 懇親会! • 「Perl入学式」等最近活発な初学者向け 勉強会も積極的に活用しましょう
  25. 25. Perlは必要ですか? • 好き嫌いは別として業務でPerlが必要 • 嫌いであれば好きになれるといいな • Perlの不得意な領域では別のプログラム 言語が必要になることもある • 最初のプログラムをPerlで学習も良い
  26. 26. 覚える事を選別する • 長かったPerl5.8時代の真っ只中だった 2003年当時も「色々なPerl」があった • jperl、Perl4、Perl5.0.x、Perl5.6、… • 「その時の最新」を使いながら必要に 応じて「昔」の流儀や文化を勉強すれ ば良いのは、どの時代も同じはず
  27. 27. 他の言語をベースに Perlを勉強する場合 • 既にプログラムの素養があれば、Perlの 流儀や文化を覚えて郷に入るのが近道 • Perl仲間を増やす→Perlはコミュニティ • 各種勉強会、YAPC、CPAN、等々… •他の言語の良い物をPerlに持ち込もう
  28. 28. アウトプット大事 • インプット=書籍やネットでの学習も 大事だけど、アウトプットも大事 • 理解したことを他の人に教える • ブログを書いたりトークをする •アウトプットをすると、インプットが 増える法則
  29. 29. 外へ出てみよう • 地方.pm等の勉強会やYAPC::Asiaなどに 参加してみる → 今日もそうですね • 聴くだけでなく、仲間を増やしたり、 自分の意見や疑問質問をぶつけてみる • 人との交流は次の日以降の糧になる
  30. 30. 今後のPerlイベント • Perl入学式 (in大阪 8/10、in東京8/25) #3 • Hokkaido.pm (札幌 8/31) • YAPC::Asia Tokyo 2013 (9/19∼21) • 次回のPerlBeginnersは9月開催予定? • その他にも地方.pmも定期的に開催
  31. 31. Perlを学ぶ絶好の機会 • 初学者向け勉強会の充実 • 学びやすいツール群の充実 • YAPC::Asia Tokyoに参加してかつてない 刺激を受けるのは絶対に良い体験 • 「ぼっち」の心配のある人、今日ここ で仲間を作りましょう!
  32. 32. Perlは言語であって コミュニティである
  33. 33. 何かを始めるのに 遅すぎる事はない
  34. 34. TIMTOWTDI やり方はいくらでもある
  35. 35. ご清聴 ありがとうございました

×