2021年に読んで印象に残った本について

2021年の振り返りでも書きましたが、昨年は、隙を見ては本を読んだりコードを読んだりして過ごしていました。印象に残っている本について、ジャンルごとにまとめてみたいと思います。 Java 関連の本 昨年転職してから、仕事で本格的に Java を読み書きするよ…

2021年の振り返り

年が明けて 2022 年になりました。良い機会なので、2021年について簡単に振り返ってみたいと思います。 仕事面の振り返り 仕事面では、転職というとても大きな変化がありました。今の会社で働き始めたのは5月11日なので、8ヶ月弱ほど経ったことになります。…

日本のスタートアップで 6 年間働いたあと、シリコンバレーのスタートアップへ転職する話

2021年4月末最終出社で Wantedly を退職して、5月からは Niantic でソフトウェアエンジニアとして働き始めることになりました。 Wantedly へ 2015 年4月に入社してから、ちょうど6年間働いたことになります。良い機会なので、Wantedly に関する思い出を振り…

mold の Build 手順メモ

はじめに mold と呼ばれる高速なリンカを利用して Chromium を Build してみる という記事の中で、mold と呼ばれる「高速なリンカ」について紹介しました。 https://github.com/rui314/mold mold は、自分の知る限りでは現時点では特に Binary の配信などは…

mold と呼ばれる高速なリンカを利用して Chromium を Build してみる

はじめに 現在、広く使われているリンカの中でもっとも高速なものとして有名なのは LLVM project の LLD でしょう。LLD のパフォーマンスについては、公式 document に以下のような benchmark が掲載されていて、GNU ld, GNU gold などと比較して圧倒的に早…

Chromium を Build して動かすまでの待ち時間を「7 時間」から「30 分」まで高速化してみる

Chromium をゼロから Build して動かしてみる という前回のブログでは、Chromium を Build して動かすという一連のフローを試してみました。 この時は、Checking out and building Chromium on Linux の手順に従って作業をしました。これは、「最新の Chromi…

Chromium をゼロから Build して動かしてみる

はじめに ソフトウェアに対しての理解を深めたい場合、どうするでしょうか? 1つの方法は、ソースコードを読むことです。よく出来たソフトウェアのソースコードを読むことで、様々な学びを得る事が出来ます。 しかし、ソースコードだけでは挙動が掴みづらか…

Chrome の Back button を押した際に「意図しない Cache」が利用されて、期待と違うページが表示される問題について調査した

以前、同僚と話していた際に「同じ URL で Accept request header に応じて response の Content-Type を変えていると、Chrome で Back button を押した際の結果が意図しないものになる」ということが話題になりました。 これは、自分も過去に経験した事があ…

2019、2020 年の振り返り

年が明けて 2021 年になりました。この機会に、2019、2020 年の2年間を振り返ってみたいと思います。 2019年の仕事面の振り返り 2019 年は、全体的にアウトプットが多い年だったように思います。 ブログや登壇では以下のようなアウトプットをしました。 2019…

kind (Kuberenetes in Docker) に deep dive してみる

kuKubernetes の Install Tools というページでは、kubernetes を local で動かすための tool として kind が紹介されています。今日はこの kind について内部構造及び使い方を見てみます。 kind とは kind は「Docker container の中で Kubernetes を動かす…

BigQuery の内部実装の変遷について

BigQuery(正確にはそのクエリエンジンである Dremel)の内部実装の変遷をまとめた以下のブログポストおよび論文を読みました。 とても面白い内容で、Twitter にメモをポストしたのですが、後で参照しやすいようにブログにも同じ内容を載せておきます。 BigQ…

手を動かして学ぶコンテナ標準 - Container Runtime 編

コンテナ標準化の現状と Kubernetes の立ち位置について というブログではコンテナ標準の現状についてまとめてみました。 また、手を動かして学ぶコンテナ標準 - Container Image と Container Registry 編 というブログでは Container Image と Container R…

手を動かして学ぶコンテナ標準 - Container Image と Container Registry 編

先日は、コンテナ標準化の現状と Kubernetes の立ち位置について において、各種ドキュメントをベースにコンテナ標準についてまとめてみました。 このブログでは、実際に tool などに触れて手を動かすことで、コンテナ標準についてさらに理解を深めてみたい…

コンテナ標準化の現状と Kubernetes との関係性について

コンテナ標準化が進んでいる事は知りつつも、標準化された仕様の具体的な内容についてはあまり知らない事に気づいたので、この機会に調べてみました。個人向けメモとして残しておきます。 余力があれば、後でもう少し詳細をまとめる予定です(docker image …

2017、2018 年の振り返り

年が明けて 2019 年になりました。良い機会なので、2017、2018 年の2年間を振り返ってみたいと思います。 この2年間は色々な変化がありました。仕事面とプライベート面の2つに大きく分けてまとめてみます。 仕事面の振り返り 2017 年は、スカウトというプロ…

ISUCON7本戦に出場してきました

ISUCON7本戦に出場してきました。 結果はスコア0、最終的にはFAILで終わるという惨敗でした。 出場メンバーは会社の同僚との3人組で、予選と同様に他の2人がアプリケーション担当、僕がインフラ担当という役割分担をしました。 残念な結果となってしまい、と…

ISUCON7予選をギリギリの18位で突破しました

会社の同僚と一緒にISUCON7予選に出場しました。 結果は18位、ギリギリでしたが何とか予選突破できました。事前にチームで練習したり、便利スクリプト集を仕込んだりしていたので、練習の成果がちゃんと発揮できてよかったです。 同僚が当日やったことについ…

RubyKaigi 2017 に行って来ました(3日目)

発表 10:00-10:40: Compacting GC in Ruby by @tenderlove 10:50-11:30: Ruby for Distributed Storage System by @tagomoris Ruby and Distributed Storage Systems from SATOSHI TAGOMORI https://www.youtube.com/watch?v=KrWhhgWHTwE&feature=youtu.be 1…

RubyKaigi 2017 に行って来ました(2日目)

発表 9:40-10:40: Keynote by @matz 10:50-11:30: An introduction and future of Ruby coverage library10 by @mame An introduction and future of Ruby coverage library from mametter 13:00-13:40: Improve extension API: C++ as better language for …

RubyKaigi 2017 に行って来ました(1日目)

発表 10:30-11:30: Keynote by @n0kada https://slide.rabbit-shocker.org/authors/nobu/rubykaigi-2017/ 13:00-13:40: Fiber in the 10th year by @ko1 Fiber in the 10th year from Koichi Sasada 13:50-14:30: How Close is Ruby 3x3 For Production Web …

2016年振り返りと2017年に向けて考えている事

あけましておめでとうございます。気がつけば2016年もあっというまに過ぎ去り、2017年になりました。 新年明けたばかりで良い機会なので、2016年にどういう事をしたか、どういう事を考えていたかを振り返った上で、2017年に何をしていきたいか考えてみたいと…

2015年、2016年に買った技術書105冊

僕は技術書を買ったり読んだりするのが好きです。昨年4月からソフトウェアエンジニアとして働き始めて、学生の頃に比べると経済的に余裕が出来たため、技術書を買うペースが飛躍的に上昇しました。 もはや自分でも何を持っているのか、何冊持っているのかが…

「題名だけ知ってた小説」を読み始めた

突然ですが、先週くらいから「題名だけ知ってて気になってた小説」を読み始めました。 きっかけはテッド・チャンの「あなたの人生の物語」というSFです。 これはSFの短編集で、特に理由もなく気まぐれに買ってみただけなのですが、普段全くSFを読まない自分…

「HACKING」や「Linuxカーネル2.6解読室」など、最近の「買って良かった技術書」について

「技術書の積読は悪いことでは無いと言いたい」という前回のブログにも書きましたが、自分は適当に技術書を買う事が多いです。 south37.hatenablog.com その中でも、最近自分の中で「当たり」だったものについて簡単に紹介してみたいと思います。 HACKING ま…

技術書の積読は悪いことでは無いと言いたい

いきなり自分語りをしたいと思います。 自分は結構ソフトウェア関連の技術書を読むのが好きで、よく本屋で適当に買っては読んだりしています。週に1~2冊くらいは買うので読みきれないものはどんどん積読しています。Kindle の中に眠ってる本、机の上や棚に積…

ブログテーマを変えてみました

2016年にもなって心機一転という事で、ブログテーマを更新してみました。 参考にしたのは Svbtle というブログサービスのデザインです。 Swift のテストフレームワーク Quick で有名な modocache さんが Svbtle を使って記事を書いていて、あまりにカッコよ…

YAPC::Asia 2015に行ってきた!!

8/21, 22の2日間 YAPC::Asia に行ってきた。 YAPC::Asia の存在は前から知っていて、でも Perl よくわからないしお金無いし。。とか言って去年は行かなかったんだけど、今年は働き始めてチケット代くらいは出せるようになったので勢いのままに Early Bird Ti…

気がついたら一ヶ月経ってた

前回ブログを書いてから、気がついたら一ヶ月経ってた。びっくり。

webmockすごい

エラー出ても使い方を教えてくれて優しい $ ruby webmock.rb /Users/(ユーザー名)/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/gems/webmock-1.20.4/lib/webmock/http_lib_adapters/net_http.rb:114:in `request': Real HTTP connections are disabled. Unre…

Pryではトップレベルで定義したメソッドがObjectクラスのpublicなインスタンスメソッドになる

表題の通り。 今日Pry触ってて気づいたんだけど、Pryのトップレベルで定義したメソッドはObjectクラスのpublicなインスタンスメソッドになるっぽくて、大抵のオブジェクトから呼び出せる様になる。意図した仕様なのかバグなのかは分からないけど、びっくりし…