TypeScript 5.8で条件付き戻り値型に対するナローイングができるようになりそう(特定の制約を満たす場合)

数日前にTypeScript 5.7 RCがアナウンスされてリリースが楽しみだなー!ってところなんだけど、そのさらに数日前に、ウォッチしていたこのPR↓がマージされてTypeScript 5.8.0のマイルストーンに入った。わー! これが今日のお話。TypeScript 5.8.0でConditio…

2024-10-26(土)にDevLOVE関西で喋ります! #devkan

なんとDevLOVE関西200回目という記念すべき回でお話させてもらえることになりました!わーい。 devlove-kansai.doorkeeper.jp 喋る人みんなDevLOVE関西でたくさんお世話になってる人たちなので、楽しみ!そめださん、だいくしーさん、いろふさん、くぼさん!…

はてなブログのコードブロックでPrism.jsを使うようにしてたところにラベルを表示できるようにした

最近ブログのデザインを変えた。その続きで少し改修した。 bufferings.hatenablog.com 何を修正したのか? コードブロックでファイル名などのラベルを出せたらいいなと思ったので対応した。 ↓これはスクリーンキャプチャ。hello.javaが表示されている。シン…

前回TypeScriptでやった「タグ付きユニオンのタグを指定して、型安全に値を取り出したい」をJavaでやってみた

前回書いたこれを同僚に「こんな感じだったよ。勉強になったよー!」って見せたら「なるほど勉強になった!ありがとう!」って言ってもらえたのでよかった。 bufferings.hatenablog.com そしてその同僚が「こういうのってJavaだったらどう書くの?」って言っ…

TypeScriptでGeneric Typeに対するNarrowingをしたかったけど現在のところ対応していなかった

2024-11-11 追記ここから ---- TS 5.8で、その1のインデックスアクセス型の方はサポートされそう。その2の方はその対応が入ってもサポートされない。 追記ここまで ---- 最初にまとめ 現在のTypeScript(2024-09-19時点のバージョン5.6.2)では Generics …

バグを見つける

僕は、実装するペアとは別のペアがテストをするのがわりと好き。仕様からテストを設計して実施してたら、実装者が見逃してたバグを見つけられたりする。 バグを見つけるのって面白い。でも、見つけるより前に、減らしておきたい。 だから、プロジェクト全体…

このはてなブログのデザインを変更した

なんとなくこのブログのシンタックスハイライトのデザインを変えたいなぁと思って、せっかくだからブログのテーマごと変更するかーってテーマストアを眺めてたら、自分で自分が好きな感じのテーマを作ってみるのも面白い・・・か、と思ったのでやってみた。 …

TypeScriptでタグ付きユニオンのタグがユニオンの場合でも個別にExtractしたい

何を言っているんだ?というタイトルだけど、今日はTypeScriptの型で遊んでた。 タグ付きユニオンから型をExtractしたい こういうタグ付きユニオンがあって type MyUnion = | { tag: "a", value: boolean } | { tag: "b", value: boolean } | { tag: "c", va…

ペアPdMがとてもいい感じだなと思いながら見ている

うちのチームにはPdMが2人いる。そのPdM2人は、お互いの得意を活かしながらプロダクトをマネジメントしてくれている。「PdMやPOは1人であるべき」って言葉を見かけたりするけど、うちのPdMは2人でいい感じにやっていて、このスタイルいいなぁって思う。おか…

会議のファシリテーションをほめてもらった

うれしかった。ので、メモ。 僕のいるチームのプロジェクトで、複数のチームにサポートしてもらいながら進める必要がある、ちょっと大きなものが始まりそうだったから、キックオフ前のキックオフやっとこかーってなって司会をした。オンラインミーティングね…

iTerm2 + tmux に戻ったよのメモ

本当にただの自分用メモ。 iTerm2 違うターミナルを使ってみてたけど、やっぱり iTerm2 に戻そうかなと思って戻した。シェルは macOS デフォルトの zsh のまま。 iTerm2 - macOS Terminal Replacement 見ため Color Scheme には Dracula を使っていて iTerm …

『アジャイルチームによる目標づくりガイドブック』を読んだ。脳内にいくおさんをどうぞ。

開発部全体を見てるあのすごい人が、ある1つのチームのマネージャだったらどんな感じなんだろうなぁ?仕事がやりやすいんだろうなぁ?って考えることがある。それが今、僕のいるチームで起こっている。 VPoEの経験もあるいくおさんと、カケハシの同じチーム…

単体テストの考え方/使い方を読んだ。読んでよかった。

読んでよかった book.mynavi.jp 評判通りよかった そっかーなるほどなぁ。面白いなぁ。と思うことがいろいろあった とはいえ、著者の主張全てに同意というわけではなく「著者はそう考えるんだな。自分は違う考えだな」と考えさせられる部分もいくつかあった …

Kong Gateway OSS版のDB-lessモードで遊んでみる。ローカル起動編。

最近Kong Gatewayに少し興味があるので、気が向いたときに遊んでみることにした。 「ローカル起動編」ってシリーズものっぽいタイトルをつけたけど、シリーズものになるかどうかは分からない。今日はとりあえずローカルで起動するところまでをやってみた。 O…

DevOpsDays Taipei 2024で喋ってきまーす!

てことで、明日から台北に行く。久しぶりの海外だな。楽しんでくるー!

スクラムが「上手くいってる」「上手くいってない」の頭の整理

この記事を見かけて、やっとむさんだなーやさしく伝えたんだろうなーって思いつつ。「上手くいく」「上手くいってない」って幅がありそうだよなと思ったので、頭の中の整理をしてみることにした。来週の発表の準備が煮詰まっているから気分転換しているだけ…

脳に収まるコードの書き方を読んだ。面白かった。

いただきましたー!わーい。脳に収めるぞー! @haradakiro @ryuzee pic.twitter.com/3Qd6EvPioU— SHIIBA Mitsuyuki (@bufferings) June 13, 2024 明日(2024年6月18日)発売! www.oreilly.co.jp どう書くのがいいんだろうなぁ? 複雑なコードと向き合うとき…

エンジニアからマネージャになったときにあるだろうなぁってことを想像して遊ぶ

ソフトウェアエンジニアの話ね。想像して遊んでるだけね。 スキルは高い まず、マネージャになってほしいって言われる時点で「仕事を任せられる」というエンジニアなんだろうな。それは、つまりコードを書くことに加えて、プロダクトをなんとかしてリリース…

単体テストの考え方・使い方をマイペースで読んでいる(第4章)

単体テストの考え方・使い方を1年ちょっと前に買って、今頃になって少しずつマイペースで読んでいる。著者の考え方が自分とは違う部分があるけど、それはそれでおもしろい。 book.mynavi.jp 第4章を読んだ 昨日いちど第4章を読んで、今日ももういちど読み直…

TS5.5のInferred Type Predicatesでちょこっと気にしておきたいなと思ったこと

昨日TSKaigiに参加してとても楽しかった。そのキーノートスピーカーがDanielで、5.5の新機能を教えてくれた。 ので、今日は↓この記事のInferred Type Predicatesを手を動かしながら読んだ。面白かった。まだ5.5はベータ。 devblogs.microsoft.com Inferred T…

TDDを実践する中で身につけてた「設計に関するスキル」を3つ

TDDを実践する中で身につけた「設計に関するスキル」があるなぁと思ったのでメモを残しておくことにする。TDDをやるときのスキルではなく設計をするときのスキル。 染み込んでいる TDDは以前に書いたように(ってもう7年も前か・・・)あんまり使わなくなっ…

しなやかな変化とトランクベース開発(の話をするよ) #DevOpsDaysTokyo 2024 (宣伝)

カケハシに入って1年経った 2023年4月に入社したので1年経った。あっという間のような、濃い1年だったような。 最初の半年は、EM1人(ゆのんさん)、PdM1人、エンジニア2人(僕ともう一人)、で新サービスの立ち上げをした。少人数だったので全員が「いま自…

3/13(水)に Product Engineer Night で喋ります! #PdENight

オフラインの勉強会です。ぜひ来てね! product-engineer.connpass.com (って言っても、ありがたいことに定員オーバーしていて、抽選待ちの状態です。でもよかったら申し込んでくれると嬉しいです!) 仮説検証ループをすばやく回し続ける 僕は、スタートア…

git-replay を最低限の使い方で触ってみた

Git

git-replay というコマンドが追加されたみたいなので触ってみた。とは言っても、自分はあんまり凝ったことはやらないので、細かいところまでは踏み込まずに最低限の使い方ができたらいいなってくらいの気持ちで触った。 github.blog この記事には、こんな風…

GitHubのMerge Queueとは何か?それと、認識しておきたいこと

同僚に「GitHubのMerge Queueってあんまり知らないんだけど、どう思う?」って聞かれて「あー。僕もあれよく分かってないんだよね」って返事をして、ちょうどいい機会なので見てみた 見てみた感想としては、いくつか気をつけておきたい点があるけど、チーム…

Cloudflare WorkersにBun+Honoのアプリをデプロイするハローワールドをやった

ほんとうにハローワールドをやっただけなので、それ以上の情報はないよ! いっこあるとしたら「Cloudflare WorkersのCLIであるwrangler がBig Surでは動かなくて、Sonomaにしたら動いたよ」ってことくらい 全然知らない技術 この記事を読んで、そういえばHon…

チームトポロジーを疑ったりしながら

とても雑記。 チームトポロジーを読んだ。買ったときにはさらっと読んでたので、今回はゆっくり読んだ。 読み直そうと思った理由 以前に読んだときは「まぁ、そうだな。わかる」くらいの気持ちだったんだけど、それから2年くらい経って、チームトポロジーの…

Gitの自分用メモ:トラッキングせずにブランチを作りたい。カレントブランチのポインタを移動させたい。

Git

気分転換といえばGit。ということでGitを触ってた。 僕がGitでよくやる操作があって、それは複数のコマンドを叩いてるんだけど、簡単にできるものが用意されてるだろうなぁとずっと思っていて、やっと調べることにした。自分用メモ。 トラッキングせずにブラ…

DDDの実装にはあまり興味がなくなっている

以前は、DDDでどう実装したらいいかなぁって考えてたんだけど、最近は、そういうことへの興味があまりなくなっている。エンティティや値オブジェクト、集約やリポジトリなど、そのあたりにあまり興味がない。ヘキサゴナルアーキテクチャなども、そんなに考え…

ECSでサービス間を「NLBでつなぐ」のと「Service Connectでつなぐ」のと、どっちがデプロイが速いかをチェックしてみた

忘れる前にやっとこかなと思って、続きをやることにした。 bufferings.hatenablog.com やりたいこと この2つでデプロイ時間にどれくらい差があるかなぁってことを見たい NLBあり + Service Connectなし NLBなし + Service Connectあり 今日のコードはここに…