酩酊

夢。 突如として研修が再開される。適当に座ったらじゃあ席替えをするので皆さん音楽に合わせてテーブルを回ってくださいとなり、椅子取りゲームのような感じで音楽が流れ出す。 左右の人間が変わるわけではない席替えだからなんの意味があるのだろうと思っていた。 その場で何故か偉い人たちが研修を視察してて、とにかく偉い人の前で音楽止まらないでほしいと思ってたら、同期がこんな研修やってられるかと暴れだしてものが飛び交いはじめて終了した。 崩壊した研修会場で人事がやってきて、この研修は以前から不評で今回ので決定的になくなると聞かされる。 その後、人事に相談されて来年の採用活動についての意見を求められた上、どういう研修内容にすればいいと思うかのようなのを聞かれた。 話を聞いている間はなぜか思考がまとまらなくてずっと水飲みたいみたいな気持ちだった。

目覚め。

昼から飲酒していて酩酊状態のまま睡眠を始めたので多分水が欲しかったんだと思う。

東京に来ました

東京に移住してきました。

はい。元気です。いつでも諸々お誘いください。

今日は先輩たちに寿司に連れて行ってもらったので元気になりました。

初めてお会いする先輩もいたのですが、寿司を食うために東京に来た人間ですか?と聞かれたので自己紹介が省けてよかった。

programmermot.hatenablog.com

このように何らかのエピソードを用意しておくと色々と便利ですね。みなさんも昼バスを利用して東京に寿司だけ食いに来て帰ってはいかがでしょうか?

Macが直った(直っていない)

programmermot.hatenablog.com

この話の続きです.

macには最後の手段としてシングルユーザモードでのログインが可能で,起動時にCmd+Sを入力すると,黒い画面に白い文字が出てくるようになる.

本来だとここでfsckしたり,データを頑張って抜いたりすることとなる.

シングルユーザモード起動時には,fsckしたければ以下の感じでコマンドを入れろと説明が出ているので,だいたいそれに従えばなんとかなる. 具体的には,

$ /sbin/fsck -fy
$ /sbin/mount -uw /

すればよしみたいに書いてあるので何気なく2つコマンドを実行した.mount後データが読めるようになってとりあえず頑張ってデータ抜き出すかなーなどと思いつつ,何気なくexitするといつものログイン画面が起き上がってきた.

ビビりながらデータのバックアップを行い,再起動したもののうまく起動できないので,当分の間は,シングルユーザモードで入る→mountする→exitでGUIを出すという流れでMacを起動することとなりそう.今この記事はMacから書いています.とにかくあと1ヶ月持ってくれ

Macが壊れた

 

具体的には起動はするけどストレージが死んだ感じ。

セーフモードやシングルユーザモードで起動してfsckしたんだけどエラーが出て修復できない形。

データそのものは無理やりreadonlyでマウントすれば助かるだろうし、ほとんどのデータはバックアップ済みなので致命傷ではない。

開発環境整備がだるい。

 

修論提出も近く危機感しかない。助けてくれ。

 

http://www.amazon.co.jp/registry/wishlist/43GV0IMXIADU

 

ISUCON本戦で人権を失った

予選突破の喜びはこちらです.

programmermot.hatenablog.com

結果

覚えてないけど初期実装下回る点数がでたので人権がない.さすがにつらすぎて記録とるの忘れてた...

当日の様子

f:id:programmerMOT:20161022204227j:plainf:id:programmerMOT:20161022090836j:plain

チーム卒業の軌跡

時系列はちょっと怪しい.

まず問題を確認.

ISUCON6本選オープニングプレゼン #isucon /isucon6-final // Speaker Deck

Docker,Reactで後ろにWebappがある感じ.Server Sent Eventが何か知らなかったけどとにかくPushする機構というのを理解した. 最初の1時間をかけてコードを読んでだいたい構成がわかったからどのようにスケールさせるかを考えた. 最初から5台使うことを考えて,

  • nginx + react(1台)
  • app (2台はapi,1台はstream)
  • mysql(1台)

という構成にすることになった*1

ここで何をトチ狂ったかh2oを試そうとして1時間を潰した.落ちついてnginxにして,各マシンにプロキシするようにしてエラーが出ないようにした段階で既に半分時間が過ぎている形となってしまった. こっからかなり焦ってしまって小手先のコード変更ばかりしていて,コード変更→Fail→なんとか治す→Successしたけど点数減る→変更→Failみたいなループを始めてもうダメだこれうーんどうすればいいんだと思ったところで8時間が終わってしまった.

abcangくんにはapp(ruby)周りの高速化をお願いしていた,がそもそもそれ以外の最適化がちゃんとできていなかったので旨味を感じる前に終わったのかなぁと思っている. syusuiくんにはmysql周りのセットアップとappの/api/streamまわりをお願いしていた,がそもそもそれ以外の最適化がちゃんとできていなかったので旨味を感じる前に終わったのかなぁと思っている.

つまるところ,どうでもいいことに対して時間を使い適切な指示が行えなかった僕に大きな失敗だった感がある.

やるべきだった点

  • Reactのproxyやめるのが遅かったもっと早い段階でできた
  • Reactさーばを分散させること.ここを一台で回すのどうやら失敗っぽい

良かった点

  • 朝起きれた

良くなかった点

  • あんまり使ったことのないh2oを利用したこと.使ったことのないものは結局使えないというISUCONの原則に反していたのは大きい失敗
  • 最初っから5台使い切ろうみたいな戦略にしたこと.もっとスモールスタートでも良かった気がするし,5台使わなくても十分学生top取れたと思う
  • Reactが大きなボトルネックになることを見抜けなかったこと.Reactは全員あんまり理解していなくて手を出さなかったのが完全に良くなかったと思う
  • ちゃんとした計測をしなかったこと.推測するな計測せよの原則に反していたのは大きい失敗
  • サーバ整うのに時間がかかってアプリの最適化着手が遅くなったこと.これは本当に申し訳なかった

まとめ

こうしてみると,ReactとかDockerとか使ったことはあるけどチュートリアル試したりちょっと使う程度でしか使ってなかったものがあったせいでびびったというか怖気づいてしまったのが大きいのかなと思う.あとそれに焦ってしまって適切な計測をせずに手を動かしたのは良くなかった.ちゃんとできることを確実にしているだけでも良い点数が出たと思うし,上位にも食い込めたとは思う.今回特に辛いのは参考実装を下回ったという事実でこれが本当に辛い.

今年はReactとDockerが現れたのはかなりびっくりしました.

今後に向けて

チーム卒業は今年度卒業して来年から社会人になる人間たちで構成された学生チームでした.我々は学生チームということで今回はかなりチャンスだったのですが,それを逸したことは悲しいです. ただ得るものはすごく多くて,もう既に出ている上位チームの解法であるとか,講評などは非常に勉強になっています.我々もここで折れずに来年はチーム新卒としてISUCON7に参加したいと思います.

メンバーの声

abcangくんの感想です

abcang.hatenablog.com

syusui!!!!!!!!!

改めまして,運営出題者のみなさま,会場提供を始めとしたスポンサー企業のみなさま本当にありがとうございました.ISUCON7期待しています. これはそういえばなんですけど,2015年の夏にあったISUCON夏期講習で勉強になったことが今回かなり生きたのでLINEのみなさま後輩たちのためにも続けてほしいです.

インターネットの様子

悔しい

*1:思えばここが失敗だった

ひげそり

ヒゲ.T字カミソリを使って風呂の際に剃ってるんだけど,今朝シャワー浴びたときに刃がだめになってきたから捨てたのでカミソリない状態だった.

捨てたは良いが新しいインスタンスを用意していなかったので,父親がどこからかパチってきた旅館とかに置いてある感じのカミソリで剃ったところすごい勢いで顎も剃れて血が出てきて大変だった*1.もう少しちゃんとしたカミソリ買ったほうが良いということを認識した.帰りにでも買う.

*1:そんなすごい剃れたわけじゃないけど