徒然技術日記

Object.prototype.__noSuchMethod__

2022年の振り返り

すっかりブログを書かなくなってしまいましたが,2022年の振り返りです. 仕事 国際的大規模イベント 今年はなんといっても某大規模イベントの準備に追われた一年でした.主に負荷対策・障害対策・攻撃対策を担当していました.時間が限られる中でいかに必要…

2021年の振り返り

今年は年賀状を作るのをやめようと考えているので,代わりに振り返り記事というものを書いてみようと思います. テックリード就任 2019~2020年にかけて Web チームを技術的にリードする人が不在の時期が続いてしまい,弊害が無視できなくなってきたというこ…

「質とスピード」と SHIROBAKO

この記事は SHIROBAKO Advent Calendar 2021 の22日目です. SHIROBAKO 7話で原画がなかなか仕上げられずに悩んでいる絵麻に対して,杉江さんは次のように声をかけます. 絵麻「うまくなれば速く描けるようになるんじゃないんですか?」 杉江「速く描くには…

星野リゾート OMO7 旭川で2週間ワーケーションをした話【2020年】

去年(2020年)の話になりますが, 伊豆大島に引き続き,旭川でも2週間ワーケーション(リモートワーク+観光)をしてきたのでどんな感じだったのか紹介します. nodaguti.hatenablog.com 使用したプラン(今年も実施中!) 使ったプランは,星野リゾートの都…

Web24 というイベントで Web Performance に関する議論をします

connpass.com Web のことをただひたすら 24 時間議論する 5/7 18:00 ~ 5/8: 18:00 YouTube Live, 無料, アーカイブなし 登壇者の発言は個人のものであり所属する組織とは関係なし というイベントです.その中の Performance セッションの情報はこんな感じ: …

好きなことを仕事にするということ

この記事は SHIROBAKO Advent Calendar 2020 の15日目です. 今年は劇場版が公開されたと思ったのも束の間,その前後から他作品の公開延期や映画館の休館などが相次ぎ,周囲の状況も気にしながらいつ見に行けるのかとハラハラさせられた一年でしたね.今回は…

伊豆大島へ一週間ワーケーションに行ってきた話

東海汽船が出した,5万円で伊豆大島に7泊8日できるリモートワークプラン https://www.tokaikisen.co.jp/news/134866/www.tokaikisen.co.jp (リンク先が消えてしまっているようなのでアーカイブ)を使って10月最終週にワーケーションしてきたので,記録がて…

vendor.js の終焉と Granular Chunks

webpack を使った code splitting のベストプラクティスとして,v3 以前の CommonsChunkPlugin の時代から node_modules 以下に置かれている依存ライブラリを vendor.js という単一の chunk にまとめる方法が紹介されていました. これは webpack の公式ドキ…

Differential Serving の実装に module-nomodule pattern を使うべきではない

タイトルはやや誇張気味ですが,最近某所で differential serving を導入しようとして考えたことのまとめです. なお,differential serving の概念には CSS や画像なども含まれることがありますし,実現方法にも polyfill.io などの外部ソリューションが存…

『エンジニアのためのマネジメントキャリアパス』から見る SHIROBAKO

この記事は SHIROBAKO Advent Calendar 2019 - Adventar 24日目の記事です. はじめに はじめに少し自分語りをさせてください. このアドベントカレンダーには初参加ですが,歴代の多くの参加者と同じく,私も学生の時に SHIROBAKO を見て今は社会人となった…

個人のポータルサイト nodaguti.github.io を作りました

各種アカウントへのリンクをまとめたポータルサイトとしてずっと about.me というサービスを使っていたのですが,発表スライドなども載せたくなったのと,フロントエンドエンジニャーとしてはこれくらい自前で作らないといけないのではという思いがずっとあ…

【電子版あり】RxJS 6に対応した問題集を本にして技術書典7で頒布しました

先日開催された技術書典7にて AbemaTV の有志が集まって出版した AbemaTV Tech Book に参加し, AbemaTV で学ぶ RxJS と題して RxJS の記事を寄稿しました! techbookfest.org 非同期処理やイベントを効率的に,かつ宣言的に処理することのできる RxJS は,A…

使われていないCSSルールを検出する stylelint-no-unused-selectors を作った

github.com 背景 発端はあるツイートより. 真面目な話、命名規則でCSSを管理する場合のdead code eliminationどうしてるのか知見ほしいマンです— terrierscript (@terrierscript) March 1, 2019 たしかに CSS Modules は webpack の恩恵により,styled-comp…

web.dev の Fast load times を読んだ

パフォーマンス改善のための基礎知識をつけるべく,Chrome Dev Summit 2018 で紹介された web.dev に書かれているドキュメントのうちパフォーマンスに関するもの web.dev を一通り読んだので,簡単なまとめとして読書メモを書いた. デブサミには幸運にも会…

リーダブルコードを読んだ

社会人になる前に読もうと思って春休みに購入し,そのまま積んでいたリーダブルコードを今更ながら読んだ. よく新卒になる前に/なったら読んでおけという本のリストに必ずといっていいほど入っている本であるが,結論から言うとやはりもっと早く読んでおく…

Ginger を使った校正用ルールなど,英語向けの textlint ルールをいくつか作ってみた

最近ではちょっとしたものを公開する場合でも,英語でコミットメッセージや ReadMe を書くのが主流になってきているように感じます. その風潮に乗って一生懸命英語を書くわけですが,三単現を忘れたり,a/the が適当だったりと,残念な英語しか書けない自分…

Nightmare v2.1.0 以降では type() を文字入力のために使ってはいけない

github.com TL;DR Nightmare は v2.1.0 から type() の挙動が変わったので,文字列入力のために用いてはいけない. 使用する場合は,キーボードイベントの発火が完了したことが保証されないので,適切に wait する必要がある. 詳細 Nightmare の type(selec…

3ヶ月間インターンシップに参加して実感したドワンゴの魅力

10月から12月にかけてドワンゴへインターンに行ってきました. 参加の経緯は nodaguti.hatenablog.com をご覧ください. なお,この記事は ドワンゴ Advent Calendar や 第2のドワンゴ Advent Calendar の記事ではありません.枠争奪戦に敗北しました. イン…

サイバーエージェントにインターンに行ってきた話

インターンが終わってからだいぶ間が空いてしまいましたが, nodaguti.hatenablog.com で書いたとおり9月いっぱいサイバーエージェントへインターンに行ってきました. ちなみにハッカソン(TECH CAMP)ではなく, 就業型インターン(弟子入り) の方です. 業務…

chaikaの開発を無期限停止します

github.com chaika は,近くリリースする 1.8.0 をもって開発を無期限停止とします. より正確には,nodaguti は chaika の開発から手を引きます. 2013年からの短い期間でしたが,利用してくださった皆様,開発上のサポートしてくださった方々など, 多くの…

サイバーエージェントとドワンゴのインターンシップに参加します

これは以下の記事の派生記事です. nodaguti.hatenablog.com 運良くサイバーエージェントとドワンゴのインターンに参加させていただけることになったので,面接の体験談などを書きたいと思います. サイバーエージェント 書類審査→1次面接→2次面接でした.9…

インターンシップの応募にお祈りされた原因を分析した (Microsoft, はてな, Yahoo! Japan)

これは以下の記事の派生記事です. nodaguti.hatenablog.com 選考に落ちた企業について,その原因を探ってみたいと思います.今後応募される方の参考になれば. Microsoft MSR (Microsoft Research) ではなく MSD (Microsoft Development) の方です.書類選…

夏のインターン選考結果および傾向と対策をまとめてみた

今年の夏はインターンの夏にしよう.と思いたち,Web系企業をターゲットにインターンへ応募したので,結果などをまとめてみたいと思います. 応募した企業 辞退した/お祈りされた企業 Pixiv: SUMMER BOOT CAMP (Github選考), 選考通過, 辞退. Microsoft: サ…

プログラムからFirefoxのScratchpadでファイルを開き、適切にシンタックスハイライトをするには

Firefox のアドオンにおいて、Atom や Sublime Text のように plain text な設定ファイルをメニューから開けるようにするにはどのような方法が考えられるでしょうか。 nsIFile#launch XPCOM を使って任意のファイルを開くためにまず思いつくのは、nsIFile#la…

Components.utils.import でグローバル汚染を引き起こさずにインポートする方法

Firefox 本体ではおそらくだいぶ前から使われているだろうから今更感あるし、2015年にもなって Mozilla-specific な JavaScript の記事に需要があるのかはわからないけれど、先ほどとあるコードモジュールを読んでいて知見を得たので共有します。 Components…

STAP記者会見の最後で相澤チームリーダーが言いたかったこと

今日10:30から行われていた「理化学研究所 STAP現象の検証結果に関する記者会見 生中継」をニコ生で見ていた。 理化学研究所 STAP現象の検証結果に関する記者会見 生中継 一般紙の記者は、誤解を恐れずに言うと「一般人的」あるいは「文系」的な質問をするの…

1人でソフトウェアを開発しているときに注意すべきこと

chaika 1.7.0 をリリースした時に論争になってしまった話とそこから得た教訓について、自戒の意味も込めてはてブロ最初のエントリとしたいと思います。 TL;DR 1人で開発しているときは特に自分が使いやすい方向へと開発しがち 一般には開発へのモチベーショ…

ブログ移行

旧ブログ よりこちらに移行します。 向こうでは Bloxsom でブログ環境を構築していたわけなのですが、いちいち HTML を書かなければいけないのがめんどくさすぎるので気軽な更新ができず、放置する結果となってしまいました。 Markdown で書くことができ、技…