Amiga OSアーキテクチャ:レガシーシステムからの教訓

2025-06-01

この記事では、Amiga OSのAPIとABIについて掘り下げ、実行時リンクを排除する独自の共有ライブラリへの直接呼び出しアプローチに焦点を当てています。これは、ライブラリ内の既知の場所に配置された分岐命令のテーブルを呼び出すことで実現されます。Exec.libraryは常に同じアドレスに存在し、他のライブラリのテーブルのアドレスを取得する機能を提供します。このABIは言語に依存せず、最新のメモリ保護でも機能します。Amiga OSは、効率的なカーネル、メッセージングシステム、そして非同期イベント処理を可能にし、現代システムで一般的なプログラムフリーズを回避するIntuitionウィンドウシステムについても称賛されています。Amiga OSの設計原則は、今日でも依然として関連性があります。

続きを読む
開発

Tailscale、次世代アクセス制御「Grants」を発表

2025-06-01
Tailscale、次世代アクセス制御「Grants」を発表

Tailscaleは、次世代アクセス制御システム「Grants」の一般提供を発表しました。Grantsは、ネットワークとアプリケーションの権限を単一の簡素化された構文に統合し、既存のACLを改良します。ポリシーの作成を簡素化し、アイデンティティベースの認可とカスタムアプリケーション機能のためにtsnetライブラリを介してTailscaleをアプリケーションに直接埋め込むなどの機能を追加し、粒度の細かいトラフィックルーティングのための`via`フィールドを導入します。重要なのは、Tailscaleは以前のACL構文を無期限にサポートし続けるため、段階的な移行が可能になることです。

続きを読む
開発

LLMのファインチューニング:プロンプトエンジニアリングでは解決できない問題を解決する

2025-06-01
LLMのファインチューニング:プロンプトエンジニアリングでは解決できない問題を解決する

この記事では、大規模言語モデル(LLM)のファインチューニングの実際的な用途、特にプロンプトエンジニアリングでは解決できない問題について探ります。ファインチューニングは、タスク固有のスコア、スタイルの一貫性、JSONフォーマットの精度などのモデル品質を大幅に向上させます。さらに、コストを削減し、速度を向上させ、より小さなモデルで同様の品質を実現し、プライバシー保護のためにローカル展開を可能にします。ファインチューニングは、モデルのロジック、ルール遵守能力、安全性も向上させ、蒸留によってより大きなモデルから学習することもできます。ただし、この記事では、ファインチューニングは知識の追加には理想的ではないと指摘しており、代わりにRAG、コンテキストローディング、ツールコールを使用することを推奨しています。最後に、ファインチューニングのプロセスを簡素化するツールであるKilnを推奨しています。

続きを読む

Svelteの状態管理がReactを凌駕:Prop Drillingからの解放

2025-06-01
Svelteの状態管理がReactを凌駕:Prop Drillingからの解放

複雑なアプリケーションを構築する際、Reactの状態管理は頭痛の種となることがあります。Reactはデフォルトでグローバルな状態管理機構を持たないため、ZustandやJotaiといったサードパーティライブラリに頼らざるを得ず、プロップドリリングの問題が発生し、プロジェクトが複雑で保守困難なものになりがちです。対照的に、Svelteはシンプルで使いやすい状態管理ソリューションであるSvelte storesを備えています。追加の依存関係は不要で、直感的な構文を使用することで、状態管理を大幅に簡素化し、開発者は状態の受け渡しに悩まされることなく、ビジネスロジックに集中できます。この記事では、コード例を用いてReactとSvelteの状態管理アプローチを比較し、Svelte storesの利点を強調します。

続きを読む
開発

JavaScriptにおける「クォート」:Lispに着想を得たモジュール型フロントエンド開発

2025-06-01
JavaScriptにおける「クォート」:Lispに着想を得たモジュール型フロントエンド開発

この記事では、Lispの「コードはデータである」という概念を借用して、Webアプリケーション開発におけるJavaScriptのモジュール性を向上させる方法を探ります。著者は、JavaScriptにはLispのような「クォート」メカニズムがないため、コード断片をデータとして直接操作できない点を指摘しています。しかし、「クォート」を模倣するような仕組み、例えば、クライアントサイドのモジュール識別子を実際のコードではなくクライアントに送信することで、コードの遅延実行とモジュール式の合成を実現できます。これにより、バックエンドプログラムはサーバーサイドとクライアントサイドの動作を合成し、サーバーサイドのロジックが単一の要求/応答サイクル内で完了することを保証し、さらに漸進的なストリーミングを可能にすることで、Webアプリケーションの効率性と保守性を向上させます。

続きを読む
開発

AIによる雰囲気コーディング:プログラマーの終焉か?

2025-06-01
AIによる雰囲気コーディング:プログラマーの終焉か?

AIチャットボットを使った「雰囲気コーディング」が、ソフトウェア開発を急速に変えています。スタートアップ企業BONDは、AIによるコード生成を利用して、わずか1日で新しいオンライン生産性ツールをリリースしました。この驚異的なスピードは、プログラマーの将来について懸念を生んでいます。AIがプログラマーを完全に置き換えるという見方と、AI支援開発への移行により、複雑なタスクや創造的な問題解決に集中できるようになるという見方があります。AIが参入障壁を下げる一方で、コードの改良や複雑なプロジェクトには、熟練したプログラマーの専門知識が不可欠です。

続きを読む
開発

LLMが洗練されたスパムの洪水を解き放つ:モデレーターの悪夢

2025-06-01

ベテランのコンテンツモデレーターが、スパムとの20年にわたる闘いを語り、大規模言語モデル(LLM)の変革的な影響を強調しています。LLMはスパマーの参入障壁を大幅に引き下げ、現実的で文脈に沿ったコメントや要約を生成し、検出がますます困難になっています。この進化は、テキストベースのスパムだけでなく、音声詐欺も包含しており、将来の悪用に対する深刻な懸念を引き起こしています。著者はこの増大する課題に対する懸念を表明し、この増え続ける問題と、AI生成の誤情報が絶え間なく押し寄せることからオンライン空間を守るための革新的な解決策の必要性に注目するよう促しています。

続きを読む
開発

Atari Mega ST:高級路線の失敗作?

2025-06-01
Atari Mega ST:高級路線の失敗作?

1987年のCESで発表されたAtari Mega STは、STシリーズの上位機種としてプロフェッショナルワークステーションを目指したマシンでした。薄型デザイン、内蔵フロッピーディスクドライブ、Cherry MXスイッチ採用の着脱式キーボードなど、魅力的な点もありました。しかしMega STは期待外れに終わります。コンパクトな筐体は拡張性を阻害し、8MHzのプロセッサは安価な旧機種と速度差がありませんでした。高価格に加え、RAM容量増加(2MBまたは4MB)とグラフィックブライト以外に目立った性能向上もなかったことが、成功を阻みました。良いキーボードと幾つかの技術的進歩はあったものの、Mega STは結局市場を制覇することができませんでした。

続きを読む
ハードウェア ワークステーション

ニュージーランドの図書館、マオリ文化に沿った新たな図書分類システムを試験導入

2025-06-01
ニュージーランドの図書館、マオリ文化に沿った新たな図書分類システムを試験導入

ニュージーランドのウェリントンにあるTe Awe図書館は、マオリ文学コレクションの整理方法として、デューイ十進分類法に代わる新たなアプローチを試行しています。マオリの宇宙観に基づいたTe Ao Māoriという分類システムを用い、マオリの神々(atua)と関連する知識分野ごとに書籍をグループ化します。例えば、彫刻や海洋学に関する書籍は海の神Tangaroa、農業や料理に関する書籍は農業の神Rongomatāneの下に分類されます。この文化に配慮したシステムは、マオリの知識(Mātauranga)における固有のつながりを維持し、利用者にとってユニークな学習機会を提供します。現在試験段階にあるこのプロジェクトは、ウェリントン全域への導入を目指しています。

続きを読む

『アンドール』撮影監督クリストフ・ヌイエン:フィルムからデジタル時代へ、そしてその先へ

2025-06-01

このインタビューは、『アンドール』シーズン2の撮影監督、クリストフ・ヌイエンを取り上げます。ヌイエンは、電気技師から撮影監督へのキャリア、フィルムからデジタル映画制作への転換に対する見解、そして限られた予算で高品質のエピソード制作を実現する方法について語ります。『アンドール』シーズン1とローグ・ワンの間の視覚的なつながり、技術への情熱、VFXとのコラボレーション、そして多様な文化的背景での撮影経験についても詳述しています。

続きを読む

なぜ一部のLLMはクラウド上では高速だが、ローカルでは遅いのか?

2025-06-01

この記事では、DeepSeek-V3のようなMixture-of-Experts(MoE)モデルを含む大規模言語モデル(LLM)が、クラウド上では大規模に高速かつ安価に提供できるのに、ローカルでは遅く高価になる理由を探っています。鍵となるのはバッチ推論です。GPUは巨大な行列乗算を得意としており、多くのユーザーリクエストをバッチ処理することでスループットが大幅に向上しますが、レイテンシが増加します。MoEモデルや多くのレイヤーを持つモデルは、特にパイプラインのバブルや専門家の利用率の低さを避けるためにバッチ処理に依存しています。クラウドプロバイダーは、バッチサイズ(収集ウィンドウ)を調整することでスループットとレイテンシのバランスを取っていますが、ローカル実行は通常単一のリクエストしかないため、GPUの利用率が非常に低くなります。OpenAIなどのサービスの高効率性は、より優れたモデルアーキテクチャ、巧妙な推論テクニック、またははるかに強力なGPUリソースによるものかもしれません。

続きを読む

メモリバウンドコードに対するコンパイラ最適化の影響:-O3が常に最適とは限らない

2025-06-01
メモリバウンドコードに対するコンパイラ最適化の影響:-O3が常に最適とは限らない

ジョニーズ・ソフトウェア・ラボの研究によると、メモリバウンドコードにおけるコンパイラ最適化(GCCの-O3など)の効果は必ずしも劇的ではないことが示されました。彼らは、命令レベル並列処理(ILP)が高いカーネルと低いカーネルの2種類をテストしました。その結果、ILPの高いカーネルでは-O3最適化により3倍の高速化が得られましたが、ILPの低いカーネルでは、メモリアクセスがボトルネックになったため、最適化の効果はわずかでした。これは、メモリバウンド性の高いシナリオでは、命令数が少なくなっても、ILPの低さによってパフォーマンスの向上が制限され、コードの特性に合わせて最適化戦略を調整する必要があることを示しています。

続きを読む

Zigによる超高速ポケモンバトルエンジン

2025-06-01
Zigによる超高速ポケモンバトルエンジン

pkmnはZigで記述された超高速なポケモンバトルシミュレーションエンジンで、パッチ適用済みのPokémon Showdownよりも1000倍以上高速です。オリジナルゲームコードとPokémon Showdownシミュレータの両方と、フレーム単位で正確に、バグを完全に再現することを目指しています。完全なシミュレータではありませんが、より高度なアプリケーションを構築するための低レベルライブラリです。現在、第1世代と第2世代をサポートしており、将来の世代への対応を計画しています。

続きを読む
ゲーム

マイクロノズル加速器:GeVプロトン加速の物理機構解明

2025-06-01
マイクロノズル加速器:GeVプロトン加速の物理機構解明

本研究は、2次元粒子シミュレーションを用いて、マイクロノズル加速器(MNA)と呼ばれる新しいプロトン加速機構を明らかにしています。MNAは、マイクロノズルを用いてレーザーエネルギーを水素ロッドに集束させ、強い電場を生成することで、プロトンをGeVエネルギーまで加速します。研究の結果、MNAのプロトン加速過程は、予備加速、主駆動、アフターバーナーの3つの段階からなることが分かりました。アフターバーナー段階はMNAの重要な特徴であり、レーザー照射が停止した後もプロトンが加速を続けることを可能にします。これは、プラズマの自由膨張過程における、高温電子からのプロトンへの熱エネルギーの効率的な移動によるものです。本研究では、レーザー強度とパルス幅がプロトン加速に及ぼす影響についても検討し、MNAと従来ターゲットの性能比較を行っています。その結果、MNAはより高いエネルギー変換効率とより低い角度発散度を示すことが分かりました。

続きを読む

ブラウザ拡張機能:正規表現によるURLリダイレクト

2025-06-01
ブラウザ拡張機能:正規表現によるURLリダイレクト

このブラウザ拡張機能(Firefox、Chromeなど)を使用すると、カスタム正規表現またはワイルドカードパターンに基づいてURLをリダイレクトできます。広告のブロック、デスクトップサイトへの強制、DuckDuckGo検索の簡素化などに強力です。YouTube Shortsを通常のYouTubeにリダイレクトしたり、!bang付きのGoogle検索をDuckDuckGoにリダイレクトしたりする例があります。一般的なユースケース向けのプリビルドルールが含まれています。

続きを読む

Figma Slides:プレゼンテーションの大失敗

2025-06-01
Figma Slides:プレゼンテーションの大失敗

著者はプレゼンテーションにFigma Slidesを使ってみましたが、最初は強力なグリッドビュー、オートレイアウト、コンポーネントに感銘を受けました。しかし、実際のプレゼンテーションは大失敗でした。オフラインモードが機能せず、アニメーションにバグがあり、スライドを進めるには何度もクリックする必要がありました。対照的に、著者が長年使用してきたKeynoteは、シンプルながらも常に信頼性が高いことが証明されました。この経験は、結局のところ、信頼性の高い、目立たない技術の価値を浮き彫りにしました。

続きを読む

Rustにおける構造化エラー:トレードオフの評価

2025-06-01

この記事では、Rustアプリケーションにおいて、構造化エラー(例:`thiserror`の使用)と`anyhow`のメリットとデメリットを考察しています。大規模なRust Webサーバーの保守経験に基づき、著者によると、カスタムエラー型はコード量と保守コストが増加する一方で、以下のような大きな利点があります。関数の潜在的な失敗モードを明確に示し、コードの可読性とレビューを向上させること、より記述的なインターフェースを作成すること、冗長なエラーメッセージを回避すること、コンテキストの追加を強制すること、追加データと機能を許可することです。しかし、デメリットとしては、コード量の増加、ネーミングの課題、保守オーバーヘッド、潜在的なパフォーマンスの問題などが挙げられます。著者は、トレードオフはケースバイケースで評価する必要があると結論付けており、大規模アプリケーションでは、構造化エラーの利点がコストを上回る可能性があると示唆しています。

続きを読む
開発

nixos-anywhereを使ったNixOSのネットワークインストール:宣言的なアプローチ

2025-06-01
nixos-anywhereを使ったNixOSのネットワークインストール:宣言的なアプローチ

10年ぶりのNixOS再訪。nixos-anywhereを使ったネットワークインストールの経験を共有します。グラフィカルインストールや手動インストールとは異なり、nixos-anywhereはリモートマシンへのNixOSの宣言的設定とインストールを可能にします。設定ファイルはバージョン管理され、再現性とシステムの整合性が確保されます。この記事では、カスタムインストーラISOの作成と、リモートインストールのためのnixos-anywhereの使い方を詳細に説明し、NixOSの宣言的設定とバージョン管理の利点を強調します。

続きを読む

tldx: 超高速ドメイン名ブレインストーミング

2025-06-01
tldx: 超高速ドメイン名ブレインストーミング

tldxは、利用可能なドメイン名を迅速に生成および確認するコマンドラインツールです。プレフィックス、サフィックス、トップレベルドメイン(TLD)をカスタマイズでき、効率的な同時チェックを実行します。キーワードを入力するだけで、tldxはすぐに利用可能なドメインの組み合わせを返し、完璧な名前を探している創業者や開発者にとって非常に便利です。macOS、Linux、Windowsをサポートしており、brewまたは手動ダウンロードによる簡単なインストールが可能です。

続きを読む

Goにおける構造化エラー:ロギングとエラー処理のギャップを埋める

2025-06-01
Goにおける構造化エラー:ロギングとエラー処理のギャップを埋める

この記事は、中規模のGoプログラム、特にHTTP APIにおけるエラー処理の改善に関する実験を詳述しています。著者は、単純なエラー文字列が構造化ログと効率的なフィルタリングにおいて限界を持つことを指摘しています。構造化エラーへのコンテキストベースのアプローチが提示されており、メタデータをエラー内に埋め込むことで、構造化ログとのシームレスな統合を実現しています。このアプローチは、カスタムエラータイプとcontextパッケージを使用することで、コードのオーバーヘッドを大幅に増やすことなく、エラー情報の豊富さと可読性を向上させ、デバッグを簡素化します。著者は、このプロセスを合理化するためのオープンソースライブラリ`fault`を推奨しています。

続きを読む

世界中を旅するアップル食いゲーム:地理的知識に基づいたスネークゲーム

2025-06-01
世界中を旅するアップル食いゲーム:地理的知識に基づいたスネークゲーム

このゲーム「Snake on a Globe」は、古典的なヘビゲームにユニークなひねりを加えたものです。プレイヤーは世界地図を移動し、主要都市にあるリンゴを食べます。課題は、経線と緯線を効率的に使用して、時間制限内に各都市に到達し、可能な限り多くのリンゴを消費することです。このゲームは地理的知識を試練し、速度と効率性を評価します。長いルートはスコアを減らし、自分の体にぶつかったり、スコアがゼロになるとゲームは終了します。

続きを読む
ゲーム

改良版ファーザーテッドテープディスペンサー:小型化、高性能化、簡単な組み立て

2025-06-01
改良版ファーザーテッドテープディスペンサー:小型化、高性能化、簡単な組み立て

著者は1年前に制作したファーザーテッドテープディスペンサーを改良しました。新バージョンは小型で、音質が向上し、よりプロフェッショナルな外観になっています。3Dプリントケース、赤外線センサー、ESP8266マイクロコントローラーを使用し、コストは10ユーロ未満で、組み立てがはるかに簡単です。著者は3Dプリント可能なモデルと手順を共有し、自作を促しています。また、ファーザーテッドの制作者からのネガティブなコメントへの対応として、トランスジェンダーを支援する慈善団体への寄付を提案しています。

続きを読む
ハードウェア 電子工作

Natureプログラミング言語:Go言語の進化?

2025-06-01
Natureプログラミング言語:Go言語の進化?

Natureは、エレガントで簡潔な開発体験を提供することを目的とした、汎用オープンソースプログラミング言語です。開発者は、安全で信頼性の高いクロスプラットフォームソフトウェアをシンプルかつ効率的に構築できます。Go言語の長所、例えば高性能ランタイムやガベージコレクションなどを活用しながら、Go言語の欠点、例えばより強力な型システムやより便利なエラー処理などを改善しています。Natureは早期利用可能なバージョンに達しており、LinuxとmacOSをサポートし、豊富な標準ライブラリとサンプルプロジェクトを提供しています。ゲーム開発、科学計算、AI、オペレーティングシステム、Web開発などに適しています。

続きを読む
開発

死者を蘇らせる:Project Astoria を使用して、非対応の Windows バージョンで Android アプリを実行する

2025-06-01
死者を蘇らせる:Project Astoria を使用して、非対応の Windows バージョンで Android アプリを実行する

この記事では、Microsoft が廃止した Android アプリブリッジソリューションである Project Astoria を、Windows デスクトップからアニバーサリーアップデート以降のさまざまな非対応の Windows バージョンで実行する方法を詳述しています。古い Windows 10 Mobile ビルドのファイルとレジストリエントリを巧みに使用し、期限切れのビルドの「タイムボム」問題を克服することで、著者は Android アプリを正常に実行しています。この記事では、ファイルのコピー、レジストリキーのインポート、サービスの構成、修正済みの WConnectAgent ツールを使用した APK の展開など、各ステップを詳しく説明しています。最後に、著者は Windows 10 で Android CPU-Z を正常に実行しています。

続きを読む
開発

月額10ドルのサーバーレスLakehouse:DuckLakeの実装

2025-06-01
月額10ドルのサーバーレスLakehouse:DuckLakeの実装

この記事では、DuckLakeとDuckDBを使用して、月額10ドル未満でサーバーレスLakehouseを構築する方法を示しています。Cloudflare R2ストレージ、Cloudflare Containersによるコンピューティング、NeonDBによるメタデータストレージを巧みに組み合わせることで、柔軟性、スケーラビリティ、コスト効率の高いLakehouseアーキテクチャを実現しています。この記事では、依存関係のインストール、イメージの構築、シークレットの設定、クエリの実行を含む展開プロセスを詳細に説明し、完全なGitHubリポジトリへのリンクも提供しています。これは、大規模なクラウドプロバイダーの複雑で高価なソリューションに頼ることなく、小規模なプロジェクトやチームのニーズを満たす柔軟なLakehouseを構築できることを示しています。

続きを読む
開発

arXivLabs:コミュニティ協力によるarXivの新機能開発

2025-06-01
arXivLabs:コミュニティ協力によるarXivの新機能開発

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

続きを読む
開発

失われた知恵の再発見:土地評価におけるサマーズシステム

2025-06-01
失われた知恵の再発見:土地評価におけるサマーズシステム

この記事では、19世紀の変わり目に使用されていたサマーズシステムという土地評価の方法について詳しく説明しています。現代のコンピューター化された方法とは異なり、サマーズシステムは土地の価値を決定するためにコミュニティのコンセンサスに依存していました。このプロセスには2つのフェーズがありました。市民が街の価値を共同で評価するタウンホールミーティングと、結果として得られた地図に基づいて個々の区画の価値を計算するアルゴリズムです。ほとんど忘れられていますが、著者はデータの少ない環境での実現可能性を探り、最新のGIS技術を使用してそれを再現しようと試みており、市場価値との正確性を疑問視し、現代の不動産税または土地価値税の可能性を探っています。

続きを読む

プログラマーの探索と活用:いつ諦めるべきか?

2025-06-01

著者は、Claude Codeを使ってCコードをRustに移植する際に、目の前の問題解決に没頭しすぎて、当初の目標を見失った経験を語っています。これは、多くのプログラマーが直面する「探索(新しい方法を試す)」と「活用(現在の問題を解決する)」のバランスの難しさを浮き彫りにしています。著者はこの問題への対処法として、様々な時間軸での振り返りの儀式を紹介しています。例えば、1時間ごとに1分間作業内容を記録したり、週に一度方向性を振り返ったり、年に一度キャリア全体を見直したりするなどです。これは、行き詰まりを防ぎ、時間とエネルギーを有効に使うための効果的な戦略です。

続きを読む
(rjp.io)
開発

ブラジルのデータウォレットパイロットプログラム:国民のエンパワーメントか、不平等増大か?

2025-06-01
ブラジルのデータウォレットパイロットプログラム:国民のエンパワーメントか、不平等増大か?

ブラジルは、国民がデジタルフットプリントを管理、所有、収益化することを可能にする、画期的な全国的なデータ所有権パイロットプログラムを開始しました。このプロジェクトは、国営企業DataprevとDrumWaveの協力により、「データウォレット」を使用して、ローンなどの用途のために個人データを収益化します。しかし、デジタルディバイドの悪化や脆弱な集団の搾取につながる可能性があるという懸念も出ています。国民の権利とデータ経済の発展のバランスを取る上で、このイニシアチブが成功するかどうかは、まだわかりません。

続きを読む
テクノロジー

ovld: Pythonの超高速多重ディスパッチ

2025-06-01
ovld: Pythonの超高速多重ディスパッチ

ovldは、Python向けの超高速多重ディスパッチライブラリです。アノテーションを使用して、同じ関数の異なるバージョンを各型シグネチャに対して記述でき、面倒な`isinstance`チェーンを回避できます。Pythonの`singledispatch`とは異なり、複数の引数を処理します。ovldは非常に高速で、関数、メソッド、位置引数、キーワード引数でのディスパッチをサポートし、依存型とコード生成も提供します。ツリーマッピングやシリアライゼーションなどの再帰的な定義に優れており、柔軟な拡張のために関数のバリアントやメドレーを作成できます。

続きを読む
1 2 195 196 197 199 201 202 203 595 596