かみぽわーる

kamipo's blog

はてなブログ1周年おめでとう! id:hatenablog

はてなブログ1周年おめでとう! id:hatenablog はてなブログProに申し込むのに買ったポイントが中途半端に余るんですけど、どうにかならないんですか!よろしくお願いします。 はてなブログ1周年! ありがとうキャンペーンを開始します - はてなブログ開発ブ…

#isucon2 にて死す

当日を振り返った翌日の感想はコチラ。 昨日は藤原組と山形組の抗争に巻き込まれて無残に死んだ #isucon2— Ryuta Kamizono (@kamipo) November 4, 2012 今回もチームやすべえとして@riywoくんに熱烈ラブコールを送ってたんですが、当日は飛行機の上というこ…

Linuxと挙動がちがってて使いにくいOS Xのコマンド(top/ps/netstat)の代替

GNU/Linuxに慣れてると、よく打つtop/ps/netstatがOS X使ってるときにLinuxのそれと全然ちがう挙動で使いにくい。同じ挙動にするのman見ても無理そうなんで、なんとか同じように使えるのないか調べてみた。 top htopならLinuxとOS Xで同じように使えるのでht…

YAPC::Asia 2012 に行ってきた

今年も行ってきました! .@kamipoさんとドラ娘の2ショット!! #yapcasia @ YAPC::Asia Tokyo 2012 http://t.co/JdELQpTW— すぎゃーん ⌘ 9.30刹那ハレーション (@sugyan) September 28, 2012 僕も2ショット撮りたい!って言ったら何故かこうなった #yapcasia…

.railsrcにrails newするときのオプションを書いておける

Rails 3.2から~/.railsrcにrails newするときのオプションを書いておける。とりあえずテストはrspecつかうのといきなりbundle installしていらんので以下だけ指定してる。 # cat ~/.railsrc -T --skip-bundle

MySQL Casual Talks Vol.3 でスベってきました

MySQL Casual Talks Vol.3 : ATND おつかれさまでした!去る4月19日はこじはることAKB48小嶋陽菜の誕生日でした!先日の握手会でそのことに気づいてしまったので なにかこじはるネタでLTをしたいなということで Haruna storage engineというネタをやりました…

MacBook Airのセットアップ

買ってきたらとりあえずやる(やった)こと一覧。 システム環境設定まわり スクリーンをロック キーチェーンアクセス.appの環境設定で「メニューバーにキーチェーンの状況を表示」をチェック セキュリティとプライバシー 「スリープの後、またはスクリーンセー…

【知らないでは済まされない】Webエンジニアのためのデータベース技術[実践]入門

Webアプリケーションを運用しているエンジニアであれば、サービスの成長とともにデータベースの性能問題に頭を悩ませた経験が少なからずあるのではないでしょうか。データベースは、大量のデータを確実に保存してすばやく取り出せる魔法の箱ですが、種も仕掛…

Nokogiriのインストール

Nokogiriをビルドするのにlibxml/parser.hとかlibxslt/xslt.hが必要なのでいつもの方法でどのパッケージに含まれてるのか調べる。 $ apt-file search libxml/parser.h libxml2-dev: /usr/include/libxml2/libxml/parser.h lsb-build-desktop3: /usr/include/…

rbenvで入れたRubyで no such file to load -- net/https いわれるとき

VPSのUbuntuにrbenvでRuby入れていろいろしようと思ったら no such file to load -- net/https. Try running apt-get install libopenssl-ruby (LoadError)rest-client/lib/restclient.rb at master · rest-client/rest-client · GitHubっていわれたけど、ap…

自動化とか最適化とか

ふだん仕事とかで自動化とか最適化ってことばはあまり使わずに、省力化とか効率化ってことばを使うようにしてる。なんというか、思い描く本当に自動化された理想の姿からすればぜんぜん自動じゃないし、最も適したと書いて最適化だけど、いまの自分に考えう…

言わないように気をつけてることば

仕事の話をしてるときに「でも」っていわれるとめちゃくちゃむかつくので、少なくとも自分は「でも」って言わないようにしてる。 相手のいうことを否定するなら「でも」なんて使わずに率直に「それは間違ってる」「それは正しくない」と言って自分の考えを言…

テストってことばを使わないようにする

レガシーシステムにテストコードがないことはどこにでもよくある話だと思いますが いろんなところでテストと名のつくことばが出てくることでなんとなくテストしてる風のふいんきがかもし出るのが僕はずっといやだなーと思ってた。なのでテストといってる人が…

2011年の振り返りとかいろいろ

昨日はノースリーブス8thシングル「ペディキュアday」の個別握手会&ミニライブでした!ちょうど一年前の今ごろはみぃちゃんのこともAKBのこともノースリーブスのこともなにも知らなかったもので 僕の2011年のもっとも大きな出来事はみぃちゃんとの出会いと…

mysql-buildでいろんなバージョンのMySQLをインストールしたい!

これはMySQL Casual Advent Calendar 2011 - MySQL Casualの8日目の記事です! UDFでFizzBuzz id:sugyanさんがストアドプロシージャでFizzBuzzをやっていたのでMySQLのUDF(user-defined function)でもやってみました。 kamipo/mysql_fizzbuzz · GitHub git c…

かみぽよ

かみぽよ〜〜

YAPC::Asia 2011 おつかれさまでした

YAPC::Asia 2011 おつかれさまでした!今回は前夜祭のRejectConfと2日目のLTでトークをしてきました。 RejectConf 本当は難しいフレンド・タイムライン処理という話をしました。 この手の機能はWebのソーシャル系サービスなら必ずといっていいほど当たり前に…

チューニンガソンに遅刻して思ったこと

朝からピングドラム観てる場合じゃなかった…。前回のWordPressに引き続いて今回のMediaWikiも圧倒的なPHPのCPUバウンドなアプリケーションで、PHP 5.4をビルドした人が上位を独占でしたね。僕はといえば、PHP 5.4ビルドしたら負けかなと思ってnginxのproxy_c…

#isucon に参加してやったこと思ったこと

ISUCONに@riywoと「チームやすべえ」で参加してきたので、その感想です。ひと言でいうと、良くも悪くもみんな積み重ねてきたものが結果に出たのではないかなと思います。最初のボトルネックとして用意されていたクソクエリのチューニングは、二人ともDB寄り…

ext4でSSDのTrimコマンドをつかう

SSDはNANDフラッシュメモリの上書きができないという特性上、空き領域が少なくなると性能が落ちてくるし、以下略*1なわけですが、Trimコマンドで論理的に削除された領域をSSDに伝えることで性能の劣化を抑制する効果が期待できる。ext4ファイルシステムでTri…

SSDのSecureEraseのやり方

ssd

SSDをずっと使っていると断片化してるのかなんなのかよく知らないけど、だんだん性能が落ちてくるし、彼女と別れることになる。あのころの性能を取り戻すSecureEraseという技があるのでやり方のメモ。SecureEraseをするにはSSDが「not frozen」になってる必…

Debianでperfを使う

チューニンガソンの優勝者がperfというコマンドを使ってCPU時間のプロファイリングをしていたらしい。そんなコマンドはじめて知った…。yumだと以下のように直感的なパッケージで入るそうですが yum install perfDebian Squeezeでperfコマンドはlinux-baseパ…

Apacheが%2Fを勝手にデコードして生きるのが辛いとき

mod_rewriteでの最後の砦 - As a Futurist...をみて、僕もApacheでURLに%2Fを含むリクエストをリバースプロキシするときに困ったことがあったなーというのを思い出した。 AllowEncodedSlashes On RewriteRule ^/(.*)$ http://backend/$1 [QSA,L,P]みたいな設…

Redmineのインストール

REEにRedmineをインストールするときの注意点 rack 1.0.1 が必要 i18n 0.4.2 が必要 rubygems のバージョンが 1.5.0 未満じゃないと動かない REE の rubygems が 1.5.2 なのでバージョンを下げないといけない 以下、Debian squeezeでRedmineを動かすまでの作…

screen -X sessionname hoge で現在のセッションの名前を変更できる

ということをよく忘れてググってるのでメモ。

NAT環境下では net.ipv4.tcp_timestamps = 0 する

NAT環境下に複数ホストがいてそいつらがクライアントのときに、WAN側のサーバに接続が切られるときは net.ipv4.tcp_timestamps = 0 すればいいというのを教えてもらいました! 【緩募】SYN に SYN+ACK じゃないレスポンス受け取って RST しちゃう問題の解決…

MySQL 5.5対応したSpiderストレージエンジンをインストールする

なんか cmake 失敗するなーと思ったら、実行権限がないディレクトリが含まれててその中のファイルが読めないのでよしなに実行権限あたえて cmake してください。 cd /usr/local/src wget "http://launchpad.net/spiderformysql/spider-2.x/2.24-for-5.5.8/+d…

SQLでincrementした値を表示するやつ

MacBook Air 11インチ欲しい!@sugyanさんのSQLでincrementした値を表示する方法を考える - すぎゃーんメモを生DBIでやってみたのとベンチマークとってみた。トランザクションなし Rate dbic teng dbi1 dbi2 dbic 578/s -- -64% -92% -92% teng 1587/s 175% …

xtrabackupをちょっと便利に使う

xtrabackupにはinnobackupexというラッパースクリプトが付属していて、MySQLのプロセスを止めることなくバックアップを取れて便利なんですが、innobackupexでバックアップ取ると以下の点が不満だったりする。 --slave-infoで生成されるCHANGE MASTER文が不完…

東急ハンズでベニヤ板を買うとき

東急ハンズでベニヤ板を275mm×440mmサイズにカットしてもらうときは12枚の倍数で買うと一番コスパがいい。12枚の倍数もいらないときは6枚の倍数で買うのがいい。