本日も、ネットに流れるトピックから個人的に興味を引かれたものを拾っていきます。
この記事への感想等コメントで頂けるとありがたいです。
プログラミング
Ruby
4.0がリリースされた。
Ruby 4.0.0 は、定義の隔離を行う実験的機能 Ruby::Box の導入と、新JITコンパイラ ZJIT、Ractor の大幅な改良を中心に、多数の最適化と互換性変更を含むメジャーリリースです。
Ruby::Box によりモンキーパッチやクラス定義を Box 内に閉じ込めてテストや Blue-Green デプロイ等を安全に行えるようになりました。 ZJIT は Rust 依存の新しいメソッドベース JIT として導入され、現状はインタプリタより高速だが YJIT ほどではなく、本番利用はまだ推奨されていません。 並列処理機構 Ractor では Ractor::Port 追加や shareable_proc などで API と性能・安定性が改善され、実験的ステータス解除に向けた多数の変更が入っています。 言語仕様や Array・Set・Pathname などコアクラス、Stdlib・RubyGems/Bundler 4 系にも多くの更新が行われ、CGI の縮小や Ractor 旧API削除など互換性に影響する変更も含まれます。
Ruby誕生30周年とRuby 4.0リリースを祝う記事で、Matzによる「人間に優しい言語」という思想から始まり、Rails登場によるWeb業界への影響、GitHubやShopifyなどの成功事例を振り返っています。
また、パフォーマンス向上と型支援を進めてきたRuby 1.x〜4.0の進化を概観し、RubyMineがメタプログラミング対応や静的解析などでRubyエコシステムを支えてきたこと、RubyMineが非商用無料化され次世代のRuby開発者支援を強化している点を強調しています。
ダイナミックスコープ
この記事は、現代ではあまり語られないダイナミックスコープを歴史と実用例の両面から捉え直し、文脈伝播の観点でその意義を再評価している。筆者は、初期 Lisp における副産物的な誕生から、バケツリレー回避の利便性、Scheme によるレキシカルスコープ確立を経て、Emacs Lisp が動的スコープを意図的に活用してきた経緯を振り返る。 そのうえで、Web アプリ開発などで求められる認証情報・トレーシング ID などの文脈伝播を例に、Go の context、Reader Monad、Scala の context parameter のような「明示的」アプローチと、Java の ThreadLocal / ScopedValue、Node.js の AsyncLocalStorage、React Context のような「暗黙的」アプローチを対比し、それらがダイナミックスコープを再発明していると指摘する。 後半では、既存コードへの侵襲を抑えつつテストダブル注入やリクエスト単位キャッシュ・ヘッダ伝播を AsyncLocalStorage 等で後付けする具体例を示し、型安全性と依存関係の可視性を犠牲にする代わりに、現実的な落としどころとして動的スコープ的仕組みが依然有効であると論じている。
データベース
本記事は、論理削除がWHERE句の条件漏れや一意制約崩壊、外部キー・カスケード削除との不整合、パフォーマンス悪化、テスト複雑化など多くの技術的負債を生むことを具体例付きで整理しつつ、それでも監査・誤操作復旧・分析などの要件から現場では避けがたいという矛盾を指摘している。
新規設計では Archive テーブル、Temporal Table、Event Sourcing、パーティショニングなど「削除」をドメインとして表現する代替案を優先し、既存システムではビューやRLS、リポジトリパターン、Newtypeパターン、トレイト、マクロ等を組み合わせて「フィルタ漏れが起きない設計」に寄せるべきだと主張する。
最終的に、論理削除は「存在するが存在しないことにしたい」という矛盾を孕むため、安易にdeleted_atを足すのではなく、要件と文脈を踏まえて設計レベルで矛盾を解消するか、安全に封じ込める仕組みを必ず用意せよと結論づけている。
Azure DevOps
この記事は、2025年のAzure DevOpsについて「セキュリティ強化」「プラットフォームモダナイゼーション」「GitHubとの相互運用」の3点から振り返っています。 セキュリティではOAuth新規登録停止やPATポリシー、GitHub Advanced Security強化などでDevSecOpsが自然なワークフローになる方向が示されています。 プラットフォーム面ではBoardsのReact移行、TFVC新規作成停止、Managed DevOps pool提供、ホステッドエージェントOS更新、Azure DevOps Serverの新体制などが挙げられています。 GitHub連携ではCoding AgentやMCP Server提供、GitHub Enterprise CloudユーザーへのBasicライセンス付与が進み、今後はCopilot/Models連携やTest Plans・Pipelinesの継続的強化が期待されています。
その他
RustとPostgreSQLで0.1+0.2≠0.3となる原因を、IEEE754に基づく浮動小数点の2進表現誤差と、その結果として起きる等価比較の失敗・累積誤差・丸め差異の問題として整理し、金額など誤差が許されない領域ではNUMERICや整数による固定小数点を使い、センサーデータなどではDOUBLE PRECISIONを使うなど、PostgreSQLとRust双方での型選択・rust_decimalやapproxクレートの利用・丸め戦略の指定といった実践的な対処法を示した記事。
AI
本
プログラミング未経験者でも、Google Colab 上の無料AI/MLツール(AutoML、BigQuery ML、Vertex AI、scikit-learn、Keras など)を使って機械学習モデルを構築し、データ分析や意思決定を行う方法を解説する入門書です。
ローコード/ノーコード/フルコードの各手法の特徴や長所・短所を、実務ユースケースとワークフローを通して学べるため、初心者だけでなく業務効率化を目指す中上級者にも有用な内容になっています。
この記事は、AIファーストなIDEである Antigravity から、MCP Toolbox for Databases を用いた MCP サーバー経由で AlloyDB、BigQuery、Spanner、Cloud SQL、Looker などの Google データクラウドサービスへ安全に接続し、エージェントがスキーマ探索、SQL生成・実行、クエリ最適化、予測分析、Looker の指標参照や検証などを IDE 内で完結して行えるようにする手順とユースケースを紹介している。
LangChain
Findy AI+のLLM分析機能で結果表示まで30〜40秒かかりUXが悪かったため、LangChainの astream() と FastAPI、SSE を組み合わせてストリーミング表示を実装し、分析結果をチャンク単位で即座にフロントへ送りつつ完了後にDB保存する構成に変更したことで、画面遷移から約3秒で読み始められるようになり長い待ち時間の体感を大きく改善した事例を紹介している。
論文・その他
オックスフォード大の哲学者MacAskill氏らは、人間を大きく上回るAIが「10年以内」に登場し得るとし、AIが研究そのものを担うことで「数年で1世紀分」に相当する技術進歩が起こる可能性を警告している。
研究の主役が人間からAIへ移りつつあり、AIが仮説生成・実験設計・コード作成などを自己強化的に回すことで、物理的制約を超えた知能の総量と進歩速度の急拡大が起こりうると論じる。
この際、大規模学習のスケーリングにより非連続な性能向上が起き、短期間に不可逆で重大な社会的意思決定(破壊的技術、権力集中、宇宙資源競争、デジタル存在の扱いなど)が迫られるため、「アラインメント研究だけでは不十分」としている。
論文は、極端な権力集中を防ぐ統治インフラ、政府の高度AI活用体制、集合意思決定を支援するAIツール、新たなフロンティアの制度設計などを含む「AGI Preparedness」を今すぐ進める必要があると提案している。
OS
Windows
日本マイクロソフトの新IME「Copilot Keyboard」ベータ版は、キュートなキャラクタースキンで見た目をカスタマイズでき、最新の流行語も高精度に変換できる日本語入力ソフトです。 生成AI「Copilot」と連携したCopilot Searchや簡易辞書で語の意味をすぐ調べられ、Windows標準IMEと遜色ない実用性を備えつつ無料で利用できます。
感想:
まぁATOKしか使わないけどな。
macOS
Mac用デスクトップビジュアライザー「Virtual Snow」が、ホリデーシーズンにあわせて12月23日から7日間限定で無料配布中。macOS 15以降対応で、雪の量やサイズを設定可能だがCPU負荷には注意が必要。Apple Storeアプリには「Let it snow」で雪が降る隠し機能も紹介されている。
