第914回 IPv6オンリー環境でも家庭内にVPNを繋ぎたい。Pangolinのプライベートリソースを試す
VPNを利用したトンネル型リバースプロキシPangolin。今回はPangolinの1.13以降で実装されたプライベートリソースを使い、インターネットからよりセキュアにLAN内のリソースへアクセスする方法を解説します。
VPNを利用したトンネル型リバースプロキシPangolin。今回はPangolinの1.13以降で実装されたプライベートリソースを使い、インターネットからよりセキュアにLAN内のリソースへアクセスする方法を解説します。
AIエージェントでコードベースを触っていると、地味に気になるのが「検索の回数」です。 rg や grep 自体は優秀なのですが、Claude Code や Codex、OpenCode のように同じリポジトリに対して何度も検索を繰り返す使い方だと、毎回プロセスを起動して、毎回 .gitignore を読んで、毎回ファイルツリーをなめるコストが積み上がります。 1回の検索なら誤差でも、1セッションで数十回、数百回と繰り返すと、無視しにくくなってきます。 そんなときに見つけたのが FFF です。 https://github.com/dmtrKovalenko/fff FFF は Neovi...
Android アプリをデバッグしていると、logcat を見ない日はまずありません。 でも個人的にずっとつらかったのは、大量に流れてくるログの中から、本当に見たい一行を探し出すことでした。スクロールしては検索し、また新しいログに流されて見失う……。そもそも logcat を一行確認したいだけなのに、わざわざ Android Studio を立ち上げるのも地味に億劫で。 「ログの洪水の中から、目的の一行にすぐたどり着けるツールがほしい」 そう思って自分用に作り始めたのが LogcatOn です。気づいたらリリースできる状態まで来たので、思いきって公開しました。無料です。 https://...
はじめに Windows のタスクバーで熱帯魚や金魚を泳がせる小さなアプリ「Taskbar Aquarium」を作って、無料になった Microsoft Store に個人で公開しました。 最初は Electron で作ったのですが、配布サイズが MSIX で 99MB になってしまい、Tauri に移植したら 3MB まで小さくなりました。 この記事は「作って・移植して・ストアに出す」までの記録です。 特に、 Electron/Tauri 共通で苦しんだ「タスクバー押し負け」問題 Tauri 移植で踏んだ Rust 固有の罠 無料化された Microsoft Store の公開フ...
はじめに こんにちは、アルバイトの川﨑です! 初のブログ執筆ということで何を書けばいいのかわからなかったのですが、PythonからRustに乗り換えて半年ほど経ち、タイミングも良かったので振り返ってみることにしました。 拙い内容になるとは思いますが、最後までお付き合いいただければと思います。 なお、筆者の執筆時点(2026/05/25)でのAtCoder Algo部門のレーティングは563(茶色)です。 実力相応のお話しか出ません。便利Tipsをお求めの場合は他記事の参照をお勧めします。 (執筆時点の筆者のレートグラフ) なぜRustへ乗り換えたのか 一般的にPythonからR...
ユーザーの入力したURLなどにHTTPリエクストする場合、ローカルネットワークのIP直指定のリクエストや、名前解決した結果内部ネットワークになるURLなどを除外しておかないと意図せず内部情報にアクセスされてしまったり意図しない障害などにつながってしまうことがあります。 内部ネットワークであってもmTLSで認証を突破できるクライアントしか許可しないとなっているのがベストではありますがそうなっていないサーバーが1つもないというのはなかなか難しいのではないかなと思います。 rustの場合reqwestというHTTPクライアントが定番ですが、それにssrf対策のhookを加えたライブラリreqw...
はじめに 前回の記事『Claude Managed Agentsで「まずエンジニアに聞こう」を「まずbotに聞こう」に変えた』では、ダイニーが社内向け Slack bot @ask-anything を Claude Managed Agents で組み、社内エンジニアへの調査依頼 (= dev-help) を半減させた話を書きました。本記事はその技術編で、Slack から Claude Managed Agents を安定運用するためのダイニーの実装パターン を紹介します。 記事1に書いた通り、Managed Agents を使うとダイニー側で書くコードは 3 種類に収束します。 ...
JSer.info #773 - pnpm 11.5がリリースされました。 Release pnpm 11.5 · pnpm/pnpm 新しい機能として、nodeLinker: hoisted向けにhoistの範囲を制限するhoistingLimits設定が追加されています。 pnpm dist-tagでの2FA対応、minimumReleaseAgeExcludeの扱い、リモートのHTTPS tarball依存のintegrityフィールドの保持などが含まれます。 Node.js v26.3.0 (Current)がリリースされました。 Node.js — Node.js 26.3.0 (Current) Buffer.poolSizeのデフォルト値が64 KiBに変更されています。 httpValidationオプション、パーミッションを破棄するpermission.dropが追加されています。 CloudflareがViteやOxcなどを開発するVoidZeroの買収を発表しました。 VoidZero is joining Cloudflare VoidZero is Joining Cloudflare | VoidZero Vite、Vitest、Rolldown、Oxc、Vite+の各プロジェクトはMITライセンスのオープンソースのまま開発が継続される予定です。 Voidは、オープンソースにする予定があわせて発表されています。 JSer.infoをサポートするには 😘 知り合いにJSer.infoをおすすめする ❤️ GitHub Sponsorsで@azuのスポンサーになる 🐦 X(Twitter)で@jser_infoをフォローする JSer.info Sponsors JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。 ヘッドライン Release pnpm 11.5 · pnpm/pnpm github.com/pnpm/pnpm/releases/tag/v11.5.0 pnpm ReleaseNote pnpm 11.5リリース。 nodeLinker: hoisted向けにhoistの範囲を制限するhoistingLimits設定を追加。 pnpm dist-tagでの2FA対応を修正。 minimumReleaseAgeExcludeの扱い、リモートのHTTPS tarball依存のintegrityフィールドの保持などを修正。 Node.js — Node.js 26.3.0 (Current) nodejs.org/en/blog/release/v26.3.0 nodejs ReleaseNote Node.js v26.3.0 (Current)リリース。 Buffer.poolSizeのデフォルトを64 KiBに変更。 httpValidationオプション、パーミッションを破棄するpermission.dropを追加。 Node.js — Node.js 24.16.0 (LTS) nodejs.org/en/blog/release/v24.16.0 nodejs ReleaseNote Node.js v24.16.0 (LTS)リリース。 crypto.randomUUIDv7()によるUUID v7の生成、fs.stat()へのsignalオプション、util.styleText()の16進数カラー対応を追加。 AbortSignal.timeout向けのモックタイマーを追加、IncomingMessageにreq.signalを追加など Chrome 150 beta | Blog | Chrome for Developers developer.chrome.com/blog/chrome-150-beta?hl=en Chrome browser ReleaseNote css Chrome 150 betaリリース。 text-fitプロパティ、background-clip: border-areaによるグラデーションボーダー、polygon()の角丸サポート、focusgroup属性のサポート。 data: URLのWorkerに一意のopaque originを割り当てるよう変更。 SpeechRecognitionにqualityオプションを追加など VoidZero is joining Cloudflare blog.cloudflare.com/voidzero-joins-cloudflare/ cloudflare vite news CloudflareがViteやOxcなどを開発するVoidZeroを買収。 VoidZero is Joining Cloudflare | VoidZero アーティクル Declarative partial updates | Blog | Chrome for Developers developer.chrome.com/blog/declarative-partial-updates Chrome HTML WebAPI DOM stream article HTMLを宣言的に部分更新するためのAPIとして提案中の<template for>について。 <template>要素と<?marker>などの処理命令プレースホルダーを使い、ドキュメント内の順序に依存せずコンテンツを配信するOut-of-order streamingについて。 setHTML()/replaceWithHTML()/streamHTML()などのJavaScript APIについても解説している。 On Rendering Diffs :: Pierre Computer Company pierre.computer/writing/on-rendering-diffs JavaScript performance diff library article Pierreが開発したdiffレンダリングライブラリ@pierre/diffsの実装解説。 スライド、動画関係 TSKaigi 2026 発表資料まとめ zenn.dev/yasse/articles/a7240304af804c TypeScript Conference slide TSKaigi 2026のスライド資料のまとめ。 TSKaigi 2026 Oxlintのカスタムルールの現況 - Speaker Deck speakerdeck.com/syumai/oxlint-custom-rule ESLint Rust slide JavaScript Oxlintのカスタムルールについてのスライド。 サイト、サービス、ドキュメント SoraKumo001/satoru github.com/SoraKumo001/satoru WebAssembly HTML css SVG PDF Image library WebAssemblyで動作するHTMLをSVG/PNG/WebP/PDFへ変換するレンダリングエンジン。 ソフトウェア、ツール、ライブラリ関係 microsoft/Webwright: A simple SWE style browser agent framework that achieves SOTA results on long horizon web tasks. github.com/microsoft/Webwright AI browser automation playwright library Microsoftによるブラウザエージェントフレームワーク。 pionxzh/wakaru: 🔪📦 Javascript decompiler for modern frontend github.com/pionxzh/wakaru JavaScript Tools webpack bundler esbuild minifyやbundleされたJavaScriptを読みやすいコードへと復元するデコンパイラ。 Shakya47/pip-it-up: Pop any UI component into a floating Picture-in-Picture window. Zero config. Auto-sizing. Framework-agnostic core. github.com/Shakya47/pip-it-up JavaScript React library Document Picture-in-Picture APIを扱うReactコンポーネントライブラリ。 書籍関係 基本からしっかり学ぶフロントエンドテスト入門 | 技術評論社 gihyo.jp/book/2026/978-4-297-15704-3 JavaScript test book 2026年6月26日発売。 フロントエンドのテストについての書籍
Googleは2026年6月8日、AIリサーチツール「NotebookLM」のアップデートを発表した。チャットから情報ソース探しや複数段階の調査を進めやすくし、複雑なリサーチに対応する。
こんにちは、クラシルでデータエンジニアをしているharry(@gappy50)です。 クラシルでは、これまでAI-Readyなデータ利活用に取り組んできました。Tier設計でデータの信頼性を担保したり、Snowflake Managed MCP × Claude Codeでデータの仕事をAgenticに回したりと、データをAIで扱える状態にする仕事を続けてきています。 その流れは過去記事にまとめています。 https://zenn.dev/dely_jp/articles/dely-ai-ready-dataops-tier https://zenn.dev/dely_jp/articl...
Appleは2026年6月8日、米国で開催中の開発者イベントWWDC26にて、次世代のApple Intelligenceを活用し、AIアシスタントSiriの処理能力を劇的に向上させた新バージョン「Siri AI」を発表した。
「カーニーはんの手紙」を知ってますか? https://kabumatome.doorblog.jp/archives/65900288.html 初めて読んだ時、その理解りやすさに衝撃を受けました。 難しい経済用語ですら、関西弁にすると理解できるならば! 司法試験のための暗記も、関西弁で解説してもらったら楽勝なんじゃね……? という仮説が成り立ちます。 いや、司法試験を受ける予定はないのですが 「権利の上に眠る者は保護に値せず」というルールもありますし 法律には詳しくなっときたい。 どうせなら、関西弁のおっちゃんでなく、若いキャラがいい。 私はClaude Codeを秘書的に使って...
はじめに こんにちは。株式会社カウンターワークスにて、テックリードとして、リーシングのDXを実現するクラウド管理システム 「ショップカウンター エンタープライズ」(以下 SCE)を開発しております shim です。 前回の俯瞰編に続いて、いよいよ各論に入っていきます。今回は Phase 1: MySQL から PostgreSQL への完全移行 がテーマです。 前回も触れた通り、マルチテナント化の中で Row Level Security(以下 RLS)を二重防御の DB 層として採用することを決めたのですが、それを使うために避けられなかったのが 「本番稼働中のサービスを、MySQL...
第78回目は、Blenderでオブジェクトを作成し、レンダリングした際にオブジェクトにアウトラインを作成する方法を見ていきます。
本記事では、Claude Code の裏側を支えるアーキテクチャについて、ざっくり理解します。 株式会社ナレッジセンスは、生成AIやRAGを使ったプロダクトを、エンタープライズ企業向けに開発しているスタートアップです。 この記事は何 この記事は、Claude Code の内部構造を、ソースコードレベルで解析した論文[1]について、日本語で簡単にまとめたものです。 https://arxiv.org/abs/2604.14228 本題 ざっくりサマリー Claude Code は、最も有名な「コーディングエージェント」です。PCのコマンドを実行したり、ファイルを編集したりでき...
Rust 製の小さな TUI エディタ cozy を GitHub と crates.io に公開しました。 GitHub: https://github.com/takakix2/cozy crates.io: https://crates.io/crates/cozy docs.rs: https://docs.rs/crate/cozy 一言でいうと、nano の代わりに気軽に使える terminal editor です。 cargo install cozy cozy とは cozy は、ターミナルでちょっとファイルを編集したいときのためのエディタです。 cozy ...
第266回は、MySQL 9.6 Community Editionを用いてJSON Duality Viewを紹介しました。今回は、MySQL 9.7 Community Editionを用いてJSON Duality ViewのDML機能を改めて検証してみます。
はじめに GitHub Copilot の料金改定をきっかけに、AI コーディングのトークン削減が話題になっています。私も Claude Code の設定ファイルに削減策を仕込んでいました。 せっかくなので、実際にどれくらい効いているか測ってみました。ccusage と semble の実ログで集計したところ、累計 cacheRead は136億トークン、コード検索の削減率は93%という数字が出ました。本記事はその実測レポートです。 定番手法、どれを実装していたか トークン削減の定番手法を自分の設定と突き合わせると、3つは実装済みでした。 定番手法 ねらい 私の実装 ...
! この記事は97%人間による手書きで執筆しています。(真心) TL;DR ExcelVBA開発は、VBE・GUIダイアログ・Debug.Print・MsgBox・UserFormなどがAIエージェントと相性最悪 そこで、AIエージェントがExcelVBAマクロを自律的に開発できるOSS xlflow を作った xlflowは、VBAソースのpull/push、CLIからのマクロ実行、ランタイム/コンパイルエラーのCLI出力、lint、テスト、inspect、UserFormのYAMLビルドなどを提供する MsgBox / InputBox や Debug.Print も、AI...
はじめに Rust と Tauri に入門するとき、普通は Rust の文法、所有権、Cargo、Tauri のプロジェクト構成、フロントエンドと Rust の連携、権限管理、ビルド、配布までを順に学ぶ必要があります。 しかし、最近ではコーディング自体はAIコーディングエージェントに任せるため、人間が理解しておく内容が変わります。 この記事では、Rust/Tauri をすべて自分で書けるようになることではなく、AIコーディングエージェントに実装を依頼し、出てきた差分をレビューできるレベルになることを目標にします。 なお、AIコーディングエージェントとして、今回はCodex CLIを使...
概要 RustのモダンGUIツールキット Slint を使って、リッチなダッシュボードを作ろうとした時の大激闘の記録です。 コンポーネントを自由に入れ替えるドラッグ&ドロップ(D&D)機能を実装しようとしたところ、Slintの「ScrollView内でのタッチイベント強奪仕様」や「z-index(重なり順序)の動的変更バグ」といった数々の罠に直面しました。 泥沼のコンパイルエラーと座標の暴走を乗り越え、最終的に 「1回タップして『移動モード』をONにしてから、全画面シールドで滑らかにずらす(2タップ方式)」 という、操作性・実装クリーンさ共に100点満点のアーキテクチャに辿り...
https://www.youtube.com/watch?v=VK_NSRCSBiU bCore4 は超小型の BLE ロボットコアです。3cm 角ほどの基板1枚で、DC モーター2個・サーボ4個・LED ポート4個を駆動でき、BLE 経由でラジコンや小型ロボットを動かせます。通常はスマートフォンの専用アプリから操作します。 これを Wio Terminal(液晶とボタンを備えた小型マイコンボード)から操作したくなりました。そのために書いたのが、Rust 製の BLE クライアント bcore(リポジトリ名 bcore-rs)です。このクレートを土台に、 Wio Terminal を...
「失われては困るファイルを、常駐プロセスが継続的に書き換える」 Petatto.md は、便利なメモアプリの顔をして、実態はこういうアプリです。 Obsidian vault 内の Markdown をデスクトップ付箋にする Tauri 製アプリを公開した(紹介サイト / ダウンロード)ので、機能ではなく「vault を壊さないための設計」を記録しておきます。 前提:他人のファイルを触り続けるアプリ アプリの性格を整理すると、編集の主役は Obsidian で、Petatto.md はそこに後から手を出す側です。対象はユーザーが長期間かけて書きためた vault で、Petatto....
お風呂から始まるエンジニアリング きっかけはお風呂でした。私はお風呂が好きで、毎日湯船に一時間は浸かっています。お風呂でのんびり小説や漫画を読む。熱でも出ない限りは、そうやって湯船に浸かってのんびりとする時間は欠かさずとっていました。 AIがまだそこまで長時間稼働できなかった今年の初め。お風呂に入る前に、ふとPCの前に引き寄せられるようになりました。これから一時間以上、自分は席を離れる。その間、AI はタスクを中途半端なところで止めてしまうかもしれない。動かせるのに動かさないのが、なんだかもったいない気がしました。 そして、長時間タスクを安定して実行させたい、ゴール(Definiti...
はじめに システム開発において、住所や商品名といったテキストデータの中から、特定の文字列を含むレコードを探したいことがあります。 このような「文書の中から目的のテキストを高速に探し出す」機能を、一般的に「全文検索」と呼びます。 全文検索を実現する手段は様々です。 MySQL や PostgreSQL に内蔵されている全文検索インデックスを利用する方法もあれば、OpenSearch や Elasticsearch のような専用の検索エンジンを採用する方法もあります。 拡張性やパフォーマンスの観点から、検索に特化した OpenSearch のような検索エンジンを選ぶことが多いです。 しか...
Docker Composeで複数のコンテナを管理していると、気づかないうちにDocker Buildの待ち時間が長くなりがちです。 私の関わっているプロジェクトでは、Next.jsのフロントエンド1台、Goのバックエンド2台、Go Worker1台をビルドしており、開発中に頻繁にDocker Buildを実行していました。 しかし、ビルド時間が1分以上かかるようになり、修正 → ビルド → 動作確認のサイクルが大きなストレスになっていました。 そこでDocker Buildの処理内容を見直し、 .dockerignore によるBuild Contextの削減 Docker Laye...
はじめに Android アプリ開発やスクリーンショット転送ツールを作っている方へ。 Android 16 で、Wireless ADB の挙動が変わりました。 従来の adb tcpip 5555 → adb connect <IP>:5555 のフローが 動かなくなるケース が発生しています。 この記事では、筆者が macOS 向け Android スクリーンショット自動転送アプリ「Hiyoko Shot」を開発する中で直面した問題と、その対策の考え方を共有します。 ! この記事は「何が起きているか」と「どう考えるべきか」に焦点を当てています。 具体的な実装コードは ...
はじめに こんにちは。株式会社カウンターワークス、テックリードの shim です。 別途マルチテナントの記事を頑張って書いているのですが、先日社内にて「AI開発LT大会」を主催しました。 言い出しっぺなので、そこで「(生成)AI時代のエンジニアの生存戦略」というテーマで発表したのですが、せっかくなので改めて記事として再構成しました。 「生成AIにより開発スピードが速くなった」という話は至る所で聞かれるようになりましたが、その先、速くなったあとに、では自分はどこで価値を出すのか、という話を特に若手メンバーに聞いてほしいと思い書きました。 簡単にまとめると ! 開発生産性を「価値提供の...
GitHub Copilotは2026年6月1日よりPremium Request Unit(PRU)ベースの課金からUsage-Based Billing(UBB)へと移行しました。本記事では、この移行の背景と、組織がAI Creditのコストを適切に管理するためのFinOps戦略、Token最適化のプラクティスについて解説します。 なぜUsage-Based Billingに移行したのか PRU課金モデルの限界 従来のPremium Request Unit(PRU)ベースの課金では、エージェントを複数オーケストレーションしていても、1つのエージェントを使う場合であっても、同...
! この記事は、LiteLLMをやめて自作Goバイナリに置き換えたら一気に軽くなりました - 「実践AIエージェント開発」を実装してみたの実践編です。自作したgo-llm-agentを使い、Ollama経由でローカルLLMにRubyとGoの落とし穴を質問して、回答の正確性を検証しました。 同じ質問を異なるモデルに投げることで、モデルの得意な言語と不得意な言語、そして質問の仕方による回答品質の変化が明確に見えてきました。 検証環境 項目 内容 マシン MacBook Pro (2024, M3 Pro) チップ Apple M3 Pro メモリ 18GB (統合...
はじめに C++20 では、C++17 以前と比べて C++ の表現力が大きく広がりました。特に、コンセプトや Ranges ライブラリの導入により、コンテナ (配列) に対する抽象化がデータ指向設計を容易にし、ビューによる遅延評価・パイプによる合成・射影によるデータ抽出、などが可能となりました。 しかし、GPU プログラミング (CUDA や HIP) においては、コンパイラ自体は C++20 に対応しているものの、カーネルコードにおいてその恩恵を享受することは依然として困難です。例えば、以下のような課題が GPU プログラミングにおける C++ らしさを阻害しています。 cu...
はじめに 社内では最近、HTMLで書いた設計資料を認証付きの基盤に置き、誰でもブラウザから閲覧できる仕組みを整えました。この共有基盤の上で、私がいま個人的に試しているのが、設計資料のHTMLにコメント機能を持たせ、その指摘をそのまま修正プロンプトにしてClaude Codeに渡す、というワークフローです。 社内でHTMLレビューが広がるきっかけのひとつが、Anthropicのこの記事でした。 https://claude.com/blog/using-claude-code-the-unreasonable-effectiveness-of-html 半信半疑で始めたのですが、HTM...
はじめに 単一テーブルの永続化対象の構造体を定義した記事等はあるが、結合テーブルはなかったので、どうすればいいか考えてみた 前提 例として、usersとclock_in_and_outsテーブルを結合したレコードを取得したい場合で考える CREATE TABLE users ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(255), is_delete tinyint(1) DEFAULT 0, create_date DATETIME DEFAULT CURRENT_TIMESTAMP, up...
! 本記事で紹介する手法は、通常よりも多くのトークンを消費する可能性があります。 はじめに 実運用において、Agent Skillsは作って終わりではなく、検証ループで育てるものです。 先日、チームへ配布するワークフロー系のスキルを作成しました。スキル自体は /skill-creatorコマンドを使うことで簡単に作成することができます。しかし、それだけでは実運用に耐えることができません。 次に必要なのは、スキル本体をいじることではなく、スキルが意図通りに動作するかを多角的に検証することです。 網羅性、スキル、スキル内のプロセス遵守、検証すべきことはわかっているのに、どうしても手動の...
ほとんどのAIターミナルには、暗黙の前提があります。「AIがドライバーである」という前提です。やりたいことを伝えれば、AIが何を実行するかを決め、ユーザーはよく理解しないまま承認する——それもひとつの哲学です。aitm は、別の哲学で作りました。 aitm において、AI はコパイロットです。環境を見て、ファイルを読み、ツールを呼び出し、コマンドを提案する。しかし、常にこの順序です:AIが提案し、あなたが決め、実行される。ハンドルはあなたの手に残ります。 些細な違いのように聞こえるかもしれません。でも 1.0 をシップするにあたって、それがコードの上でどういう意味を持つか、じっくり考え抜...
はじめに Goは GCを備えており、開発者がメモリ管理を直接気にする場面はそう多くありません。 「ヒープに乗ったオブジェクトは、いずれ自動で解放される」....この前提でコードを書けるのは、Goの大きな魅力のひとつです。 GCは自動で動きますが、いつ動くかは決まったルールで制御されています。 そのルールを知らないまま「いつかGCが回収してくれるはず」と思ってコーディングしてしまうと、OOMを引き起こしてしまう可能性があります。 本記事では、Goランタイムが持つ4つのGC発火タイミングを、サンプルコードを動かしながら整理します。 GC(Garbage Collection)とは G...
Haskellの抽象的な概念(型システムからFunctor、Monadまで)を、集合や代数構造といった「馴染みのある数学の言葉」を補助線にして読み解く入門書。難解な理論を学ぶためではなく、Haskellの挙動を理解するためのツールとして数学を活用するスタイルで解説します。そのため、数学の教科書というより物理の教科書の雰囲気に近いです。
はじめに Reactを書くとき、私たちはほぼ必ずJSX(TSX)で書くと思います。 そんなJSX(TSX)の代替となるようなTSRXというTypeScriptのスーパーセット言語がアルファ版として公開されていて、ちょっと面白そうだったので触れてみました。 TSRXとは? https://tsrx.dev/ TSRXは、元ReactコアエンジニアであるDominic Gannawayさんが開発しているTypeScriptのスーパーセット言語です。 Gannawayさんは現在RippleというUIライブラリを開発しており、TSRXはもともとRippleのなかで使われていた構文です。そ...
はじめに ITコンサル1年目です。Claude Codeを使って個人開発を進めていますが、最近ずっと引っかかっていたことがあります。 「AIに書いてもらったコード、本当に安全なんだろうか?」 code-to-rich.com、shindan-me.com、その他いくつかの個人開発PJをClaude Codeと一緒に作ってきましたが、コードレビューの大部分をAIに任せている以上、 危険なパターン(shell=True、SQLインジェクションになりうる文字列結合など)をうっかり実装してしまう .envの中身やAPIキーをそのままコードに埋め込んでしまう といったミスが紛れ込んでいて...
半年ぶりにそのリポジトリを開いて、最初にしたのは、自分が書いた関数を指でなぞることでした。 小さなバグ報告が来て、直そうとしてファイルを開いて、それで手が止まりました。どこに何が書いてあるのか、追えない。書いた記憶はあります。何週間もこれにかかりきりだったのも覚えている。でも、目の前のコードと自分のあいだに、知らない人が一人挟まっているような感じがする。八割くらいをAIに任せて作った、LMS用のテーマでした。そして、仕様書は一枚も書いていませんでした。 報告されたバグは、進捗の表示がときどきずれる、という単純なものでした。普通なら、表示を作っている関数を探して、計算の順番を直して終わりで...
はじめに AI を前提にすると、新しいプログラミング言語の学び方はどう変わるのか。 これまでは、本を読む、チュートリアルを写経する、小さなものを作りながら覚える、という流れが多かった。もちろん今でもそれは有効だ。ただ、生成 AI がある程度まとまったコードを書けるようになった今、別の学び方もあるのではないかと思った。 今回試したのは、「AI にある程度動くところまで作ってもらい、そのコードを読み、直しながら学ぶ」という方法だ。 題材にしたのは Rust で作るコミックビューア gashuu。Rust と Slint で作ったクロスプラットフォームのデスクトップアプリだ。 この記事では...
はじめに ハローワールドのような入門レベルの文法解説は、裏で個人的にやればいい。公式ドキュメントの最初の1ページ目をコピペしたような記事は、わざわざ時間を割いて読む価値がない。 本記事では、今朝記事にしていたRustとSlintで実装したMITライセンスのUI基盤『dashboard-core』の「設計(パラダイム)」の核心だけを示す。 自分一人で抱え込んで満足するのではなく、他人がデザインをガワ替えして自分の基盤として再利用できるように、MITライセンス(改造自由) で公開している。 リポジトリ: https://github.com/kenjiigarashi/dashboa...
ABC 461 参加記録 戦績 問題 結果 時間 ペナルティ A AC 1:31 0 B AC 3:12 0 C AC 11:59 0 D AC 24:32 0 レート変動: 909 -> 980(+71) 各問題メモ A - Armor 考えたこと 4(よ)6(ろ)1(い)...ってこと?! 問題文そのまま実装するだけ 問題ページ https://atcoder.jp/contests/abc461/tasks/abc461_a 提出コード https://atcoder.jp/contests/abc461/submissi...
! TL;DR 責務分担: Displayは自エラーの説明。source()は原因へのリンク。reporterは全体の表示。 原因を#[source]/#[from]で露出するなら、同じ原因を#[error("...: {0}")]でDisplayに重ねない。 重ねるとanyhow等のreporterがsource()を辿り、同じ原因が重複表示される。 文脈ありなら#[error("自レイヤの文脈")]+#[source]。文脈なしラッパーなら#[error(transparent)]。 error.to_string()単独なら例外的にありうる。reporter併用ではfoot...
Cheminformatics ツール(RDKit、OpenBabel など)の多くは C++ で書かれ、JavaScript での利用は Emscripten を経由してコンパイルされます。そうすると WASM バイナリは 30~50 MB に膨れ上がり、ビルド環境は cmake・clang・Emscripten SDK と複雑化します。 もし C/C++ をゼロにしたら どうなるのか。その答えが chematic です。Pure Rust で cheminformatics ライブラリをスクラッチから書き、npm パッケージとして WASM で公開しました。バイナリサイズは ~550...
私たち株式会社Eye Universe は、美容サロン向けにAIエージェントをノーコードで構築できるプラットフォームを中心に、予約や物流など美容サロンの業務を支えるプロダクトを開発・運営しているスタートアップです。 もともとは開発速度を重視し、Next.jsをフルスタックに使う構成で開発してきました。しかし、ユーザー数やユースケースが増え、WebアプリだけでなくiOSアプリからも使われるサーバーサイドの責務が大きくなるにつれて、主要なサーバーサイド処理をRustで書いたAPIサーバーへ移行しました。 この記事では、Rustを採用した理由を「高速だから」という観点だけではなく、AIコーディ...
Microsoftは2026年6月3日、Visual Studio Code 1.123をリリースした。今回の更新では、拡張機能の自動更新を新バージョン公開から通常2時間遅らせる変更が追加された。
Vitest の `isolate: false` オプションを有効にすることで、テストの実行時間を大幅に短縮できましたが、その際に大規模なコードの修正が必要でした。Claude Code の `/goal` コマンドを活用することで、最終的なゴールを達成するために必要なステップを自律的に判断して実行させることができます。この記事ではその経験について紹介します。
gihyo.jpのニュース記事として取り上げていなかったもののなかから、直近(2026年6月3日〜5日頃)に発表・公開されたAI関連の興味深いニュースの概要を簡単にまとめてみました。
Zed は Rust で書かれたネイティブアプリケーションで、非常に高速な動作と軽量な設計が特徴の新しいエディタです。この記事では、Zed のインストール方法と、実際に使ってみて感じた主要な機能や特徴について紹介していきたいと思います。
stonkingの最初のスナップショットリリース、Snapshot 1がリリースされました。
NVIDIAのCEOであるJensen Huang氏(以降Jensen)と言えば、もはや COMPUTEX TAIPEIの「顔」とも言える IT業界のスターです。今年も一般公開前の 6月1日にJensenはGTCのキーノートに登壇し、たっぷり2時間、多くのことについて語りました。
ディスプレイをなくしたGoogleの「Google Fitbit Air」について考察してみます。
OpenAIは2026年6月2日、Codex向けに、職種や役割に合わせて使える6種類の新しい「役割別プラグイン」、成果物をWebサイトやアプリとして共有できる「Sites」のプレビュー提供、選択箇所を指定して修正を依頼できる「アノテーション」の対象拡大を発表した。
Microsoftは2026年6月2日から開催されている開発者イベントMicrosoft Build 2026」で、AIエージェントの構築、実行、管理に関わる開発者向けの発表を行った。
GitHubは2026年6月2日、同日から開催されているMicrosoft Buildにあわせて、エージェントによる開発を支援するGitHub Copilot関連のアップデートを発表した。デスクトップ版のGitHub Copilotアプリでは、テクニカルプレビューの対象を拡大した。