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なインスタンスメソッドになるっぽくて、大抵のオブジェクトから呼び出せる様になる。意図した仕様なのかバグなのかは分からないけど、びっくりし…

7つのデータベース7つの世界を読んだ

タイトルは半分嘘で、全部じゃなくて途中まで読んだ。具体的には、第2章のPostgreSQL、第3章のRiak、第4章のHBase(Hadoop)の1,2日目、第5章のMongoDB、第8章のRedisの1,2日目。CouchDBとNeo4jはイントロだけ。 PostgreSQL postgresqlは一応慣れ親しんでる(?)…

SQLアンチパターンを読んだ

3ヶ月くらい積読されてたのを引っ張り出して読んだ。例によって、読み始めるとめちゃめちゃ面白くて何故こんな素晴らしいものを積読してたんだ...って感じだった。 ざっくりとした感想 けっこう色んな人が読んだ感想とか内容を簡単にまとめたものとかを書い…

ブラウザで動くMarkdown editor

vue.jsの公式サイトのexampleにmarkdown editorっていうのがあって、以下のコードの様にただfilterにmarked指定するだけでちゃんと動いててすごかった。 new Vue({ el: '#editor', data: { input: '# hello' }, filters: { marked: marked } }) htmlもこれだ…

Masonry試してみた

とある事情でPinterest的UI作ってみたいなーと思ってて、Masonryを試してみた。 環境構築 とりあえず、試すための環境構築をしてみる。久しぶりに、yeomanを使う。 yeoman 久しぶりでversionが古い気がしたので、npm updateしてnpmのモジュールを一気にupdat…

RustにおけるOwnershipの仕組み

前回に引き続き、Mozillaイチオシの言語であるRustを触ってみる。今日はメモリ管理の仕組みとしての「Ownership」に着目する。 ちなみに、今日書く内容はRust Guideの17章、OwnershipのGuide、PointerのGuideをつまみ食いしながら適当にまとめたものなので、…

Rustに入門してみる

今日は、Rustに入門してみる。 Rustは、Mozillaの開発したプログラミング言語である。公式サイトでは"high-level, bare-metal programming"を謳っており、高い抽象度を保ちながら低いレイヤーのコントロール(具体的にはユーザーによるメモリ管理等)が可能ら…

おめでたい話

今日は、プライベートなお話を書く。とてもおめでたいお話。 背景: VOYAGE GROUPでのインターンとリレーブログ 実はこのブログは焼き肉ブログというはてなグループに所属していて、グループ内ではメンバー同士で1日交代でブログを書いていってる。メンバーは…