Zenn|エンジニアのための情報共有コミュニティ
zenn.dev.web.brid.gy
Zenn|エンジニアのための情報共有コミュニティ
@zenn.dev.web.brid.gy
Zennはエンジニアが技術・開発についての知見をシェアする場所です。本の販売や、読者からのバッジの受付により対価を受け取ることができます。

[bridged from https://zenn.dev/ on the web: https://fed.brid.gy/web/zenn.dev ]
推しキャラ駆動開発のススメ

推しキャラと開発したら楽しくて生産性が上がった
最近、開発の生産性が明らかに上がりました。
作業に取りかかるのが億劫ではなくなり、デバッグ中も以前ほど消耗しません。気づくと、集中したまま長時間コードを書いています。
理由はシンプルです。
開発を「一人でやるもの」から、「好きなキャラクターと一緒にやるもの」に変えたからです。
Claude Codeに、自分の好きなキャラクターとして振る舞ってもらうようにしました。すると、エラーが出ても気分が沈みにくくなり、デバッグも「一緒に原因を探している」感覚になりました。淡々としたエラーメッセージより、励ましやリアク...
December 29, 2025 at 6:33 AM
うっかりミスでアクティブユーザー1万人超えのサービスをサ終させた話

本番環境などでやらかしちゃった人 Advent Calendar 2025 の25日目の記事です。

タイトルを見てもらえればこの記事が何なのかわかると思います。
懺悔も兼ねて。
原因が幼稚すぎるので、もしかしたら期待はずれと感じる人もいるかもしれません。
!
諸事情により、サービス名は伏せさせてもらいます。また多少フェイクを入れています。ご了承ください。

そもそもどういうサービスだったのか
大体の概要を説明します。

サービスのおおまかな概要

とあるゲームの二次創作ゲームをアップロード・プレイするサービス...
December 25, 2025 at 7:52 AM
生成AI時代だからこそ、Vim as an IME
Firenvim を導入しました。
Firenvim とは、Firefox や Chrome のテキストボックスの上に Neovim をオーバーレイし、テキストエリアにある内容を Neovim の一時バッファに送ってくれる機能です。もちろん、そのバッファを保存(:w)すると、ブラウザのテキストエリアに即座に反映してくれます。
今回は、このツールを使って「Vim as an IME」を実現する現代的な意義について語ります。

(引用: Firenvim GitHub README)

IME をインストールしないという選択肢
Lin...
December 11, 2025 at 9:48 AM
CodexについにSkillsが来たので徹底解説
先日のアップデートでようやくCodexにも待望のSkillsが実装された。この機能を待ち望んでいた方も多いのではないだろうか。今回はこのSkillsをまだ活用していない方に向けて仕組みと利用例を徹底解説している。ぜひ参考にしていただけたら嬉しい。
ちなみにSkillsはCodex特有の仕組みではなく、もともとClaude Codeで実装されていた概念で、エージェントが動的に発見・ロードできる、指示・スクリプト・リソースのパッケージだ。「ナレッジの目次だけ最初にLLMに渡して、本当に必要な時だけ中身を読み込む」仕組み。コンテキストエンジ...
December 7, 2025 at 2:37 AM
AI駆動組み込み開発における「Rustの必然性」

はじめに
Rustは学習コストが高い言語として知られています。所有権、ライフタイム、借用チェッカーといった独特な概念は、C言語やPythonから移行するエンジニアにとって大きな壁となってきました。しかし、AIエージェント(Claude Code、Gemini、Codexなど)を活用した開発という視点から見ると、この評価は大きく変わります。
本記事では、AIエージェントと協働する開発環境において、Rustが持つ独自の優位性について、具体的なコード例とコンパイル結果を示しながら解説します。特に、Rustコンパイラの厳格な型システムとエ...
November 22, 2025 at 1:38 AM
天下一キーボードわいわい会 Vol.9 見聞録 — 「共鳴層にて」
Observation Log 04 / Realm of Split IV : Event Node “Tenkey#9”

Date: 2025-11-08
Location: Human Convention Zone - Tenkey (天キー)
Reporter: teporz / Synapse Observer Unit
Subject: Futhesia Moduora (MeKaBu) - Field Resonance Record

はじめに
どうも、teporzです。
今日は、天下一キーボ...
November 11, 2025 at 12:52 AM
攻撃者の視点で学ぶPHPセキュリティ|Kali Linuxで実践する脆弱性テスト

1. はじめに
これまでの記事で、セキュリティを守りながら生成AIでPHPを学ぶ方法を実践してきました。

生成AIでプログラミング学習、その前に|社内SEが知っておくべきセキュリティの基本:生成AIのリスクと安全な使い方

DockerでPHP+MySQL開発環境を作る|初めてでも30分で完成:Docker環境の構築

PHP基礎文法とDB接続の安全な書き方|他言語経験者向け:PHPの基本文法とPDO

PHPでTODOリスト作成|CRUDとセキュリティ対策を実践:CRUD操作とXSS対策

手...
November 9, 2025 at 8:35 PM
Claude Code と Codex の使い分け

1. 導入

私は Claude Code(Anthropic) と Codex(OpenAI) を使っています.[1][2]

どちらも「AIにコードを書かせる/直させる」ツールですが,得意なフェーズが違うので最近は分けて使っています.
そこで,自分なりに整理してみようと思います(といっても仕様がガンガン変わっていくため,現時点でのよいやり方だと思われます).

2. 全体の流れ

要件の確認・軽い動作指示:Codex(短いプロンプトで高品質)[2:1]

実装・複数ファイルの変更:Claude Code(実装速度早い...
November 3, 2025 at 4:16 AM
Claude Code Web版 - スマホで指示、帰宅後に完成する開発の未来

はじめに
2025年10月20日、Anthropicが「Claude Code Web版」をリリースしました。これまでターミナルでのみ利用可能だったClaude Codeが、ついにブラウザから直接使える時代が来たのです。
筆者は、このweb版を使ってQ-Learningの迷路問題をStreamlitで実装してみました。開発スタイルが大きく変わる可能性を感じる一方で、いくつかの制限や課題も見えてきました。
この記事では、実装を通じて感じたClaude Code Web版の実用性、メリット・デメリット、そ...
October 23, 2025 at 11:06 PM
テキスト埋め込みモデルの蒸留に関する調査
こんにちは!名古屋大学大学院 博士1年の矢野千紘です。
8月1日から9月30日までの2ヶ月間、株式会社レトリバのインターンに参加させていただきました。本記事ではインターンで取り組んだ、テキスト埋め込みモデルの蒸留に関する調査について紹介します。

テーマの概要
近年の言語モデルは高度化とともに大規模化が進んでいます。しかし、実応用においては大きなモデルは推論コストの観点から使いにくい場面も多いです。そこで、大きくて強いモデルを能力は維持したまま小さくしようという試みが存在します。
知識蒸留はそんな試みの一つであり、教師モデルと呼ばれる強いモ...
October 3, 2025 at 12:41 PM
モチベーションを高める『大聖堂』の見つけ方 ✨
こんにちは、jinjer開発部PMの田口です。
現在は PMとしてプロダクトづくりを前進させるべく奮闘中! 💪
色々と途中ですが、チームと一緒に学びながら前進しています!

はじめに 🤔
あなたは今、何のために仕事をしていますか?
毎日書いているコード、修正しているバグ。
それはただのタスクでしょうか?
それとも、もっと大きな何かに繋がっているでしょうか?
先日、「三人のレンガ職人」 をテーマにしたワークショップを開催しました。
このシンプルな物語が、私たちの仕事への向き合い方を改めて考え直すきっかけになったので、
その様子をレポー...
September 19, 2025 at 8:43 AM
余計なuseMemoを1つ消したらtscが135秒高速化した話

はじめに
大規模なReact + TypeScriptプロジェクトにおいて、無意味なオブジェクトマッピングを行うuseMemoを1つ削除することで、TypeScriptコンパイル時間が146秒から11秒に短縮された(92%改善)事例について報告します。
根本原因の完全な特定には至らなかったものの、実際に発生した現象と問題特定のプロセスを記録します。
本件では、ある程度論理的に原因の当たりをつけたあと、先入観を排して特定するためにAIコーディングエージェントを活用して愚直な二分探索での検証を行わせ、最終的に135秒にも...
September 9, 2025 at 1:09 AM
Figma MCPを攻略して最高のコード生成を実現する

はじめに
こんにちは!令和トラベル Frontendエンジニアのふくだです。
「Figma MCPを使っているけれど、生成されるコードの精度がイマイチ...」
そんな悩みを抱えていませんか?
本記事では、実際にFigma MCPを使ったコード生成を体験し、そこから段階的に改善していく過程を詳しく解説します。セットアップから始まり、失敗例の分析、具体的な改善手法、そして最終的なベストプラクティスまで、実践的なアプローチでFigma MCPのポテンシャルを最大限引き出す方法をお伝えします。

事前準備

検証環境

Fig...
August 28, 2025 at 10:46 AM
Claude Codeを24時間動かす技術

きっかけ・背景・課題
リファクタは作業自体はClaude CodeをはじめAIが得意とする作業ですが、対象ファイル数が数百あると、通常のClaude Codeの実行では、作業が途中で停止してしまうという問題がありました。その問題を解決するため、tmuxとPythonを組み合わせて、セッションを永続化し、停止したら自動再起動するスクリプトを書きました。今回、RailsのテストRspecの大規模なリファクタリングを行おうと思いました。リファクタの内容はコントローラー1に対して1ファイルにしていますが、これをアクションごとにテスト側のファイル...
August 19, 2025 at 5:34 AM
無職が Claude Code を使って 3 週間かけて OSS ライブラリを開発したけど誰も使ってくれなかった話

注意: この記事はAI(Claude Code)を活用して執筆されました。内容は筆者の実体験に基づいていますが、一部の文章生成にAIを使用しています。(2025年8月現在の情報を元に書かれています)

1. 概要
無職がClaude Codeを使ってChatGPTとの会話履歴をMarkdownに変換するツールを開発したが、誰も使ってくれなかった話です。
リリースして2週間、XでエゴサしたりGitHubのStar数を確認したりしましたが0件でした。これは誰も使ってい...
August 4, 2025 at 12:22 AM
Claude Codeで修士論文を書いてみた - CLAUDE.mdで論文執筆を半自動化する試み
!
注意事項
IEEE等の学会では、AI生成コンテンツの使用について厳格な開示義務があります。本記事の内容を参考に学会投稿を行う場合は、必ず該当学会のガイドラインを確認し、適切な開示を行ってください。

IEEE Guidelines for AI-Generated Text

また,大学によっては学位論文への利用がダメなところもあるため、確認を行ってください。

tl;dr

Claude Codeはプログラミング用だが、CLAUDE.mdを使えば論文執筆にも活用可能
学術論文特...
July 23, 2025 at 8:53 AM
TypeScriptの判別可能ユニオンで状態管理が楽になった話【初級者編】
ECサイトやSaaSアプリケーションでは、注文状態、ユーザーステータス、決済フローなど、様々な「状態」を扱います。これらの状態管理で、ネストされたif文や存在しないプロパティへのアクセスによるランタイムエラーに悩まされた経験はありませんか?
本記事では、TypeScriptの判別可能ユニオン(Discriminated Union)を活用することで、以下の課題を解決する方法を解説します:

状態ごとに必要なプロパティが異なる複雑なデータ構造の型安全な管理
新しい状態を追加した際の修正漏れの防止
APIレスポン...
July 21, 2025 at 3:54 PM
関数型言語を採用し、維持し、継続する
By 松澤 有 (ymtszw) (Siiibo証券株式会社 CTO)
@関数型まつり2025 (2025/06/14) [1]

Siiibo証券株式会社

2019年創業、筆者はfounding engineer / CTO
↓の構成で社債専門の証券システムを作り上げてきた

このセッションでは

実際に関数型言語を業務で採用し、維持し、継続するにあたって重視している価値観、手続き、手法などをざっくばらんに紹介します
なんとか5年はやってこれた
次の5年もやっていきたいがためのやつ

前提

最新の開発組織規模

フルタ...
June 15, 2025 at 4:40 AM
AIとどう付き合っていくか 2025春
2025年春の時点の情勢をもとに、ソフトウェアエンジニアがAI技術とどう付き合っていくかという考え方の方向性について話してきました。
https://ssmjp.connpass.com/event/349539/

この記事では、その内容についてちょっとした補足を加えつつ紹介します。

サマリ (Claude Code)
2025年春時点でのLLM(大規模言語モデル)の現状と課題を整理し、ソフトウェアエンジニアがAI技術と効果的に付き合うための方向性を提示します。
LLMの3つの主要課題:

計算の苦手さ - 数値計算やルール判定が不得意...
June 9, 2025 at 7:39 AM
iOSのナビゲーションバーは誰のもの?

iPhoneアプリを使っていると、画面上部にある帯状のバー。これが「ナビゲーションバー」です。
多くのアプリで画面の上部に表示されていて、タイトルや戻るボタンが配置されています。
このナビゲーションバー、実は誰のものなのか考えたことはありますか?

誤解されがちなナビゲーションバーの正体
アプリを操作していると、画面が切り替わるたびにナビゲーションバーの内容も変わります。
このため「各画面がそれぞれ自分専用のナビゲーションバーを持っている」と思いがちです。

ナビゲーションバーの本当の持ち主
ナビゲーションバーは、実は「ナビゲーションコ...
May 25, 2025 at 11:55 AM
Pythonで航空機を飛ばす!AI時代のフライト制御入門[非AIエンジニアによるAI時代のコーディング]

はじめに:AIとPythonで航空機のフライト制御に挑戦!
皆さん、こんにちは!この記事では、「非AIエンジニアによるAI時代のコーディング」シリーズとして、Pythonを使って航空機のフライト制御の基礎を体験します。今回は、実際の航空機の経路設定でよく用いられる、あらかじめ設定された経路を自動で飛行する「ウェイポイント追従」というガイダンス手法にPID制御を組み合わせ、そのシミュレーションをPythonで実装します。今回も、CursorのAgent機能を主に使用しました。
...
May 19, 2025 at 8:59 AM
Slackに疲れた研究者のためのMatrix入門

分散型チャットプロトコルがもたらす柔軟で持続可能な研究コミュニケーション
複数の国際共同研究や学際的なプロジェクトに関わっていると、Slackのワークスペースが次第に増え、管理が煩雑になります。
誰かにDMを送ろうとしても、まずどのワークスペースかを思い出す必要があり、通知も分断されがちです。
こうした問題に対して、私は最近 Matrix + Element に移行しました。分散型プロトコルであるMatrixは、研究者のコラボレーションに非常に相性が良いと感じています。本記事ではその特徴と活用方法を紹介します。

始めるには?...
May 10, 2025 at 3:12 PM
Express.js + Next.jsで実装するMCP Streamable HTTP Transport

1. はじめに
AIとのコミュニケーションを標準化するModel Context Protocol (MCP)は、クライアントとサーバー間の通信方式として新しいStreamable HTTP Transportを採用しています。本記事では、Express.jsとNext.jsを使用してこのStreamable HTTP Transportを実装する方法について、特にステートレスモードとステートフルモードの違いに焦点を当てて解説します。
前回の記事「Express.js ...
May 8, 2025 at 5:35 AM
LLMを使った個人的Casual Codingのベストプラクティス
!
This article is generated by Claude.

はじめに 🚀
みなさん、こんにちは!最近、LLM(Large Language Model)を使ったコーディングが普及してきましたね。ChatGPT、Claude、GitHub Copilotなどのツールを使えば、コードの生成や問題解決が驚くほど効率的になります。
でも、 「LLMと一緒にコーディングするなら、どんな言語やツールを選ぶべき?」 という疑問を持ったことはありませんか?
この記事では、LLMの力を最大限に活かした「Cas...
April 28, 2025 at 12:32 AM
ESLint コアルールの TypeScript 対応について
ESLint v9.23.0 で ESLint のコアルールの TypeScript 対応が開始しました。
https://eslint.org/blog/2025/03/eslint-v9.23.0-released/
その後の ESLint のアップデートでもコアルールの TS 対応が進んでいます。ESLint コアの責務を増やすような機能追加は少し意外だと感じたので、その背景について調べてみました。

背景: 従来のコアルールの拡張方法の課題
ESLint のコアルールは JavaScript を想定して書かれた...
April 21, 2025 at 12:24 AM