残業したいって言ったけれどもさ


 調子こいてすまなかった。ここ二日、性能測定が佳境を迎え、どんどん溢れる発注にない新規依頼、やってもやっても満足しないお客様、諸々の事情で2日ほど深夜残業をしたわけだが死んだ。何がどういう境地に至るのか確かめてみたいだ。もう境地きたわ。すぐにギリギリきたわ。ほんと定時退社できる状態って素晴らしい。
 んで、佳境中の佳境の性能測定だが、なんか思った通り、性能測定の結果ざっくり遅いところがわかったら次はどこが遅いのかはっきりさせろと依頼。そんなの発注にないでしょ? 測定して終わりという話では? まあ、計画書を鑑みれば、すげえぼやかして書いてあるけど、広義ではボトルネック分析もやれとも読み取れる。発注時に曖昧に言って状況によって依頼をどんどんアップデートしていくシステム。要するに当初の依頼にはなかったものでもお金の足りる限り限界ギリギリまで依頼をこなせという依頼。ソフトウェアあるある。やりますよ。
 そんで厄介なことに性能測定してた対象がゴリゴリのオープンソースだったため死んだ。オープンソースといえば昔AndroidのFramework担当だったけれどもあの時もソース読んでもろくに分からないまま終わった。あの時できなかったことが今になって? 成長したからできる? と思いきやまったくできなかった。3年前できなかったことが今できるとは限らない。APIの初めのあたりで処理がどこに行ったかわからなくなった。テンプレートやらtypedefやら無名関数やら訳の分からない仮想関数やらもう分かりやすくしようとして逆に分かりにくくなってるあれで死んだ。無理。これ1年あっても全貌分からない自信ある。オープンソースだから当然ドキュメントなし。みなまで言うな。
 ソースコード解析を早々に断念しツールに頼ることにした。ubuntuではメジャーなプロファイルツールのperfを使った。したらあれよ。特定の関数呼び出しの後、TCPスタックに出て行くまでのスタックトレース取れた。信じらんないから。dlopenのダイナミックロード先も当然のようにスタック取れてるし、30kstepあるソースの全関数にprintf入れようと思ってたのがバカみたい。平たく言うと、自分のプログラムからOSのよくわからない関数までの道筋が明確に見えた。しかもどこが処理速度重いかパーセンテージで出るんだよ。神か。
 ということでperfを使うとよくわからないオープンソースもスタックが取れるから、プロファイルだけじゃなくてトレースツールとしても役に立つよという話。仕事のお話ばかりでつまんない。

ダイエット、始まる

 「え? それって筋肉で厚くなってんの?」
 今日昼飯の時に同期に言われたんだけどそれなー! 週一でジムに行ってもう数ヶ月。プロテインもちゃんと飲んでるので筋肉もついたけれども違う。確実にデブです。デブになった。
 あれだ。確かにベンチプレスは60キロあげれるようになったし、昨年の秋は50キロあげられなかったことを考えれば確実に筋肉は付いているのだけれどいかんせんそれ以上に太った。妻にも「下から見たらすげえ顔大きくなった」って言われたし、やばい。
 運動はいい。野球もやっているし、ジムは欠かしていない。毎日バットも振っている。問題なのが食生活である。日中なんかストレスたまるってんでリゲインを3本ぐらい飲んでるし、昼飯はいっつも一平ちゃん夜店の焼きそば。どのぐらいの頻度で食っているかというと、飲み会の席で先輩に「Y平くん、焼きそば食べなくていいの?」と言われるぐらい一平ちゃんを食べてる。いや、好きなんだよ。いっぺん食べたらやめられねーんだよ。あとそれに加えておにぎり2個と、サンクスの旨辛フライドチキン。おやつにミルクココアを2本挟んで帰宅。その後妻の晩飯を食べつつご飯2膳。そして締めにポテチかインスタントラーメン卵のせ。締めの締めにアイスのMOWのトリプルベリーを食べるという。もちろんのごとく並行して酒を1リットルぐらい飲む(しかもストロングゼロとか氷結ストロングとかアル中のやつ)。
 あれだ。この前テレビで渡辺直美の特集やってて、渡辺直美は日中に8食ぐらい食べてて、食うか仕事するかのどちらかで、妻と「あれだけ太るのは太るだけのことをやってるんだね。もはや努力の域だ。マッスル北村が消化剤飲みながら無理して暴食するのと同じだ」とかうんちく垂れてたけれども完全にバカ。俺もプチ渡辺直美みたいになってるじゃん。太るに決まっている。この量食べてたらいつも中学の部活ぐらいカロリー消費しなきゃだめだけどお前プログラマーだからな。完全に食生活が崩壊している。
 昔から食べることが好きだった。大学時代もバイト代をセコセコためては月に1回は蓬莱軒のひつまぶし食いに行ってたし、元カノの家に遊びに行っては四天王ラーメンやら三河開花亭ばっか行ってた(しかも元カノの金で)。もっと遡れば、お小遣い500円だった小学生時代、たった500円しかないお小遣いを月に一度のご褒美とか言って学校帰りのたこ焼き屋、8個350円に費やしてたし、ミニ四駆走らせにおもちゃ屋に行ったと思ったらミニ四駆走らせずにずっとうまい棒買って食ってた。そんで家系なのか全く太らなかったもので、デブな人を見ては「俺は好きなものを好きなだけ食べれて幸せだなあ」とか思ってた。
 しかしですよ。齢30を超えて代謝も悪くなってきた中、ついに自分の摂取カロリーが痩せ体質に買った。2ヶ月前は58キロだったのだけれど今63キロだからな。ついでに言えば体脂肪率も21%とかになってたからな。25%からデブだからな。ガリガリの戦争孤児みたいな小学生時代からするとありえない。これは対策をしなければならない。
 なので明日から自転車通勤したいと思う。ちょうどボコボコに壊れてたクロスバイクを修理したので。あと関係ないけど修理に2万かかったので。通勤費浮かすためにも今時のスポーティーサラリーマンのごとくチャリンカス気取りたいと思います。車道走って車にあおられる奴やりたいと思います。ただうちから会社まで車で20分ぐらいかかるんですけど、一体自転車で行ったら何分かかるでしょう。きっといつもの30分前ぐらいに家でないといけないと思います。まああれだ。小久保ジャパンの小久保裕紀は高校時代は2時間ぐらい走って高校行ってたって言うし? それに比べれば? クロスバイク使ってる時点でだいぶゆとりですし? そもそも僕デブですし? 頑張ります。

憂鬱性能測定

 仕事。性能測定も終盤。CPUに負荷を与えた状態で特定の処理を行った際のレイテンシを測る。CPU負荷ソフトは自作。スレッド数とusleepの引数をコマンドライン引数で入力できるようなプログラム。./cpustress 50 2 とやると、2μsのスリープでひたすらループし続けるスレッドを50個作るみたいな。これで適当に負荷をかける。あと、Linuxだとこれで十分だが、μITRONだとプロセスの優先度みたいなのがあって、優先度が低いといくら負荷かけようとしても処理が回ってこなくて負荷がかけらんないみたいなのがあるらしいが、負荷はかかっていたので華麗に無視した。というかLinuxとμITRON両方に負荷をかけるよう言われたのだが、μITRON側はデフォルトの状態でCPU使用率が90%ぐらいだったので、そもそも負荷をかける必要がなかった。ていうかデフォルト90ってダメだろ。
 午後は創立記念日のため、大半の人が14時に帰って飲み会に行った。俺はというと当然のように仕事していた。まあそもそも飲み会欠席だったけど。でもなんとなく。みんながヒャッハーとなっているところに陰鬱とした顔で延々と性能測定やっているのはくるものがある。薬が切れているためなんとなく憂鬱である。

プログラミング下手のデブ

 仕事。今日も性能測定。といっても今回はGPIOで波形を取るわけではなく、printfによるログ出しで時間を計る。これは楽。どのくらい楽かと言うとGPIOの場合はオシロスコープで電圧はかって波形をキャプチャしてみたいなことやってたおかげで1トライ5分もかかっていたのだけれど、ログ出しの場合80トライ20分である。バカにしている。全部ログ出しでやればいいと言うが、そうもいかないこともある。
 んで午前中はテストプログラムを作って測定。速攻で終わって先輩に驚かれる。午後は違う測定系っつーことでまたまたテストプログラムを作り始めたがどうも上手くいかない。単発のデータ送信はできるのだが、連続でデータ送信しようとすると落ちる。単発ができるのだから連続であれどできる。これは俺のプログラムの問題だと思って解析しようとするも結構わからない。無理もない。最近突発の測定で一つのプログラムを流用流用で使いまくっているため、自分でほぼほぼ組んだにもかかわらず何やってるかわからない。ソースが汚すぎで理解が追いつかない。焦ってやったから余計にその場で動けばいいや的な処理が多く、ここを直したらあっちも直してでテンヤワンヤ。スパゲッティーコード。他人のプログラムが汚いと激烈に怒るくせに、自分で書くとこの体たらく。まだまだです。でもねえ。時間なかったし。1ヶ月で3000行以上書くような作業量だよ。無理もなくないですか。とはいえ時間があったらできるかと言われると少し困る。できる気がしない。「時間があったらやる」はソフト開発では「やらない」に等しい。まあそもそも時間があることなんてないが。
 そんなこんなで悪戦苦闘してたら、たまに連続送信できるところまで行った。おお! と普通の人なら喜ぶが、たまにできるということで余計に厄介なことになった。再現率20%の不具合の方が再現率100%の不具合よりタチが悪い。絶対起こるわけではないということはより複雑な条件があるということである。マジですか。ダウナーな気分でカタカタやってたらあっという間に定時。絶望の気分で帰宅。
 絶望の反動か最近食欲がすごい。今日なんて酒350を2杯。晩飯。ご飯2膳(うち卵かけ1膳)。ポテチ1袋にチョコモナカジャンボ。そして「腹苦しいー。食い過ぎたー」と言いながら牛乳にプロテイン混ぜて飲んだ。あれだ。週末ジム行くから。めっちゃ筋トレするから。とデブ声で妻に言い訳した。

セキュリティスペシャリストの勉強とブログデザインいじいじ

 今日も今日とて仕事。まだ続く、地獄の刺身にたんぽぽを乗せるテイストの仕事。午前中はずっと単純作業に精を出す。1トライ5分の作業を40トライ。腐る。とんでもなく腐る。
 昼休みは飯を食った後セキュリティスペシャリストの勉強。地味にうちの部署はセキュリティを売りにしている部署なのだが全くセキュリティに関わってないのでチンプンカンプンなのである。今月で発注終わるため、今のチームも解散、本格的に部署の方針であるセキュリティにシフトさせられる可能性があるため今のうちに勉強しておこうという算段。可用性が? 真正性が? こういう言葉だけ暗記してもしょーもない。セキュリティスペシャリストの試験も、実務にすぐ役立つかというと微妙なところ。それよりハッキングの勉強した方がいいとセキュリティスペシャリストの後輩がいつか言ってたっけ。んでもセキュリティスペシャリストの試験、結構すごい。あなたはネットワーク管理者です。こういうネットワーク構成で、こういう人数で、こういう業務でシステムを使うが、このネットワーク構成に足りない要件を書き出せ。とか。結構実務的じゃない? ネットワークをノリノリで作る僕を夢想しながら熟読する。
 仕事に戻る。夕方に差し掛かったところでようやく単純作業が終わった。すると次の測定。測定用のTPを作成するために少しだけ思案。ゴリゴリコーディング。できた。再び測定で単純作業。これは明日も死ぬ予定。今月で発注終わるのにね。虚しいね。
 帰ってからブログのデザインを弄る。うちのブログ、PC版のデザインはちゃんとしているが、モバイル版は設定もしていない体たらく。白地に野暮ったいフォントが踊る。ほとんどモバイルから見られているのにこれではアレである。ということでいろいろいじくったがどれに変えてもデフォルトがいい気がして断念。こう、はてなブログみたいなテンプレートってないかなあ。