Subscribed unsubscribe Subscribe Subscribe

目の前に僕らの道がある

勉強会とか、技術的にはまったことのメモ

perl

#chibapm Chiba.pm#7に参加しました。

参加しました。雑なスライドですみません。 スライド中に出てきてるやつはどれも五反田のお店で出てきます。 五反田企業のガイアックスさんとかモバイルファクトリーさんはPerlの会社なので、美味しいごはんを食べたい人は検討してみてはいかがでしょうか。 …

Plack/PSGIなwebアプリケーションの実行環境

この記事は、モバイルファクトリー Advent Calendar 2015 11日目の記事です ※ 投稿内容は私個人の意見であり、所属企業・部門見解ならびに技術戦略を代表するものではありません。 昨日は@rymizukiさんのnpmライブラリの運用と管理についてでした。今日はPer…

Github APIを使おう

この記事は、モバイルファクトリー Advent Calendar 2015 4日目の記事です 今日は、Github APIの話です。 Githubの管理作業は他のWebサービスと同じく基本Webコンソールでできます。 ただ、Organizationとかを管理してる場合、ある程度以上規模が大きくなる…

#gotandapm Gotanda.pm Perl Technology Conference #6 でLTしてきました。

gotanda-pm.connpass.com Gotanda.pmでLTしてきました。 今回のテーマは障碍でした。 半分ネタのトークです。 JSTQB Foundation Level のシラバスに載っているソフトウェアテストの7原則をもじったやつです。 JSTQB認定テスト技術者資格-シラバス(学習事項…

#yapcasia YAPC::Asia 2015でボランティアスタッフしてきた

今年のYAPC::Asiaは終わった。つつがなく終わりました。 過去のエントリを見直すと2011、2012年は書くのサボっていたみたいでした。 私のYAPC::Asia初参加は2010年で6回目の参加でした。 #yapcasia YAPC::Asia 2014でボランティアスタッフやってきました - …

#kichijojipm 吉祥寺.pmでLTしてきた

吉祥寺.pm (kichijojipm) #4 : ATNDatnd.org 今回はPerlとPerl以外ということで、Perlの外の世界をつないでるもので一番最初に思いついたのがテンプレートエンジンだったので今回の発表になりました。 自分のテンプレートの利用シーンは設定ファイルの自動生…

#gotandapm Gotanda.pm Perl Technology Conference #5 でLTの高速化に失敗しました

Gotanda.pm Perl Technology Conference #5 (2015/06/24 19:30〜)gotanda-pm.connpass.comGtanda.pmでLTしてきました。 今回も例に漏れず、時間内に終わりませんでした。 言い訳のしようも無いです。 #gotandapm LTの高速化に失敗しました。— masasuzu? (@ma…

#kichijojipm 吉祥寺.pm #3 に参加してきました。

吉祥寺.pm行ってきました。吉祥寺.pm (kichijojipm) #3 : ATNDatnd.org 今回はツールチェインがテーマと言うことで、Minillaの話題が2件ほどあって、参考になりました。 本当は、MinillaとOrePAN2で社内モジュールを運用している話ができるかなーと思ったん…

#gotandapm Gotanda.pm Perl Technology Conference #4 話してきた話

Gotanda.pm Perl Technology Conference #4 (2015/03/25 19:30〜)gotanda-pm.connpass.comだいぶ昔のmod_perlで動いているプロジェクトをPSGI/Plack化するために現在進行形で作業してるよという話です。直前に書き上げてリハーサル全くしないまま本番で話し…

開発二部でLTしてきた #でぶつー

開発二部という社内の部活でLTをしてきました。 最近古めのプロジェクトを多少モダンにするタスクをしてるので、そのあたりで得た知見を書いてます。 淡々と書き連ねてるので、死霊見てもよく分からないかもです。まとめ直したエントリをそのうち書きます。

#chibapm Chiba.pm #6 に参加してきた

行ってきました。Chiba.pm #6 : ATND Chiba.pm #6 : ATNDCPAN Authorになったのでその辺の話をLTしてきました。前にエントリを書いた話です。

2014年に使った技術

ざっくりと去年使った技術をざっくりふりかえってみる。ホントにざっくりです。

WebService::Slack::IncomingWebHookというモジュールを書いてCPAN Authorとやらになったようです

WebService-Slack-IncomingWebHook-0.01 - slack incoming webhook client - metacpan.org WebService-Slack-IncomingWebHook-0.01 - slack incoming webhook client - metacpan.orgはい。 名前がすごい長ったらしいですが、名前のとおりSlackのIncoming Web…

#kichijojipm 吉祥寺.pm #1 に行ってきました (だいぶ昔の話

吉祥寺.pm (kichijojipm) #1 : ATND吉祥寺とは縁もゆかりもないのですが、pmが近めの場所でやっているということで、お邪魔してきました。 Test::Moreの最近の開発事情など、詳しくなかったので参考になりました。懇親会は結局2次会、3次会まで行ってオール…

#chibapm Chiba.pm #5 でログ回りのことを聞きたかった

だいぶ昔の話ですが、chiba.pm #5でこんなLTしてきました。Chiba.pm #5 : ATND 今の会社ではこんな感じでログ収集していて、こんなログ監視してるけど、他のところではどんなことしてるの?的な発表でした。 現状は各webサーバのアクセスログをfluentdで収集…

#gotandapm Gotanda.pm Perl Technology Conference #2 に行ってきた

Gotanda.pm Perl Technology Conference #2 (2014/09/17 19:00〜) Gotanda.pm Perl Technology Conference #2 - connpassゆるふわな感じでLTしてきました。テーマの"Webを支える高速化の技術"を完全に無視です。 同僚の"7日間連続で会社にログインしたのでロ…

#yapcasia YAPC::Asia 2014でボランティアスタッフやってきました

YAPC::Asia Tokyoお疲れ様でした。 自分は前夜祭、1日目午前、2日目全日参加させてもらって、ボランティアスタッフ業をしてました。1日目の午後はやんごとない用事があったので途中で抜けさせてもらいました。1日目と2日目は、藤原記念ホールでタイムキーパ…

#gotandapm Gotanda.pm Perl Technology Conference #1に参加した LTした

行ってきました。 http://gotanda-pm.github.io/ http://www.zusaar.com/event/10397006 こんな発表をしてました。五反田の辺りにあるとある企業のPerlモジュール管理の話をしてました。 LTでやるにはボリュームが多すぎたと後から反省です。見事に時間切れ…

#五反田Perl でもくもくしてきた。perlのコードはほとんど書いてない。

今日は五反田Perlでもくもくしてきました。 http://www.zusaar.com/event/5417006 serverspecとspecinfraのコードリーディングと検証をずっとしてました。社内APIからサーバーリストを取ってきてロール毎にテスト回せるのところまでできたので、うちのコンテ…

#ISUCON 2013本戦で惨敗してきました。

寝かせると、たぶんそのまま公開しないままになってしますので、拙速で簡単ながら書きました。 予選同様、id:kfly8とid:karupaneruraとチーム坂パスタとして参加してきました。 今回もdstatを叩くだけの簡単なお仕事をしてました。 #isucon 予選でdstatを叩…

#isucon 予選でdstatを叩くだけの簡単なお仕事をしてきました

いや。まじで。それくらい何もしてなかったです。 ISUCONの予選は土曜日に同僚の@karupaneruraさんと@kflyさんとチーム坂パスタとして参加しました。 あっ。坂パスタってのは市ヶ谷にあるパスタ屋の俗称で、Unって店です。@kflyの人が足繁く通っているお店で…

#yapcasia YAPC::Asia Tokyo 2013に参加してきました。

blogを書くまでがYAPCです!!blogを書くまでがYAPCです!!blogを書くまでがYAPCです!!僕のYAPCがやっと終わる!…、よくよく考えると去年のYAPCが実は終わってなかった。さておき、今年のYAPCは去年に引き続いて、スタッフと個人スポンサーの帽子で参加してきま…

いつの間にかperlのTest::More::subtestのprototypeが消えてた

use strict; use warnings; use Test::More; sub okok { ok 1; } sub okokok { ok 1; } subtest 'ok' => sub { okok; }; my $foo = 1; subtest 'ng' => ($foo == 1 ? \&okok : \&okokok); done_testing; こんな超簡略化してますが、こんなテストコードを書い…

chiba.pm 2回目に行ってきた #chibapm

行ってきた。 http://atnd.org/events/36981 自分の観測範囲だと総武線沿いというか千葉方面で勉強会があまりないので、chiba.pmはすごいありがいたいです。 ゆるふわな感じでPerlについて話ができてとても楽しかったです。今回は基本全員LTしないといけない…

innotopがsegmentation faultで落ちる件

innotopが特定の環境だけsegmentation faultが発生するのでなんでなんだろうな。といろいろ調べてみたらどうやら下記のissueと同じ状況っぽいことを発見しました。 http://code.google.com/p/innotop/issues/detail?id=28 どうやらTerm::ReadKeyのバージョン…

なるべく分岐が少ないのが好みなの

たとえば、$fooの中身によって似たような処理をするメソッドを使い分けたいみたいとき、こう書くより、 sub some_method { my ($self, $foo, $args) = @_; if ($foo eq 'bar') { Some::Class->do_bar($args); } else { Some::Class->do_baz($args); } } こう…

#chibapm #1に行ってきた。

http://atnd.org/events/32334 行ってきました。たぶん。他の人がレポートとか書くと思いつつ、東京の東側でこういった開発者のミートアップ的なイベントが開かれるのはすごい貴重な機会で、とてもありがたかったです。yokohama.pmやshibuya.pmみたいなガチ…

perlのサブルーティン名や変数名に日本語が使えるって知ってたけど。。。。

うん、気持ち悪いですね。 ソース use strict; use warnings; use utf8; use feature qw( say ); use Encode; sub ほげ { my $ふが = 'ふが'; say encode_utf8 $ふが; } ほげ(); 出力 ふが

signalのメモ

signalとは外部のプロセスに対して通信するためのメッセージです。プロセスに定義されているシグナルハンドラがsignalを補足して定義に応じた処理を行います。 killコマンドを使って行うことが多いですかね。 signalの種類 man pageを引いてみるとPOSIX.1-19…

配列同士の重複要素があるかどうか知りたい。

同僚の人に上記の要件満たせるようなモジュール無い?って聞かれたので、ぱっとググって見つけたのがList::Compare。 ふーむ。これだけのためにオブジェクト作るのかあ。ふーむ。これくらいなら自前で書くかなあ。 use strict; use warnings; use feature qw(…

$GREP_OPTIONSが原因でperlのビルドが失敗した件

perl-5.14.2を使いたいなと思い、何気なくperlbrew経由でインストールしようとしたら、なにやらビルドに失敗してしまいました。 % perlbrew install perl-5.14.2 # ... 中略 # Bのビルドに失敗している模様 Running Makefile.PL in ext/B ../../miniperl -I.…

特定ネットワーク内のマシン情報が知りたい。続き

特定ネットワーク内のマシン情報が知りたい。 http://d.hatena.ne.jp/masasuz/20110416/1302964053 の続きNet::SNMPはノンブロッキング通信ができるので、試してみた。ソースはこんな感じ。結果はこんな感じ。同一ネットワークにだいたい220ノードくらいあり…

特定のアドレスブロックのノードに対してほげほげしたい。

Net::IPを使うタイプ 直感的じゃないし、動作がもっさりしています。 Net::Netmaskを使うタイプ こっちの方がやりたいことが何となく明確かな。 PODをざっと読んで書いたので、こういう使い方で良いのかはちょっと調べないと。

Class::Singletonを試してみる。

何気なしにソースを眺めてみたら短かったので試してみた。 とりあえず、覚えるべきは、instance()とhas_instance()、_new_instance()のみ。 instance() インスタンスを返す。まだ生成されていない場合は_new_instance()を呼んで新しいインスタンスを生成する…

MySQL::Sandboxを試してみた。

先輩にMySQL::Sandbox便利だよと言われたので、ちょっくら試してみる。 その前に。開発環境の構築。 今回はいつものDebian lenny君ではなくUbuntu 10.10 amd64なのでまずPerlの環境を作るところから。 cpanmのインストール optbin_dir=${HOME}/opt/bin if [ …

MogileFSを触ってみる

状態確認 mogadm --trackers=192.168.1.100:7003 check 統計情報 mogadm --trackers=192.168.1.100:7003 stats ドメインリスト mogadm --trackers=192.168.1.100:7003 domain list デバイスリスト mogadm --trackers=192.168.1.100:7003 device list

ifconfigの出力をパースしてみる

こんな感じ? 正規表現がちょっとアレかなあ。 #!/usr/bin/env perl use common::sense; my @interfaces = split /\n\n/, `LANG=C; /sbin/ifconfig -a`; my %reg = ( link_encap => qr/Link encap:(\S+)/, mac_address => qr/HWaddr\s(([[:xdigit:]]{2}:){5}[…

YAPC::Asia 2010へ行ってきたよ。

今回もメモ書きレベル以上に推敲できなかったです。慶事の都合上初日しかいけなかったので、1日目だけのメモ書きです。 cloudforecast 長野雅広さん PDCAがだいじ 監視はCheckフェーズ 障碍監視 ping応答 http ssh 応答 ロードアベレージ ツール nagios moun…

.tの拡張子のファイルもTracのシンタックスハイライト有効にしたい。

デフォルトだとperlのテストスクリプトはシンタックスハイライトしてくれないので、設定に付け足した。 [mimeviewer] mime_map = (中略)text/x-ada:ads:adb,text/x-perl:t下記のような形式で書くっぽい。 text/x-(種別):(拡張子)

Net::SSH::Perlを使ってみる

とりあえずこんな感じで、サーバに入って適当に設定情報をとってくるスクリプトを書いた。 #!/usr/bin/env perl use strict; use warnings; use Net::SSH::Perl; my $ssh = Net::SSH::Perl->new('SERVER'); #鍵を省略した場合は、${HOME}/.ssh/id_dsaを参照…

Net::SSH::Perlのインストールが失敗するときは。

gmp.hが無いとMath::GMPのインストールで止まっちゃうよ。 sudo aptitude install libgmp3-dev cpanm Math::BigInt::GMP cpanm Net::SSH::PerlついでにMath::BigInt::GMPをいれないと、こんなwarningsが出る。 Math::BigInt: couldn't load specified math l…

Shibuya.pm行ってきた。

メモ書き程度なんでまとまってないです。 Perl Language Update dankogaiさんperl6の話 rakudo だいぶ速くなったよ 三項演算子は??と!! 関数のネストができる スコープも正しく扱われる try-catch使えるよ muti dispatch 俺俺演算子 OOP selfが使える ドット…

これは入れる必要があるんじゃねっていうPerlモジュール。

自分への覚え書きです。随時追記します。 入れている Bundle::CPAN Bundle::LWP YAML YAML::Tiny Config::Tiny JSON Moose MooseX::Getopt Archive::Zip # これがないと怒られる Email::MIME Email::Send Readonly DBIx::Class DBIx::Skinny Cache::Memcache…

perlbrewを使ってみる。

忘れがちな脳のための覚え書きです。ダウンロードとインストール。 curl -LO http://xrl.us/perlbrew chmod +x perlbrew ./perlbrew installperlbrewの初期化 $HOME/perl5/perlbrew/bin/perlbrew init設定ファイルに追記。 % cat >> .zshrc # perlpbrew sour…

Yokohama.pm#6 x PerlCasual#3 に行ってきたよ

自分が気になったところのメモなので細かいところは網羅できてないです。 kazeburoさん - リソース監視ツール・フレームワークCloudForecastの紹介 途中からだったので話の流れが分からず。 typesterさん - WebアプリケーションエンジニアのためのiPhoneアプ…

API経由でWassrをいじってみた。2

Net::Wassrはすでに偉大な先駆者が作成*1されているので、Net::WassrMinusと名付けました。 とりあえず、一通りのAPIは実装したのですが、public_timelineとrepliesのAPIに投げるとはステータス500が返ってきてしまいます。引数とは間違っていないはずなので…

API経由でWassrをいじってみた。

最近、Wassrをいじることが多くなってきたので、API経由でいろいろできたら便利かなと思いちょっと作ってみました。 ただ、JSONの仕様を勘違いしており、予想外に時間がかかったため、投稿スクリプトしかできませんでした。 一応、ユーザのヒトコトを取得で…

ファイルテスト

最近、シェルスクリプトを読むことが多くなったので、備忘録『詳解シェルスクリプト』、『入門bash』、『初めてのPerl』を参照しましたが、実行していないので合っているかどうかは保証しません。 sh bash perl trueの条件 -d -d -d ディレクトリの場合 -e -…

LWP::UserAgentを使ってみる

今日のknew new things1日1つ以上アウトプット。日々コレ日常。Twitterスクリプトの時に書いたけど、備忘録。WEB APIからJSONテキストが返ってくる時、ほげほげするためのコード。 動かしていないから間違っているかも…。 use LWP::UserAgent; use JSON; my …

DBIx::Skinnyでマルチバイト文字を含む時の注意

DBIx::Skinny::JA::Introによると、マルチバイト文字を扱うカラムはinstall_utf8_columnsに設定しないといけない。