天神Perl

初心者向けのPerlハッカソン天神Perlの事など書きます

Fukuoka Perl Workshop #25 にいってきた

Fukuoka Perl Workshop #25 に参加してきました。

今回のテーマは「YAPC::Asia レポート 2014」ということで、いろんな立場で参加した人のレポートを聞く事ができました。

@debilityさんのレポート
@debilityさんは毎年のようにYAPCに参加していて毎回何かしらのトークをしているらしく、トークをする事でいろんな人から話しかけられたりするし、福岡の人もトークを応募していきましょうとのことでした。
前夜祭のトークの最後にでクイズの回答者を選ぶときに@uzullaさんか僕を指名しようとしていたらしく、危機一髪だったし結果@uzullaさんが福岡くる事なって良かったと思いました。めでたい!

@uzullaさんのレポート
運営しつつ、PHPの話でYAPCのベストトーク賞とったけど、そこに至る経緯とかuzullaさんとPerlコミュニティにどうやって関わっていたかとか、そのときにどんな技術が使われていたかとか、hachioji.pmの話なども交えつつ話がめっちゃ面白かったです。awesome-perlも他言語の人とかに紹介したいなと思いました。
福岡もチャット使うといいよって教えてもらったので、@sho130さんとなんかやろう的な話をしました。hachioji.pmみたいなの福岡でも平日にやりたいですね。

@__papix__さんのレポート
Perl入学式 in YAPC::Asia を今年もやって環境準備とかもできたし結構うまくいったとのこと。
東京・大阪・福岡のサポーターが集まってて体制も良かったですね。
あと、レポートの他に最近仕事でインフラや技術基盤的なところに力をいれているとのことで、デプロイ自動化やChatOps的なことをしている話を聞きいろいろと参考になりました。

@yusukebeさんのレポート
主催するに至った経緯や、大変だった事、運営のノウハウなどについてのお話でした。小さなYAPCを各地でやっていいと思うし、やり方は一つじゃないのであくまで参考でということでした。今年の開催自体yusukebeさんがやってくれなかったら僕は今年のYAPCに行けなかったし、次に繋がるような働きかけもされていて、本当に嬉しいし有り難いなと思いました。

@charsbarさんのレポート
RubyKaigiに参加されてきたそうで、YAPC::Asiaとちがうところなどを紹介されました。良いところを参考にさせてもらうとより良いカンファレンスになると思いました。また、RubyKaigiとYAPC::Asiaの参加者のライブラリ作成者の割合の話などあり興味深かったです。参加して何かをしたいと思えるようなイベントにできるように天神PerlPerl入学式も頑張っていきたいと思いました。

最後にuzullaさんを講師として派遣してくださったJPAさん、勉強会を運営してくださったフィールズさん、ありがとうございました。

あ、天神Perl #11 を9月27日13時からやります!!!

YAPC::Asia 2014 の感想

YPAC::Asia 2014 に行ってきました。

YAPCとは「Yet Another Perl Conference」の略ですが、YAPC::AsiaはPerlに限らずWeb界隈を中心とする幅広いジャンルのエンジニアが、普段の研究成果を発表したり交流したりする世界最大規模の技術カンファレンスです。今年もPerl以外にRubyPHPJavaScalaなどのトークが多くあり、インフラやスマートフォンのアプリを開発するエンジニアも多く集まっていたようです。

YAPCにはソーシャルカンファレンスという一面があり、エンジニア同士のつながりが生まれたり強くなったりします。僕はこれが一番嬉しい事だと思ってて例えば今回は以下のような方々とおはなしできました。

  • Plack/PSGIの作者であり、rebuild.fmで有名な@miyagawaさん
  • 過去のISUCONの優勝者である@fujiwaraさんや@songmuさん、@kazeburoさん、@tagomorisさん
  • 著名なPerlハッカーでいつもブログやTwitterを参考にさせてもらっている@Yappoさん@tokuhiromさん
  • The Perl Foundationの助成金プログラムに採択されPerl::Lintを作っている@moznionさん
  • Perl入学式を一緒に運営している@__papix__さんやサポーターの方たち
  • 過去に一緒に福岡で働いていて、今は東京で活躍している知人たち
  • 福岡からYAPCに来たPHPJavaをやっている技術的好奇心の強い人たち
  • 最後にらすたで僕を拾って朝まで一緒に飲んでくれた@bayashiさん、@punytanさん

他にもたくさんいろんな方とお話しできて良かったです。

YAPCに行くと、様々な発表を聴講することで新しい知識を得たりアイデアを思いついたりしますし、参加されている方は皆さんモチベーションが高くとても刺激的です。ブログやTwitterで情報を発信しているエンジニアと直接会って質問したり意見をもらったりもできるのも最高です。

これだけでも十分YAPCは楽しいし意義があると思うのですが、個人的な目標としては、自分で研究した技術や作成したツールについて発表し、逆の立場になって楽しんでこそ最高なんじゃないかと思うので頑張りたいと思いました。

このような楽しいイベントを運営して頂いたスタッフの皆さんに本当に感謝しています。
ありがとうございました!

さくっとWindowsでPerlの学習環境を構築する方法

Windowsユーザの方にLinuxを提案するのは下記の理由があると思っています。

  • Webアプリケーションを設置するのに一般的なLinux環境も学習できる
  • Linux環境のPerlのトラブルなら分かる人が多いので教えてもらいやすい
  • Windows環境でうまく動かないCPANモジュールがたまにある 

ですが、基礎的なPerlのプログラムはWindows環境でも問題なく動くと思います。

そこで、以下ではWindowsに直接インストールできるPerlのインストール方法を

ご紹介します。

f:id:hkataoka:20140517145054p:plain

 

Strawberry Perl(ストロベリーパール)です。

もうひとつの Active Perl と違い、Linuxと同じくcpanコマンドでCPANモジュールを

インストールできます。

 

以下、画像等ありませんが簡単なので是非トライして下さい。

分からない事などあればコメントをどうぞ。

 

Strawberry Perl のインストール方法

  1. Strawberry Perl をダウンロード
    自分のPCが32bitか64bitか確認します。
    http://strawberryperl.com/で下記のいずれかをクリックしダウンロードします。
    ・ Strawberry Perl 5.18.2.2 (32bit)
    ・ Strawberry Perl 5.18.2.2 (64bit)

  2. Strawberry Perl をインストール
    ダウンロードしたインストーラを実行。適当に完了させます。
    Perlのインストールはこれで終わりです。

Perlの練習用フォルダを作りましょう

  1. Perl勉強用のフォルダを作成
    デスクトップなどに「Perl」など適当な名前でフォルダ作成します。
    Perlのプログラムはここに保存しましょう。

  2. コマンドプロンプトのショートカット作成
    作成したフォルダ(「Perl」など)に移動します。
    フォルダ内で右クリックし、新規作成の中のショートカットをクリックします。
    項目の場所に「cmd」と入力して次へをクリックします。
    ショートカットの名前に「cmd」と入力して完了してください。
    コマンドプロンプトのショートカットが作成されます。

  3. コマンドプロンプトの作業フォルダを設定
    作成したショートカットを右クリックしてプロパティを開く
    作業フォルダに作成したフォルダ名を入力してOKをクリック
    例: C:\Users\ユーザ名\Desktop\Perl

perlを実行してみましょう

  1. perl のバージョン確認
    作成したショートカットをダブルクリックしてコマンドプロンプトを起動します。perl -v と入力しEnterキーを押してバージョンが表示されることを確認してください。
    コマンド入力例
    C:\Users\ユーザ名\Desktop\Perl>perl -v

  2. 以降はコマンドプロンプトを開くだけ
    ここまで出来ていれば、以降はコマンドプロンプトで自分が作成したプログラムを実行したり、ワンダライナーと呼ばれる1行プログラム(コマンド)を実行するだけです。

    自分で作ったhello.plを実行する例
    C:\Users\ユーザ名\Desktop\Perl>perl hello.pl

    ワンダライナーを実行する例

    C:\Users\ユーザ名\Desktop\Perl>
    perl -E "say 'Hello World!'"

Perl入学式 #1 の復習

  1. cpanmコマンドを使えるようにする
    コマンドプロンプトで下記を実行します。
    cpan App::cpanminus

  2. 第2部の途中からどうぞ
    この辺からやるといいと思います。

Perl入学式の資料はLinuxでの実行を想定しているので、うまく動かないところもあるかもしれませんが、そんな時はいつか解決できるように覚えておきましょう。

 

よく使われるテキストエディタも紹介します

  1. Sublime Text をダウンロード
    http://www.sublimetext.com/ で Download for Windows をクリックします。

  2. Sublime Text をインストール
    ダウンロードしたインストーラを実行します。
    適当に答えて完了させます。

  3. 使い方を簡単に覚える
    ドットインストールというサイトで Sublime Text の簡単な使い方の動画
    無料で視聴できます。

 

天神Perl #9 のお知らせ

天神Perl #9 を6月7日(土)にやります。Perlの話しようぜ!

http://connpass.com/event/6466/

 

 

VMware Player インストール

PerlLinuxを学びたいWindowsユーザ向けに書いています。

VMware Player を使うと、自分のPCの中に仮想的なPC環境やサーバ環境を作れます。

  

ダウンロードページで「VMware Player for Windows 32-bit and 64-bit」を

ダウンロードします。ダウンロードしたインストーラを実行してください。

 

下記の画面が表示されたら「次へ(N)」をクリック

f:id:hkataoka:20140514172108j:plain

 

「使用許諾契約の条項に同意します(A)」を選択し「次へ(N)」をクリック

f:id:hkataoka:20140514172653j:plain

 

内容を確認し「次へ(N)」をクリック

f:id:hkataoka:20140514172905j:plain

 

「起動時に製品の更新を確認する(P)」のチェックを外し「次へ(N)」をクリック

f:id:hkataoka:20140514173040j:plain

 

VMware Player の改善に協力する(H)」のチェックを外し「次へ(N)」をクリック

f:id:hkataoka:20140514173228j:plain

 

好みのチェック内容にして「次へ(N)」をクリック

f:id:hkataoka:20140514173419j:plain

 

「続行(C)」をクリックするとインストールが始まります。

私の環境では4分弱かかりました。

f:id:hkataoka:20140514173522j:plain

 

インストールが完了すると下記の画面が表示されます。

「完了(F)」をクリックしてウィンドウを閉じます。

f:id:hkataoka:20140514174044j:plain

 

2014年5月14日時点

Vmware Player のバージョンは6.0.2

インストールした環境

OS:Windows Vista Home Basic

CPU:AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ 2.40GHz

メモリ:2.00GB

回線速度:20Mbps

 

 

 以上です。

Perl入学式in福岡でサポーターしてきたメモ

昨日はPerl入学式in福岡#1の日だった。

 
参加者の方々に喜んで頂けたようで本当に良かった。
個人的に課題と思った点を今後に活かしたい。

#1の内容は初心者が一番ハマりやすい環境構築だったが、天神Perlなどでフォローアップする為にメモ。
 
ISOやXcodeのダウンロードに時間がかかる事が想定されたため、USBで事前に配布したのは成功だった。福岡では5本(win用とmac用)USBを準備

■参加者の環境
Macの方が多かったがほぼ半々だった。
ブータブル用USBを持って来た人はWindowsユーザのうち3分の1程度。
これらは東京の割合とほぼ同じだった。

■課題

ブータブルUSB
  • 初心者にとって難しかった気がする。
  • USBへの書き込みにかなり長い時間がかかる。
  • USBブートの環境のせいかかなりUbuntuの動きが重い。
  • 結果、VMwareに方針転換して二度手間になるなど。

VMware Player
Ubuntuインストーラの起動時の問題
  • WindowsBIOSでVirtualization TechnologyがDisabledになってるとはまる。
  • プリンタなど不要なものの起動時の接続を有効しておくとトラブルの元。

Ubuntuデスクトップ
  • メモリ割当がデフォルトの1GBでは十分ではない
  • GUIで使用するためインストール自体にかなりの時間がかかる。
  • インストール後の再起動時、自然にUbuntuの14.04へのアップグレードを勧められ実行してしまうと時間がかかりすぎる。
  • Docのような部分がパフォーマンスを低下しているという話もあったが、頑張って構築してもらった環境が重くて申し訳なかった。

plenv
  • plenvsetupを使用したが、.bash_profileが存在せず作成する必要があった。
  • コマンドのコピペで良い部分が手入力になりタイプミスなど発生し盆雑だった。

Macの人は待ち時間が長かったと思う。
Winの人の環境構築をもっと速くできるようにならないといけない。


以上を踏まえてやりたい事

  • ブータブルUSBの廃止
  • CentOSCUI

もしくは


そして

仮想サーバとのファイルシステム共有
ファイル編集などはWinで行い実行だけ仮想サーバで行えるように

天神Perl #7

 

 

昨日は天神Perl#7の日でした。

 

今回のテーマはAPIを叩こうでした。材料としてAPI一覧のURLを共有しました。

http://www.find-job.net/startup/api-2013

 

最近僕は英語を勉強したいと思っていて、空き時間はpodcastを聞いたりしてます。勉強したい理由はたくさんありますが、ドキュメントをすらすら読み書きしたいのがおっきいです。

そこで今回はデ辞蔵というサービスのAPIを利用して、ドキュメントに頻出する単語の和英辞書をひく単語帳スクリプトを作ってみました。

 

metacpan.orgのurlを指定して、Furlで取得し、HTML::TreeBuilder::XPathでドキュメント部分を抜き出し、HTML::Tokeparserでテキスト部分を収集、単語単位に分割します。

単語を頻出順に標準出力に出力し、辞書APIを叩くかスキップするかを促します。スキップした場合はその単語を以降は表示しないようDBに登録し、APIを叩いた場合は結果が得られればDBに登録。以降のスクリプト実行で同じ単語が現れればDBから結果を表示します。スキップしたものは以降の実行で入力を促しません。これじゃcpan以外のドキュメント対応できないし、XPathいらなかったな。

 

そういえば参加者の方から、CPANTwitterを検索すると220個くらいでてくるけど、どうやって選べばいいの?って質問がありました。知り合いに聞くのが早いというのとCPANソムリエになる方法にある内容を紹介しました。

 

CPANソムリエになる方法

http://blog.64p.org/entry/20080520/1211292598

 

で、今思い出したんですが、CPANにもAPIがありましたね。

 

CPAN-API / cpan-api

https://github.com/CPAN-API/cpan-api/wiki/API-docs

 

これつかえばTwitterAPI触る為のモジュールをCPAN-APIを使って探すという楽しい経験ができそうですね。

 

あと、perlbrewのperl消した後、lsとかgrepとか使えなくなって困ってる方がいて、.bash_profileにperlbrewの記述が残ってて、/etc/bashrc実行できてなかった問題でした。自分で入れたPerlの消し方教えるときには忘れないようにしたいと思いました。

 

そんで今回は__papix__さんがきてて、Perl入学式in福岡の打ち合わせをかねて焼き鳥食べに行ってきました。焼き鳥ってなんか安そうなイメージだけど西中洲にある「藤よし」ってお店にいってお札が多めに飛んでいきました\(^o^)/すんごく美味しかったです!

 

そして最後はふとっぱらです。ラーソーメン最高です。ありがとうございました!

 

天神Perl #6を終えて

 

楽しかった!

 

初めて来てくれた人がいたので、下記について説明したり

インストールしてもらったりマンツーでやった。

 

 DBD::mysqlCPANXcodeコマンドラインツール、homebrew、

plenv、cpanm、Mojolicious、MVC、データ型、コンテキスト、

リファレンス、サブルーチン、コンストラクタ、パッケージ、、、

 

 最終的にyusukebeさんとこのnopasteが動いた。

超特急で可能な限り詳しく説明したけど、かなり飲み込みの

良い方ですごいと思った。cpanfileまで教えたかった。

 

 ちょっとつまったところ

homebrewのインストール時の警告の解消。

.bash_profileのパーミッションがおかしく plenv initできてなかった。

plenv rehash しないと morbo 実行できず。

参考記事のCREATE TABLE文は間違ってるので気をつけましょう。

 

 

 天神Perlで出会った人同士が、意気投合されてて嬉しかった。

CGIのソースをもらって動かしたいとの事だったが、環境構築は

難しいだろうな思ったので、Plack::App::WrapCGIに初めてトライ

してみた。結果すんなり動いて自分は何もすごくないのに

褒められて嬉しかった。

 

 

 Perl歴が長い方が初参加されていて、現在構築中のサイトの意見を

募ってた。作りたいものがある。提供したいサービスがある。

みたいな情熱でプログラミングなどに打ち込んでいて素敵だなと

思った。

 

 

毎回参加してくださっている人生の大先輩が、一人で認証やCRUD

アプリを初めて発表してくれて、ちょっと感動した。今後も頑張って

続けて行きたいと思った。

 

 

次回開催は、3月15日(土)。Perl入学式の@__papix__さんも

参加されます。ちょっとうちの会議室じゃキャパオーバーかもな〜。

ひょっとしたら会場が変わるかもしれませんのでご注意下さい。

天神Perl #7 : ATND