$shibayu36->blog;

クラスター株式会社のソフトウェアエンジニアです。エンジニアリングや読書などについて書いています。

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

Test::LWP::Mockのindexが変になってしまっていたのが直っていました

正しくインストールされているモジュールがcarton checkに怒られる時 - $shibayu36->blog; 以前このような記事を書いていたのですが、pull reqなどを送ったところ直っていました。 https://github.com/lukec/cpan-test-mock-lwp/pull/1 https://github.com/l…

helm-c-moccurの代わりにhelm-occurを使うようにした

https://github.com/milkypostman/melpa/issues/1102 githubのmelpa repositoryをwatchしていたら、こんなissueを見つけた。helm-c-moccurはメンテされて無く、helmのrepositoryで同様の機能が実装されているので、消しても良いとのこと。もともとhelm-c-moc…

正しくインストールされているモジュールがcarton checkに怒られる時

今日のcarton進捗情報です。 今日はcarton checkをしてみたら、正しくインストールされているはずなのに、versionがおかしいと怒られてしまったのでその調査をしました。 carton checkで怒られる原因 まずcarton checkをしてみると、 $ carton check Followi…

テストと対応関係

最近のテストで気をつけていることの一つについて書こうと思う。テストを書くときに気をつけていることとして、そのテストが何をテストしているのかという対応関係を明確にしながらテストを書くということを気をつけている。 例えば以下の様なクラスがあると…

emacs 24.3へのアップグレードに失敗しました

なんとなくemacsの最新にするかとおもったので、アップデートを試してみました。結果として失敗しました。 以下の記事を参考に。 Mac OS X にインラインパッチの当たった Emacs を Homebrew でインストール | Good Design and Great Hack Better Full Screen…

Emacs実践入門を読みました

Emacs実践入門 ~思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus)作者:大竹 智也技術評論社Amazon ようやく読んだ。とりあえずEmacsを使いはじめてtutorialを終えたくらいの人や、そろそろEmacsの設定ちゃんとしようと思う人はまず読んでおく…

本日のcarton化についての会話

twitter上でいろいろ会話したけど忘れるとあれなので、残しておく。carton bundle で mirror を作る運用にすると carton install で snapshot を update した時に必ず実行するようにしないと辛そう。— soh335 (@soh335) 2013, 10月 11@soh335 多分setup用ス…

carton化を進めています

OrePAN的なやり方でモジュール管理していたプロジェクトのcarton化を進めているので、進捗をメモしてみる。 整合性が取れるまでcarton installを進める 現状のモジュールのバージョンを完全に固定したままで、carton installしたらあまりうまく行かなかった…

percolで最近行ったdirectoryにcdするやつを書きました

探したらありそうだけど、作ったほうがはやいので書きました。https://github.com/shibayu36/config-file/blob/master/.zsh/percol-sources/cdr.zsh 使い方 以下のコードをコピペしてどこかzshが読み込むところに貼り付けてください。 function percol-cdr (…

ターミナル版anything的なpercolをzawの代わりに試してみた

emacsを使っているとterminalでもanything的にいろいろやりたくなるんだけど、そういう時にこれまでzawというツールを使ってきた。 https://github.com/zsh-users/zaw zaw.zshで最近移動したディレクトリに移動する - $shibayu36->blog; zawを使って最近更新…

YAPC::Asia 2013に行きました

最近いろいろあってずっとYAPC::Asia 2013の感想を書けていなかったのだけれど、ようやく落ち着いてきたので書いてみようと思う。 僕は今回は「とにかく他の人と話そう」という気持ちでYAPCに参加した。そもそも京都にいると東京の勉強会とかにもあまり参加…

AWS, chef, Cinnamon等を使った無停止デプロイ(PrePAN carton 1.0化の裏側)

最近PrePAN uses carton 1.0 now! - $shibayu36->blog;でも書いたとおり、PrePANのcarton 1.0化を進めていました。 通常であれば変更点をアプリケーションサーバにデプロイし、サーバを再起動すれば良いのですが、cartonを0.9から1.0に上げるというまあまあ…

PrePANのローカル開発環境をchefとvagrantで整えられるようにしました

最近PrePANのcarton 1.0化を進めていたのですが、その過程でvagrantでローカル開発環境をちゃんと作れるようになったので手順を書いていきます。結果として簡単なperlのwebアプリを動かすための、小規模なchefのrecipeの例の一つが出来たと思うので参考にど…

RDSのt1.microのmax_connections

RDSを使っていたら、なぜかいきなりToo many connectionsでISEになるなあと思っていたら、max_connectionsの制限を超えてしまっていた。 RDSのt1.microの最大コネクション数はデフォルトが34になっているらしく、まあまあ少ない。例えばwebが2台5processずつ…

PrePAN uses carton 1.0 now!

これまでPrePANはcarton 0.9(まだcarton.lockだったころの)で動いていたのですが、最近carton 1.0が出たので、そちらに移行しました。 carton 1.0を使ってみるとかなり使いやすくなり、安定した印象を持ちました。 とりあえず初回にcarton installしておいて…

znc 1.0をインストールした

そろそろちゃんとIRC Proxyのセットアップとかしようと思っていたら、zncが1.0になって、SSL周りの設定がさらに簡単になっていたのでやってみた。tiarra+stoneを卒業してZNCを使い始めた - すぎゃーんメモ時点では、複数のネットワークに接続するには複数ユ…

vagrantのVMではsudoはnopasswdにしておく

vagrantでちょっとハマったことをメモ。vagrantではsudoはnopasswdにしておいたほうが良い。そうでないとvagrant haltが実行できなくなり、VMをshutdownできなくなった。chefのsudo cookbookを利用している場合、以下のようにattributesを設定しておくと勝手…

Perlグループに参加した

Perlブログ グループに参加する際に、記事のカテゴリーを指定できるようにしました - はてなブログ開発ブログ はてなブロググループでカテゴリ指定で参加することが出来るようになったので、perlカテゴリ付いている記事だけグループに投稿するようにした。

はてなインターンの前半が終わりました

1ヶ月あるはてなインターンの前半2週間が終わった。前半は基本的にWeb周りの講義を毎日行い、それぞれ課題をこなすというものなのだけれど、僕は前半はインターン生のうちの二人のサポートというポジションだった。 僕は人と話したり、教えたり、というのが…

前にフグ食べたとこでアワビ食べた

敦賀でフグを食べてきた - $shibayu36->blog;で食べたフグが美味しかったので、同じところに行ってアワビ食べて来た。前菜アワビのバター焼きアワビの刺身アワビの酒蒸し和牛フグの時もすごい美味しかったけど、今回もかなり美味しくて良かった。美味しいも…

knife-soloを0.2.0から0.3.0にした時の話

この前vagrantに対してchefを適用しようとした時にハマった話です。 問題 PrePANはvagrantでローカル開発環境を作ることができ、vagrantでVMを作った後、それに対してknife-soloを使ってchefを適用するということをしています。先日Carton 1.0化を進めるかと…

vagrantでCentOSのVMを立ちあげて、ネットワークが遅い時に試すこと

最近PrePANのcarton 1.0化を進めるため、vagrant、chef、knife、AWSなどにはまりまくっております。今回はその中でvagrantにchefを適用しようとしたら全く終わらなくて、それについて調べたことについて話します。 PrePANの開発環境でvagrantを使っていたり…

手元とserverでのperlのversion違いで、carton installでハマった

PrePANでcarton 1.0しようとしていたんだけど、手元ではcarton install出来るのに、サーバ側でcarton install --deploymentしようとしたらうまくいかないという状態になってしまった。いろいろ調べていたら原因が分かったのでメモ。 結果としてcarton側が悪…

carton bundleで出来たvendor/cacheは何で管理するのが良いのだろうか

carton 1.0が出たので、cartonを再度使ってみていた。その中でcarton bundleというコマンドがあって、それによってlocalのvendor/cacheというディレクトリにcpan mirrorが作れるんだけど、これをどうやって管理したら良いのかがいまいち分かっていない。 考…

cpanmとModule::AutoInstallとoptional_feature

今日もcpanmのことについて書きます。 今日は以下の様な状況が起こりました。 verbose付きで手元のcpan mirrorからインストールすると失敗する AUTOINSTALLのoptionや/dev/nullを使って、verboseだけどinteractiveではない特殊なことをしていた PERL_AUTOINS…

cpanmのバージョンは上げましょうという話

とある事情があって古いcpanmに固定して使っている場所があったのだけれど、それによってハマったことがあったのでメモ。詳しいわけではないので、間違ったことを書くかもしれないです。何か間違っていたら指摘していただけると。 cpanmのバージョン1.5くら…

Test::Perl::Criticでコーディング規約をテストする

コーディング規約はあるけれど、レビューの時にチェックするのは大変ということで、とりあえずTest::Perl::Criticを使って軽くテストを書いてみました。 僕はある程度のコーディングのブレは許容して、チーム全員で合意がとれるものだけを自動でチェックする…

guide-key.elを導入した

キーバインドを覚えられない問題が顕著だったので、guide-key.elを導入した。guide-key.elは設定したprefix keyを入力した時に、その後に入力できるキーをpopupで表示してくれるもの。 基本的な導入や使い方は Emacs で自動的にキーバインドをポップアップす…

白浜に旅行に行った

先週の土日に白浜に旅行に行った。温泉入ってきた。海の近くなので、海鮮丼食べた。 三段壁っていう崖みたいなところに行った。 三段壁、エレベータで降りると洞窟みたいになってた。 なんかだれかのサングラスが置いてあった。 あと円月島ってところに行っ…

perlのメトリクスをjenkinsで可視化する

最近リファクタリングをしたいと思っているんだけど、なかなか大変で後回しにしてしまう。これはいけないと思って、自分達を納得させるために、perlのメトリクスを出し、それをjenkinsで可視化するというのをやってみた。 perlのメトリクス集計 まずperlのメ…