Category: 開発

Pangolin:自己ホスト型ゼロトラストトンネリングリバースプロキシ

2025-07-11
Pangolin:自己ホスト型ゼロトラストトンネリングリバースプロキシ

Pangolinは、分散ネットワーク上のプライベートリソースを安全に公開するために設計された、自己ホスト型のトンネリングリバースプロキシサーバーで、アイデンティティとアクセス制御機能を備えています。 制限付きファイアウォールの後ろにあるものも含め、孤立したネットワークを暗号化されたトンネルを介して接続する中央ハブとして機能し、ポートを開くことなくリモートサービスへの容易なアクセスを可能にします。 WireGuardを活用したPangolinは、中央認証(SSO、TOTP)、ロールベースのアクセス制御、柔軟な展開オプションなど、堅牢な機能を提供します。Traefikプラグインで機能を拡張できます。 ポート制限の回避、ビジネスアプリケーションの展開、IoTネットワークの管理など、さまざまなユースケースがあります。Cloudflare Tunnelsの自己ホスト型代替手段です。

開発

PostgreSQL LISTEN/NOTIFYの性能ボトルネック:数百万時間の会議データ処理からの教訓

2025-07-11
PostgreSQL LISTEN/NOTIFYの性能ボトルネック:数百万時間の会議データ処理からの教訓

Recall.aiは毎月数百万時間分の会議データを処理しています。PostgreSQLデータベースは、高並行書き込みによってダウンタイムが発生しました。調査の結果、LISTEN/NOTIFY機能がトランザクションのコミットフェーズでグローバルなデータベースロックを取得し、すべてのコミットが直列化され、ボトルネックになっていることが判明しました。このロジックをアプリケーション層に移行することで、問題は解決しました。

開発 高並行

Google DeepMind、GenAI Processorsをオープンソース化:LLMアプリケーション開発の簡素化

2025-07-11
Google DeepMind、GenAI Processorsをオープンソース化:LLMアプリケーション開発の簡素化

Google DeepMindは、複雑な大規模言語モデル(LLM)アプリケーションの開発を簡素化するために設計された、オープンソースのPythonライブラリであるGenAI Processorsをリリースしました。このライブラリは、Processorインターフェースを使用してさまざまなデータ処理手順を抽象化し、非同期ストリーム処理を使用してマルチモーダル入力を処理することで、同時実行を可能にし、応答性と効率性を向上させます。GenAI ProcessorsはGemini APIと統合されており、ライブトランスクリプションや会話型エージェントなどのリアルタイムアプリケーションを構築するための例を提供しています。

開発

無制限送信可能なAI搭載フォームビルダー

2025-07-10
無制限送信可能なAI搭載フォームビルダー

このAI搭載フォームビルダーは、無制限の送信を可能にし、AIフォームビルダー、CSV/JSONエクスポート、優先サポート、モバイルでの作成などの機能を提供します。さらに、高度な分析、AIによる分析なども含まれており、今後、チームコラボレーション、カスタムドメイン、応答のフラグ設定、統合、Webhookの強化されたサポート、ロジックビルダー、APIからのデータ取得、時間入力フィールド、ファイルアップロード、高度なフォームのカスタマイズなどが追加される予定です。

Red Hat、ビジネス開発者向けに無料のRHELを提供開始

2025-07-10
Red Hat、ビジネス開発者向けに無料のRHELを提供開始

Red Hatは、ビジネス開発者向けのRed Hat Enterprise Linux for Business Developersをリリースしました。これは、ビジネス開発およびテストのために、本番環境で使用されているものと同じOSに、迅速かつ容易にアクセスできるように設計された、無料のエンタープライズグレードLinuxディストリビューションです。開発者は、IT部門の承認を得ることなく、直接セルフサービスでアクセスでき、最大25インスタンスをデプロイできます。これは、開発チームと運用チーム間の摩擦を軽減し、増加するソフトウェアサプライチェーンのセキュリティ脅威に対処することを目的としています。プログラミング言語、オープンソースツール、データベースなどの署名済みおよび厳選された開発者コンテンツ、Red Hatのコンテナ開発ツールであるPodman Desktopが含まれています。

開発

Tududi:シンプルになったタスク管理

2025-07-10
Tududi:シンプルになったタスク管理

ほとんどのタスクアプリは、無限のコントロールやマイクロオプションが並ぶダッシュボードのようなものです。新しいタスクを作成すると、色の選択、優先度レベル、繰り返し設定、共同作業者、ラベル、サブタスク、プロジェクトグループ、タイムライン、サブタスクのタスク、サブプロジェクトのタスクのサブタスクなど、タスクの内容を書く前に多くの設定項目に直面します。Tududiは、それとは対照的に、効率的なワークフローを提供します。ツールキットを提供するのではなく、Tududiは効率性を提供します。

開発

Rust製数学式パーサーの究極の最適化:43秒から0.98秒へ

2025-07-10
Rust製数学式パーサーの究極の最適化:43秒から0.98秒へ

この記事では、著者がRustで記述された数学式パーサーの実行時間を43秒から驚異の0.98秒に最適化する方法を詳細に説明しています。不要なメモリ割り当ての回避、バイトストリームの直接処理、`Peekable`イテレーターの削除、マルチスレッドとSIMD命令の活用、メモリマップドファイルの採用など、一連の最適化によって劇的なパフォーマンス向上を実現しました。記事では、各最適化ステップの原理と実装方法を徹底的に解説し、Flame Graphとパフォーマンスデータで裏付けられています。これはパフォーマンス最適化に関する説得力のあるケーススタディであり、細心のプログラミングとRustの機能の巧妙な活用を示しています。

Thunderbird 140 “Eclipse” リリース:よりダークでスムーズなメール体験

2025-07-10
Thunderbird 140 “Eclipse” リリース:よりダークでスムーズなメール体験

Thunderbird 140 “Eclipse”、最新の拡張サポートリリース(ESR)がリリースされました!バージョン128をベースに、最近の月次アップデートの多くの改善点を統合し、適応型ダークメッセージング、改良された視覚コントロール、簡素化されたアカウントハブなどを提供します。ユーザーは外観設定を簡単にカスタマイズし、ネイティブOS通知を活用し、簡素化されたアカウント追加とフォルダソートを楽しむことができます。さらに、実験的なネイティブExchangeサポート、モバイルQRコードエクスポート、テーブルビューの水平スクロールなど、数千ものバグ修正とパフォーマンス向上も含まれています。Windows、Linux、macOS向けの手動アップグレードが利用可能で、自動アップデートは近日中に展開されます。

開発

cmdk:ターミナルの新しい最強ツール (⌘-kで何でもアクセス)

2025-07-10
cmdk:ターミナルの新しい最強ツール (⌘-kで何でもアクセス)

ターミナルでの延々と続く`cd`と`ls`コマンドにうんざりしていませんか?cmdkはファイルナビゲーションに革命を起こします!⌘-kを押すと、ファイルシステム上の任意のファイルやディレクトリに瞬時にアクセスでき、開く前にプレビューが表示されます。fzfを活用したあいまい検索により、cmdkはファイルの種類に基づいて(テキストはvim、画像はプレビューなど)スマートにファイルを開きます。簡単なインストール、強力な機能で、Notion/Slackのようなアクセスをターミナルで体験できます。

開発

CockroachDB 25.2: 行レベルセキュリティによるデータ制御の強化

2025-07-10
CockroachDB 25.2: 行レベルセキュリティによるデータ制御の強化

CockroachDB 25.2リリースでは、行レベルセキュリティ(RLS)が導入されました。これは、データベース内で直接、行レベルでのきめ細かいアクセス制御を可能にする強力な機能です。これは、従来のテーブルレベルのアクセス許可の制限、特にマルチテナントおよびマルチリージョン展開において非常に重要です。この記事では、マルチテナントおよびマルチリージョンユースケースを通してRLSの実装を詳細に説明し、データの分離、規制への準拠、アプリケーションロジックの簡素化における利点を示します。RLSとCockroachDBのRegional By Row(RBR)機能を組み合わせることで、地理的な位置に基づいたアクセス制御が可能になり、データ居住に関する規制への準拠が保証されます。

HyAB距離式によるCIELAB色量子化の改良

2025-07-10

この記事では、従来のユークリッド距離に代わるHyABという新しい距離式を用いた、CIELAB色量子化の改良手法について論じています。HyABは、輝度には絶対差、彩度にはユークリッド距離を用いることで、人間の知覚により良く合致することを実験で示しています。著者はこれをk-meansアルゴリズムに適用し、L成分の平均値計算を中央値計算に置き換えることで、さらに結果を最適化しています。HyABは場合によっては画像品質を向上させるものの、全体的なシステム設計やディザリングなどの後処理技術の方が最終的な結果に大きな影響を与えることを著者は指摘しています。

開発

分岐予測:CPUパフォーマンス最適化の鍵

2025-07-10
分岐予測:CPUパフォーマンス最適化の鍵

分岐命令は、CPUがプログラム内で決定を行う主要なメカニズムです。この記事では、分岐命令の種類(条件付き/無条件、直接/間接)と、分岐予測がCPUのパフォーマンスにどのように影響するかを調べます。分岐予測技術は効率を大幅に向上させることができますが、頻繁な分岐は依然としてパフォーマンスのボトルネックとなります。この記事では、条件付きステートメントの簡素化、関数のインライン化、過剰なネストされた呼び出しの回避、間接分岐の慎重な使用、条件付き移動命令の使用などによってコードを最適化し、分岐命令の数を減らし、プログラムのパフォーマンスを向上させることを提案しています。

開発

許容的ライセンスからコピーレフトへ:オープンソースライセンス選択の変遷

2025-07-10

著者は、オープンソースライセンスに対する自身の考え方の変化を振り返り、作品普及を最大化するため、当初は許容的なライセンス(MITなど)を好んでいましたが、現在はコピーレフトライセンス(GPLなど)を支持するようになったと述べています。この変化は、以下の3つの主要因によるものです。1. オープンソースが主流になり、企業による採用が容易になった。2. 特に暗号通貨分野において競争が激化し、金銭的な動機が強まったため、「親切心」だけではオープンソースを維持できなくなった。3. グレン・ウェイルによる経済学的な議論により、規模の経済効果がある状況では、オープンソースを積極的に推進することが最適な方策であると確信するようになった。著者は、コピーレフトは派生作品ソースコードの共有を義務付けることで、知識の普及と技術共有を効果的に促進し、少数のプレーヤーによる資源独占を防ぐと主張しています。

Petrichor:SwiftUIとSwiftで構築されたmacOS用オフライン音楽プレーヤー

2025-07-10
Petrichor:SwiftUIとSwiftで構築されたmacOS用オフライン音楽プレーヤー

Petrichorは、期待されるすべての機能を備えたmacOS向けの強力なオフライン音楽プレーヤーです。整理された音楽ライブラリの閲覧、インタラクティブなプレイリストと再生キューの管理、フォルダビューでの閲覧、サイドバーのお気に入りへのクイックアクセス、簡単なナビゲーション、ネイティブmacOS統合(メニューバーとDockコントロール、ダークモードサポート)、強力な検索、スマートプレイリストなどがあります。Swinsianの機能を惜しんでSwiftとmacOSアプリ開発を学びたかった開発者によって作成され、SwiftとSwiftUIで完全に構築されており、SQLiteデータベースを使用して音楽ファイル情報を管理しています。

開発

TailscaleとPi-holeによる柔軟なSplit Horizon DNS

2025-07-10
TailscaleとPi-holeによる柔軟なSplit Horizon DNS

この記事では、Tailscaleを使用してPi-holeを構成し、Split Horizon DNSを実現する方法を説明しています。作者はTailscaleのメッシュネットワークを使用して、LANクライアントとTailscaleクライアントに異なるDNS解決を提供します。これにより、二次認証がないサービスやジオブロッキングによるアクセス問題が解決されます。このプロセスには、Dockerネットワークの設定やPi-holeインターフェースのバインディングに関するトラブルシューティングが含まれており、最終的にはホストネットワーキングを使用し、Pi-holeの設定を調整することで解決されました。このソリューションはセキュリティを強化し、ネットワーク管理を簡素化します。

開発

ガウスマップトラバーサルによる分離軸定理の最適化

2025-07-10
ガウスマップトラバーサルによる分離軸定理の最適化

この記事では、凸多面体の衝突検出のための最適化されたアルゴリズムを紹介します。分離軸定理(SAT)を球面上の最適化問題として再定式化することにより、著者は最小値がガウスマップ上の大円の交点にあることを明らかにします。グラフ走査アルゴリズムは、サポート関数の繰り返し計算を回避し、最初は完全な計算を1回だけ行います。その後、アルゴリズムはガウスマップをトラバースすることでサポート点を効率的に更新し、パフォーマンスの大幅な向上をもたらします。テストでは、従来のSATと比較して5〜10倍の高速化が確認されました。

Clojureコードスニペット:映画ジャンルインデックスの作成

2025-07-10
Clojureコードスニペット:映画ジャンルインデックスの作成

このClojureコードスニペットは、映画ジャンルインデックスをエレガントに作成します。映画の情報(タイトル、ジャンル、Rotten Tomatoesスコア)を含むマップから開始し、`reduce`関数と`zipmap`関数を使用してジャンル別に映画を分類し、最終的にキーがジャンル、値がそのジャンルに属する映画のリストであるマップを作成します。このインデックスにより、ジャンルで映画を検索し、評価でソートすることが容易になります。たとえば、すべてのスリラー映画を見つけてRotten Tomatoesスコアでソートすることができます。コードは簡潔で効率的で、関数型プログラミングの優雅さを示しています。

開発

Goジェネリクス:効率的で適応性の高いツリー構造のためのジェネリックインターフェースの巧妙な利用

2025-07-10

この記事では、Goのジェネリックインターフェースの高度な使用方法、特に二分探索木などのデータ構造を構築する際に、自己参照的なジェネリックインターフェースを使用して型制約をエレガントに処理する方法について説明します。ツリー構造を例に、`cmp.Ordered`、カスタム比較関数、自己参照的なジェネリックインターフェースの3つの実装方法を比較します。最後に、順序付き集合の構築のための`comparable`制約の組み合わせと、ポインターレシーバーに起因する複雑さの回避について詳しく説明し、設計においてシンプルさと可読性を優先することを推奨します。

(go.dev)

Anna's Archive MCPサーバー:ドキュメントの検索とダウンロード

2025-07-10
Anna's Archive MCPサーバー:ドキュメントの検索とダウンロード

Anna's Archiveからドキュメントを検索およびダウンロードするためのMCPサーバーです。指定された条件に一致するドキュメントの検索と、以前に検索ツールで返された特定のドキュメントのダウンロードが可能です。このソフトウェアは、著作権で保護されたコンテンツの無許可取得を支持するものではなく、単なるユーティリティとしてのみ見なされるべきです。ユーザーは著作権を尊重するよう求められます。APIキー(ANNAS_SECRET_KEY)とダウンロードパス(ANNAS_DOWNLOAD_PATH)の2つの環境変数が必要です。

JavaScriptが無効になっているためウェブサイトの表示が異常

2025-07-10
JavaScriptが無効になっているためウェブサイトの表示が異常

ウェブサイトにアクセスしたところ、「JavaScript has been disabled in your browser.」というメッセージが表示されました。これにより、ナビゲーション、検索、コンテンツ、フッター、連絡先情報といった基本的な要素しか表示されませんでした。このウェブサイトはレンダリングと機能のためにJavaScriptに依存しています。完全なウェブサイト体験を得るには、ブラウザの設定でJavaScriptを有効にすることをお勧めします。

開発

LLMによる右から左へのコード記述の困難さ:q/kdb+の場合

2025-07-09
LLMによる右から左へのコード記述の困難さ:q/kdb+の場合

大規模言語モデル(LLM)は、右から左への評価順序を持ち、演算子の優先順位がないq/kdb+言語でコードを記述する際に課題に直面します。著者は、LLMがこれらの規則に従って正しいコードを生成することに苦労し、Pythonとqの構文を混同することが多いことを示しています。この記事では、LLMが右から左へのコーディングを困難に感じる理由を探り、Qythonを解決策として提案しています。QythonはPythonに似た言語で、qコードにコンパイルされ、LLMのPythonに関する専門知識を利用して、qの独自の構文の困難を回避します。実用的な例によって、Qythonの有効性が示されています。

開発

Ruby 3.4:凍結文字列リテラルへの段階的移行

2025-07-09
Ruby 3.4:凍結文字列リテラルへの段階的移行

Ruby 3.4は、デフォルトで凍結文字列リテラルへの複数バージョンにわたる移行を開始します。現在、Ruby 3.4は、非推奨警告が有効になっている場合にオプトイン警告を提供し、下位互換性を確保しています。警告はRuby 3.7でデフォルトで有効になり、凍結文字列リテラルはRuby 4.0でデフォルトになります。この変更により、文字列の重複排除を通じてパフォーマンスの向上、ガベージコレクションの削減、メモリ使用量の削減が期待できます。この記事では、警告の有効化、問題の修正、既存コードの移行方法を詳細に説明し、段階的なアップグレードアプローチを推奨しています。

開発 文字列

Astro:スピードを再定義するコンテンツ重視のWebフレームワーク

2025-07-09
Astro:スピードを再定義するコンテンツ重視のWebフレームワーク

2021年にリリースされたAstroは、Webフレームワークに革命を起こしました。コンテンツとサーバーサイドレンダリングを優先し、デフォルトではJavaScriptを一切出力しないため、驚くほどの高速なロードタイムを実現します。独自の「Island Architecture」により、インタラクティブなコンポーネントに対してのみJavaScriptがロードされ、残りは静的なHTMLとして保持されます。これにより、サイトの速度が大幅に向上し、SEOとユーザーエクスペリエンスが改善されます。React、Vueなどのフレームワークをシームレスに統合できるため、非常に汎用性が高いです。コンテンツ重視のサイト構築に最適な選択肢であり、速度と開発者の満足度を優先します。

開発

API Platformカンファレンス2025:AIがAPI開発をリード

2025-07-09
API Platformカンファレンス2025:AIがAPI開発をリード

API Platformカンファレンスが2025年9月18日~19日、フランスのリールとオンラインで開催されます!この2日間のイベントでは、API Platformとそのエコシステム(PHP、Symfony、JavaScript、AI、FrankenPHP、パフォーマンス、ツール)における最新のトレンド、ベストプラクティス、ケーススタディが紹介されます。英語とフランス語で約30件の講演が行われ、革新的な企業、プロジェクトリーダー、熟練した開発者にとって必見のイベントです。これらのテクノロジーに特化した開発者、CTO、意思決定者の方は特に参加をお勧めします。論文募集は3月23日まで、最終講演者は5月14日から発表されます。あなたの提案を提出して、この特別な記念版に参加しましょう!

開発

REST API の真実:CRUD を超えて

2025-07-09

この記事では、REST アーキテクチャスタイルの本質を深く掘り下げ、その核心となる原則である「ハイパーメディア・アズ・ザ・エンジン・オブ・アプリケーション・ステート (HATEOAS)」を明らかにします。「RESTful API」と呼ばれるものの多くは CRUD 操作のみに留まり、HATEOAS の重要な制約を無視しているため、クライアントとサーバーが密に結合し、保守性と拡張性が阻害されます。Roy Fielding の主張と例を通して、真の REST API はどのようにハイパーメディアリンクによってクライアントのインタラクションを導き、リソースの動的な検出と状態遷移を可能にし、最終的に疎結合で進化可能な分散システムを構築するかを説明します。また、よりシンプルで RPC に似たアプローチに進むことが多い実際的なトレードオフについても考察します。

開発

RN Maps Clustering:高性能なReact Native地図クラスタリングライブラリ

2025-07-09
RN Maps Clustering:高性能なReact Native地図クラスタリングライブラリ

RN Maps Clusteringは、React Native向けのモダンで高性能、完全型付けされた地図クラスタリングライブラリです。supercluster上に構築されており、react-native-mapsコンポーネントに美しく効率的なマーカークラスタリングを簡単に追加できる、シンプルな宣言型APIを提供します。クラスタのレンダリングをカスタマイズしたり、クリックイベントを処理したり、マーカーの自動分散や高性能などの機能を利用できます。開発効率を大幅に向上させます。

500マイルメール:奇妙なソフトウェアバグの物語

2025-07-09

500 Mile Emailは、奇妙なソフトウェアバグの話を集めたキュレーションされたリストで、毎週更新されます。データベースサーバーが謎のタイムアウトを起こしたり、Wi-Fiが雨の日にしか機能しなかったり、コーラを飲んでアプリがクラッシュしたりと、これらの逸話はユーモラスでありながら考えさせられるものです。世界中の開発者、エンジニア、ユーザーからの投稿を紹介し、ソフトウェア開発におけるユーモラスで洞察に富んだ瞬間を浮き彫りにしています。

ShopifyのLLMドキュメントボット:推測より事実?

2025-07-09
ShopifyのLLMドキュメントボット:推測より事実?

ShopifyのLLM搭載開発者向けドキュメントボットが、Shopify Collectiveアイテムをメール通知で検出するためのLiquid構文を誤って提示しました。ボットは迅速に回答しましたが、コードは実際には機能しませんでした。Shopify Collectiveタグはメール生成後に追加されるためです。著者はこの「推測型」ドキュメントボットの価値に疑問を呈し、間違ったアドバイスのコストは迅速なヘルプのメリットをはるかに上回ると主張しています。正確でない可能性のあるボットに頼るのではなく、公式ドキュメントを参照することを推奨しています。

Thunderbird 140リリース:ダークモード、簡単な設定同期、Exchangeサポート

2025-07-09

Thunderbirdメールクライアントのバージョン140がリリースされました。注目すべき新機能には、「ダークメッセージモード」(メッセージコンテンツをダークモードに適応させる)、デスクトップ設定をモバイルThunderbirdクライアントに簡単に転送する機能、Microsoft Exchangeの実験的サポート、メッセージのthreadingと並べ替え順序のグローバルコントロールなどがあります。このバージョンは拡張サポートリリース(ESR)であり、12ヶ月のサポートが提供されますが、Thunderbirdプロジェクトはユーザーに月次アップデートのリリースチャンネルへの移行を推奨しています。重大なバグを広く展開する前に検出するために、既存のThunderbirdユーザーへのアップグレードは段階的に行われますが、ヘルプ>バージョン情報メニューから手動でアップグレードすることも可能です。変更点の完全なリストについては、リリースノートを参照してください。

開発

Gmailの新しい購読管理ツール:受信トレイを整理整頓

2025-07-09
Gmailの新しい購読管理ツール:受信トレイを整理整頓

Googleは、ユーザーが購読を管理し、受信トレイを整理するのに役立つ新しいGmail機能を発表しました。「購読の管理」ツールは、ウェブ、Android、iOSで展開され、ユーザーは不要な購読を表示および解除できます。Gmailはユーザーに代わって購読解除のリクエストを送信します。これは昨年のワンクリック購読解除機能に基づいています。展開は7月10日に開始され、15日以内に完全な可用性が期待されています。

1 2 44 45 46 48 50 51 52 214 215