手記

楠木亭西風が書いている。

2020年4月まとめ

仕事が炎上した。
要因は二つ。
①準備不足
新年度になり、僕の会社ではシステムが総入れ替わりした(メールアドレスからOfficeアカウント、会計システムまで、本当に全部入れ替わった)。僕の担当業務でも変化があったけど、それを楽観視してしまっていた。残業時間が今までで一番長くなってしまったのでつらかったけど、周りにもたくさん迷惑をかけてしまったので反省しないといけない。
②興味無い
経営管理という仕事への興味がとても薄いので、いろいろなことをネグレクトしてしまっている。いけないと分かっていても、怒られない限り全て放っておきたいと思ってしまうくらい興味が薄い。
 
AtCoder緑色になった。
去年から目標にしていたのでとても嬉しい。昨年11月に茶色になってから半年もかかってしまった。ここ3ヶ月くらい600点周辺で停滞してしまっており、もうしばらくかかるかな、と思っていたけど、ABC-165で5完して一気に到達できた。計算量の計算がなんとなくできるようになってきたことや、インデックスの端数処理がスムーズにできるようになったことに成長を感じている。4月にstay homeで用事がなかったのでC問題をたくさん解いた成果かもしれない。
AtCoderの中の人によると、緑色とは、以下のような評価である。

緑色 (Cランク R800~1199 上位30%)

緑色になれれば、「競技プログラミングに熱心に取り組んでいる人」と考えて問題ないでしょう。要求レベルも決して低くなく、出場回数が足りないとマイナス補正がかかるため、運だけで到達することはまず出来ないラインです。他社アルゴリズム力判定サービスだと、上位1%の最高ランクが付く実力です。(あくまで「アルゴリズム力部分だけであることに注意してください)
印象としては、
  • 学生ならかなり優秀。
  • エンジニアとしてもある程度の安心感がある。論理的に複雑な処理の実装に対応できない、なんてことはなさそう、くらいには思える
くらいの印象です。もちろんアルゴリズム力しか計ってないので個人差があります。
技術的な部分では、
  • if、forはもちろん、それを組み合わせて2次元配列に対して操作をしたり、深さ優先探索幅優先探索などのキューや再帰を使った実装も出来る。
  • 簡単な動的計画法の問題や、少し数学的に工夫する問題など、計算量の工夫も出来始める。
という感じです。
僕は文系ノンエンジニアだけど、「エンジニアとしてもある程度の安心感がある」と評価されるのはとても嬉しい。でも、あくまで「アルゴリズム力部分だけであることに注意してください」とあるように、僕は競プロ以外の技術をほとんど身に付けていないので、トータルの知識はものすごく弱いと思う。緑色になれたので、しばらくはアルゴリズム以外の技術力を身につけたい。Web APIを叩けるようになりたいし、機械学習やデータサイエンスの基本的なライブラリも使えるようになりたい。スマートフォンとARの仕事をしているので、JavaやUnityも分かったらいいなと思う。今後も楽しくあれこれ勉強していきたい。
ちなみに緑の一つ上の水色は以下。

水色 (Bランク R1200~1599 上位15%)

水色はかなり優秀です。普通に企業とかで超優秀って言ってるプログラマが居た時に、半分くらいはこのランクになると思います。数学が得意なタイプだと、この一つの上の青色に行きますが。

半数以上のIT企業において、アルゴリズム能力についてはカンストと言えるでしょう。特にアルゴリズム的な能力を必要としない会社であれば、ここから上はレートを上げても実務に役立つ部分はほとんどありません。

技術的なスキルで言うと、

  • 計算量に関する感覚が体に染みついており、複雑な処理でも苦もなく実装出来る
  • 深さ優先探索幅優先探索、順列の全列挙やパターンの全列挙などができる。そこから動的計画法やメモ化再帰などの計算量改善につなげることも多少出来る。
  • 貪欲・DP・しゃくとり法・二分探索などの計算量を改善するテクニックをある程度使い分けることが出来る。
  • 累積和やUnionFind(競プロ外ではDisjoint Set)などのデータ構造を使いこなすことが出来る。
  • ダイクストラ法やワーシャルフロイド法、クラスカル法などの、基本的なグラフアルゴリズムが扱える。木構造やグラフ構造に対して適切に処理を行うことが出来る。
  • 一定以上の数学に関する素養がある。素数などの性質や、それを利用した素数判定や列挙、約数の列挙等、最小公倍数や最大公約数、組み合わせの計算など、競プロにありがちな典型数学問題に対処できる。

みたいな感じになります。水色になると急に要求水準が上がってるのは分かると思います。

 
クラフトビールをたくさん買って飲んだ。
クラフトビールを作るマイクロブルワリーの多くが、経営にコロナの影響を受けている。マイクロブルワリーの販路としては、飲食店への樽の卸し、瓶/缶の販売、飲食店直営などがある。意外と知られていないことだけど、マイクロブルワリーの多くは売上の大部分を飲食店への卸しに依存している。理由は二つあると思っていて、一つは醸造免許取得の条件「年間60kL以上生産」を満たすために飲食店という大口顧客が必要なこと。もう一つは瓶詰めや缶詰めは設備投資が重く、また販路獲得が難しいことではなかろうか。
するとコロナ禍の今、多くのマイクロブルワリーは苦しい経営状況に直面している。アサヒやキリンなどの大手はスーパーでも売っているので家飲み需要を掴めるけど、クラフトビールは飲食店重要減の影響を受けてしまった。
そこで最近、多くのブルワリーが瓶詰め・ネット販売を始めている。ヤッホーブルーイングや箕面ビールのような大きいところは瓶詰めや配送の設備を持っているので、近隣の小さいブルワリーと融通しあったりしているらしい。
僕はクラフトビールが好きなので、応援の気持ちと、普段あまり飲めないビールがネットで買える嬉しさでたくさんビールを買った。1ヶ月間で4つのブルワリーから、30本くらいビールを買ってしまった。送料だけで3,000円くらいかかっている。それでもstay homeしているとお金の使いどころが無いので、まあいいかなと思っている。近所に住んでいる人は是非一緒にクラフトビールを買って送料を節約しましょう(まだ買いたいビールがたくさんある)。
 
5月の目標は真面目に仕事すること、GWを楽しく過ごすこと、心身共に健康を保つこと。
 
ベストビール:平和クラフトのペールエール
ベスト調味料:スイートチリソース
ベストケーキ:パティスリィ ドゥ・ボン・クーフゥ(東京・武蔵小山