変化バジェットという考え方

この記事は はてなエンジニア Advent Calendar 2023 の 1/2 の記事です。昨日は id:nakataki の 1904年になりました(dayjsでの年入力の話) - nakatakiの日記 でした。190x 年から脱出できない面白い不具合でした。 変化バジェット 「変化バジェット」という…

「キャッシュは麻薬」という標語からの脱却

これは はてなエンジニア Advent Calendar 2023 の 18 日目の記事です。昨日は id:gurrium による private-isuで70万点取るためにやったこと - ぜのぜ でした。私は 50 万点ぐらいで満足してしまっていたので、しっかり詰めていて凄いなと思う。 developer.h…

Mackerel 個人ダッシュボード使いこなし術

この記事は Mackerel Advent Calendar 2023 の12月1日の記事です。トップバッターいただきます。 お前誰よ Mackerel チームでエンジニアリングマネージャーをやっている id:onk です。最近は特に OpenTelemetry 対応を進めているチームのそばにいます。 今日…

ISUCON13 に参加した

いつものメンバーで参加した。このメンバーで組んだのは ISUCON9 からなので、もう 5 年になるのかー いつメン 東京、京都、シアトルと、全チームの中でも地理的にはかなり離れているチームなんじゃないかな。 今回は僕がインフラ担当。3 人ともどこでも担当…

Ruby/Rails の勉強に何読んだらいいかと聞かれたとき

「次の職場が Ruby なんだけど」と読み書きそろばんを聞かれたのと、大阪Ruby会議03、大江戸Ruby会議10、Kaigi on Rails 2023 と Ruby/Rails 関係のイベントに続けて参加して、作者の皆さまと会ったので。 「読める」になるために 言語仕様は何らかの本 1 冊…

作業者じゃなく開発者でありたい

自分がこうありたいというメモ。 作業者と開発者の違いとして、問題解決への寄与だとか、創意工夫の余地があるかというのがありそう。 これは今 GPT-4 に聞いた。 Q: 作業者と開発者の違いを100文字ぐらいで教えて。 A: 作業者は指定されたタスクや手順を実…

手を動かさないマネージャーを試している

2 月から、Mackerel チームの所属になった。 今日から異動して Mackerel チームです。非正規ルートでの要望でもいい感じにやるので何でもください!— Takafumi ONAKA (@onk) February 1, 2023 これを期に、せっかくなのでコードを読まないマネジメントスタイ…

サブカル業界Developers 勉強会 Vol.5 で Cache Stampede の話をした #subcul_dev

サブカル業界Developers 勉強会 Vol.5 (オンライン/オフライン同時開催!!) - connpass 前日に急に寝台特急の存在を思い出したので、サンライズ出雲で上京した。寝台車は寝てたら勝手に着くので便利だなぁ。強制的に 7 時から活動させられるので朝活しやすい…

git revert 時は理由を入れよう

コミットを何らかの理由で取り消したいときに git revert を使う。 git revert -m1 MERGE_COMMIT したときは Revert "Merge pull request #1 from onk/repo" This reverts commit 35b7e7c517c438b805d442ff45242334bb91eda5, reversing changes made to 0798…

オンボーディングは3ヶ月で3連勝を目指す

先日 ヘンリーで活躍中の id:Songmu を訪問 | はてな卒業生訪問企画 [#3] - Hatena Developer Blog という対談記事でもオンボーディングについて話したんだけど、社内では最近「3ヶ月で3連勝」を標語にしている。 オンボーディングとは 採用や異動などでチー…

株式会社はてなに入社しました

株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 6 年目で所属は引き続き弊社です。触っていく範囲がまたちょっと広がりました。 2022: 株式会社はてなに入社しました - id:onk のはてなブログ 2021: 株式会社はてなに入社し…

YAPC::Kyoto 2023 で ORM について喋ってきた

資料は こちら です。 背景 アーキテクチャ的に何かを足したいとき、我々はチーム開発を行っているのだから、チームの共通認識を変えるということになる。認知負荷が高い場合は提案を拒否されてしまうので、認知負荷をできる限り小さくして導入したい。つま…

デュアルトラックアジャイルとの向き合い方。あるいはエンジニアとビジネスの距離感

昨日(もう日付余裕で回ってるので一昨日だな)Findy さん主催のイベントで話してきた。 speakerdeck.com 背景 近年「エンジニアは事業貢献してこそ」「エンジニアもユーザファーストでビジネス貢献」といった言説がIT界隈で増えて来ている感じがしている。 …

RSpec では context 間の違いを表現するときにのみ let を使う

Test which reminded me why I don't really like RSpec | Arkency Blog (日本語訳:Rails: RSpecが好きでないことを思い出したテスト(翻訳)|TechRacho by BPS株式会社) を見ての感想。 元のコードのイマイチなところは 4 つあって、 params を before で…

YAPC::Kyoto 2023で話します! そしてチケットを今すぐに購入しましょう!!

YAPC::Kyoto 2023の採択トークが決まったようですね。面白そうなトークが沢山あってすごいですね。 blog.yapcjapan.org 私のトークも採択されました。ありがてぇ! こういう話をします。 ORM - Object-relational mapping はてなの Perl プロダクトは薄いフ…

ストーリー性のあるプレゼン

発表資料作り、全体的な流れは 1 週間ぐらいかけて構想して、半日使って 15,000 字ほど書いて (コード片含む)、半日使ってスライドに起こす(結果として 6000 字ぐらい使う)、って感じですね。貯めた文字列を組み合わせている最中に構想とは別のストーリーが…

今年買ったもの2022

毎年書いていて 4 回目なのでカテゴリ作った。今年買ったもの さすがにリモートワーク始めて 3 年経つとだいたい揃っちゃったな。今年はあんまり買ってない (と思う)。買った順です。 Stream Deck Mini プログラマブルなボタンデバイス 基本スマートスピーカ…

git push -f が更に安全になる --force-if-includes

歴史改変、してますか? 私は歴史改変が大好きで、毎日 rebase しています。なので割と毎日 git push -f することになっています。 口で -f と言っても、実際には --force-with-lease --force-if-includes をしているので、これらのオプションのご紹介。 こ…

積極的フィルターバブルで価値観を破壊する

と成長への近道なんじゃないかという仮説。 積極的フィルターバブルとは resize.fm #100 で id:nagayama が語っていた概念。44:10 辺りから。 anchor.fm 新しいことを始めるときに、Instagram でサブ垢を作って、その関係の人しかフォローしない タイムライ…

吉祥寺.pm 31 で LT した

kichijojipm.connpass.com 不正のトライアングルとコードベースの治安維持 from Takafumi ONAKA www.slideshare.net (SlideShare 広告がエグくなったんだけど、embed では入らないので一旦アップロード先はコレで) IPA の 組織における内部不正防止ガイド…

最近買ったイヤホンたち

密閉型イヤホン以外でWeb会議アドベントカレンダーに遅れて参戦! こういう状態。 ここ3年で増えたヘッドンホホたち SONY WH-1000XM4 www.sony.jp ヘッドフォンですね。2020-09 に買った。 外音取り込みは、外の音が聞こえるイヤホンを↓でいっぱい買ったので…

git revert -m1 の -m は --mainline

TIL merge commit は親が 2 つ (以上) あるので、revert するときはどちらの親に戻したいかを -m (--mainline) で指定する。 起きたこと 「意図せず feature branch を main に混ぜて push しまった」と呼ばれて飛び出したんだが、コミットツリーがこうなっ…

irb に show_source があることをもっと知らしめたい

要は以下の記事の繰り返しなのだが。 k0kubun.hatenablog.com Kaigi on Rails _2022_ new というイベントの LT で、メソッド定義を探ろうという話があった。 speakerdeck.com Rails のソースをシュッと眺めに行くという、非常に尊い良い発表でした。 Object …

Ultimate Hacking Keyboard のキーマップメモ

どこかに書いておかないと確実に忘れて困る。 UHK とは コレです。 ultimatehackingkeyboard.com 割れてる、60%、row-staggered、半田付け不要で、これ以上沼に踏み込みたくない人間には最高です。 v1、v2 と 2 台買ってきた。 UHK 2 台目届いた。茶軸からピ…

意識的に職位を下げる

僕はチーム join 時に、Docker は初手で剥がすし、GitHub Actions でやっているワークフローの全体像を把握するのを次に行う、というのを基本的にはやっている。これはシステム構成やデプロイ周りの全貌を把握するのが好きなのと、何かが起きたときにコレを…

使用頻度とコマンド (エイリアス) の文字数を合わせたい

1 文字エイリアスのすゝめ 1 文字エイリアスが好きで、例えば alias s="git status -sb" している。 入社してからの 4 年半で溜めた 53 万行の .zsh_history から集計すると、 $ history 1 | awk '{ print $2 }' | sort | uniq -c | sort -nr | head 121714 …

期待値をチューニングする

吉祥寺.pm30 で、チューニングがテーマだったので、マネージャとメンバー間で期待値をチューニングするという LT をしてきた。 トークタイトルは熊とワルツを。トム・デマルコの本です。 熊とワルツを リスクを愉しむプロジェクト管理作者:トム デマルコ,テ…

先回りするコツとミカドメソッドという手法

実装を進める上で障害になりそうなところを先回りして直してるように見えるけど、一体どうやって検知しているかという話題。 結論から言うと「慣れです」なんだけど、こういう考え方があるよというのを紹介しておく。 mikadomethod.info ちょうど10年ぐらい…

3 月に 2 本登壇していた

もう 5 月も終わりですね。つい書くのが億劫で。 エンジニアの個人ブランディングと技術組織 from Takafumi ONAKA www.slideshare.net YAPC::Japan::Online 2022 で登壇したもの。 Description には 僕らはインターネット上で開発の知見を得ることによってサ…

株式会社はてなに入社しました

株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 5 年目になりました。所属は引き続き弊社です。 2021: 株式会社はてなに入社しました - id:onk のはてなブログ 2020: 株式会社はてなに入社しました - id:onk のはてなブログ …