Category: 開発

OpenCode:ターミナル向けオープンソースAIコーディングエージェント

2025-07-07
OpenCode:ターミナル向けオープンソースAIコーディングエージェント

OpenCodeは、ターミナル用に構築されたオープンソースのAIコーディングエージェントです。Claude Codeに似ていますが、重要な違いがあります。完全にオープンソースであり、OpenAI、Google、またはローカルモデルをサポートし、ターミナルユーザーインターフェース(TUI)を優先しています。クライアント/サーバーアーキテクチャにより、モバイルアプリなどからのリモートアクセスが可能です。チームはGitHubで新機能の提案を推奨しており、インストール手順とローカル実行の詳細を提供しています。

開発

暗号解読の完全マスター:実践的なアプローチ

2025-07-07

この本は、SSL/TLSなどの完全なシステムを理解するために必要なすべてを網羅しています。ブロック暗号、ストリーム暗号、ハッシュ関数、メッセージ認証コード、公開鍵暗号、鍵合意プロトコル、署名アルゴリズムなどです。実践を通して学びましょう。一般的な暗号化の欠陥を悪用し、管理者Cookieを偽造したり、パスワードを復元したり、独自の乱数ジェネレーターにバックドアを作成したりします。

開発 実践

アップルでクビ寸前:プログラマーのイースターエッグ物語

2025-07-07

1995年、著者は苦境にあったアップルに入社し、QuickDraw GXのグラフィックエンジニアになりました。プロジェクトが失敗した後、彼はColorSyncチームに配属され、68KベースのカラーピッカーをPowerPCアーキテクチャに移植する任務に就きました。彼は見事にタスクを完了しただけでなく、個人的な好みからHSV、HTML、クレヨンカラーピッカーなどの追加機能も開発しました。しかし、彼はT.S.エリオットの詩の行をイースターエッグとして追加し、著作権を侵害し、解雇寸前に陥りました。最終的に彼は上司から叱責を受けましたが、職を維持し、この経験から職場の規範の重要性を深く認識しました。

開発

GCCによるRustブートストラップ:デバッグの冒険

2025-07-07

この記事では、LLVMではなくGCCを使用してRustコンパイラをブートストラップする著者の取り組みについて詳述しています。このプロセスは困難を極め、3つの主要なバグに遭遇しました。再帰関数に対する`#[inline(always)]`属性、128ビットSwitchIntターミネーターの誤った実装、そしてメモリのアライメントエラーです。著者は「脳みそ手術」のようなデバッグ手法を用いて、これらの問題を段階的に特定し修正し、ステージ2のビルドを成功させ、ステージ3に向けて進歩しました。この記事では、コアダンプを使用してセグメンテーションフォルトを分析するなどのデバッグテクニックを紹介し、コンパイラの最適化の複雑性を探っています。

開発

BitChat:Bluetoothメッシュネットワークによるオフライン、暗号化された分散型メッセージングアプリ

2025-07-07
BitChat:Bluetoothメッシュネットワークによるオフライン、暗号化された分散型メッセージングアプリ

BitChatは、Bluetoothメッシュネットワーク上に構築された、安全で、分散型、ピアツーピアのメッセージングアプリです。インターネット、サーバー、電話番号は不要です。X25519キー交換とAES-256-GCMを使用した純粋な暗号化通信のみです。機能には、ルームベースのチャット(オプションでパスワード保護)、オフラインメッセージの保存と転送、プライバシーの重視(アカウント、電話番号、永続的な識別子は不要)などがあります。BitChatは、iOSとmacOSのネイティブサポートを提供し、LZ4圧縮や適応型バッテリーモードなどのパフォーマンス最適化を組み込んでいます。このプロジェクトはオープンソースであり、クロスプラットフォームの互換性を考慮して設計されています。

関数はベクトルである:線形代数を無限次元へ拡張する

2025-07-06

この記事では、関数を無限次元のベクトルとみなす概念を探求し、線形代数のツールを画像処理、幾何処理、曲線フィッティング、光輸送、機械学習など幅広い問題に適用する方法を示します。有限次元ベクトル空間の概念から出発し、無限次元ベクトル空間へと進み、関数がベクトル空間を形成することを証明します。その後、線形作用素、微分、ラプラシアン作用素、関数空間におけるスペクトル定理の応用について詳しく解説し、フーリエ級数、画像圧縮、球面調和関数などの応用例を提示します。

240Hzモニターと低遅延マウス:プログラマーによる精密測定

2025-07-06

遅延に非常に敏感なプログラマーは、240Hzモニターにアップグレードした後、大幅な改善を見出しました。しかし、ワイヤレスマウスのUSBポートを切り替えると、数秒ごとに約10ミリ秒の遅延が発生しました。これを正確に測定するために、彼はfound.as/lというツールを開発しました。このツールは、ブラウザがレンダリングしたフレームとポインターの動き間の遅延、ポインターイベントのバッチ処理とオフセットを表示します。高精度タイマーにアクセスするために、彼はxmit.tomlファイルにCORSヘッダーを追加する必要もありました。最終的に、彼の観察結果は確認され、問題のあるUSBポートの使用を避けることになりました。

BreakerMachines:マイクロサービスをカスケード障害から守る

2025-07-06
BreakerMachines:マイクロサービスをカスケード障害から守る

マイクロサービスの世界では、カスケード障害とリトライストームは開発者にとって悪夢です。RubyライブラリのBreakerMachinesは、洗練されたサーキットブレーカー機構を用いて、このような災害からシステムを保護する守護神として機能します。実績のあるstate_machines gemをベースに構築されており、クラシックモードとファイバーモードを提供し、非同期操作をサポートし、サービスの重要度とトラフィックに基づいて閾値とタイムアウトを柔軟に設定できます。BreakerMachinesはカスケード障害を効果的に防止し、視覚的なダッシュボードとスマートアラートを通じて問題を迅速に特定できるため、システムの安定性と信頼性を向上させます。

コードを書かずにハッカソンで優勝:AIの天才

2025-07-06
コードを書かずにハッカソンで優勝:AIの天才

型破りな経歴を持つ元プロの遊戯王プレイヤー、コリン・ターシオスが、コードを一行も書かずにハッカソンで2位に入賞し、テック業界を驚かせました。ChatGPTと簡単な英語のプロンプトを使って、曲をローファイバージョンに変換するプログラムを作成しました。この勝利は、開発におけるAIの変革的な力を示し、従来のコーディングスキルに関する概念に挑戦するものです。

開発

純粋なCSS論理ゲート:Chrome 137+の実験的CSS if()関数

2025-07-06

このブログ投稿では、Chrome 137+で利用可能な実験的なCSS `if()`関数を使用して、純粋なCSS論理ゲートを実装する方法を示しています。AND、OR、NOT、XORなどの基本的なゲートに加え、半加算器、全加算器、マルチプレクサなどのより複雑な回路についても解説しています。CSS変数と条件文を巧みに活用することで、著者は通常ハードウェアやプログラミング言語に委ねられる機能を実現し、計算におけるCSSの可能性を示しています。

すべてをテスト可能にする:ミッチェルのGPUテストの課題

2025-07-06
すべてをテスト可能にする:ミッチェルのGPUテストの課題

HashiCorpの共同設立者であるミッチェルは、最新のプロジェクトであるGPUレンダリングターミナルエミュレーターGhosttyの開発中に、大きな課題に直面しました。それはGPUレンダリングコードのテストです。この記事では、BugBashでの彼のプレゼンテーションをまとめ、一見テスト不可能なコードをどのようにテスト可能にするかを探っています。AI時代のGPUテストに対する広く受け入れられたソリューションの不足を強調し、ミッチェルのアプローチの価値を高めています。彼の解決策とAntithesisでの取り組みは、ソフトウェアテストの限界を押し広げるというコミットメントを示しています。

開発 GPUテスト

GISの考えすぎ:地形利用可能性へのラプラシアンアプローチ

2025-07-06
GISの考えすぎ:地形利用可能性へのラプラシアンアプローチ

著者は、地形の傾斜変化率を計算することで、地形の利用可能性を評価する新しいアプローチを探求しています。USGSから提供されたDEMデータを使用して、OpenCVのラプラシアン演算子を利用し、画像のピクセル値の変化率を計算することで、地形の傾斜変化を反映します。次に、スライドウィンドウを使用して領域の平均値を計算し、閾値を設定して、2値の「利用可能性」マップを作成します。最終的に、著者はこれが事実上複雑なダウンサンプリング方法であることを発見します。

開発 地形解析

GitHub Copilot Chatがオープンソース化:AIコーディングにおける透明性

2025-07-06
GitHub Copilot Chatがオープンソース化:AIコーディングにおける透明性

Microsoftは、VS Code用のGitHub Copilot Chat拡張機能をオープンソース化し、AI搭載コードアシスタントにおける前例のない透明性を提供しました。Copilot Chatはコードベースを理解し、開発者が関数のクリーンアップ、エラー処理の追加、ロジックの説明、さらにはファイル全体のrefactoringを行うのを支援します。「Agentモード」では、コンパイル、エラー修正、テスト監視などが自動化されます。基盤となるモデルはクローズドソースのままですが、オープンソース化されたVS Code拡張機能により、監査、カスタマイズ、さらには新しいツールの構築が可能になり、AIツールの信頼性と透明性が大幅に向上します。

開発

KDE Plasma 6.4.0 が OpenBSD パッケージに収録

2025-07-06

Rafael Sadowski氏らの努力により、KDE Plasma 6.4.0がOpenBSDのパッケージに収録されました。KDE Kwinチームはkwinをkwin-x11とkwin (Wayland)に分割しており、X11からの移行を示唆しています。今回のアップデートにはAuroraeテーマエンジンと6月、7月のバグ修正が含まれています。

開発

Haskell副業:RPN電卓とモナドによるパーシング

2025-07-06
Haskell副業:RPN電卓とモナドによるパーシング

就職活動中に、著者はHaskellを用いた関数型プログラミングの学習を始め、逆ポーランド記法(RPN)電卓の作成に挑みました。この記事では、命令型プログラミングから関数型プログラミングへの思考の転換を詳細に説明し、再帰型、ラムダ関数、カリー化関数といったHaskellの中核概念を解説しています。さらに、モナドによるパーシングを深く掘り下げ、最終的に堅牢なRPNパーサーを作成しました。著者は、関数型コードのエレガンスと可読性、そして複雑なパーシングタスクにおけるモナドの威力を強調しています。

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

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

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

開発

アルゴリズム取引におけるレイテンシ測定:単純なタイマーからシステムレベルのシミュレーションまで

2025-07-06
アルゴリズム取引におけるレイテンシ測定:単純なタイマーからシステムレベルのシミュレーションまで

低レイテンシのアルゴリズム取引では、ミリ秒、マイクロ秒単位の遅延が重要です。この記事では、アルゴリズム取引システムのレイテンシを正確に測定することの課題を探ります。単純なタイマーによる方法は不十分で、ネットワークI/Oなどの重要な要素を捉えられません。著者は、より包括的なアプローチとして、シミュレートされた取引所とATSを使用して、完全な取引プロセスをモデル化し、レイテンシを正確に測定することを提案しています。この記事では、さまざまな方法の長所と短所を明確に説明し、最高の性能を目指す際に遭遇する課題を強調しています。

pgstream:PostgreSQLスナップショットのパフォーマンス向上

2025-07-06
pgstream:PostgreSQLスナップショットのパフォーマンス向上

最近のpgstreamリリースでは、PostgreSQLスナップショットのパフォーマンスが大幅に向上しました。当初、書き込みパスがボトルネックとなっていました。一括インポート(COPY FROM)とインデックス作成の遅延化を採用することで、pgstreamはスナップショット速度においてpg_dump/pg_restoreを上回るようになりました。さらに、バッチ設定の改善により、さまざまなデータサイズとテーブル構造において、より安定した効率的なスナップショット処理が可能になりました。

開発

アウトソーシングの悪夢:安価なコードの高いコスト

2025-07-06
アウトソーシングの悪夢:安価なコードの高いコスト

ある会社はコスト削減のため、海外チームにプロジェクトをアウトソーシングしました。しかし、コミュニケーション不足と低品質なコードにより、多くの問題が発生しました。安価な海外プログラマーはSQLインジェクションの脆弱性を適切に解決できず、名前ベースのばかげた「セキュリティ」メカニズムを作成し、ランダムなエラーを引き起こしました。最終的に、社内チームは問題の修正にさらに多くの時間と労力を費やす必要があり、安価なアウトソーシングのリスクの高さを浮き彫りにしました。この話は、質の高い開発は価格だけでなく、効果的なコミュニケーションと技術スキルが不可欠であることを示しています。

myNoise Androidアプリのローンチ:1年間の奮闘と勝利

2025-07-06
myNoise Androidアプリのローンチ:1年間の奮闘と勝利

1年間の開発の末、新しいmyNoise Androidアプリがついにリリースされました。この記事では、Android開発の課題について詳しく説明しています。デバイスの断片化、アプリストアのペイ・トゥ・プレイモデル、高いメンテナンスコストなどです。著者は、最初のiOSアプリの成功からAndroidアプリの再構築までの道のりを語り、チームの貢献を強調しています。ネガティブなレビューや財政的な負担にもかかわらず、著者は楽観的であり、プロジェクトの成功のためにユーザーのサポートを求めています。

開発

ローカルファーストソフトウェア:データの所有権を取り戻す

2025-07-06
ローカルファーストソフトウェア:データの所有権を取り戻す

クラウドアプリは便利ですが、データは完全にサービスプロバイダーの手に委ねられています。この記事では、「ローカルファースト」ソフトウェアについて探求します。これは、データをローカルデバイスに保存し、CRDTなどの技術を使用してリアルタイムコラボレーションを実現しながら、データの所有権を維持します。著者は3つのプロトタイプアプリケーションでローカルファーストソフトウェアの実現可能性を示し、CRDTのパフォーマンス向上、ユーザーインターフェースの改良、分散ネットワークの探求など、将来の研究方向を強調しています。

最新のCGI設定で1日2億件以上のリクエストを処理

2025-07-06
最新のCGI設定で1日2億件以上のリクエストを処理

90年代のCGI技術を見直し、16スレッドのAMD 3700X上でGoとSQLiteで構築されたCGIプログラムにより、1日あたり2億件を超えるリクエストを処理することに成功しました。この実験は、CGIの非効率性に関する長年の考え方に異議を唱え、最新の言語(Go、Rust)と強力なハードウェアにより、マルチコア環境でのCGIの驚くべき効率性を浮き彫りにしています。広く採用することを推奨するものではありませんが、著者は技術の驚くべき進化と過去の仮定を見直す価値を示しています。

開発

ローカルファーストソフトウェア:スケーリング不要のメリット

2025-07-05

Hacker Newsのトップページに掲載されたことで、ローカルファーストの文法チェッカーであるHarperは、ユーザー数が大幅に増加しました。しかし、サーバーに依存するソフトウェアとは異なり、Harperはユーザーのデバイス上で動作するため、サーバー負荷の問題がありません。ユーザー数の急増にもかかわらず、問題は発生しませんでした。これは、ローカルファーストソフトウェアのスケーラビリティにおける大きな利点を示しており、高額なサーバー保守費用や複雑なクラウドアーキテクチャを回避できます。

NEC2:数値電磁界解析の伝説的コード

2025-07-05

このウェブサイトは、モーメント法に基づく電磁界シミュレーションソフトウェアであるNEC2(Numerical Electromagnetics Code)に関するドキュメントとコード例の中央リポジトリです。1981年にJerry BurkeとA. Poggioによってローレンス・リバモア国立研究所でアメリカ海軍のために開発され、現在では一般公開されています。このサイトでは、Windows環境でのNEC2の実行方法、チュートリアル、サンプルモデル、およびプログラムの説明とユーザーガイドを網羅したユーザーマニュアル(HTML版とPDF版)を提供しています。さらに、BiQuadアンテナの構築方法、そのNECシミュレーションモデル、NECメーリングリストへのリンク、その他の関連リソースも提供しています。

Neonデータベースのパフォーマンス論争:無料のランチはない

2025-07-05

最近、PlanetscaleのCEOとX/TwitterコミュニティでNeonデータベースのパフォーマンスについて多くの議論が交わされています。著者は『プロジェクト・ヘイルメアリー』の一節を引用し、あるシステムは別のシステムよりも効率性は劣るものの、はるかに拡張性が高い可能性があると指摘しています。これは、分散システム設計に万能な解決策はないという戒めです。NeonとPlanetscaleはそれぞれ独自のニッチで優れており、X/Twitterでのネガティブな意見やドラマは注目を集めますが、普遍的に最適なソリューションは存在しないことを忘れてはいけません。

開発

Codebuff 1周年: CLIコーディングツールからマルチエージェントアーキテクチャへ

2025-07-05
Codebuff 1周年: CLIコーディングツールからマルチエージェントアーキテクチャへ

Codebuffチームは、最高のコーディングエージェント構築に向けた1年間の道のりを振り返ります。初期のCLIツールプロトタイプから最新のマルチエージェントアーキテクチャまで、彼らは急速な成長を遂げましたが、信頼性の課題にも直面しました。この記事では、優先順位付け、機能の削減、チームワークの重要性など、得られた教訓をまとめ、マルチエージェントパラダイム、ライブラーニング、自律的なコードコミットなど、コーディングエージェントの将来のトレンドを展望しています。

開発

コモドールPET BASICトークナイザー:奇妙なバグ

2025-07-05
コモドールPET BASICトークナイザー:奇妙なバグ

この記事では、コモドールPET初期のBASICトークナイザーにおける、空白文字の処理に起因する奇妙なバグについて解説します。初期のBASICインタープリターはキーワード間の空白文字を無視していたため、「LET THEN」が「LETHEN」と解釈され、構文エラーが発生していました。この記事では、BASICのトークン化プロセスを詳しく説明し、空白文字の無視が効率を向上させた理由を解説し、コモドールBASIC 1.0のトークナイザーコードを解剖します。最終的に、このバグの根本原因とその後のバージョンにおける修正方法が明らかになります。

開発

Gecode:高性能なオープンソース制約ソルバー

2025-07-05

Gecodeは、制約ベースのシステムを開発するためのオープンソースC++ツールキットです。最先端の性能とモジュール設計で知られており、整数、ブール値、集合、浮動小数点型に対する包括的な制約セット(グローバル制約カタログからの70以上のグローバル制約など)を備えています。Gecodeは、高度な分岐ヒューリスティック、複数の検索エンジン(並列検索を含む)、MiniZincサポート、自動対称性破壊、再起動メカニズムを提供します。包括的なドキュメントと5万件以上のテストケースにより、信頼性と使いやすさが保証されています。Gecodeは、2008年から2012年にかけてMiniZincチャレンジで全金メダルを獲得し、その優れた性能を実証しました。

開発

AI革命:開発者は依然として仕事への満足感を見出せるか?

2025-07-05

AIコーディングツールの台頭は、ソフトウェア開発者の役割を変えつつあります。著者は、開発者からCTOへの転身を振り返り、コードを書くのではなく、人やプロジェクトを管理するようになったことによる仕事への満足度の低下を強調しています。AIは効率性を向上させますが、コーディングの課題感と達成感を減らし、開発者をより管理的な役割に追いやります。これは、この職業の未来に関する重要な疑問を提起します。開発者の価値はどのように定義されるべきでしょうか?この進化する状況の中で、開発者はどのように適応し、スキルを維持できるのでしょうか?

AIコーディングエージェント:秘密はない

2025-07-05

2024年、自律的なコーディングエージェントの構築には、高度な内部トリックが必要だと考えられていました。しかし、実際には、わずかに優れた基本モデルがあれば十分です。Claude Sonnet 3.7は、その最先端をいく存在であり、その強みは、生のパワーではなく、タスクに固執し、時間をかけて優れた意思決定を行う能力にあります。AIコーディングエージェントの参入障壁は大幅に低下しており、オープンソースソリューションは優れており、GitHub Actions上でCodexエージェントを無料で実行することも可能です。市場競争は激しく、ベンダーは、成功するために、配布とより優れたモデルのトレーニングに焦点を当てる必要があります。

1 2 46 47 48 50 52 53 54 214 215