はてなブログ1周年おめでとう! id:hatenablog
はてなブログProに申し込むのに買ったポイントが中途半端に余るんですけど、どうにかならないんですか!よろしくお願いします。
はてなブログ1周年おめでとう! id:hatenablog
はてなブログProに申し込むのに買ったポイントが中途半端に余るんですけど、どうにかならないんですか!よろしくお願いします。
当日を振り返った翌日の感想はコチラ。
昨日は藤原組と山形組の抗争に巻き込まれて無残に死んだ #isucon2
— Ryuta Kamizono (@kamipo) November 4, 2012
今回もチームやすべえとして@riywoくんに熱烈ラブコールを送ってたんですが、当日は飛行機の上ということで振られてしまったので、それぺちの@do_akiさんとRails高速化の@mirakuiさんまったく接点のない二人を誘って参加しました!
二人とも突然の誘いを快く受けてくれてありがとうございました!!
結果はというと、まずクエリのボトルネックをインデックス張ってつぶしたあたりまではよかったんですが、サイドバーのキャッシュの不整合を解決できずDBから引き直そうとしたところで致命的な設計ミスに気づいてしまって、せめて完走させてスコアは出そうってことでgit initした状態に戻してフィニッシュでした。
個人的に力不足だったなと思うところが多くて、優勝したfujiwara組のレポートで、ボトルネックを着実に計測してそれに基づいて施策を打ち出していく、これがベーシックなようで本当にむずかしく、歴然とした実力の差があったんだなと感じました。あとはメンバーそれぞれの役割が分担されてることで、チームとしてより大きな成果につながったんだなというのも感じました。
こういうコンテストで人と競い合うことで、あらためて自分のスキルや他のエンジニアの人たちとの差がわかって、自分はどうなりたいのかとか何ができるようになりたいのかを考えるきっかけになってすごくよかったです。
あとはとにかく楽しかった!仕事でも発揮したことない今年一番の集中力を発揮した!
この気持ちをバネにして次はリベンジ果たしたいですね。
GNU/Linuxに慣れてると、よく打つtop
/ps
/netstat
がOS X使ってるときにLinuxのそれと全然ちがう挙動で使いにくい。同じ挙動にするのman見ても無理そうなんで、なんとか同じように使えるのないか調べてみた。
htop
ならLinuxとOS Xで同じように使えるのでhtop
を使うとよさそう。
brew install htop-osx
ps
のいい代替は見つからなかったけど、ps auxf
のようにツリー表示したいときの代替はpstree
を使うとよさそう。
brew install pstree
netstat
はnetstat -tnpa
とかnetstat -tnpl
をよく使うけど、前者はlsof -nP -iTCP
、後者はlsof -nP -iTCP -sTCP:LISTEN
で代替できそう。
$ sudo lsof -nP -i4TCP -sTCP:LISTEN COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME launchd 1 root 28u IPv4 0x848d6f3ed164cf3b 0t0 TCP 127.0.0.1:631 (LISTEN) klnagent 74 root 7u IPv4 0x848d6f3ed164c803 0t0 TCP 127.0.0.1:30523 (LISTEN) klnagent 74 root 8u IPv4 0x848d6f3ed164c0cb 0t0 TCP 127.0.0.1:49152 (LISTEN) Dropbox 350 kamipo 19u IPv4 0x848d6f3ed3807993 0t0 TCP *:17500 (LISTEN) Dropbox 350 kamipo 25u IPv4 0x848d6f3ed3804e43 0t0 TCP 127.0.0.1:26165 (LISTEN) Growl 9088 kamipo 4u IPv4 0x848d6f3ed864ef3b 0t0 TCP 127.0.0.1:23053 (LISTEN) mysqld 81912 kamipo 27u IPv4 0x848d6f3ed924ae43 0t0 TCP *:3306 (LISTEN) Skype 91096 kamipo 39u IPv4 0x848d6f3ed9844b23 0t0 TCP *:22493 (LISTEN)
あとOS Xのtar
はイケてないという噂をよく聞くのでGNU tarも入れておくとよいかもしれないですね。
brew install gnu-tar
今年も行ってきました!
.@kamipoさんとドラ娘の2ショット!! #yapcasia @ YAPC::Asia Tokyo 2012 http://t.co/JdELQpTW
— すぎゃーん ⌘ 9.30刹那ハレーション (@sugyan) September 28, 2012
僕も2ショット撮りたい!って言ったら何故かこうなった #yapcasia @ YAPC::Asia Tokyo 2012 http://t.co/o6aR1GcC
— すぎゃーん ⌘ 9.30刹那ハレーション (@sugyan) September 28, 2012
かみぽさん、すぎゃーんとの方がうれしそうに見える……
— IT業界のマー君 (@sugamasao) September 28, 2012
1日目はtokuhiromのToraとmotemenさんのWightのトークがおもしろかった。
2日目のPerl 今昔物語の対談で個人的に印象に残ったのが、nekokakさんの自分はサラリーマンプログラマだったけどいまこうやって登壇するようになったのはtokuhiromがきっかけだったみたいな話があって、僕もPerl Mongersの中で一番影響受けたのをだれかひとりを選べといわれたらtokuhiromのハックする姿勢をいつもかっこいいなーと思っていたからすごく共感した。
あとそんなtokuhiromも最初のYAPC::AsiaのLTではまわりがみんなおもしろくて緊張したという話をしていて感慨深かった。
僕がはじめてYAPC::AsiaでLTしたときも、直前のyusukebeさんのmiyagawanize LTがすごいおもしろくてあまりの緊張ですこしマイクがうわずったりもしたけど、そのあとの懇親会でtypesterさんに「ファンになりました」ってひろってもらえてすごくうれしかったのを思い出した。
そういう体験もあって、僕がトークを聞いておもしろかったと思ったら「おもしろかったよ!」って伝えるようにしていて、今年もそういう体験をした人がいたのかなーと思うとまた感慨深い。
これからも、そういう体験をできる場が続いていくといいなーと思いました。
MySQL Casual Talks Vol.3 : ATND おつかれさまでした!
去る4月19日はこじはることAKB48小嶋陽菜の誕生日でした!
先日の握手会でそのことに気づいてしまったので
なにかこじはるネタでLTをしたいなということで
Haruna storage engineというネタをやりました。
InnoDB Deep Talk #1 : ATNDでd:id:moriyoshiさんがLTしていた
InnokoDBをパクったForkしただけのネタなんですけど
テーブル名で動作が変わるストレージエンジンネタもやってみたかったので
テーブル名に"mariko"が含まれてると麻里子様のツイートも取ってくるようにしてみました( *`ω´)八(бвб)
きもい、滑ってる、これはひどい、などの率直な感想を頂いておりますが
これに懲りずにまた呼んでください!よろしくおねがいします!!
買ってきたらとりあえずやる(やった)こと一覧。
defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder
xcode-select --install sudo xcodebuild -license sudo mkdir /usr/local sudo chown -R `whoami` /usr/local ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew doctor git clone https://github.com/kamipo/dotfiles.git cd dotfiles ./brewfile.sh ./dotsetup.sh ./xxenv_setup.sh sudo vi /etc/shells chpass -s /usr/local/bin/zsh
git clone git@github.com:sstephenson/rbenv.git ~/.rbenv ln -nfs ~/dotfiles/default-gems ~/.rbenv/default-gems mkdir -p ~/.rbenv/plugins cd ~/.rbenv/plugins git clone git@github.com:sstephenson/ruby-build.git git clone git@github.com:sstephenson/rbenv-default-gems.git git clone git@github.com:rkh/rbenv-update.git export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" # ruby required libssl-dev libreadline6-dev libncurses5-dev libsqlite3-dev # nokogiri required libxml2-dev libxslt1-dev rbenv install 2.2.1 rbenv global 2.2.1 rbenv rehash
git clone git@github.com:tokuhirom/plenv.git ~/.plenv mkdir -p ~/.plenv/plugins cd ~/.plenv/plugins git clone git@github.com:tokuhirom/Perl-Build.git perl-build export PATH="$HOME/.plenv/bin:$PATH" eval "$(plenv init -)" plenv install 5.21.9 -DDEBUGGING=-g --build-dir=~/.plenv/build plenv global 5.21.9 plenv install-cpanm plenv rehash
go get github.com/motemen/ghq ghq get kamipo/mysql-build ln -nfs ~/src/github.com/kamipo/mysql-build/bin/mysql-build ~/bin/mysql-build mkdir -p ~/opt/mysql mysql-build -v 5.6.23 ~/opt/mysql/5.6.23 cd ~/opt/mysql/5.6.23 ./scripts/mysql_install_db ./bin/mysqld_safe & ./bin/mysql -e 'show variables like "version"'