タグ

ブックマーク / blog.uu59.org (5)

  • uu59のメモ | rbenvが遅くて死ぬので高速化する

    rbenvの初期化が0.5秒くらい掛かる。evalしてるのは公式ドキュメントにそう書いてるから。 $ time (eval "$(rbenv init -)") ( eval "$(rbenv init -)"; ) 0.30s user 0.08s system 82% cpu 0.462 total 一方rbenvを無効化したzshなら、起動から終了までは0.1秒未満(※個人差があります) $ time ( zsh -i -c exit ) ( zsh -i -c exit; ) 0.05s user 0.02s system 89% cpu 0.076 total 素のzshならもっと速い。 $ time ( : > /tmp/.zshrc && ZDOTDIR=/tmp zsh -i -c exit ) ( : > /tmp/.zshrc && ZDOTDIR=/tmp zsh -

    hamaco
    hamaco 2014/01/06
  • http://blog.uu59.org/2013-12-13-zsh-nullglob.html

    hamaco
    hamaco 2013/12/18
  • uu59のメモ | cramでvagrantのVMをテストする

    cramという便利なものがあります。これは語弊のある言い方をするとRubyでいうcucumber/turnipのようなテストツールです。サンプルを見たほうが早いと思いますが、普通にMarkdownとかを書く感じでテストを書けて、コマンドの想定される出力と実際のものを比較してtrue/falseを判定するみたいなやつです。想定と実際の出力とのdiffがなければグリーン、期待と違えばレッドです。 Vagrantのテストというとserverspecが勢いありますが、cramはもっと生っぽいテストをかけます。serverspecではshould be_enabledのように、書くのは簡単だけど実際に何をテストしているのかはソースコードを見ないとわからないので、テストがこけた場合の原因調査がちょっと厄介です(例えばRedhat系ならchkconfigの結果を見ています)。とはいえcramでパッケージ

    hamaco
    hamaco 2013/06/03
  • uu59のメモ | Gitでssh_configのBatchMode=yesみたいに認証プロンプトを出させなくする

    たとえばgithubをクロールしてcloneしてきたリポジトリを後日一斉にpullしようとしたとき、そのリポジトリがプライベートモードに設定されているとパスワード入力プロンプトが出てきてそこで入力待ちのまま処理が止まってしまいます。これを回避するために認証を要求されたら速やかに失敗するための設定について。 Documentation/RelNotes/1.7.1.txtが初出みたいなのでたぶんそれ以降のバージョンでないとダメ。 $ GIT_ASKPASS=/bin/false git pull git configに書く場合は、 $ git config core.askpass /bin/false でいけるはず。 man gitcredentialsに書いてます。 REQUESTING CREDENTIALS Without any credential helpers defined

    hamaco
    hamaco 2012/12/10
  • uu59のメモ | Node.jsの癌騒動まとめ

    承前 まずNode.js is CancerでTedさんは以下の3点を問題視しました。 ブロックしないから速いとかプログラマは未熟でもいけるとかスケーラビリティとか全部大嘘だろう システム管理者にやさしくないアーキテクチャ JavaScript製 あまりに感情的で論点が曖昧なこの記事に、多くの人がtrollingだと指摘しつつも色々と論を展開しました。 2日後に出たTed人によるフォロー記事では主に1点目について掘り下げています。 まず数学を使ってイベントモデルとスレッドモデルのそれぞれのスループットについて考察していきます。数式や変数展開の説明をしていくと長いので要点だけまとめると以下のようになります。 スレッドの実行数を増やせばCPU-boundなときはもちろんI/O-boundなときでもスループットを伸ばせる 理論的にはイベントモデルでもスレッドモデルでもスループットの最大値(=限

  • 1