Category: 開発

QodoのコードレビューベンチマークでGPT-5が優秀な成績

2025-08-08
QodoのコードレビューベンチマークでGPT-5が優秀な成績

Qodo社は、実世界のコードレビューワークフローをシミュレートした独自のPRベンチマークを使用して、GPT-5を含む最先端の言語モデルを評価しました。結果は、GPT-5がコード差分の理解、バグの特定、改善提案において優れた性能を示したことを明らかにしました。「最小限」バージョンは、速度と品質のバランスを印象的にとっていました。GPT-5には誤検知やラベル付けの不一致など、いくつかの弱点もありましたが、コードレビュー全体のパフォーマンスは目覚ましく、AI支援コードレビューにおける大きな進歩を示しています。

開発

Notte:信頼性の高いWeb自動化エージェントを迅速に構築

2025-08-08
Notte:信頼性の高いWeb自動化エージェントを迅速に構築

Notteは、AIエージェントと従来のスクリプトを組み合わせたフルスタックフレームワークであり、Webとシームレスにやり取りするAIエージェントの構築とデプロイに使用します。単一のAPIを使用して、エージェントとWeb自動化を開発、デプロイ、スケールできます。オープンソースのコアでは、Webエージェントの実行、構造化された出力の処理、サイトとの対話を行うことができます。推奨されるAPIサービスは、ステルスブラウザセッション、ハイブリッドワークフロー、シークレットボールト、デジタルペルソナを提供し、コスト削減と信頼性の向上を実現します。Python SDKを使用すると開発が簡素化され、さまざまなブラウザと、プロキシやCAPTCHA解決などのカスタム設定がサポートされます。Notteは、独立したベンチマークでも優れたパフォーマンスを誇ります。

開発

ユーザーは購入者ではない:B2Bセールスの謎を解く

2025-08-08
ユーザーは購入者ではない:B2Bセールスの謎を解く

この記事は、B2B SaaSにおけるよくある問題である「ユーザーは購入者ではない」という問題に取り組んでいます。著者は、真の意思決定者を特定することが重要であり、それは常にクレジットカードを持っている人とは限らないと主張しています。小規模企業では、開発者は製品を直接使用し、時間的制約があるため、多くの場合大きな影響力を持っています。効率的なツールを求める傾向にあります。しかし、大企業では、意思決定権は通常、CTOや経営陣にあり、セキュリティと成果を優先します。著者は、開発者にデータとツールを提供することで彼らをエンパワーし、リーダーシップに製品の価値を説得力を持って示すことで、間接的に売上転換を促進することを提案しています。

無限CSS値によるブラウザ限界の探求

2025-08-08
無限CSS値によるブラウザ限界の探求

著者は、CSSで要素の幅と高さを`calc(infinity * 1px)`に設定することで実験を行い、様々なブラウザレンダリングエンジンが無限値をどのように扱うかを調べました。ChromeとSafariは値を約33,554,400ピクセルに制限しましたが、Firefox Nightlyは異常な挙動を示しました。高さはテキスト行の高さに制限され、幅は数百万ピクセルに達しましたが、レイアウト幅はその約半分でした。フォントサイズと行高に関するさらなるテストでも同様の差異が見られ、Firefoxのレンダリングは他のブラウザとは大きく異なっていました。著者はこれらの異常の理由について推測し、読者に説明を求めています。

開発

Blueskyを使ったバックエンドレスなブログコメントシステム

2025-08-08
Blueskyを使ったバックエンドレスなブログコメントシステム

面倒なコメントシステムにうんざりしていませんか?著者は、分散型ソーシャルプラットフォームBlueskyのATプロトコルを巧みに利用して、軽量でバックエンドレスなブログコメントシステムを構築しました。ブログ記事をBlueskyに投稿し、API経由で投稿のURIを使用してコメントを取得することで、リッチテキストのサポート、本人確認、クロスプラットフォームでの会話などを実現しています。データベースやユーザーアカウントの管理は不要で、従来のコメントシステムの問題点を効果的に解決し、ユーザーエクスペリエンスを向上させ、ブログの拡張性と独立性を高めています。

Immich開発チームが遭遇した「呪われた知識」

2025-08-08
Immich開発チームが遭遇した「呪われた知識」

Immichチームは、開発中に遭遇した一連のフラストレーションを伴う、まるで呪われたかのような問題を報告しています。Zitadelのスクリプトエンジンが名前付きキャプチャグループをサポートしていないこと、EXIFメタデータの寸法が実際の画像寸法と異なること、YAMLの空白の非直感的な処理、Windowsの隠しファイルへのアクセス制限、Bashスクリプトにおけるキャリッジリターンの問題、Cloudflare WorkersにおけるFetchリクエストのデフォルトHTTPプロトコル、モバイルデバイスでのGPSデータのサイレント削除、PostgreSQL NOTIFYのトランザクションメカニズムによるパフォーマンスへの影響、非効率的なnpmスクリプトのヘルスチェック、JavaScript Dateオブジェクトの混乱したインデックス、bcryptのパスワード長の制限、Node.jsの互換性の問題、PostgreSQLのパラメータの制限、TypeORMの削除操作の副作用など、多くの問題が発生しました。これらの問題は、ソフトウェア開発における隠れた落とし穴と課題を浮き彫りにし、貴重な教訓を提供しています。

開発

自己不信からソフトウェア開発者へ:Makers準備コース4週目の日記

2025-08-08

この記事では、Makers準備コース4週目の体験について、受講生が綴っています。履歴書の執筆で自己不信に陥った後、テスト駆動開発(TDD)を徐々に習得し、個人コーディングプロジェクトに取り組み、ソフトウェア開発学習における成長と課題を示しています。病気からの回復やキャリアチェンジなど、過去の経験を率直に語り、ソフトウェアエンジニアになるという決意を固めています。プログラミングへの情熱と、Go言語を使ったテキストベースのアドベンチャーゲームで学習内容を強化している様子も紹介されています。

Ansibleを使った堅牢なホームラボProxmox設定の自動化

2025-08-08
Ansibleを使った堅牢なホームラボProxmox設定の自動化

柔軟性と堅牢性を高めるため、著者はホームラボをMinisforum UM880 PlusミニPCに移行し、Proxmox VEを導入しました。この記事では、暗号化されたDebian OSのインストール、ブリッジネットワークの設定、Ansibleを使用したProxmoxのインストールと設定の自動化など、全プロセスを詳細に説明しています。Proxmoxのインストールによってシステムがクラッシュするなど、遭遇した課題とその解決策も文書化されています。その結果、高度に自動化されたProxmox設定が実現し、将来のKubernetes実験のための堅実な基盤が築かれました。

開発

Postgresのためのカスタムインメモリテーブルアクセス方法の構築

2025-08-08

この記事では、著者がPostgreSQLのカスタムテーブルアクセス方法を構築し、シンプルなインメモリストレージエンジンを作成した過程を詳述しています。デバッグビルドのPostgreSQLから始めて、著者はテーブルアクセス方法APIの様々な関数を段階的に実装し、テーブルの作成、データの挿入、クエリの結果取得が可能な完全機能システムを作り上げました。このプロセスでは、PostgreSQL内部機構のデバッグや理解といった多くの課題に直面しましたが、ログ記録と反復的なデバッグによって解決しました。これはPostgreSQL拡張開発の優れた事例であり、他の開発者にとって貴重な経験とガイダンスとなります。

開発 拡張開発

AArch64デスクトップでx86_64アプリを実行する:FEX-Emuによる実験

2025-08-07
AArch64デスクトップでx86_64アプリを実行する:FEX-Emuによる実験

この記事では、Ampere AltraベースのAArch64デスクトップシステムで、FEX-emuを使用してx86_64アプリケーションを実行する実験について説明しています。SteamやFactorioは動作しましたが、パフォーマンスは悪く、Geekbench 6のシングルコアとマルチコアのスコアはそれぞれ459と4110という低い数値でした。FEX-emuの設定の最適化や、Ninjaビルドツールのx86_64版をaarch64版に置き換えることで、パフォーマンスが多少向上しました。最終的に、著者はこのAArch64システムでのx86_64エミュレーションは実用性に限界があり、主に古いゲームを実行する場合にのみ有用であると結論付けています。

モナドを捨てよ、自然変換を使え

2025-08-07

この記事は、関数型プログラミングにおけるモナドの過剰使用に異議を唱えています。著者は、モナドの概念があまりにも抽象的であると主張し、モナドを構成する自然変換を直接プログラミングに用いることを提案しています。Я言語を例に、自然変換を用いて異なる関手を組み合わせる方法を説明し、このアプローチをモナドトランスフォーマーとの違いを比較しています。そして最終的に、より柔軟で低レベルな自然変換でモナドを置き換えることで、よりクリーンで強力なプログラム設計を実現できると主張しています。

開発 自然変換

Stasher:アカウント不要の一時的な秘密共有ツール

2025-08-07
Stasher:アカウント不要の一時的な秘密共有ツール

Stasherは、安全で一時的な秘密共有のためのコマンドラインツールです。アカウントもバックエンドも不要で、AES-256-GCMを使用して暗号化された純粋な秘密送信を実現します。一度使用したら削除されるため、秘密は安全に保たれます。完全なサプライチェーンの透明性(暗号署名、SLSA v1アテスト、Rekorログ)を備え、オープンソースであるStasherは、セキュリティを重視するユーザーにも最適です。

開発 秘密共有

Splatshop:巨大なガウススプラットモデルのインタラクティブ編集

2025-08-07

Splatshopは、最大1億個のプリミティブをリアルタイムで処理する、3Dガウススプラッティングモデルのインタラクティブな編集(選択、削除、ペイント、変換など)のための、高度に最適化されたツールボックスです。速度と精度をバランスよく両立させることで、パフォーマンスを犠牲にすることなく正確な編集を可能にします。さらに、SplatshopはVRに対応しており、大規模なガウススプラッティングモデルの最初のVRエディターであり、この技術のための「Photoshop」への大きな一歩となります。

AI支援プログラミング1.5年:考察と教訓

2025-08-07
AI支援プログラミング1.5年:考察と教訓

この記事では、著者がAIをプログラミングに活用した1年半の経験を共有しています。AIは反復的なコーディングタスク、リファクタリング、簡単なプロジェクトでは優れていますが、複雑な問題や新規開発では苦労し、多くの場合、エラーや非効率的な抽象化を導入します。開発者の制御が向上するため、CLIインターフェースはIDEよりも効果的であることが証明されています。AIは設計とライティングにも役立ちますが、「バイブコーディング」(AI生成コードのみに依存する)は推奨されません。これは、大きな技術的負債とセキュリティの脆弱性を引き起こします。著者は、AIの主な恩恵を受けるのは開発者ではなく、マネージャーやクライアントであり、コミュニケーションとコラボレーションが向上すると結論付けています。AIのプログラミングにおける未来は明るく、企業はこれを解雇の言い訳として使うべきではありません。

開発

Gemini CLI GitHub Actions:あなたのAIコーディング仲間が登場!

2025-08-07
Gemini CLI GitHub Actions:あなたのAIコーディング仲間が登場!

Googleは、GitHub上のIssueとPull Requestの管理を自動化する無料のAIコーディングアシスタント、Gemini CLI GitHub Actionsをリリースしました。Issueをインテリジェントに分類・優先順位付けし、迅速なコードレビューフィードバックを提供し、指示に基づいてコードやテストなどを記述することもできます。IssueやPull Requestで@gemini-cliとメンションするだけで、AIの支援を受けることができます。現在ベータ版で、世界中の開発者にご利用いただけます。

開発

プログラミングにおけるデバウンス:ユーザー入力の効率的な処理

2025-08-07
プログラミングにおけるデバウンス:ユーザー入力の効率的な処理

プログラミングにおいて、デバウンスは、連続したユーザー入力など、頻繁に発生するイベントを処理するためのテクニックです。指定された時間間隔内に非常に接近して発生する操作を破棄し、それらを単一の呼び出しに統合して、UIの遅延を防ぎます。たとえば、ユーザーが検索クエリを入力する場合、デバウンスは検索を実行する前に一時停止を待ち、効率性とユーザーエクスペリエンスを向上させます。スロットリングに似ていますが、連続操作の頻度を制限するスロットリングとは異なり、デバウンスは動作する前に一定期間の非アクティブ状態を待ちます。

Zigユニットテストの高度なデバッグ:プリントデバッグとデバッガーの組み合わせ

2025-08-07

この記事では、プリントデバッグとデバッガーを組み合わせることで、Zigユニットテストのデバッグを強化するテクニックを紹介します。まず、`errdefer`を使用してテストが失敗した場合にのみ出力することで、プリントデバッグの出力が冗長になる問題に対処します。次に、`build.zig`スクリプトを利用してビルドプロセス中にデバッガーを実行し、テストバイナリのデバッグを容易にします。最後に、コンパイルオプション`-Ddebugger`と組み合わせた条件付きコンパイルにより、必要な場合にのみデバッガーのブレークポイントを有効にし、通常のテスト実行中のデバッガーの干渉を回避します。このアプローチにより、Zigユニットテストのデバッグ効率が大幅に向上します。

開発

PlushインタープリタによるCPython超え:フィボナッチ数列最適化の旅

2025-08-07
PlushインタープリタによるCPython超え:フィボナッチ数列最適化の旅

著者は、自身の玩具プログラミング言語Plushのインタープリタを最適化し、フィボナッチ数列のマイクロベンチマークでCPythonを凌駕した過程を詳述しています。最適化には、命令の統合、Linux perfツールによるパフォーマンスボトルネックの分析、ハッシュルックアップの削除のためのコードパッチなどが含まれていました。結果は、ベンチマークで約2倍の速度向上でしたが、驚くべきことに、並列レイトレーシングプログラムのパフォーマンスには全く影響がありませんでした。これは、マイクロベンチマークの限界を示唆しています。

ソートの壁を突破:新たなアルゴリズムが最短経路探索を高速化

2025-08-07
ソートの壁を突破:新たなアルゴリズムが最短経路探索を高速化

数十年にわたり、コンピュータサイエンスにおける古典的な問題である、ネットワーク内の特定の始点から他のすべての点への最短経路探索は、「ソートの壁」によって制限されてきました。最近、清華大学の段然とそのチームは、この壁を突破し、すべてのソートベースのアルゴリズムを速度で凌駕する新しいアルゴリズムを考案しました。このアルゴリズムは、クラスタリング戦略とBellman-Fordアルゴリズムを巧みに使用することで、点ごとのソートを回避し、パフォーマンスの大幅な向上を実現しました。これは、最短経路問題の研究に新たな章を開くものです。

comptime.ts:TypeScriptのコンパイル時計算

2025-08-07
comptime.ts:TypeScriptのコンパイル時計算

comptime.tsは、`comptime`でマークされた式をコンパイル時に効率的に評価するように設計された、シンプルで効率的なTypeScriptコンパイラです。これにより、計算をランタイムからコンパイル時にシフトすることで、コードの最適化が可能になります。定数の計算、静的コンテンツの生成、パフォーマンスクリティカルなコードの最適化など、さまざまなユースケースをサポートしています。Vite、Bun、またはCLIを介して簡単に統合でき、開発者の生産性を向上させます。ただし、comptime式はJSONシリアライズ可能である必要があり、複雑な式はビルド時間を長くする可能性があります。

開発

工学心理学におけるChatGPTの過剰使用:グループプロジェクトの悪夢

2025-08-07

工学心理学の学生が、グループプロジェクトでChatGPTに過度に依存するグループメンバーへの不満を語る。チームメイトはAI生成テキストをプロジェクト提案に直接貼り付け、結果として無関係で質の低いコンテンツになった。これにより、学生の作業負担が大幅に増え、やる気を失った。ChatGPTをインスピレーションを得るためのツールとして使うことの潜在的なメリットを認めつつも、評価や理解なしにAI生成コンテンツを無批判に採用することに批判的である。

Herbie:浮動小数点数の精度向上

2025-08-07

Herbieプロジェクトは、浮動小数点演算の精度向上を目指しています。数年間にわたり、Herbieは多くのバージョンをリリースし、アルゴリズムの改善、速度向上、ブラウザインターフェースやRust、Haskellなどの言語向けのプラグイン追加などを継続的に行ってきました。最近では、Hammingベンチマークスイートにおいて著しい精度向上を達成し、プラグイン可能なコンパイルターゲットのための新しいプラットフォームAPIを追加しました。Herbieチームは、積極的に学術研究に参加し、論文を発表し、多くの講演を行って研究成果と将来計画を共有しています。

動的配列を超える:効率的で安定したSegment Array

2025-08-07
動的配列を超える:効率的で安定したSegment Array

この記事では、動的配列の柔軟性、安定したポインタの利点、そしてアリーナアロケータとの優れた互換性を組み合わせた高性能データ構造であるSegment Arrayを紹介します。サイズ変更時に要素を移動する動的配列とは異なり、Segment Arrayは固定サイズの事前に割り当てられたセグメントを使用してデータを格納することで、メモリ断片化とポインタの無効化を回避します。各セグメントのサイズは先行セグメントの2倍で、必要に応じてのみ新しいセグメントが割り当てられ、平均時間計算量がO(1)になります。著者はC言語による実装を提供し、効率的なインデックス計算方法やジェネリクスとの統合を含む内部動作を詳細に説明しています。Segment Arrayは、ビルドプロファイラなど、アリーナアロケータ環境での効率的な動的メモリ管理が必要な状況に特に役立ちます。

開発

Tyr 深堀り:Arm Mali CSF向けRust製GPUドライバ

2025-08-07
Tyr 深堀り:Arm Mali CSF向けRust製GPUドライバ

本記事は、Arm Mali CSFベースのGPUをサポートするLinuxカーネル向け最先端Rust製GPUドライバであるTyrの開発に関するシリーズ記事の第2弾です。Vulkanを用いて回転する立方体をレンダリングするVkCubeアプリケーションを事例として、ユーザーモードドライバ(UMD)とカーネルモードドライバ(KMD)の連携を解説します。TyrのAPIの概要と、同ハードウェア向けのCドライバであるPanthorとの比較を示します。メモリ割り当て、ジョブ送信、ハードウェアスケジューリングといったKMDの主要な役割を強調し、TyrのAPIをデバイス情報、メモリ管理、グループ作成と管理、ジョブ送信、タイラーヒープ管理といったセクションに分割して説明します。

開発

Gemini 2.5搭載のコードアシスタントJulesが正式公開

2025-08-07
Gemini 2.5搭載のコードアシスタントJulesが正式公開

GoogleのコードアシスタントJulesが、Gemini 2.5の技術を搭載して正式にベータ版から脱し、一般公開されました。ベータ版期間中、何千人もの開発者が何万ものタスクに取り組み、14万件以上のコード改善が公開されました。開発者のフィードバックに基づき、UIの改良、数百のバグ修正、そして以前の設定の再利用によるタスク実行速度向上、GitHubとの連携、マルチモーダルサポートといった新機能が追加されました。現在はGemini 2.5 Proの先進的な思考能力を活用してコーディングプランを作成し、より高品質なコードを出力します。また、Google AI ProおよびUltraサブスクライバー向けに、より高い利用制限を持つ新しい階層型アクセスも導入されました。

開発

Litestar:過小評価されているPython Webフレームワーク

2025-08-07

Litestarは、軽量で非同期処理を優先するPython Webフレームワークであり、大規模プロジェクトでも優れた拡張性を発揮します。FastAPIなどの一般的なフレームワークとは異なり、Litestarはコードの拡張性を重視し、循環インポートなどの問題を回避し、独自のルーティングデコレータメカニズムにより、複数ファイルアプリケーションの開発を簡素化します。さらに、Pydantic、SQLAlchemy、Advanced Alchemyライブラリとの優れた統合により、開発者の生産性が大幅に向上し、特にデータベースとのやり取りにおいて、自動生成されるDTOとリポジトリ機能は非常に便利です。要約すると、Litestarは注目に値するPython Webフレームワークであり、保守可能で拡張性の高いコードを重視する開発者にとって特に適しています。

開発

arXivLabs:コミュニティとの協働による実験プロジェクト

2025-08-07
arXivLabs:コミュニティとの協働による実験プロジェクト

arXivLabsは、共同研究者がarXivの新しい機能を直接ウェブサイト上で開発・共有できるフレームワークです。arXivLabsに関わる個人や組織は、オープン性、コミュニティ、卓越性、ユーザーデータのプライバシーというarXivの価値観を受け入れています。arXivはこれらの価値観にコミットしており、これらの価値観を遵守するパートナーのみと協力しています。arXivコミュニティに価値を追加するプロジェクトのアイデアをお持ちですか?arXivLabsについてさらに詳しく学びましょう。

開発

Emacs用Claude Code IDE:シームレスなAI統合でワークフローを効率化

2025-08-07
Emacs用Claude Code IDE:シームレスなAI統合でワークフローを効率化

Emacs用Claude Code IDEは、モデルコンテキストプロトコル(MCP)を介してClaude Code CLIとネイティブに統合されます。単なるターミナルラッパーではなく、ClaudeとEmacs間の双方向ブリッジを作成し、ClaudeがEmacsの強力な機能(LSP、プロジェクト管理、カスタムElisp関数など)を理解して活用できるようにします。これにより、Claudeは既存のワークフロー内で動作し、Emacsエコシステム全体と対話する真のEmacs対応AIアシスタントに変身します。機能には、プロジェクトの自動検出、セッション管理、ターミナル統合、ファイル操作ツール、診断統合(FlycheckとFlymake)、高度な差分ビュー、タブバーサポートなどがあります。MCPツール統合により、ClaudeはLSP統合、Tree-sitter構文ツリー分析、Imenuシンボルナビゲーション、プロジェクト統合などのEmacs機能にアクセスし、それらを利用します。開発者は、Claudeの機能を拡張するためにカスタムMCPツールを作成することもできます。

開発

Baseten、GPT-OSS-120BでSOTAパフォーマンスを実現:タイムリミットとの戦い

2025-08-07
Baseten、GPT-OSS-120BでSOTAパフォーマンスを実現:タイムリミットとの戦い

OpenAIの新しいオープンソースLLMのローンチパートナーとして、BasetenはGPT-OSS-120Bのローンチ日に最高のパフォーマンスを実現するために奮闘しました。彼らは柔軟な推論スタックを活用し、TensorRT-LLM、vLLM、SGLangでテストを行い、HopperとBlackwellのGPUアーキテクチャをサポートしました。重要な最適化には、KVキャッシュ対応ルーティングとEagleによる推測デコードが含まれていました。レイテンシを優先して、テンソル並列処理を選択し、TensorRT-LLMのMoEバックエンドを使用しました。チームは迅速に互換性の問題を解決し、モデル構成を継続的に改良し、オープンソースコミュニティに貢献しました。将来の改善には、さらに高速な推論のための推測デコードが含まれます。

私の秘密の隠し場所:dotfiles を公開することにためらう理由

2025-08-06
私の秘密の隠し場所:dotfiles を公開することにためらう理由

著者は dotfiles(ソフトウェアとオペレーティングシステムの構成ファイル)を愛し、アイデアやコードを共有することを楽しんでいます。しかし、zsh、tmux、neovim、vscode の設定、Homebrew パッケージリスト、Stylus CSS ルールなどを含み、GNU Stow で管理されている、自身の広範な dotfiles リポジトリを公開することにためらっています。パーソナライズされたカスタマイズはあまりにも個人的すぎるため、公開することに抵抗を感じています。これは、パーソナライズされた開発者設定とオープンソース共有のバランスに関する疑問を提起します。

開発
1 2 28 29 30 32 34 35 36 214 215