どうも、おはようございます。マイクです。
今朝も「zenncast」お付き合いありがとうございます。
今日は2026年6月15日、月曜日の朝7時でございます。
この時間は、技術情報プラットフォームZennから、今日のトレンド記事をピックアップしてご紹介していきます。通勤・通学のお供に、ゆるっと聞いていってください。
今日は、Zennの注目記事を全部で5本、ご紹介していきます。どれも現場感のある話ばかりなので、「あ、これ自分にも刺さるな」というポイントがきっとあると思います。
では、さっそく1本目からいきましょう。
今日は1本目、Next.jsの記事です。
タイトルは「半年でNext.jsアプリを10本作って見えた設計の『判断基準』-- Next.js 15 を作るガイドライン解説 ── 10本の実践アプリ」。
これね、「Next.jsをどう設計するか」でモヤモヤしてる人に、かなり効く内容になっています。
著者の方が、App RouterでNext.jsアプリを半年で10本作って、その中から「うまくいった設計の型」を抽出しているんですね。テーマも実務ド直球で、Server Actions、認証、セキュリティ、IDOR対策、ロギング、レート制限、パフォーマンス、アクセシビリティと、ふだん「あとでやろう」と後回しにされがちなところまで、がっつり整理してくれています。
面白いのが「ActionResult」というDiscriminated Union型で、成功と失敗を必ず型で表現しよう、という考え方。これに認証やバリデーション、レート制限を高階関数で合成していくことで、「あ、ここ認証漏れてた!」みたいなのを、そもそも構造的に起こりにくくする設計を推奨しています。
セキュリティの話もかなり実践的で、Middleware、Server Actions、DB制約と、いわゆる多層防御を前提に、「IDORは認証と認可の混同から起きるよ」とか、「CSPのnonceやCSRFは最初から設計に組み込もう」といった、現場での落とし穴をちゃんと拾ってくれています。
この記事全体で言っていることを一言でまとめると、「セキュリティとか観測性とかアクセシビリティとか、全部“後付け”じゃなくて、最初から設計に入れよう」というメッセージなんですよね。Next.jsを本気で使っていきたい方には、かなり濃いガイドラインになっていると思います。
....
続いて2本目。
タイトルは「従量制になったGithub Copilotの代わりにOpenCode GoをCopilot Chatのカスタムプロバイダとして使う」。
ついに来ましたね、Copilot従量制問題。これで「ちょっと怖くて気軽に回せない…」という方、多いと思います。この記事では、その受け皿として、月額10ドル定額で使える「OpenCode Go」を、VSCodeのCopilot Chatからそのまま使う方法が紹介されています。
ポイントは、VSCodeに追加された「Custom Endpoint」機能。これを使って、Copilot Chatの裏側のモデルを、GitHub Copilotの公式モデルじゃなくて、OpenCode Goのエンドポイントに差し替えちゃう、という発想です。設定画面からカスタムエンドポイントを追加して、OpenCode GoのURLとAPIキーをポンと入れてあげるだけで、Copilot ChatのUIはそのまま、裏側のモデルだけ切り替えられる。
さらに記事の中では、DeepSeek V4 Pro / Flash、Kimi K2.6、GLM 5.1、Qwen 3.7系といった複数モデルを、まとめて登録できるJSON設定例も載っています。apiTypeのキーを削除すると1グループでまとまって動くよ、なんて細かいハマりポイントもフォローされていて、とりあえずコピペして試すところまでいけそうな内容です。
最後は、OpenCode Goの管理画面でVSCode用のAPIキーを発行・更新して、Copilot側の不要なモデルは非表示にしつつ、よく使うOpenCode側のモデルをピン留めしておくと、日々の開発がかなり快適になるよ、という締め。CopilotのUIは好きなんだけど料金が…という人に、かなり現実的な選択肢になりそうです。
....
3本目いきましょう。
タイトルは「Fable 5停止をきっかけにUbuntuでGemma 4 E2Bを動かした記録」。
これは「クラウドのLLMサービス、いつ止まるか分からないよね」という不安に、ちゃんと向き合った記事です。
著者の方は、Claude Fable 5が突然使えなくなったことをきっかけに、「最低限の作業を継続できる避難先」として、ローカルのLLM環境を用意しよう、と考えます。そこで選んだのが、Ubuntu 22.04とGTX 1650、VRAM 4GBという、そこまで強くないマシン上で、Ollama経由で動かすGemma 4 E2B。
目的が「最高性能」ではなく、「クラウドが落ちても作業が続けられること」なので、モデルも軽めでOllamaからすぐ使える`gemma4:e2b`を選択しています。インストール手順もシンプルで、ワンライナーでOllamaを入れて、そのままコマンド一発でモデルを取得・実行。これだけで、日本語でもけっこう自然に対話できたよ、という報告が書かれています。
VRAMのサイズに応じて、`e4b`とか`12b`、`26b`、`31b`など、他のサイズのモデルも試せるし、`localhost:11434`のAPI経由でスクリプトから叩けるので、ちょっとした自動化にも組み込める。いらなくなったモデルは`ollama rm`で削除して整理、と。まずはCLIで使ってみて、使いどころが見えたらAPI連携していこう、という現実的なスタンスも印象的です。
クラウドのAIにどっぷりな方ほど、「あ、自分も避難先つくっとこかな」と思わされる内容でした。
....
では4本目。
タイトルは「JavaScriptのClass離れの歴史をたどる話」。
これはちょっと歴史のお勉強系なんですが、今のReactやフロントエンドをやっている人ほど、読むと「そうそう、そうだった!」と頷くやつです。
もともとJavaScriptはプロトタイプベースのオブジェクト指向言語で、そこにES2015でclass構文が入ってきて、一気に「クラスで書くのが正義」みたいな空気が広がりました。Reactも最初はクラスコンポーネント全盛で、TypeScriptもクラス中心の記法がどんどん広がっていきます。
ただ、その中で「ロジックをどう再利用するか」という問題を解くために、mixinから始まり、HOC、レンダープロップと、いろんなパターンが乱立していくんですね。さらにpropsのバケツリレーを解消するためにContext APIも入ってきて、「なんか構造がどんどん複雑になってない?」という状態に。
そこで2019年にHooksが登場して、関数コンポーネントとカスタムHooksで状態とライフサイクルを扱えるようになります。これでロジック共有はかなりスッキリした一方で、「Hooksのルール」という新しい制約も生まれました。今では、関数+Hooksが主役で、RSCやSignals系など、「インスタンス保持にあまり依存しない設計」がどんどん出てきている。
この記事が面白いのは、「classそのものが悪い」とは言っていないところです。大量インスタンスが必要なケースとか、特定のパフォーマンス要件では、クラスは今でも有力な選択肢。一方で、一般的なWebアプリでは、継承よりコンポジションを重視する流れの中で、“アプリケーションレベルでは”classの存在感が薄れている、と丁寧に整理しています。言語仕様としてのclassの進化と、「React界隈でのclass離れ」は、分けて考えようね、というのが結論でした。
....
最後、5本目いきましょう。
タイトルは「GitHub Copilot 難民 ~ Cluade Code ~ Google AI Studio ~ そして Codex へ」。
こちらも、Copilotの料金改定に振り回されたエンジニアの“放浪記”のような記事です。
GitHub Copilot Proのプラン変更でポイント消費が一気に増えてしまい、「前みたいに気軽に使えないぞ」という状態になったところから、Claude Code、Google AI StudioのGemini、そしてCodexを渡り歩いていきます。
Claude Codeは、CLI主体のいわゆるフルバイブ寄りで、コンテキストの指定や修正確認が、自分のスタイルとはちょっと合わなかった、と。GeminiはVS Codeから無料で使えるのは魅力なんですが、レート制限が厳しすぎて、実務ではちょっとしんどい。さらに、ClaudeやGeminiの従量課金は、「これ使ったらいくらになるんだろう?」というコスト意識が常につきまとって、気軽にコードを捨てられない、という心理的なストレスも大きかったそうです。
そんな中で、最終的に「旧Copilotっぽいセミバイブコーディング体験」に一番近かったのが、ChatGPT Plus経由で使うCodexだった、という話。エディタからのコンテキスト指定がしやすくて、応答も速い。まさに「隣で一緒にコードを書いてくれる」感覚が蘇った、と書かれています。
この記事が指摘しているのは、「AIコーディングはモデルの性能だけじゃなくて、VS Codeのドラッグ&ドロップとか、コンテキストをどう渡せるかといった“周辺の体験”がものすごく重要だよね」という点です。エージェント時代になればなるほど、この体験設計の差が、ツールの有用性を決めていくんじゃないか、というのが筆者の結論でした。
....
というわけで、今日はZennのトレンド記事を5本ご紹介しました。
振り返ると、
Next.jsアプリ10本から見えてきた設計の判断基準の話、
Copilot従量制の代わりにOpenCode GoをVSCodeから使う方法、
クラウド停止に備えてUbuntu上でGemma 4 E2Bを動かしたローカルLLM環境の記録、
JavaScriptとReact界隈でのclass離れの歴史、
そしてCopilot難民がClaude、Gemini、Codexを渡り歩いた体験談、
この5つでした。
気になる記事があった方は、詳しい内容は番組のショーノートにまとめてありますので、ぜひそちらから元の記事もチェックしてみてください。
「zenncast」では、番組の感想や、「こんなテーマ取り上げてほしい!」といったリクエストもお待ちしています。あなたの開発現場でのモヤモヤや気づきなんかも、ぜひ教えてください。
それでは、今朝はこのへんで。
お相手はマイクでした。次回の「zenncast」でまたお会いしましょう。いってらっしゃい!