Perl日記

日々の知ったことのメモなどです。Perlは最近やってないです。

2013-01-01から1年間の記事一覧

2013年振り返り

2013年は社会人になってから一番いろいろあった年だったとおもう。 初めてインフルエンザになった 初めて転職した 初めて外人と一緒に働いた 否が応でも英語を覚える羽目になった 文化の違いに四苦八苦した テスト書いて自動で回した 興味の移ろい ちょうど…

ログインとサインインで悩む

いま認証周り作っているのでLoginとSign inってどっちがいいんですかとアメリカのひとに聞いたらどっちでもいいと一蹴されたのでそういえばGithubとかどうなってたっけと確認したら余計混乱した。Github https://github.com/loginURLがログインでボタンがサ…

greetech04行ったのでメモと短い感想

GREE Tech Talk #04 : スマートフォン時代のソフトウェアテスト 時間経ってしまいましたが一応メモとか。 「未来を知る最善の方法はそれをつくることだが、次善は歴史を知ることだ」 スマホアプリ 受け入れテスト「お客さんが鍛えられてない」 「プライバシ…

開発の引き継ぎ時に聞いておきたかったこと

出入りの比較的多い業界なので、急に開発や保守の引き継ぎをすることも稀によくある。 前任者に話を聞ける内に聞いておきたかったことを書いた。 特に記録が残っていないと代わりに絶望だけが残るのでもっと注意しておけばよかった。 あなたがそれを選んだ理…

開発時に出会いたくないパターン

悩んだりうまくいかなかったり解決したり。だらだら書いた。 手作業症候群 とにかくなんでもかんでも手で確認・作業する必要があると思い込んでしまう病。 そりゃiOSアプリとかAndroidアプリとか最終的には実機確認は必須だけれども。その前にやれることは多…

転職してから半年くらいでやったことまとめ

IRCを導入した 遠隔地で作業しているひともいた中でメールでのやりとりはとても面倒だった。(同じオフィスで開発してるひとからもメールでいろいろ来た) だるかったので、ngIRCdを導入して、やりとりがすごく楽になった。(基本英語だが) リポジトリを分割し…

あまのじゃく気質

どうも言われたことの逆をしようとしてしまう。 今日はもう帰っていいよ、と言われると、もう少し頑張ろうと思ってしまう 今日はこれを仕上げてね、と言われると、だるさ全開で早く帰りたいとしか思えない 営業部のひとから、 時間あるときにちょっとこここ…

もしチーム共有の開発環境があるなら

できるだけ綺麗な状態を維持するように心掛けよう。どうしても手動で変更する必要があるときは、他のひとたちに声をかけよう。何かDBのデータを変な値にしたいときは、他のひとたちに(ry負荷をかけてみたいときは、(ryもし作業がつつがなく終わったら、元の…

近況

Perlほとんど書いてない。 だいたい毎日RubyでSinatraとMySQLと戯れている。 あとAndroidアプリ作るためにJava勉強し始めた。 AndroidStudioと迷ったけど、最初はEclipseでググりながらいろいろいじってみてる。 あといま読んでる本とか。 情熱プログラマー …

はてなブログに移行しました

そろそろいいかなと思ったので。

"見える化"のススメ

元ネタ。 カタルエ - 専業主夫の漫画ブログ: “見せ家事”のススメ ぼく「一部のAPIで応答する処理が他の仕様とちぐはぐだったので、統一させて一気にシンプルにしました!」 (↑少しずつ既存の部分が壊れていないか確かめながら手間暇かけた) じょうし「……、…

JenkinsがGithubにpushされたbranchをテストする

頑張ったので忘れずにメモ。 master以外のbranchがpushされたときにはそのbranchでテストが走ってほしい。 結論からいうと、Gitプラグインの$GIT_BRANCH変数を使えばいいみたい。 Jenkinsにアカウントを作る githubさんを追加しておく。 行列による権限設定 …

最近思ったり考えたりしてること

CIは大切 プロジェクトの最初に空っぽでも仕組みをいれておくべき でないとずるずると引きずる羽目になる 手作業をなくす努力をしなければならない 管理用の仕組みは用意しておくべき DB直接更新は怖すぎるし鬼畜だ 関係ないファイルをコミットしない リポジ…

carton execでGetopt::Long

自分もメモ。 コマンド実行時に「--」で明確に引数の終わりを示さないと、carton上のGetopt::Longが動かなかった。 # hoge.pl use Getopt::Long; my $verbose = ''; GetOptions ('verbose' => \$verbose); print "verbose: $verbose\n"; $ carton exec perl …

Perl勉強会で話した

3/8 18:40から約2時間、自分含め7人くらいで、Perlについて語り合った。いいね! 前回と違い、何も準備しなかったのがよかった 最初に内容を固定してしまうと、どうしてもそれに沿った内容を意識してしまって、柔軟性がなくなるからかな 参加者同士の質疑…

Github上のPull Requestで気をつけていること

ブランチ→ブランチのPR PRするとき、レビューするとき共通 トピックブランチの名前 Redmineのチケット番号を含めたか マージ先のブランチ 間違えていないか 各コミットメッセージ Redmineのチケット番号を含めたか 「なぜ」そうしたのかを書いたか 「〜から…

Redmine-Chanに「いつやるのか?」「いまでしょ!」機能を追加した

Redmine::Chan で IRC からプロジェクト管理を見て使わせていただいております。 https://github.com/onishi/Redmine-Chan 空前の「いまでしょ!」ブーム(職場限定)なので、minechanにもこのビッグウェーブに乗ってもらうことにしました。 優先度をMAXにして…

Commandパターン

CommandパターンをPerlでやってみた。 https://github.com/rightgo09/perl-headfirst-designpattern/tree/master/command/undo インターフェースとなるCommandクラスでexecute()とundo()を宣言する Commandクラスを具象化したクラスで上述の2つのメソッドを…

取置きとstateとMooseX::Singletonベンチマークした

Singletonパターンの前に、以前覚えたstateって最適化されて速いのかなとベンチマークしてみた。 myで外側にするのとMooseX::Singletonを比較に。 MooseX::Singletonが多機能っぽい分不利かなーとは思ってた。 20倍か。 MooseX::Singletonを外して比較。 Ben…

Stateパターン

Strategyパターンの双子であるところのStateパターンをPerlでやってみた。 本で読んだだけだとピンと来なかったけど、実際に手で書いてみると確かにやっていることは同じだった。 https://github.com/rightgo09/perl-headfirst-designpattern/tree/master/st…

Strategyパターン

読んでる。 Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本作者: Eric Freeman,Elisabeth Freeman,Kathy Sierra,Bert Bates,佐藤直生(監訳),木下哲也,有限会社福龍興業出版社/メーカー: オライリージャパン発売日: 2005/12/02メディ…

RubyistのためのPerlを書いてみてる話

Perl->Rubyと経験して、「Rubyを知っているけどPerlを知らないひと向け」のPerl資料を書いてみている。 https://github.com/rightgo09/Perl-for-Rubyist/blob/master/README.md まあもう少し書いてみよう。 ブラウザで簡単に書けるのが面白い。

Test::Specその3

they 単なるitのエイリアス 複数形の言い回しに向いてる xdescribe/xcontext/xit/xthey それぞれdescribe/context/itの代わりに使う 要はpending扱いにしてくれる TODOラベルを貼る必要がない spec_helper 各テストファイルで共通のものを書いておいて、spec…

Test::Specその2

元ネタ「RSpec の入門とその一歩先へ、第2イテレーション - t-wadaの日記」「RSpec の入門とその一歩先へ、第3イテレーション - t-wadaの日記」 第2、第3イテレーションも見ておく describeに説明を追加 describeの引数は2つが限界なので、文字列にして説…

Test::Spec入門

元ネタ「RSpec の入門とその一歩先へ - t-wadaの日記」第一イテレーション。 PerlのTest::Specだとどうなるかやってみた。 message_filter_spec.t Perlのテストファイルの拡張子は*.t RSpecっぽくするために、*_spec.tにする とりあえずテストファイルをt/に…

日本語クラス名でClass::Accessorを使えるのは5.16からという話

試行メモ。 Perlはかなり前からuse utf8すれば、日本語(マルチバイト)をクラス名とか変数名とかに使えるけれど、 クラス名を日本語にして、use Class::Accessor(::Fast)すると、 5.14系ではエラーになるけど、5.16系では大丈夫だった。 ちなみにClass::Acces…

先日の勉強会の問題をPerlで解いた

出題された問題↓ http://mizti.hatenablog.com/entry/2013/01/26/011841作ったもの↓ https://github.com/rightgo09/crazy_gin 安直に全パターン網羅しようとすると絶賛爆死するので、アルゴリズムってやっぱり大事だなーと思った。 あと、初めてstateを使え…

eachの途中で止めると再開が途中からになる話

Rubyのeach_with_indexは添字と要素が一度に取れるのでとても便利なときがある。 Perlで同じことをするには、5.12までは、ループ外に変数を置いて、ループ内でインクリメントするのが一般的だったけれど 5.12からはeach()が配列に対しても使えるようになって…

Redmine-Chan使ってます

http://yapcasia.org/2012/talk/show/7b6375aa-bd29-11e1-ad51-b39f6aeab6a4https://github.com/onishi/Redmine-Chanfork https://github.com/rightgo09/Redmine-Chan IRCでチケット作成、更新、参照ができるととても捗ってよいです! AnyEvent::IRCとかも勉…

Rubyのクラス変数と同じ動きにはClass::Data::Inheritableを使う

まー基本的にはクラス変数使わずにインスタンス変数でなんとかするのですが、メモ。 言語のクラス変数は違うはなし - Perl日記 の続き。Rubyだと、 class Hoge @@hoge = 'hoge!!!' end class Fuga < Hoge def hoge @@hoge end end puts Fuga.new.hoge #=> 'h…