Category: 開発

Arch Gateway:GenAIアプリのための安全で効率的なプロンプト処理

2025-03-05
Arch Gateway:GenAIアプリのための安全で効率的なプロンプト処理

Envoy Proxyの貢献者によって構築されたArch Gatewayは、生成AIアプリケーションの開発を簡素化し、最適化します。専用のLLMを活用してプロンプトを処理し、インテントベースのルーティング、堅牢なセキュリティ(ジェイルブレイクの防止)、API統合、包括的な可観測性を提供します。Arch Gatewayは複数のLLMをサポートし、Envoyを使用して高性能とスケーラビリティを実現します。ユーザーフレンドリーなCLIと詳細なドキュメントが提供され、通貨換算エージェントなどのシンプルなAIエージェントの作成方法を示すクイックスタートガイドも用意されています。

開発 可観測性

WordPress共同創設者Mullenweg氏:辞任せず、後継者を探求

2025-03-04
WordPress共同創設者Mullenweg氏:辞任せず、後継者を探求

WP Engineとの激しい法廷闘争の後、辞任を求める声が上がる中、WordPress共同創設者でありAutomattic CEOのMatt Mullenweg氏は、留任する意向であることを明らかにしました。彼は現在、後継者計画を積極的に進めており、WordPressコミュニティの管理を引き継ぐCEOを、委員会ではなく、個人として探しています。WordPressを基盤とするWP Engineとの紛争は、Mullenweg氏が、同社がオープンソースプロジェクトに十分に貢献していないと考えていることに起因します。また、彼はAutomatticの将来と、そのモデルの成功について話し合い、WordPress.comが1億人以上の人々にWordPressを紹介した役割を強調しました。Mullenweg氏は、後継者がCEOというよりも『市長』のような役割を果たし、コミュニティに責任を負うべきだと考えています。

PyPI依存関係グラフの可視化:隠れたパッケージクラスタの発見

2025-03-04

PyPIにある50万を超えるオープンソースPythonパッケージの依存関係グラフを可視化することで、著者は巨大なネットワークグラフを構築しました。データクレンジングとGephiソフトウェアを用いて、パッケージ間の依存関係を明らかにし、興味深い現象を発見しました。NumPyを中心とした科学計算パッケージクラスタなど、いくつかのパッケージが密なクラスタを形成する一方、疑わしいパッケージを含む異常なクラスタも見つかり、可視化手法による悪意のあるパッケージ検出の可能性を示唆しています。さらに、TritonやOdooなどの大企業のパッケージも、内部依存関係のためにまとまって表示されます。この研究は、PyPIエコシステムを探求するための新たな視点を提供し、データ可視化のパッケージ分析における威力を示しています。

開発

SICP演習の処理時間統計

2025-03-04
SICP演習の処理時間統計

このデータテーブルは、構造と解釈による計算機プログラム(SICP)の各演習のインタープリタ実行時間を記録しています。表は、演習間の実行時間に大きなばらつきがあり、ミリ秒から秒に及ぶことを示しています。これは、アルゴリズムの効率性とプログラミング技術がプログラムのパフォーマンスに与える影響を反映しています。再帰的なアルゴリズムの中には、実行時間が急速に増加するものがありますが、繰り返し処理を行うアルゴリズムの方が効率的です。このデータは、SICPで紹介されているアルゴリズムとデータ構造を学習し理解するための貴重な洞察を提供します。

オープンソースGen-AI搭載エンタープライズサーチ:Onyxのご紹介

2025-03-04
オープンソースGen-AI搭載エンタープライズサーチ:Onyxのご紹介

Onyx(旧Danswer)は、企業のドキュメント、アプリ、そして人を繋ぐオープンソースのAIプラットフォームです。豊富な機能を備えたチャットインターフェースを提供し、様々なLLMに対応しています。Google Drive、Slack、Salesforceなど40以上のコネクタとシームレスに統合し、知識とアクセス制御を同期状態に保ちます。独自の指示、ナレッジベース、アクションを持つカスタムAIエージェントを作成できます。Onyxは、ラップトップ、オンプレミス、クラウドなど、あらゆる規模で安全に展開できます。MITライセンスの下で無料で利用可能なコミュニティエディションと、大規模組織向けの拡張機能を提供するエンタープライズエディションがあります。

GitSyncPad:ワンボタンでGitコマンドを実行できるマイクロキーボード

2025-03-04
GitSyncPad:ワンボタンでGitコマンドを実行できるマイクロキーボード

GitSyncPadは、Gitバージョン管理を簡単に操作できる革新的なマイクロキーボードです。git add、git commit、git pushなどのコマンドをワンボタンで実行できます。ソフトウェアのインストールは不要です。USBでコンピューターに接続し、ボタンを押すだけでGitコマンドを簡単に実行できます。残り10台のみ!

Vidformer:コンピュータビジョン向けビデオ処理を革新

2025-03-04
Vidformer:コンピュータビジョン向けビデオ処理を革新

OSUインタラクティブデータシステムラボによって開発されたVidformerは、ビデオネイティブインターフェースのインフラストラクチャを提供し、コンピュータビジョンの視覚化を加速します。パフォーマンスを犠牲にすることなく、ビデオの注釈、編集、処理を高速化するために、ビデオを効率的に変換します。宣言型仕様形式を使用することで、Vidformerは透過的な最適化と遅延実行を提供し、ほぼ瞬時の再生を実現します。OpenCV、Supervision、FFmpeg、Jupyter、Apache OpenDALなどのオープンテクノロジーに基づいて構築されており、既存のPythonワークフローとの簡単な統合のためにcv2フロントエンドを提供します。ビデオエディターやデータベースではありませんが、VidformerはコンピュータビジョンライブラリやAIモデルを補完し、さまざまなビデオ関連タスクに最適です。

開発

anon-kode:ターミナルベースのAIコーディングアシスタント

2025-03-04
anon-kode:ターミナルベースのAIコーディングアシスタント

anon-kodeは、OpenAIスタイルのAPIをサポートする任意のモデルを利用する、ターミナルベースのAIコーディングアシスタントです。バグのあるコードの修正、関数の動作の説明、テストの実行など、Claude-codeと同様の機能を提供します。インストールと初期設定後、コードを入力するだけで使用できます。バージョン管理、ビルド、公開はGitHub Actionsによって自動化されており、パッチ/マイナー/メジャーのバージョンの選択による手動リリースが可能です。

開発

エンジニアリングマネージャーはコードを書くべきか?それは「コーディング」の定義による

2025-03-04
エンジニアリングマネージャーはコードを書くべきか?それは「コーディング」の定義による

この記事では、エンジニアリングマネージャーがコードを書くべきかどうかを探っています。著者は、すべてのマネージャーは「コードの中にある」べきであり、コードベースとチームの働き方を理解するべきだと主張していますが、すべてのマネージャーが主要なコードライターである必要はありません。マネージャーは、採用、戦略計画、意思決定、文化構築、メンタリングなど、チームの効率向上に焦点を当てるべきです。しかし、現在の経済状況下では、マネージャーはより高い効率性が求められており、「コードの中にある」ことと他の管理責任とのバランスを取る必要があります。この記事では、マネージャーが「コードの中にある」ための方法として、専用のコーディング時間を確保すること、部下とペアプログラミングを行うこと、コードレビューを行うこと、特定の状況(プロトタイピングやインシデント処理など)でのコーディングへの参加を増やすことなどを提案しています。最終的に著者は、重要なのはマネージャーが「コードの中にある」かどうかであり、主にコードを書くかどうかではないと結論付けています。

YC支援スタートアップが創設Webスクレイピングエンジニアを募集

2025-03-04
YC支援スタートアップが創設Webスクレイピングエンジニアを募集

YC支援のスタートアップが、数百万のドメインと進化するボット対策を処理できるインターネット規模のWebクロールインフラストラクチャを構築する創設Webスクレイピングエンジニアを募集しています。この役割は、大規模なWebスクレイピングとクロール(Selenium、Puppeteer、Playwright、Scrapyなど)に関する専門家レベルの経験、ボット検出戦略に関する深い知識、CAPTCHA解決、プロキシ管理、データクレンジングにおける実績のある経験を必要とします。このプラットフォームは、RL駆動の最適化のためのブラウザジムを含む、Webエージェントのエンドツーエンドテストを提供することを目的としています。

AppStat:リアルタイムアプリケーションパフォーマンスモニタリング

2025-03-04

AppStatは、CPU、メモリ、ディスク、スレッドのメトリクスをリアルタイムで監視する無料のアプリケーションパフォーマンスモニタリングツールです。シンプルなグラフィカルインターフェースにより、開発者はワークフローを中断することなく、リソースボトルネック、メモリリーク、パフォーマンススパイクを迅速に特定できます。ダーク/ライトモード、常時最前面表示オプション、チーム分析のためのエクスポート可能なログなどの機能を備えています。

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

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

arXivLabsは、共同作業者がarXivの新しい機能を直接ウェブサイト上で開発および共有できるフレームワークです。arXivLabsと協力する個人や組織は、オープン性、コミュニティ、卓越性、ユーザーデータのプライバシーという私たちの価値観を受け入れています。arXivはこれらの価値観に尽力しており、これらの価値観を共有するパートナーのみに協力しています。arXivコミュニティを強化するアイデアをお持ちですか?arXivLabsの詳細をご覧ください。

開発

postmarketOS 2025年2月アップデート:新しい名前、オーディオサポートなど

2025-03-04
postmarketOS 2025年2月アップデート:新しい名前、オーディオサポートなど

2025年2月、postmarketOSプロジェクトは大きな進歩を遂げました。名称変更が進められており、コミュニティからの提案を求めています。MSM89x7のオーディオサポートが向上し、より多くのXiaomiデバイスがコミュニティサポートに加わりました。セキュリティ監査が完了し、バックアップやCIシステムを含むインフラストラクチャの改善が実装されました。多数のカーネルアップデートとパッケージアップグレードがリリースされ、安定性とパフォーマンスが向上しました。

開発

小さなドキュメント:効率的な技術文書作成の秘訣

2025-03-04

ソフトウェア開発において小さなコミットが好まれるように、簡潔で焦点を絞ったドキュメントは、明確性、アクセス性、レビュー効率を向上させます。この記事では、単一のアイデアに対処し、完全なコンテキストを提供し、過度の簡略化を避けた簡潔なドキュメントの作成を提唱しています。より大きなドキュメントは、より小さく独立した部分に分割する必要があります。効果的な整理、相互参照、定期的なメンテナンスは、情報の断片化を防ぐために不可欠です。最終的な目標は、より迅速なレビュー、より明確なコミュニケーション、そして関係者全員のストレス軽減です。

Goのpanic/recoverの乱用によるパフォーマンスコスト

2025-03-04

この記事では、Goの`panic`と`recover`を使った配列の反復処理と従来のループによる反復処理のパフォーマンスの違いをベンチマークしています。その結果、小さいデータセットにおいて、制御フローに`panic`/`recover`を乱用すると、パフォーマンスに大きなペナルティが生じることを示しています。これは、インライン化や境界チェックの削除などのコンパイラの最適化が阻害されることによるものです。`panic`/`recover`は内部エラー処理において効率の向上をもたらす可能性がありますが、著者は乱用を戒め、そのようなメカニズムをパッケージ内部に限定し、公開APIからは遠ざけることの重要性を強調しています。

開発

2GBの壁を突破:WebAssemblyにおける大規模ファイルの非同期I/O

2025-03-04
2GBの壁を突破:WebAssemblyにおける大規模ファイルの非同期I/O

筆者は以前、WebAssemblyでsetjmpを実装し、WASI libcの例外処理提案への依存を回避しました。しかし、この方法は2GB未満のファイルに制限されていました。この記事では、File APIとBlob型を利用して、大規模ファイルを処理するためのメモリベースのファイルシステムを作成する方法について説明しています。WebのI/Oは非同期である一方、システム言語は通常同期であるため、Asyncifyを使用してパラダイムを橋渡ししました。wasm-optの最適化に関する問題が発生しましたが、ダミーのwasm-optを作成することで解決しました。最終的に、volatile関数ポインタを巧みに使用することで、`asyncjmp_rt_start`関数に対するAsyncifyの誤った仮定を回避し、大規模ファイルの非同期処理を実現しました。

開発

GameCube/WiiでWindows NTを実行する:クレイジーなプロジェクト

2025-03-04
GameCube/WiiでWindows NTを実行する:クレイジーなプロジェクト

信じられないプロジェクトが進行中です。Windows NT 3.51以降をGameCubeとWiiに移植するプロジェクトです!カスタムARCファームウェア、ドライバ、ツールチェーンなど、大規模なハッキングを必要とします。GameCube、Wii、Wii U(vWiiのみ)をサポートし、パーティショニング、ドライバのインストール、潜在的な問題点などを含むインストールプロセスを詳細に説明しています。困難な作業ではありますが、ゲーム機ハードウェアの可能性と開発者の創意工夫を示しています。

開発

GPLライセンス:WordPressにとっての利点と欠点

2025-03-04
GPLライセンス:WordPressにとっての利点と欠点

Red Sweater SoftwareのDaniel Jalkutは、GPLライセンスがWordPressへの参加と採用を阻害すると主張しています。しかし、この記事はその主張に反論し、WordPressの繁栄するプラグインとテーマのコミュニティはGPLライセンスの直接的な結果であると主張しています。著者は自身の経験から、GPLライセンスがユーザーの自由を保護し、最終的には開発を阻害するのではなく、繁栄するエコシステムを促進することを示しています。GPLライセンスの制限を認めつつも、共有と相互主義という中核原則は、堅牢なコミュニティとエコシステムを構築するために非常に重要であり、ライセンスに関する懸念をはるかに凌駕しています。

(ma.tt)
開発

DeepSeekのsmallpond:DuckDB上に構築された軽量な分散コンピューティングフレームワーク

2025-03-04
DeepSeekのsmallpond:DuckDB上に構築された軽量な分散コンピューティングフレームワーク

DeepSeekは、大量のデータセットを処理するための、DuckDB上に構築された軽量な分散コンピューティングフレームワークであるsmallpondをリリースしました。これは遅延評価とRayによる分散コンピューティングを採用し、複数のパーティショニング戦略をサポートし、DeepSeek独自の3FSファイルシステムと効率的に統合されます。Rayと3FSへの依存は複雑さを増しますが、smallpondは使いやすさとパフォーマンスのバランスを取り、データエンジニアにテラバイト規模のデータセットを処理するための新しい選択肢を提供します。Sparkなどの重量級フレームワークと比較して、smallpondは軽量で、学習が容易であり、特に複雑なクエリを処理する必要のない中小企業に適しています。

開発

あなた自身のユーザースペースTCP/IPスタックを構築する:イーサネットフレームからARPまで

2025-03-04
あなた自身のユーザースペースTCP/IPスタックを構築する:イーサネットフレームからARPまで

このブログ記事は、シリーズの最初の投稿であり、Linuxユーザースペースで最小限のTCP/IPスタックを構築する方法を詳細に説明しています。目標は、ネットワークプログラミングとシステムプログラミングを実践的に学ぶことです。ネットワークトラフィックを傍受するためのTUN/TAPデバイスの使用、イーサネットフレームフォーマットとパースの詳細な解説(MACアドレス、ethertype、CRC)、そしてアドレス解決プロトコル(ARP)の包括的な説明(パケットフォーマットと解決アルゴリズムを含む)について説明します。この記事は、arpingを使用してカスタムスタックのARP応答機能を確認することで締めくくられています。

開発

RCLの設計上のジレンマ:浮動小数点数の課題

2025-03-04

著者は新しい設定言語RCLを構築する際に、浮動小数点数を取り扱う方法という課題に直面しました。JSONのスーパーセットとして、RCLはJSONのセマンティクス、型システム、コードの可読性のバランスを取る必要があります。この記事では、整数型と浮動小数点型の間のトレードオフ、例えば整数型と浮動小数点型の区別、数値の等価性と型変換の処理方法などを詳しく説明しています。最終的に著者は、言語設計の簡素化とユーザーエクスペリエンスの向上を目的として、単一の数字型「Number」を選択しました。このソリューションはRCL 0.8.0で実装されています。

Jupyter Notebookにおけるインタラクティブなプロセスツリー可視化

2025-03-04
Jupyter Notebookにおけるインタラクティブなプロセスツリー可視化

DNBのサイバー防衛センターは、インシデントレスポンスの効率向上を目的として、Jupyter Notebook内でインタラクティブなプロセスツリー可視化ツールを開発しました。anywidget、marimo、ibis、Apache Spark、dependentreeなどの技術を活用し、Microsoft Defender for EndpointなどのEDRからのプロセス作成イベントログをインタラクティブなツリーに変換します。ユーザーはイベントをフィルタリングし、プロセスの階層構造を探索し、個々のプロセスを選択して詳細を検査できます。このツールはブラウザ上で動作するため、共有やデモが容易です。

Google、Google Play でのウィジェットの発見性を向上

2025-03-04
Google、Google Play でのウィジェットの発見性を向上

Google は、アプリウィジェットの発見性を向上させるため、Google Play をアップデートします。アップデートには、新しいウィジェット検索フィルター、アプリ詳細ページのウィジェットバッジ、優れたウィジェットを紹介するキュレーションされた編集ページが含まれます。プロダクトマネージャーの Yinka Taiwo-Peters は、これによりウィジェットの発見性とユーザーの理解に関する課題に対処し、開発者にとってユーザーの採用が重要であることを強調しています。これらの改善は「近日公開」予定です。

Fuchsiaコンポーネント vs. Linuxコンテナ:詳細な比較

2025-03-03
Fuchsiaコンポーネント vs. Linuxコンテナ:詳細な比較

Googleの新しいオペレーティングシステムFuchsia(Linuxではない)は、DockerなどのLinuxコンテナソリューションと非常に類似したコンポーネントフレームワークを備えています。どちらもネットワークからコンテンツアドレス指定されたBLOBを取得し、それらを依存関係をすべて含む分離されたファイルシステムにアセンブルし、このファイルシステムをルートとする名前空間付きプロセスを起動します。しかし、この講演では、これらのテクノロジーの違いに焦点を当て、異なるユースケースと要件がどのように独自の強みと弱みを生み出すかを探ります。

Chromeのキャッシュメカニズムが引き起こした奇妙なバグ:曲がりくねったデバッグの旅

2025-03-03

Parquetビューアのデバッグ中に、S3ストレージへのアクセス時にクラッシュするバグを発見しました。調査の結果、問題はアプリケーションコードではなく、Chromeのキャッシュメカニズムにあることがわかりました。範囲リクエストを処理する際、Chromeはキャッシュを最適化しますが、サーバーが403エラーを返す場合、Chromeは部分的なデータを引き続き返し、アプリケーションがクラッシュします。作者はChromiumチームにこの問題を報告しましたが、チームはこれをバグではなく機能だと考えました。最終的に、作者はOpenDALでこの問題を修正することにしました。この話は、適切な信頼境界を見つけることがデバッグを大幅に高速化することを思い出させてくれます。

Chirp:音響データ転送アプリ

2025-03-03
Chirp:音響データ転送アプリ

Chirpは、音を通してデータを転送するアプリケーションです。シンプルなエンコーディングスキームを使用して、テキストをオーディオ周波数に変換し、スピーカーから再生してマイクで拾います。リアルタイムの周波数可視化、テキストから音声への送信、音声からテキストへの受信機能を備え、独特の開始と終了のシグネチャを使用します。Node.js、React、TypeScript、Viteを使用して構築され、Web Audio APIを活用してオーディオ処理を行います。

開発 音響通信

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

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

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

開発

プログラマーのアカデミックなジレンマと変革

2025-03-03

英国の大学で6年間フルタイムの教職に就いていたベテランプログラマーは、現在の制度では自分の才能を十分に発揮できず、心身ともに疲弊を感じています。プログラミングとライティングへの情熱を追求するために、職をパートタイムに変更することを決めました。副業のコンサルティングやクラウドファンディングを通じて収入を補い、現状の凡庸さから脱却し、情熱と創造性を再び見出すための支援を求めます。現在のアカデミックな環境は指標に過度に重点を置き、質と価値を軽視しており、彼の価値観と相容れません。この転換によって、より良いワークライフバランスを実現し、社会への貢献を高めたいと考えています。

Xbox 360ハイパーバイザーのハッキング:不正アップデートエクスプロイト

2025-03-03
Xbox 360ハイパーバイザーのハッキング:不正アップデートエクスプロイト

この記事では、Xbox 360ハイパーバイザーの脆弱性を悪用して「不正アップデート」と呼ばれる新しいエクスプロイトを作成した著者の取り組みについて説明します。初期の試みから数年後、セキュリティエンジニアリングの新たな専門知識を活用して、著者はハイパーバイザーを綿密にリバースエンジニアリングし、システムコールと暗号化されたメモリ割り当てに焦点を当てました。システムアップデートのペイロード内のLZX圧縮解除ルーチンにおける競合状態を巧みに操作し、暗号化されたテキストを操作することで、ハイパーバイザーレベルでのコード実行を達成しました。このプロセスには、キャッシュの問題やスレッドの同期化の課題など、多くの障害を克服することが含まれており、脆弱性研究における革新的な手法を示しています。

1 2 146 147 148 150 152 153 154 214 215