ヘブン retweeted
令和8年11月2日。防災庁が発足しました。
本アカウントは、これまで内閣府防災アカウントとして運用しておりましたが、今後は防災庁アカウントとして運用してまいります。
私たちは、日本の防災を変えていきます。
youtu.be/kx3AYdxMfZg
ヘブン retweeted
Jerry Nkongolo、iPhone Duoに対応したカセット風ミュージックプレーヤーアプリ「Cassette Player」をリリース
macotakara.jp/iphone_app_sto…
Flutterはむしろ継承だらけだし、Widgetの元ネタはReactのVirtualDOMだけどな〜
> Sky widgets are built using a functional-reactive framework, which takes inspiration from React.
github.com/flutter/flutter/b…
これは概ねそのとおりです。しかし、Flutterに関しては掘り下げると面白い。
【Flutterの黒歴史】なぜ天才エンジニアたちは「継承」を捨て去ったのか?
GTK、Qt、WinUI、Flutter……あらゆるUIフレームワークは、同じコードやデータ構造を2度書かない(DRY原則)ために「クラス継承」を使い倒してきました。
しかし、Flutterだけは途中でその方針を「180度」大転換し、コンポーネントの継承を完全に捨て去りました。その裏にある破綻と進化の歴史が面白すぎます。
◆ 1. 最初期(Sky時代)の破綻
Flutterの生みの親たちは、元々Webブラウザ(ChromeのWebkit/Blink)のC++エンジンを開発していた天才たちです。彼らにとって「共通化=クラス継承」は肉体感覚でした。
初期プロトタイプでは、WebのDOMやAndroidのViewのように、巨大な基底クラスを継承するスタイルで開発が進められました。しかし、すぐに地獄を見ることになります。
◆ 2. 直面した「2つの致命的バグ」
• 【プロパティの肥大化】
「パディング」「マージン」「背景色」などを共通化しようと親クラスに機能を詰め込んだ結果、ただの「透明な四角形」を作りたいだけなのに、100個以上の不要なメンバ変数やメソッドを引き継ぐ巨大な重いオブジェクトが誕生。
• 【組み合わせ爆発】
「スクロールできる」「クリックできる」「アニメーションする」という性質を組み合わせたい時、単一継承の言語では綺麗にクラスツリーを組めない。結果として AnimatableScrollableButton のような謎のカスタムクラスが無限増殖するか、コピペを許容するしかなくなった。
◆ 3. 「すべてはWidgetである」への大転換
限界を悟ったチームは、UIコンポーネントから継承を完全に排除。機能を「単一の責任しか持たない、限界まで小さな不変(Immutable)の部品」にバラバラに分解しました。
• 「余白」は Padding Widget
• 「背景色」は ColoredBox Widget
• 「クリック検知」は GestureDetector Widget
DRY原則を、クラスの血縁関係(継承)ではなく、小さな部品を数珠つなぎにする「コンポジション(合成)」で解決したのです。
◆ 4. 歴史が証明した英断
過去のブラウザエンジンの慣習を捨て、「Widgetはただの軽量な設定書(非継承)とし、泥臭いレイアウト計算(RenderObject)のレイヤーでのみ継承を使う」という多層構造を発明したことで、Flutterは圧倒的なパフォーマンスを手に入れました。
この「UIに継承は不要」という思想の大転換は、その後のSwiftUIやJetpack ComposeといったモダンUIフレームワークの設計に決定的な影響を与えることになります。
「安易にオブジェクト指向の継承に頼ると、UI開発では確実に破綻する」という、ソフトウェア設計の歴史における最大の教訓の一つです。
1Password の op コマンド実行時のダイアログで、AI 側から「〇〇の目的で、△△のAPIキーの読み取りの承認をお願いします」ってメッセージを送れるようにならないかな。
まあ元々実行も承認も人間が1ステップでやってたことだったから、前提が変わったんだろうけど
自分はここ数ヶ月 Cursor を開いてなかったが、
Claude Web にこのポストの内容を共有して対応を聞いた上で、
・該当のバージョンの ClaudeCode 拡張が入っていないこと
・攻撃者のバックドアが仕込まれていない事
…あたりを確認した
We identified a security incident affecting a modified Claude Code VS Code extension accessed through our Cursor IDE extension marketplace, impacting at most 5,000 users. This malicious version of the extension was not developed by Anthropic. It does not impact other extensions downloaded from the cursor.com/marketplace, Grok Bot, Grok or our other SpaceXSI products.
In response, we took down our extension marketplace this afternoon, worked with relevant providers to neutralize the malware, and have reinstated the marketplace after confirming there is no further risk.
If affected, please review instructions in this blog post to understand how to find the malicious package and establish a path to mitigate any potential impact. We are asking all customers update to Claude Code for VS Code version 2.1.314: cursor.com/blog/claude-code-…
ヘブン retweeted
We identified a security incident affecting a modified Claude Code VS Code extension accessed through our Cursor IDE extension marketplace, impacting at most 5,000 users. This malicious version of the extension was not developed by Anthropic. It does not impact other extensions downloaded from the cursor.com/marketplace, Grok Bot, Grok or our other SpaceXSI products.
In response, we took down our extension marketplace this afternoon, worked with relevant providers to neutralize the malware, and have reinstated the marketplace after confirming there is no further risk.
If affected, please review instructions in this blog post to understand how to find the malicious package and establish a path to mitigate any potential impact. We are asking all customers update to Claude Code for VS Code version 2.1.314: cursor.com/blog/claude-code-…
このUIくそ難しいと思うわ。
このファイルアイテム一つの高さはマウスポインター前提で細めに作ってるから指で正確にタッチするのが難しいと思う。単純に指で対象が隠れて狙いづらい。
ついでに、この腕を宙に浮かせて操作するのは操作するのもむずいと思う。
スマホだったら手で持って固定されるから、タッチ座標を決める変数って指の関節くらいだけど、こんな感じで手が浮いてると身体の位置と肩と肘と指が絡んでくるから慣れるのに時間がかかりそう。
ラップトップの画面の端とかを掴んでタッチする分には一緒だから、画面端限定かもな












