50
Perl入学式代表取締られ役 papix

Perl入学式をやってみた! - YAPC::Asia 2012

Embed Size (px)

Citation preview

Page 1: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式代表取締られ役

papix

Page 2: Perl入学式をやってみた! - YAPC::Asia 2012

自己紹介

• papix (ぱぴっくす)

• あ

• twitter: @__papix__ / hatena id:papix / github: papix

• PerlとGPGPUで修論やりたい系大学院生

• アセンブリやプロセッサのシミュレータと戯れる日々…

• 所属("自称"含む):

Perl入学式, Kansai.pm, Kyoto.pm, Hachioji.pm …

• Perl入学式代表取締られ役

Page 3: Perl入学式をやってみた! - YAPC::Asia 2012

アジェンダ

• Perl入学式ができるまで…

• Perl入学式の様子…

• Perl入学式の工夫…

• Perl入学式の評判…

• Perl入学式のノウハウ…

• Perl入学式の野望…

• Perl入学式の仲間たち…

• 質疑応答

Page 4: Perl入学式をやってみた! - YAPC::Asia 2012
Page 5: Perl入学式をやってみた! - YAPC::Asia 2012

初心者向けの勉強会が欲しかった

• Perlをしっかり勉強できる環境が欲しい

– 困った時, 壁にぶつかった時に相談/質問したい

– Perlに対し, 集中して取り組みたい

• モチベーションが維持できる

– 参加者同士切磋琢磨することによるモチベーションの向上

• 教えることも勉強になる

– 知識を吸収するだけでなく, 自分の知識を他人に紹介/提供するの

も非常に勉強になる

• 関西のPerlをもっと盛り上げたい

– 現在はKyoto.pmやPerl入学式などがあるが, 当時関西のPerlコミュ

ニティはKansai.pmのみだった

Page 6: Perl入学式をやってみた! - YAPC::Asia 2012

ちょうど1年前…

KOF(Kansai Opensource Forum)のKansai.pmブースにて…

「あんまりPerlの勉強会ってないっすよねー」

「そうですねー」

「あったらいいのになぁ…」

「じゃあやりましょうよ!」

「いいですねー」

「とりあえずtwitterで呟いてみましょうよ!」

「そうですね, 反応見てみましょうかー」

Page 7: Perl入学式をやってみた! - YAPC::Asia 2012

で, こうなった.

Page 8: Perl入学式をやってみた! - YAPC::Asia 2012

で, こうなった.

Page 9: Perl入学式をやってみた! - YAPC::Asia 2012

_人人 人人人人_

> 突然の牧さん <

 ̄Y^Y^Y^Y^Y^Y^Y ̄

※牧 大輔(@lestrrat)さん, Japan Perl Association代表理事のスゴウデ・プログラマ.

Page 10: Perl入学式をやってみた! - YAPC::Asia 2012

やるっきゃない!

• 「やっぱ今の発言なしで!」なんて, もう言えない.

– まあ, そもそも勉強会欲しいな… と思ってたし…

• 誰かが開催するのを待つより, 自分達で開催した方が

手っ取り早いか…

– 代表は誰かにやってもらう事にして, 準備しよう!

• 予想以上に中心側でPerl入学式に携わっていたら…

• 気がつけば代表的ポジションに. どうしてこうなった.

• …とまあ, Perl入学式はこんな経緯で生まれました.

Page 11: Perl入学式をやってみた! - YAPC::Asia 2012
Page 12: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式の様子

• 毎回3時間

– 当初は5時間だったが, 参加者も講師も負担が重いこと,

何より集中力が続かないので, 3時間に変更した

• 最初は復習問題

– 前回学習した内容をしっかり復習する

– 詰まっている人には講師やサポーターがマンツーマンで対応

– 練習問題を用意して解いてもらい, 答え合わせとして実際に

コーディングしながら解説する

Page 13: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式の様子

• 1時間~1時間半の講義

– プロジェクターで資料を見せつつ, 解説

– 1項目が終わるごとに練習問題を用意. 復習問題と同じく,

コーディングしながら解説を行う

– 極力, 全員が理解するまで先に進まない. 詰まった場合は,

サポーターや講師がマンツーマンで指導を行う

• サポーター

– 毎回1人~2人(参加費免除)

– 参加者をサポート, 質問に答える

Page 14: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式の様子

• 最後に演習問題(30分~1時間)

– 今までに学習した内容とその回に学んだ内容を合わせた

演習問題を解いてもらう

– これもまた, コーディングしつつ解説

• 場合によっては, 終了後に懇親会

– …という名の飲み会. とても楽しい!

– いろいろな年代, いろいろな職業, いろいろな言語使いの方が

集まるので, とても勉強になります

Page 15: Perl入学式をやってみた! - YAPC::Asia 2012

これまでの講義内容

• #1: 環境構築, CUI入門

• #2: Perlスクリプトの実行方法, 標準入出力, お約束, モジュールについて, 変数について, 四則演算

• #3: 条件分岐構文, 関係演算子, 論理演算子, 配列とその操作, 繰り返し構文

• #4: Perlの開発環境構築, CPANモジュールの実演, 正規表現(基礎編), ハッシュ, リファレンス

• #5: ファイルの読み書き, 外部コマンドの利用, 関数

• #6: コンテキスト, 三項演算子, sortのカスタマイズ

• #7: 正規表現(中級編), map/grep

• #8: Mojolicious入門(1)

Page 16: Perl入学式をやってみた! - YAPC::Asia 2012

これからの講義内容

• #9: Mojolicious入門(2)

• #10: ウェブアプリケーション開発実践(1)

• #11: ウェブアプリケーション開発実践(2)

• #12: ウェブアプリケーション開発実践(3)

• 「簡単なウェブアプリケーションの開発」をゴールとして

設定しています

• 参加者のモチベーション維持につながると考え, #1から

この目標(ゴール)は示しています

Page 17: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式#1

Page 18: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式#2

Page 19: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式#7 補講

Page 20: Perl入学式をやってみた! - YAPC::Asia 2012
Page 21: Perl入学式をやってみた! - YAPC::Asia 2012

極限までハードルを下げる

• Perlを動かす環境の構築, コマンドライン操作からスタート

– 参加者が極力似たような環境で学習できるように…

– Windowsの場合, VMwareを利用してUbuntuを導入した

– その為, 実際にPerlを触るのは第2回から

• 質問を許容する空気を作る

– 講義中に浮かんだ疑問はすぐに質問するようお願いしている

– 質問への回答は後回しにせず, すぐに行う

– 質問によって説明不足な点が見つかることがあり, その講義のうち

に補足説明を行い, 対応することができる

Page 22: Perl入学式をやってみた! - YAPC::Asia 2012

「コードを書く」ことを重視

• 解説を聞く時間よりも, 手を動かす時間を多くする

– 多くの問題を用意. 説明と問題への挑戦で, メリハリが付く

– 手を動かすことで, 学んだ内容をしっかり理解できる

– 実際にコードを書くことで浮かんでくる疑問もある

– 何より, 最初から最後まで話を聞いてるだけじゃ面白くない!!!

• 問題の回答も, 手を動かしながら行う

– 解答例を示すだけでなく, 実際にコーディングしながら解説

– 同じ問題でもいろいろな回答ができるので, どのような考えで

コーディングを行ったかも説明する

Page 23: Perl入学式をやってみた! - YAPC::Asia 2012

継続して参加できる環境を作る

• 同一内容を毎月2回開催

– 一度欠席してしまうと, それ以降, 参加し辛く感じてしまう

– 所用で参加できない方の為に, 同一内容を「補講」として開催

• 資料は全て公開

– 使用した資料はgithubなどを利用して全て公開

• https://github.com/perl-entrance-org

• ツッコミ等お待ちしております

– 補講に参加できない場合でも, 資料を利用して自習が可能

– twitterによるアフターサポートも充実(#Perl入学式).

Page 24: Perl入学式をやってみた! - YAPC::Asia 2012
Page 25: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式の評判

• Perl入学式を紹介した際によく聞かれるのは, 「どのよう

な方が参加しているのですか?」という質問です.

• その調査も兼ねて, Perl入学式の参加者に対して任意

のアンケート調査を行いました.

• 実施期間が短かった為回答数は少ない(7件)ですが,

参考になる意見を多く頂きました.

• 今まで紹介した工夫を, 参加者はどう評価しているかと

いう点も含めて, 回答の一部を紹介したいと思います.

Page 26: Perl入学式をやってみた! - YAPC::Asia 2012

参加者の年齢層

• やはり20代の方が多い(4名)

• 10代の方は短大生.

高校生・大学生は参加費を

無料としている

• 社会人の方が多いので,

もっと学生に対してアピール

していきたい.

10代, 1

20代, 4

30代, 2

Page 27: Perl入学式をやってみた! - YAPC::Asia 2012

参加者の職業

• 非エンジニアが半分以上

• 「Perl入学式でプログラミングを

初体験」という人も多い

会社員, 2

エンジ

ニア, 3

学生, 1

フリー

ター, 1

Page 28: Perl入学式をやってみた! - YAPC::Asia 2012

よく使う言語

• 仕事でよく使う言語

– 若干Web系な言語が多い

印象

Java, 2

C++, 1 JavaScri

pt, 2

COBOL, 1

PHP, 1

• 趣味でよく使う言語

– Ruby使いが若干多い

– PerlとRubyの違いがわかる

ので, こちらも勉強になる

Basic, 1

Perl, 2

C++, 1

Ruby, 3

Objective-C, 1

PHP, 1

C, 1

Page 29: Perl入学式をやってみた! - YAPC::Asia 2012

参加費について

• 毎回, 会場費として500円を

頂いています

• 参加しやすい環境作りの一環

として, 参加費も極力低額に

• 非常に安い, 安い, 普通, 高い,

非常に高いの5段階評価で,

高い以上の評価はなし

非常に

安い, 3

安い, 3

普通, 1

Page 30: Perl入学式をやってみた! - YAPC::Asia 2012

難易度について

• プログラミング経験者は「簡単」

や「やや簡単」, 未経験者は

「やや難しい」や「難しい」と回答

• 資料や解説はまだまだ修正の

余地がある

• それでも継続して参加して頂け

るのは, サポートが有効に機能

している為?

簡単, 1

やや簡

単, 1

やや難

しい, 3

難しい, 1

Page 31: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式を知ったきっかけ

• 参加を受け付けているATND,

ZussarやIT勉強会カレンダー

経由で知る方が多い

• やはり告知は大事

• Perl入学式ではtwitter,

Facebook, 公式ブログを活用し,

宣伝活動を行なっている

ATND, Zussar,

3 IT勉強

会カレ

ンダー, 2

Perl入

学式公

式サイ

ト, 1

Page 32: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式に参加した理由

• PHP以外にもう1つ言語を覚えたかった. 周りはRubyに

流れていたので, それ以外にしたかった

• サーバでRubyが使えないので, シェルスクリプトの代わ

りに使おうと思った

• とりあえず色々な言語を触ってみたいと思った

• オンラインゲームを作ってみたい

• このような内容で500円は格安!

• IT業界に入ったばかりなので, 勉強したいと思った

Page 33: Perl入学式をやってみた! - YAPC::Asia 2012

講義の中で難しかった所

• リファレンス

– '->'を省略できたりするので, コードを読むのに慣れがいる

• コンテキスト

– 最初は概念がつかみにくい

• ファイルハンドラ

– ','が不要だったり…

• やはり復習しておかないと, 忘れてしまう

– 講義中に復習できるような要素を取り入れたいです

Page 34: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式で満足しているところ

• 難易度がちょうどよく, 復習問題もあってしっかり学べる

• 入門書では学べない, 最近の流行りや, 実体験で得た

気をつけるべきところが学べる

• 資料がわかりやすい(環境構築)

• スライドが見やすい, 質問がしやすい

• 講師の人が面白い

• 簡単な質問でもちゃんと答えてくれる

• 定期的にあるので疑問点をすぐ質問できる

Page 35: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式に対する要望

• 講義内容が少し駆け足. 確かに質問はできるが, それ

に割く時間はやはり少ない

• 事前に資料を公開しておいて欲しい

• PDFの資料が欲しい

• ペアプロなど, 複数人で作業をするような取り組みが

あってもいいと思う

Page 36: Perl入学式をやってみた! - YAPC::Asia 2012
Page 37: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式のノウハウ

• 話を聞いている方の中には, 「地元で✕✕.pmを開催し

てみたい」だとか, 「Perlの勉強会を開催してみたい」と

思っている人が居らっしゃるかもしれません

• 皆さんもぜひ, 地元でコミュニティや勉強会を立ち上げ

ましょう!

• 参考になるかわかりませんが, Perl入学式を運営する

上で得たノウハウ(?)をご紹介したいと思います

Page 38: Perl入学式をやってみた! - YAPC::Asia 2012

仲間を集めよう!

• 勉強会の運営は, 本業の片手間に行うもの

– 全て自分でやろうとすると, 死ねます

– Perl入学式の場合, 資料の作成等もあるので更に大変

• サポート, 協力してくれる仲間を集めよう!

– 「集める」というよりはむしろ「巻き込む」

– twitterで呟いてみたり, 地元のコミュニティ/イベントで有志を

募ってみたり…

• 仲間がいれば, 逃げられないし…

– 「背水の陣」は, 結構有効

Page 39: Perl入学式をやってみた! - YAPC::Asia 2012

告知は早めに!

• 告知は「1ヶ月前」くらいがちょうどいいと思います

– 参加者増の最初の伸び(?)が変わる… ような気がします

– 会場もそれくらいで抑えないと取れない場合が多い

• 会場を確保してすぐに詳細を告知するのは大変

– twitterで第一報を流すとか…

• 積極的に告知をしよう

– twitter, Facebook, ブログ, 勉強会, カンファレンスのLT…

使えるものは何でも使う!

Page 40: Perl入学式をやってみた! - YAPC::Asia 2012

失敗を恐れず, 動こう!

• 仲間が集まらなくても, 動いていればいずれ集まる

– 動かないと何も始まらない!

• 初心者が勉強会開催してもいいと思う

– 自分だって, Perl入学式を設立した時は超初心者(今も…)

• 失敗 = 成功の母, 失敗いいじゃないかっ!

– よく考えて, 頑張った結果の失敗は誰も責めない

• 結局, ハート(やる気)が大事

– 燃えたぎるほどのハート, 燃えるやる気が周囲を巻き込み,

さらに熱くする!

Page 41: Perl入学式をやってみた! - YAPC::Asia 2012

もうひとつの貢献の形

• Perlという言語への貢献とは?

– Perlの開発, モジュールの開発

– コミュニティの活性化 = 勉強会等の開催

• コミュニティの活性化で必要なのは, まずやる気!

– Perlに詳しくない初心者でも, 大丈夫!

– 一方, Perlやモジュールの開発は技術力や経験が必要

• 日頃使っているPerlへの, 誰でもできる貢献の方法

– それが, 勉強会やコミュニティの運営だと思います

Page 42: Perl入学式をやってみた! - YAPC::Asia 2012
Page 43: Perl入学式をやってみた! - YAPC::Asia 2012
Page 44: Perl入学式をやってみた! - YAPC::Asia 2012

Perl入学式のスタッフ

• 最後に, Perl入学式のスタッフを紹介したいと思います.

• 最近は, 概ねこの3人で運営しています.

• papix (代表取締られ役)

– とりあえずアイデアを提案しては若林さんに投げる困ったヤツ

• Nobutaka Wakabayashi (取締役)

– 常時全力全壊暴走機関車のpapixを制御する Perl入学式の影番

• azumakuniyuki (書記長)

– いつも的確なアドバイスをくれるナイスガイ

Page 45: Perl入学式をやってみた! - YAPC::Asia 2012

図解

Page 46: Perl入学式をやってみた! - YAPC::Asia 2012

図解

Page 47: Perl入学式をやってみた! - YAPC::Asia 2012

Special Thanks!

• また特に, 初期の四苦八苦している時期は, 以下の

方々にご助力をいただきました.

@kiyotuneさん

@shibayu_36さん @hisaichi5518さん

@escamilloIIIさん

Page 48: Perl入学式をやってみた! - YAPC::Asia 2012

Special Thanks!

• Perl入学式は多くの方のご好意とご協力で成り立って

います.

– 参加者の皆様, サポーターの皆様…

– twitterで告知ツイート等をRT・FAVして下さる皆様…

– Facebookでイイネ! して下さる皆様…

– ご自身のブログやサイト等で紹介して下さる皆様…

– Perl入学式のことを気にして下さる皆様…

– 私(papix)のことも含め, 問題点を指摘して下さる皆様…

Page 49: Perl入学式をやってみた! - YAPC::Asia 2012

Special Thanks!

• この場を借りて, 御礼申し上げます.

本当にありがとうございます!

Page 50: Perl入学式をやってみた! - YAPC::Asia 2012

質疑応答

「開催してみたい…」 「参加してみたい…」

Perl入学式に興味のある方はぜひ声をかけてください!