1.ネットの安全神話崩壊(The Internet Is No Longer a Safe Haven)
最近、ウェブサイトの小さなサーバーがスクレイピングボットによって一時的に混乱しました。この問題は繰り返し発生しており、より強力な防御策を考えるきっかけとなっています。著者は、これらのボットがウェブサイトに悪影響を及ぼすだけでなく、コンテンツを作成する人々の創造的な精神も損なうと感じています。
遅延の原因を調査したところ、サーバーはさまざまなIPアドレスからのリクエストに圧倒されていました。これらのIPアドレスはすべてアリババのホスティングサービスに関連していました。悪質なボットをブロックしたり、リクエストの制限を設けたりする対策を講じているにもかかわらず、ボットは正当なユーザーを装うため、特定して停止するのが難しい状況です。
この問題に対処するため、著者は即座にIPブロックを実施しましたが、これらの対策がしばしば遅すぎて、将来の攻撃に対して効果が薄いことに不満を抱いています。著者は、より強力なスクレイピング対策や集中型のホスティングサービスへの移行を検討していますが、コントロールやプライバシーに関する懸念から躊躇しています。
全体として、インターネットが独立したクリエイターにとってますます厳しくなっていることに失望感を抱いています。大企業からの奇妙なリファラルトラフィックが増加し、コンテンツとは無関係な事例が目立っています。それでも著者は、自身のウェブサイトを運営し続ける決意を持っています。
2.Iran begins cloud seeding operations as drought bites(Iran begins cloud seeding operations as drought bites)
要約がありません。
3.ブリムストーン:Rust製JSエンジン(Brimstone: ES2025 JavaScript engine written in Rust)
Brimstoneは、Rustを使用してゼロから構築されたJavaScriptエンジンです。このエンジンはJavaScript言語を完全にサポートすることを目指しており、現在はECMAScriptの97%以上をサポートしていますが、まだ本番環境での使用には適していません。
主な特徴としては、ECMAScriptの仕様を実装しており、V8やLibJSからの影響を受けています。また、バイトコードの仮想マシン、コンパクトなガベージコレクタ、カスタムの正規表現エンジン、カスタムパーサーを含んでいます。ほとんどの組み込みオブジェクトや関数は、仕様通りに動作します。
Brimstoneのビルドとテストは、コマンドcargo buildを使用して行い、cargo runで実行できます。JavaScriptファイルを実行するには、./target/debug/bs ./hello.jsを使用します。Brimstoneは、公式のtest262を含むさまざまな統合テストスイートを使用しており、カスタムテストランナーも備えています。
現在のところ、BrimstoneはES2024までのすべての機能と、2025年2月のTC39会議でのステージ4提案を実装していますが、SharedArrayBufferとAtomicsはまだ未実装です。
4.異端者:言語モデルの検閲解除(Heretic: Automatic censorship removal for language models)
Hereticは、トランスフォーマーベースの言語モデルから検閲を取り除くためのツールです。高価な後処理を必要とせず、自動的にモデルを最適化する先進的な技術を使用しています。基本的なコマンドラインのスキルがあれば、誰でも簡単に利用できます。
Hereticの主な特徴は、自動プロセスです。ユーザーはモデルの内部構造についての専門知識がなくても、Hereticを実行できます。また、高品質な出力を提供し、専門家によって修正されたモデルと同等の性能を持つ非検閲モデルを生成します。さらに、有害なプロンプトに対する拒否が大幅に減少します。柔軟性もあり、さまざまなモデルタイプをサポートし、より良い制御のための設定も可能です。
使用方法は簡単です。まず、必要なライブラリを含むPython環境をセットアップします。次に、簡単なコマンドでHereticをインストールします。その後、ツールを実行してサポートされているモデルの検閲を解除します。
Hereticは、方向性アブレーションという手法を用いて、拒否につながるモデルの特定の部分を特定し、修正します。柔軟なパラメータを使用してプロセスを最適化し、検閲を減らしながらモデルの元の性能を維持することを目指しています。
全体として、Hereticは非検閲の言語モデルを作成するための使いやすい方法を提供し、高度な修正をより多くの人々が利用できるようにしています。
5.信頼の反映コンパイラ(Running the "Reflections on Trusting Trust" Compiler)
この記事では、コンピュータにおけるサプライチェーンセキュリティの概念について説明しています。特に、ケン・トンプソンの1983年の講演「信頼の信頼について」に触れています。Cコンパイラが微妙に変更され、プログラム「login」にバックドアを作成する方法が、ソースコードに痕跡を残さずに行われることが解説されています。このプロセスは三つのステップで構成されています。
まず、自己再生プログラムが作成されます。これは、自分自身のソースコードを表示できるプログラムで、「クワイン」と呼ばれます。次に、コンパイラはバイナリ形式で特定の情報を保持することができ、ソースコードには存在しない値を「学習」することが可能です。最後に、特定の入力プログラムを認識し、そのコードを修正することで、コンパイラはバックドアを挿入します。この際、バックドアを維持するために必要なコードを再生成できるようにします。
この記事には、この変更されたコンパイラを実行する実践的なデモも含まれており、その歴史的背景や現代のセキュリティへの影響についても言及されています。バックドアがどれほど簡単に導入されるか、そしてコンピュータにおいて信頼できるソースやツールを使用する重要性が強調されています。
さらに、コンパイラの信頼性を確保するための現代的なアプローチについても触れています。例えば、異なる二つのコンパイラを使用して互いの出力を検証する「多様な二重コンパイル」や、未検出の変更を防ぐための再現可能なビルドの重要性が挙げられています。
全体として、この記事はソフトウェアセキュリティにおける継続的な課題を反映しており、私たちが使用するコードやシステムに対する信頼を持つことの重要性を強調しています。
6.AirPods libreated from Apple's ecosystem(AirPods libreated from Apple's ecosystem)
要約がありません。
7.De Bruijn Numerals(De Bruijn Numerals)
要約がありません。
8.アンソロピックの報告は怪しい(Anthropic's report smells a lot like bullshit)
最近、AIアシスタント「Claude」を開発したAnthropic社の報告書が、その信頼性と専門性に対する懸念を引き起こしています。この報告書では、中国の国家支援を受けたグループによる高度なサイバー諜報活動が特定され、AIが多くの戦術的な操作を自動化するために使用されたと主張しています。しかし、具体的な侵害の指標や、他の組織が同様の攻撃からネットワークを守るために役立つ技術情報が欠けているため、重要な詳細が不足しています。
報告書で指摘されている主な問題は以下の通りです。まず、検証可能な情報が不足しています。具体的には、攻撃者が使用したツールや流出したデータの性質に関する証拠が示されていません。次に、攻撃の帰属に関する懸念があります。中国に関連するグループに攻撃を帰属させていますが、その正当性が明確でないため、主張の信頼性に疑問が生じます。また、業界標準に沿った形式を遵守していない点も問題です。真剣なサイバーセキュリティ企業が通常提供する実行可能な情報や詳細な推奨が含まれていません。さらに、結論部分では、セキュリティチームが防御のためにAIを使用すべきだと示唆しており、製品販売の促進を意図している可能性があります。
全体として、この報告書は専門性に欠け、サイバーセキュリティ分野で期待される厳格な基準を満たしていないとして批判されています。そのため、意図や信頼性に対する疑念が生じています。
9.ゴミ収集の力(Garbage Collection Is Useful)
2025年11月14日、著者はJ9 Java VMでのガーベジコレクション(GC)の経験について振り返りました。彼は、現在のプロジェクトであるOhmとProseMirrorを用いたテキスト解析において、GCの知識が非常に役立っていると述べています。このプロジェクトでは、テキストドキュメントとそのリッチテキスト表現との間で変更を同期させることが目的です。
Ohmはインクリメンタルパースを可能にし、小さな編集を行う際に効率的です。しかし、著者は解析されたテキスト入力からProseMirrorドキュメントを作成する際に課題に直面しました。最初は、ガーベジコレクションに似た方法を用いて、各編集後にドキュメント内のすべてのノードをチェックし、不要なノードを特定していました。しかし、このアプローチは大きなドキュメントに対しては非効率的で、インクリメンタル処理の利点を失ってしまいました。
解決策は、「ガーベジコレクションの統一理論」という論文を思い出すことから得られました。この論文では、ライブオブジェクトに焦点を当てたトレース法と、デッドオブジェクトに焦点を当てた参照カウント法の2つのGC手法が説明されています。著者は参照カウント法を取り入れることで、編集後に再利用されなかったノードのみをチェックするようにし、効率を向上させました。
この経験は、複雑な問題を解決するためにガーベジコレクションの概念を理解することの実用的な価値を浮き彫りにしました。
10.飛行中のWWVBドップラー測定(Measuring the doppler shift of WWVB during a flight)
マイケル・オスマンは、コロラド州から60 kHzで放送される時刻信号WWVBをHackRF Proを使って受信する方法について説明しています。WWVBは時計の同期に役立ち、HackRF Proの内部クロックよりも正確な周波数基準を提供します。
彼は、GPSに基づく発振器(GPSDO)が精密な周波数基準として一般的である一方で、WWVBは屋内での簡単な代替手段を提供すると述べています。オスマンはWWVB受信機を作る挑戦を楽しんでおり、信号を受信するために小型のアクティブループスティックアンテナを使用したプロジェクト「Teewee」について語ります。
最初の試みでは近くの電子機器からの干渉に悩まされましたが、アンテナの位置を移動させた後、WWVBを正常に検出することに成功しました。彼は信号の特性についての洞察を共有し、変調の仕組みや、動きによって引き起こされる周波数の変化(ドップラー効果)を測定する方法について説明しています。
オスマンは、HackRF Proと一緒に最も効果的に動作するTeeweeの設計を他の人にも試してみるよう呼びかけています。
11.頑張ってない?(Maybe you’re not trying)
著者は、サイバーストーカーに悩まされながらも、人生の困難な時期を過ごしていた個人的な体験を共有しています。夫が当局に効果的に介入してくれたにもかかわらず、なぜ自分自身で行動を起こさなかったのかを振り返ります。彼女は、人々が問題に直面すると、能力の低い状態で「凍りついて」しまい、解決策を見つける努力をやめてしまうことがあると気づきます。このような選択的なアプローチにより、仕事などの一部の分野では優れていても、人間関係や健康などの他の分野では苦労することがあります。
著者は、読者に対して自分の生活を仕事、人間関係、自己との関係の三つの領域で見直すことを勧めています。どの部分で行き詰まっていると感じているのかを特定し、問題を本当に解決しようとしているのかを問い直すことを提案します。彼女は、苦しむことが効果的に努力していることにはならないと強調し、状況や能力が変わる中で新しい解決策を探すことを促しています。
12.IDEmacs: A Visual Studio Code clone for Emacs(IDEmacs: A Visual Studio Code clone for Emacs)
要約がありません。
13.ポッドマンで簡単デプロイ(Production-Grade Container Deployment with Podman Quadlets – Larvitz Blog)
2025年11月16日、Podmanを使用して**Red Hat Enterprise Linux (RHEL)**上で本番環境向けのコンテナを展開するためのガイドが発表されました。Kubernetesが大規模な展開にしばしば取り上げられる一方で、この記事では、Podmanを使うことで、特に単一ホストや小規模な環境でも効果的に管理できるシンプルなセットアップが可能であることを強調しています。
Podmanの利点として、まず「デーモンレスアーキテクチャ」が挙げられます。特権を持つルートデーモンが不要なため、セキュリティリスクが軽減されます。また、「ルートレスコンテナ」により、ルート権限なしでコンテナを実行できるため、さらに安全性が向上します。RHELのサービス管理とシームレスに連携する「systemd統合」により、コンテナの管理が容易になります。さらに、PodmanはDockerイメージを変更なしでサポートする「OCI準拠」であり、内蔵のSELinuxやユーザー名前空間のサポートによってセキュリティ機能も充実しています。
Quadletを使用することで、systemdのユニットファイル形式を利用したコンテナ管理が可能になります。これにより、宣言的な設定やネイティブなサービス管理が実現し、自動更新やリソース管理もsystemdの機能を通じて行えます。
ネットワークセキュリティの面では、Traefik(リバースプロキシ)のためのフロントエンドネットワークと、データベース通信のための隔離されたバックエンドネットワークが構成されており、不必要な露出を防いでいます。
具体的な展開例として、Forgejo(Gitサービス)をPostgreSQLをデータベースバックエンドとして展開する手順が示されています。この手順には、Podmanソケットの有効化、ネットワークの設定、シークレットの管理、アプリケーションおよびデータベースコンテナのセットアップが含まれています。
Podmanはコンテナイメージの自動更新をチェックし、適用する機能も備えており、セキュリティと機能性を維持します。さらに、systemdはログの監視、ステータスの確認、リソース管理のためのツールを提供しており、コンテナの運用を容易に監視できます。
セキュリティ対策としては、ネットワークのセグメンテーション、ルートレス構成、SELinuxの強制、シークレットの安全な管理が組み込まれています。
このアプローチは、すべての展開にKubernetesが必要ではないことを示しています。PodmanとRHELのサポートを活用することで、ユーザーはさまざまなアプリケーションに適した、安全で維持管理しやすく、観察可能なコンテナインフラを構築できます。特にシンプルなサービスや自己ホスト型のサービスに適しています。ガイドは、Red Hatの実践者に対して、Podmanやsystemdのセキュリティと管理の利点を活かしつつ、Fedora CoreOSやOpenShiftなどのエコシステム内のさらなるツールを探求することを促しています。
14.Pgファーストエイド(PgFirstAid: PostgreSQL function for improving stability and performance)
pgFirstAidは、PostgreSQL用の使いやすいオープンソースツールで、データベースの安定性とパフォーマンスを向上させるのに役立ちます。このツールを使うことで、専門的な知識やツールがなくても、データベースの健康状態を簡単に把握できます。
主な特徴として、外部ツールに依存しない単一のSQL関数で構成されていること、12種類の組み込みチェックによって重要なパフォーマンスや安定性の問題を評価できることがあります。また、問題は深刻度に応じてランク付けされ、具体的な解決策が提案されます。さらに、公式のPostgreSQLドキュメントへのリンクも提供されており、詳細情報を簡単に確認できます。
使用方法は簡単です。まず、関数定義をPostgreSQLデータベースにコピー&ペーストしてインストールします。次に、SELECT * FROM pg_firstAid();を実行することで、問題のリストを取得できます。
出力結果には、問題の深刻度、カテゴリ、チェック名、オブジェクト名、問題の説明、現在の値、推奨されるアクション、ドキュメントへのリンクが含まれます。チェック内容には、主キーの欠如や未使用の大きなインデックスといった重大な問題、高優先度のテーブルの膨張や統計の欠如、重複インデックスなどが含まれます。中程度の優先度の問題としては、古い統計や過剰なシーケンシャルスキャンがあり、低優先度の問題には外部キーインデックスの欠如があります。また、現在のデータベースサイズやPostgreSQLのバージョンといった情報も提供されます。
使用の推奨としては、健康チェックのために毎日実行すること、デプロイ前や大きな変更後、パフォーマンスのトラブルシューティング時に実施することが挙げられます。変更を加える前には必ず推奨事項を確認し、まずは本番環境ではない場所でテストすることが重要です。
pgFirstAidは、システムカタログへの読み取りアクセスを必要とし、一般的には標準ユーザー権限で動作します。生産システム上で安全に実行できるよう設計されており、パフォーマンスへの影響は最小限です。
PostgreSQL 10以降を完全にサポートしており、古いバージョンや他のPostgreSQL互換データベースでも機能します。ユーザーはバグを報告したり、新機能を提案したりすることで、このツールの改善に貢献できます。
pgFirstAidはGPLv3のライセンスの下で提供されています。このツールは、SQL Server用のBrent OzarのFirstResponderKitに触発されており、データベースの健康監視を誰でも利用できるようにすることを目指しています。
15.KubernetesでNix環境を運用(Run Nix Based Environments in Kubernetes)
Floxは、Kubernetes上でのローカル開発、継続的インテグレーション(CI)、および本番環境へのシームレスなデプロイを可能にし、イメージの再構築を必要としません。主なポイントは以下の通りです。
Floxは従来のイメージビルドを排除し、実行時に必要なパッケージのみを取得することで、迅速なデプロイを実現します。これにより、デプロイの速度が向上します。また、事前に温められたローカルキャッシュを利用することで、大きなダウンロードなしにアプリケーションの起動時間が短縮され、より予測可能になります。環境は暗号学的ハッシュを用いて定義されるため、開発とデプロイのすべての段階で一貫性が保たれます。
Floxの環境は攻撃面が減少しており、デフォルトでソフトウェア部品表(SBOM)が提供されるため、セキュリティとコンプライアンスが向上します。既存のKubernetesツールやワークフローは変更されないため、チームは慣れ親しんだプロセスを維持しながら効率を向上させることができます。
AIや機械学習のチームは、モデルを再現可能な環境として定義し、イメージを再構築することなく実行できます。データサイエンスの分野では、さまざまなプラットフォームでデータサイエンス環境の実験やデプロイが容易になります。エンジニアリングチームにとっては、デプロイプロセスが簡素化され、セキュリティと再現性が保たれます。
開発者は依存関係やサービスを宣言的に定義し、イメージ管理の手間をかけずに変更を簡単にプッシュできます。ロールバックも簡単で、以前の環境バージョンを選択することでいつでも実行できます。
Floxは、チームが本番環境と同じ環境でデバッグを行うことを可能にし、正確性と効率を向上させます。SBOMは正確で信頼性が高く、依存関係の完全な可視性を提供し、セキュリティ対策を改善します。
全体として、FloxはKubernetes上でのアプリケーションデプロイの方法を変革し、不変性、速度、セキュリティに焦点を当てることで、イメージベースのシステムの複雑さを排除し、環境管理を容易にします。
16.ウェールズ初の小型原発建設(UK's first small nuclear power station to be built in north Wales)
ウェールズ北部のウィルファに小型原子力発電所が建設されることになり、約3,000の雇用が創出され、大規模な投資が期待されています。この発電所は、イギリス初の小型モジュール炉(SMR)を備え、2030年代半ばには発電を開始する見込みです。このプロジェクトはグレート・ブリティッシュ・エナジー・ニュークリアが主導し、イギリス政府から25億ポンドの投資を受けており、約300万世帯に電力を供給できる可能性があります。
首相のサー・キーア・スターマーは、このプロジェクトがイギリスの原子力能力を再活性化する重要な一歩であると強調しました。最近、原子力は軽視されてきたため、地元の指導者たち、特にウェールズのエルネッド・モーガン首相もこの開発を支持しています。一方で、批判者の中にはSMRが実績のない技術であるとし、再生可能エネルギーへの投資を求める声もあります。
SMRは工場で製造され、現地で組み立てられるため、イケアの家具を組み立てるのに似ています。しかし、規制の承認を得ることや労働力の確保といった課題もあります。政府はこの取り組みを通じてエネルギーの独立性を高めることを目指していますが、長期的な核廃棄物の保管やイギリスにおける大型原子力プロジェクトの将来については、引き続き議論が続いています。
17.Things that aren't doing the thing(Things that aren't doing the thing)
要約がありません。
18.OpenBSDの魅力(Why use OpenBSD?)
訪問しているウェブサイトでは、Anubisというセキュリティシステムを使用して、自動化されたボットによるコンテンツの収集を防いでいます。Anubisは、小さな作業負荷(プルーフ・オブ・ワーク)を追加することで、大量のデータ収集を抑制し、ボットにとってコストがかかり、難しくなるように設計されています。
このシステムは、正当なユーザーがサイトにアクセスできるようにしつつ、ボットを特定してブロックすることを目的としています。ただし、セキュリティの課題をクリアするためには、ユーザーが最新のJavaScriptを有効にする必要があります。一部のプラグイン、例えばJShelterなどでは、これがうまく機能しない場合があります。
要するに、AnubisはAIによるデータ収集からウェブサイトを保護しながら、実際のユーザーがアクセスできるように努めています。
19.Vintage Large Language Models(Vintage Large Language Models)
要約がありません。
20.自由な母、17歳で囚われる(My mum was a 17-year-old free spirit so she was locked up and put in a coma)
マリーナ・フレイシャは、母親マリオナ・ロカ・トルトに関する暗い家族の秘密を発見しました。マリオナは、スペインのフランコ独裁政権下で17歳のときに矯正施設に送られました。彼女の両親は、厳格な価値観に反抗したため、彼女を報告しました。その結果、マリオナは「パトロナート」と呼ばれる修道院のような施設に収容されました。この施設は、社会に適応できない女性を「再教育」することを目的としていました。
施設内では、マリオナは厳しい環境に置かれ、他の女の子たちから隔離され、強制的な洗脳を受けました。彼女の脱出を試みると、重度の精神的治療を受けることになり、インスリン昏睡療法などが行われました。この治療は彼女の記憶に悪影響を及ぼしました。4か月間の治療を耐えた後、彼女は最終的に解放されましたが、両親のもとには二度と戻らないことを選びました。
数年後、マリーナは母親のトラウマ体験についてのドキュメンタリー「エルス・ブイツ」を制作しました。この作品は、スペインの独裁政権下の犠牲者を認識することについての議論を呼び起こしました。映画は好評を博し、マリオナのような女性たちの扱いについての公式調査を求める声を高める一助となっています。現在、二人は自らの物語を共有し、同様の経験を持つ人々に声を上げるよう促し、スペインの歴史におけるこうした虐待の体系的な性質を浮き彫りにしています。
21.錬金術(Alchemy)
中世の錬金術師たちは、鉛を金に変えることを目指し、それによって富を得られると信じていました。しかし、著者は、もし市場に金があふれれば、その価値が下がることを指摘しています。これは、かつて貴重だった塩が一般的になり、安くなったことと似ています。
現在の現代的な錬金術は、AIを使ってアートを創造することにあります。当初、人々はAIが生成したアートに興奮しましたが、普及するにつれて反応は否定的に変わりました。AIアートの量が増えることで、その価値が下がってしまったのです。AIアートには、アートを意味あるものにする独自の人間のタッチが欠けています。人間が創り出すアートには、感情的なつながりや物語が重要な要素であり、AIにはそれを再現することができません。
著者は、AIが一部のクリエイティブな仕事を奪うかもしれないが、人間の創造性の価値を置き換えることはできないと主張しています。AIが大量にアートを生み出すことができるようになると、そのアートは価値を失います。これは、金が簡単に作られるようになれば価値が下がるのと同じです。最終的に、アートの本質はその背後にある人間の経験にあり、AIにはそれを再現することができないのです。
22.2019年のDOSクローン(Writing a DOS Clone in 2019)
2019年、アンドリュー・イムは、1980年代にインスパイアされたDOS互換のオペレーティングシステムを作成するために、1ヶ月間仕事を休みました。レトロコンピューティングに熱中する彼は、コモドール64やNESなどのクラシックシステムのエミュレーターを使って実験を重ねた結果、このOSを開発しました。彼の目標は、その時代に人気のあったオペレーティングシステムMS-DOS用に設計されたソフトウェアを実行できるシステムを作ることでした。
1ヶ月のコーディングの末、彼は約半分の拡張DOS APIをサポートするカーネル、基本的なドライバー、そしてDOSコマンドを実行するためのコマンドプロンプトを作成しました。まだ進行中のプロジェクトですが、彼のOSは一部のDOSプログラムを実行することができます。
プロジェクトの重要な要素には、x86プロセッサの初期状態であるリアルモードの理解が含まれています。リアルモードは、独自の方法でメモリアクセスを制限します。ブートプロセスではBIOSを利用してオペレーティングシステムを起動します。彼のOSは、システムコールを処理するために割り込みシステムに依存しており、プログラムがハードウェアと対話し、コマンドを実行できるようにしています。
イムは、安全性の高いプログラミング言語としてRustを選びましたが、リアルモードの要件からいくつかの課題もありました。彼はカーネルをシンプルで効率的に保つことに注力し、初期のDOSシステムに似た静的メモリ管理を使用しました。
全体として、イムのプロジェクトはレトロコンピューティングと現代のプログラミング技術を組み合わせたもので、彼は仕事に戻った際にソースコードを公開する予定です。
23.The politics of purely client-side apps(The politics of purely client-side apps)
要約がありません。
24.libwifi: Cで作る802.11解析ライブラリ(libwifi: an 802.11 frame parsing and generation library written in C (2023))
libwifiは、LinuxおよびmacOS上で802.11無線フレームを生成および解析するために設計された軽量のCライブラリです。このライブラリは使いやすさを重視しており、数行のコードで簡単にプログラムを書くことができます。また、クリーンなコード、異なるアーキテクチャへの対応、エラーチェックが強調されています。
libwifiを使用するには、コンパイル時に-lwifiオプションを指定してリンクし、システムにライブラリをインストールする必要があります。WiFiフレームを解析する際は、キャプチャしたパケットを読み込み、その有効性を確認し、構造化されたデータ型に情報を格納します。ビーコントレームのような特定のフレームタイプを解析するための例示的な関数も用意されています。ビーコントレームはSSIDやチャンネルなどの詳細を表示します。
フレームを生成するには、ビーコントレームを作成するための生成関数に必要なデータを提供するだけです。生成されたフレームは、保存や送信のためにバッファに書き込むことができます。
libwifiはCMakeを使用してビルドできます。リポジトリをクローンし、いくつかのコマンドを実行することで設定とコンパイルを行います。
このライブラリは速度を最適化しており、最新のハードウェアでビーコントレームの解析時間が非常に速いことがベンチマークで示されています。
ソースコードは十分にドキュメント化されており、コメントや図が参照用に用意されています。また、オンラインでアクセス可能な生成されたドキュメントもあります。
25.アーカイブの謎圧力(Our investigation into the suspicious pressure on Archive.today)
FBIは、Archive.today(Archive.isとも呼ばれる)に対して連邦の犯罪捜査を行っています。この捜査は、著作権問題や児童性的虐待に関する資料に関連している可能性があります。Archive.todayは2012年に設立され、ユーザーがウェブページのスナップショットを保存できるサービスを提供しています。この機能は有料コンテンツを回避できるため、メディア団体から反発を受けています。
最近、フランスで新たに設立されたWeb Abuse Association Defense(WAAD)が、AdGuard DNSに対してArchive.todayをブロックするよう圧力をかけました。WAADは、2023年以降に違法コンテンツを削除しなかったと主張しています。AdGuardは、ホスティングプロバイダーではないため、この要求は異常だと感じました。法的助言を求めた結果、フランスの法律に基づいて行動する必要があるかもしれないと認識しました。
AdGuardはArchive.todayに連絡し、報告された違法コンテンツを削除することを確認しました。Archive.todayは、これまでその内容について知らされていなかったと述べました。また、フランスの団体からの苦情が組織的に行われている可能性があると示唆しました。
AdGuardはWAADを調査し、その登録やオンラインでの存在が疑わしいことを発見しました。これにより、WAADが創設者の身元を隠すために設立された可能性があることが示唆されました。苦情にはなりすましや犯罪行為が含まれている可能性があり、AdGuardはフランスの警察に苦情を申し立てることを検討しています。
この状況は、Archive.todayに対する圧力や、その苦情の正当性についての懸念を浮き彫りにしています。特に、FBIの捜査が進行中であることを考えると、問題はさらに複雑です。
26.JavaScriptなしでLLM対策(Blocking LLM crawlers without JavaScript)
このテキストでは、JavaScriptを使用せずに不要なウェブクローラーをブロックする方法について説明しています。主なポイントは次の通りです。
まず、特別なURLを作成します。例えば、/heck-off/という名前を付け、そのアクセスをrobots.txtファイルで禁止します。
次に、クッキーを持っていないユーザーには、基本的なHTMLレスポンスを送信します。このレスポンスには、作成した特別なURLへのリンクが含まれています。このリンクは、プログラムが不完全なクローラーを騙してフォローさせるためのものです。
クッキーを使って検証を行います。もし/heck-off/にリクエストがあった場合、そのリクエストを「不注意な」クローラーとして識別するためのクッキーを設定します。一方、/validate/にリクエストがあった場合は、検証済みとしてマークするクッキーを設定し、元のURLにリダイレクトします。
キャッシュ管理にも注意が必要です。中間ページがキャッシュされないようにして、リダイレクトループを避けます。
この方法は完璧ではありませんが、実際には多くの不要なリクエストをブロックし、正当なクローラーがサイトにアクセスできるようにするのに効果的です。全体として、このアプローチはシンプルで、サーバーリソースを最小限に抑えつつ、クローラーのトラフィックを効果的に管理します。
27.「継承より合成?」(When did people favor composition over inheritance?)
「継承よりも構成を重視する」というフレーズは、ソフトウェア設計における人気のある指針で、オブジェクトを組み合わせる構成を使うことを強調しています。これは「デザインパターン」という本に由来し、継承が親クラスの詳細に完全にアクセスできるのに対し、構成はオブジェクトの公開インターフェースとだけやり取りすることを示しています。
継承は実装が簡単で言語のサポートもありますが、コンパイル時に決まるため柔軟性に欠けます。一方、構成は実行時に異なるオブジェクトを割り当てることでオブジェクトの動作を変更できるため、より適応性があります。
バーバラ・リスコフとジャンネット・ウィングは、型の関係についてさらに議論し、サブタイプであることが必ずしも特定のインターフェースに従う必要があるわけではないと提案しています。彼らは、設計の初めに関係が明確でない場合、手続きを引数として使ったり、必要な操作を満たす任意の型を許可する方が、厳密に階層や構成に従うよりも効果的であると述べています。
全体として、この議論は構成と継承だけでなく、より多くの設計オプションがあることを示唆しており、ソフトウェア設計における文脈や関係を慎重に考慮することが重要であるとしています。
28.Boa: Rust製のJavaScriptエンジン(Boa: A standard-conforming embeddable JavaScript engine written in Rust)
Boaは、Rustで構築された実験的なJavaScriptエンジンで、最新のECMAScript標準の90%以上をサポートしています。さまざまなコンポーネントが含まれており、字句解析器、構文解析器、ガベージコレクタなどがあります。
ユーザーは、ウェブプレイグラウンドやコマンドラインインターフェース(CLI)を通じてBoaを試すことができます。また、Boaは異なる機能のためにいくつかのライブラリ(クレート)を提供しており、例えばboa_astは抽象構文木を扱い、boa_engineはECMAScriptコードを実行します。
Boaを使用するには、プロジェクトにboa_engineを追加し、簡単なJavaScriptコードを実行するだけです。詳細なAPIドキュメントも用意されており、ユーザーは必要な情報を見つけやすくなっています。BoaはECMAScript標準に準拠することを目指しており、テスト結果も公開されています。
開発者は、プロジェクトに貢献するためのガイドラインに従うことで、Boaの改善に参加できます。JavaScriptファイルを実行するためのさまざまなコマンドラインオプションもあり、厳密モードやASTダンプなどが利用可能です。パフォーマンスのベンチマークも他のJavaScriptエンジンと比較されており、ユーザーはローカルでベンチマークを実行できます。
質問や貢献については、MatrixやDiscordを通じてサポートを受けることができます。BoaはUnlicenseまたはMITライセンスの下で提供されています。
29.無駄ロボ賛歌(In Praise of Useless Robots)
ローラ・トリパルディの「無用のロボットを称賛する」という記事では、ロボットを単なる作業の道具としてではなく、想像力や思索を刺激する存在として捉えています。この記事は、未来派運動が機械を進歩や文化の変革の象徴と見なしていることを強調しています。
トリパルディは、特定の機能を持ち人間に似た従来のロボットと、アニッカ・イーの飛ぶ自動機のような新しい芸術的ロボットを対比させています。後者は、実用性よりも異質さや自然とのつながりを感じさせます。これらの「ソフト」ロボットは柔軟な素材で作られており、ロボティクスの進化を示しています。ここでは、行動が事前にプログラムされたものではなく、環境との相互作用から生まれる「具現化された知性」が強調されています。
また、記事では自動機が労働のためだけでなく、宇宙を理解するための装置として見られていた歴史的な視点にも触れています。最近のアートインスタレーション、例えばローダ・ティンやミッケル・ボイエセンの作品は、ロボットを異星の仲間として体験することを促し、機能を超えた役割をさらに示しています。最終的に、この記事は現代のロボットが技術と自然との関係についてのより深い文化的および哲学的探求を反映していることを示唆しています。
30.教育テクの幻影(A twelve-year-old on the failed promise of educational technology)
中学一年生のミカ・ブラフマンは、学校での生徒の活動を監視するために使われる教育技術の限界についてブログで述べています。彼は、学校がゲームサイトをブロックしようとする一方で、生徒たちはしばしば抜け道を見つけることを指摘しています。例えば、コーディングの授業では、教育目的でMITのScratchなどのサイトを解除する必要があり、その結果、ゲームにアクセスできるようになります。また、生徒たちはクイズ用のプラットフォームでゲームを作成し、見つけたブロックされていないゲームをすぐに共有します。
ミカは、YouTubeのようなサイトがブロックされていても、教師は教育用のツールを使って動画を見ることができると述べています。彼は、単にサイトをブロックすることは、生徒たちに回避策を見つけさせるだけで、長期的には効果的な解決策ではないと主張しています。その代わりに、学校は責任ある技術の使い方を教え、生徒を信頼することに重点を置くべきだと考えています。ただし、本当に不適切なコンテンツはブロックする必要があるとも述べています。彼は、ブロックが学校にとって最も簡単なアプローチなのか疑問を呈し、長期的には最善の方法ではないかもしれないと示唆しています。
31.分岐予測回避法(Bypassing the Branch Predictor)
プログラミングにおける分岐予測の課題について、特に金融取引システムにおいて、多くのリクエストが放棄される一方で、取引を送信する速度が重要であることが述べられています。
まず、分岐予測の問題があります。多くの取引が放棄される場合、CPUの分岐予測器は取引が送信されないと誤って判断することが多く、実際に取引が送信される際に遅延が発生します。
次に、コードの構造について説明します。提供されたコードの一部は、取引を送信するか放棄するかを確認しますが、分岐予測器の誤った仮定がプロセスを遅くする原因となります。
低レベルの解決策として、古いx86プロセッサでは分岐予測をハードコーディングする方法がありましたが、現代のx86 CPUではこれがサポートされていません。C++の[[likely]]や[[unlikely]]といった属性は、コンパイラに分岐の確率を示唆することができますが、現代のx86の分岐予測には影響を与えません。
高レベルの解決策として提案されているのは、常に送信されるダミー取引でシステムを満たすことで、分岐予測器の仮定を送信に有利に偏らせる方法です。このアプローチは、取引処理を大幅に加速することが示されています。
この方法を使用することで、著者は5マイクロ秒のパフォーマンス向上を報告しており、高速取引アプリケーションにおいては重要な改善です。現代のプロセッサでは分岐予測を直接制御することは限られていますが、取引データを慎重に管理することでパフォーマンスを向上させることが可能です。
32.富士通LifebookにLinux!(Linux on the Fujitsu Lifebook U729)
著者は、富士通のLifebook U729ノートパソコンでLinuxを使用した体験を共有しています。全体的に、このデバイスは非常に優れており、Linuxがスムーズに動作します。ハードウェアもすぐに問題なく機能しました。唯一の課題は、セキュアブートを無効にすることでしたが、Windows 11を最初にインストールし、BIOSを更新することで解決しました。
このノートパソコンは軽量で頑丈、キーボードも使いやすいです。購入価格は250オーストラリアドルで、Linuxの使用に適しています。著者は以前、MacBookを使用していましたが、柔軟性と楽しさからLinuxに戻りました。セキュアブートを無効にするためには、Windowsをインストールし、ドライバーを更新した後にBIOSを更新する必要がありました。
このノートパソコンには、Absolute Persistenceという企業のスパイウェアが含まれていますが、BIOSで無効にすることができます。WiFi、Bluetooth、音声などのほとんどのハードウェア機能は問題なく動作し、タッチスクリーンやウェブカメラも正常に機能します。著者はBIOSやブートメニューへのアクセス方法についてのヒントも提供しています。
総じて、富士通のLifebook U729はLinuxユーザーにとって好ましい選択肢であり、設定の際の小さな課題も簡単に克服できます。
33.エージェントの罠(MCP: Model Context Pitfalls in an agentic world)
Anthropicのモデルコンテキストプロトコル(MCP)は、AIシステムがさまざまなツールやデータソースと接続できるようにし、現実のタスクを実行する能力を高めます。しかし、この力は重大なセキュリティリスクも伴います。主な問題点は以下の通りです。
まず、許可管理の問題があります。多くのMCPの実装では、ユーザーの許可プロセスが明確でなく、セキュリティの欠陥が生じる可能性があります。ユーザーが意図せずに過剰な許可を与えてしまうと、悪意のある行動が見逃される恐れがあります。
次に、意図しないダブルエージェントの問題があります。一部のMCPサーバーは任意のコードを実行できるため、攻撃者が有害なプロンプトを注入することができれば、データ漏洩や無許可の行動が引き起こされるリスクがあります。
さらに、複数のサーバーからのツールを組み合わせて使用する場合、許可管理が複雑になり、間接的なプロンプト注入を悪用する攻撃に対する脆弱性が増します。
最後に、ツール名のタイポスクワッティングの問題もあります。似たような名前のツールが互いに上書きされることで、攻撃者がユーザーに気づかれずにツールの機能を乗っ取ることが可能になります。
ユーザーや開発者は、MCPを使用する際にリスクを理解し、強力なセキュリティ対策を講じることが重要です。具体的には、許可の検証を強化し、プロンプト注入を監視することが求められます。MCP技術が進化する中で、安全で効果的な利用を確保するためには、セキュリティを優先することが不可欠です。
34.スチームマシン不要(I don’t need a Steam Machine)
Valveは、Steam Deckの新しいラインアップとして、コントローラー、VRヘッドセット、そしてSteam Machineというコンソールの3つのデバイスを発表しました。Steam Machineは来年の春に発売予定で、コンソール市場に参入することを目指しています。このデバイスは、コンソールゲーム向けに特化した強力なゲーミングPCとして宣伝されています。
Steam Machineに対する期待が高まる中、著者は自分がそれを必要としない理由をいくつか挙げています。まず、著者はレトロゲームを好んでおり、高性能なハードウェアは必要ないと感じています。また、テレビが4Kに対応していないため、最新のグラフィックを活かせません。さらに、多くのAAAゲームが好みではなく、ゲームに費やす時間が不足していることも理由の一つです。加えて、テレビは他の人に使われることが多く、すでに多くのゲームハードウェアを所有しているため、これ以上のデバイスを置くスペースもありません。
著者は物理的なゲームを好むため、デジタルプラットフォームであるSteamにはあまり魅力を感じていませんし、Steamをほとんど利用していないことも挙げています。さらに、ノートパソコンでゲームをエミュレートすることができ、近々そのノートパソコンをアップグレードする予定です。ゲームのバックログも多く、デジタルの管理が面倒だと感じています。オフィス作業にはこのマシンが必要ないことや、インディーゲームが他のプラットフォームに後から登場することも理由です。また、Steam Machineが高価である可能性や、HDMIポートがすべて使用中であること、Steamコントローラーの追加コストも考慮されています。ビジネス経費として購入する余裕もなく、斬新な機能が購入の正当化には足りないかもしれません。
それでも、著者は結局Steam Machineを購入する可能性が高いと結論づけています。
35.安全な自己借用の秘訣(The inconceivable types of Rust: How to make self-borrows safe (2024))
Rustプログラミングでは、オブジェクトとそのオブジェクトへの参照を同時に使用することができません。この制約は、借用チェックのルールによるものです。この制限については、プログラミングコミュニティで多くの議論が交わされています。しかし、著者は適切なアプローチを取ることで、将来のRustのバージョンで自己借用がサポートされる可能性があると提案しています。
記事では、いくつかの回避策が存在するものの(例えば、unsafeコードを使用すること)、それらはRustの安全性と効率性の目標に合致しないと指摘しています。著者は、型システムに変更を加えることで、自己借用と安全な非同期関数を可能にする方法に焦点を当てています。
現在の制限として、Rustの型システムは自己借用や移動不可能な型のサポートを制限しています。特に非同期関数においてこの問題が顕著です。Pin型の導入は部分的な解決策ですが、ユーザーが安全に自己参照型を作成することはできません。
提案されている変更には、関数間で変数の型をより適切に管理するために、名前付き型とライフタイムを導入することが含まれています。また、コンパイラが実際には存在するがRustの型システムでは正式に認識されていない「考えられない型」を認識し、処理できるようにすることも提案されています。
借用チェックはエイリアスバグを防ぐために重要であり、著者はより柔軟な借用ルールを可能にするための強化策を提案しています。これには負のライフタイムの導入も含まれます。
現在の設計では、値の所有権とメモリ管理が混同されています。著者は、デストラクタや初期化に関する問題を解決するために「所有参照」という新しい型の導入を提案しています。
これらの変更は理論的にはRustの機能を向上させる可能性がありますが、著者はそれを実装することが複雑であり、後方互換性を破る可能性があることを認めています。著者は、自己借用に関する現在の制限は借用チェックシステムに固有のものではなく、より良いアプローチがRustにおけるより堅牢なプログラミングの道を開くと信じています。
36.アスキー数学(AsciiMath)
AsciiMathは、数学的表現を簡単に記述するために設計されたシンプルなマークアップ言語です。例えば、次のように入力すると、同じ形式で出力されます。入力例として「sum_(i=1)^n i^3=((n(n+1))/2)^2」があります。
AsciiMathを始めるには、まずMathJaxを使用することをお勧めします。これは、どのブラウザでも数学を表示するための方法です。ウェブページに次のスクリプトタグを追加することで利用できます。
次に、AsciiMath JavaScriptを使用する方法もあります。これはGitHubから取り込むことができ、AsciiMathをMathMLに変換しますが、FirefoxとSafariのみで動作します。
AsciiMathの構文は、描画された形式に似た記号を使用しています。例えば、無限大は「oo」で表現されます。また、加算や減算などの演算子(「+」、「-」、「*」)、関係を示す記号(「=」、「!=」、「<」)、論理記号(「and」、「or」、「not」)も含まれています。
特別な機能としては、行列やベクトルの作成が可能です。行列は「[[a,b],[c,d]]」のように、列ベクトルは「((a),(b))」で表現できます。また、限界、合計、導関数、波括弧(上部と下部)を使った複雑な表現も可能です。ギリシャ文字(「alpha」、「beta」など)や標準的な関数(「sin」、「cos」など)も簡単に記述できます。
重要な注意点として、HTMLの解析問題を避けるために、「<」と「>」の周りには常にスペースを追加してください。AsciiMathは使いやすく、数学的表記の入力を簡単にするように設計されているため、教育や専門的な用途に適しています。
37.MP944の真実(The MP944 was the 'real' first microprocessor, but it was top secret)
MP944は、アメリカ海軍のF-14トムキャット戦闘機の制御システムのために開発された、世界初のマイクロプロセッサーとして知られています。この技術は1970年から1998年まで軍事機密とされていました。インテルの4004に比べてあまり注目されることはありませんが、実際にはMP944の方がはるかに高速で、375kHzで動作し、1秒間に9,375命令を実行することができました。これはインテル4004の8倍の速さです。このチップは飛行パラメータの計算に不可欠であり、極端な温度での動作や自己診断機能など、厳しい軍事規格を満たす必要がありました。MP944の開発チームには、エンジニアのスティーブ・ゲラーとレイ・ホルトが含まれており、機密性のために研究成果を公表するのに苦労しました。もしMP944が早期に公に認識されていたなら、コンピュータ業界の流れが変わっていたかもしれません。
38.ウィンドウズ核のRust問題(Denial of Fuzzing: Rust in the Windows Kernel)
サイバーインテリジェンスレポートの購読について
購読するには、まずお名前と姓を入力し、アメリカ、中国、インドなどの国からお住まいの国を選んでください。さらに、購読を完了するためにメールアドレスを入力してください。
39.世代を超えた記憶の遺伝(Transgenerational Epigenetic Inheritance: the story of learned avoidance)
レスリー・T・マクニールは、線虫のCaenorhabditis elegansが病原菌Pseudomonas aeruginosa(PA14)を避ける方法を学習する研究について述べています。この学習は世代を超えて受け継がれることがあり、これを「世代間エピジェネティック継承」と呼びます。コリーン・マーフィーのチームの研究によると、この学習による回避は、新たにPA14にさらされることなく、最大で四世代にわたって持続することが示されました。しかし、クレイグ・ハンターのグループによる最近の研究では、第二世代(F2)ではこの効果が観察されなかったと主張しています。マーフィーのグループは、ハンターのチームが行った実験の変更が結果に影響を与えたと反論しています。
アンドレス・ビダル・ガデアのグループによる新しい研究は、マーフィーの発見を確認し、学習した回避がF2世代に引き継がれることを示しました。この研究では、線虫がPA14を避けるように訓練された後の反応を観察する方法が用いられました。実験中に線虫がどのように固定されていたかの違いが結果に影響を与えた可能性があります。ハンターの方法では線虫がPA14と相互作用できるため、テスト中に学習した回避が生じる可能性があったのです。
この研究は、行動研究における正確な実験条件の重要性を強調し、C. elegansにおける病原体の学習した回避が世代を超えて受け継がれることを示しています。
40.“The Fall of Icarus”: Photograph of a falling skydiver in front of the Sun(“The Fall of Icarus”: Photograph of a falling skydiver in front of the Sun)
要約がありません。
41.Hyundai Paywalls Brake Pads replacement on Ioniq 5 N(Hyundai Paywalls Brake Pads replacement on Ioniq 5 N)
要約がありません。
42.Windows president addresses current state of Windows 11 after AI backlash(Windows president addresses current state of Windows 11 after AI backlash)
要約がありません。
43..gitフォルダ暴露!フィッシング特定(An exposed .git folder let us dox a phishing campaign)
先週の金曜日、私たちのDiscordサーバーのメンバーがフィッシングメールを報告しました。このメールは偽のログインページに誘導するものでした。調査の結果、攻撃者のGitHubアカウントとTelegramボットが彼らのミスによって特定されました。フィッシングページは一般的なメールサービスの簡単なクローンでした。
サイトを調べたところ、.gitディレクトリが公開されており、攻撃者のコードや情報が明らかになりました。これには、自動デプロイメントスクリプトや、異なるTelegramボットトークンを持つ複数の偽ページが含まれていました。
私たちは以下の通報を行いました。GitHubのリポジトリは利用規約違反で削除され、Telegramボットも取り下げられました。また、悪意のあるウェブサイトはホスティングプロバイダーによって閉鎖されました。
重要な教訓は、攻撃者はたとえ犯罪者であっても、自分の.gitフォルダを公開してはいけないということです。この取り組みはBeyondMachines Discordコミュニティのチームワークによるもので、迅速に行動することができました。
44.アルキメデス:ハードウェア開発のPythonツール(Archimedes – A Python toolkit for hardware engineering)
アルキメデスは、ハードウェアエンジニアリングを簡素化するために設計された新しいオープンソースのPythonフレームワークです。特に航空宇宙、自動車、ロボティクスの分野での利用を目的としています。このフレームワークは、Pythonの生産性を提供しつつ、Cコードを使用して組み込みシステムへの最適化された展開を可能にします。
アルキメデスの主な目的は、エンジニアが制御システムを効率的に開発・テストできるようにすることです。これにより、Pythonの高水準プログラミングとCの低水準実装とのギャップを埋めることができます。
このフレームワークは、特にNumPyで書かれたアルゴリズムを自動的にCコードに変換し、ハードウェア展開のために最適化します。これにより、手動での翻訳が不要になり、作業の流れがスムーズになります。
アルキメデスは、Pythonの関数をC++の計算グラフにコンパイルすることで、実行速度を大幅に向上させることができます。これにより、複雑なシミュレーションやリアルタイムアプリケーションに適したフレームワークとなっています。
また、数値シミュレーション、最適化、根の探索を行うためのツールが含まれており、先進的なソルバーを使用しています。自動微分機能もサポートしており、最適化やシミュレーション作業を助けます。さらに、物理システムを反映した階層的なデータ構造を扱うことができ、コードの管理や理解が容易になります。
このフレームワークは柔軟性があり、ユーザーが特定のエンジニアリングニーズに合わせたカスタマイズされたワークフローを作成できるように設計されています。
現在、アルキメデスはパブリックベータ版であり、ユーザーからのフィードバックを受けて機能や安定性の向上を目指しています。ユーザーは、階層モデリングやパラメータ推定など、さまざまなトピックに関するチュートリアルを通じて、アルキメデスの使い方を迅速に学ぶことができます。
全体として、アルキメデスは制御アルゴリズムの開発プロセスを変革し、エンジニアにとってよりアクセスしやすく効率的なものにすることを目指しています。
45.UPSの684ドル請求!(When UPS charged me a $684 tariff on $355 of vintage computer parts)
2025年11月15日、著者は驚くべき状況に直面しました。UPSから、355ドル相当のヴィンテージコンピュータパーツの発送に対して684ドルという高額な関税が請求されたのです。著者は通常、ブログで政治的な議論を避けていますが、関税に対しては不満を表明しました。特に、関税が商品の価値のほぼ倍に達していたため、苛立ちを感じていました。
注文には、Apple Network Serverのロジックボードや、EUの信頼できる販売者から調達した他の部品が含まれていました。合計金額は296ユーロ(約355ドル)で、送料が別途かかりました。関税の制限により、販売者はUPSを利用せざるを得ず、発送プロセスが複雑になりました。荷物が到着すると、UPSから追加の関税がかかると通知され、混乱と不満が生じました。
最初は過剰に請求されたものの、著者はさらなる手数料や遅延を避けるために関税を支払いました。その後、UPSのカスタマーサポートとのやり取りを経て、著者は関税の金額に対して異議を申し立て、最終的に請求額が減額される結果となりました。しかし、著者は初めのミスや料金に関するコミュニケーションの取り方に対して、UPSに対して依然として不満を抱いていました。
重要なポイントは、予期しない関税に直面した場合、複雑な事態を避けるためにまずは支払い、その後に請求に対して異議を申し立てて返金を求めることが推奨されるということです。
46.Trellis AI (YC W24) Is Hiring: Streamline access to life-saving therapies(Trellis AI (YC W24) Is Hiring: Streamline access to life-saving therapies)
要約がありません。
47.ゲームパッドで4Dジュリア探索(Real-time 4D Julia set navigation via gamepad)
私はAtlasというGPUスクリプト言語を作成しました。この言語は、テクスチャやユニフォームの扱いを簡単にします。デモを試すことができ、ゲームパッドを使った4次元フラクタルの探索も含まれています。ジュリア集合を見るには、7を押してください。もし不具合が見つかった場合は、再読み込みしてください。詳細については、こちらのドキュメントを確認してください。なお、RTX 3080グラフィックカードが必要です。
48.反転パズル(Unflip – a puzzle game about XOR patterns of squares)
ゲームに勝つためには、すべてのタイルを白くする必要があります。これを達成するためには、2x2以上の正方形のエリアを選んでタイルをひっくり返します。タイルをひっくり返すと、白いタイルは黒くなり、黒いタイルは白くなります。頑張ってください!
49.マグの富 (2024)(Mag Wealth (2024))
富の不平等は人々の生活や人間関係に大きな影響を与え、しばしば身体的な違いよりも重要です。富の違いを理解し、議論することは非常に重要です。
純資産は富を測るためによく使われますが、「資産から負債を引いたもの」と定義されます。しかし、これは誤解を招くことがあります。高い資産を持ちながら同等の負債がある人は、表面的には貧しいように見えるかもしれませんが、実際にはかなりの富を持っていることがあります。富を測るより良い指標は、緊急時にすぐにアクセスできるお金の額です。
富と収入は区別する必要があります。収入は時間をかけて得られるお金の額を示し、富はその人が所有しているものの瞬間的な状況を表します。社会的階級を評価する際には、富の方が収入よりも信頼できる指標です。
富のレベルには、貧困層から超億万長者までさまざまな段階があります。それぞれのレベルは以下の通りです。
まず、貧困層は3ドル未満で基本的なニーズを満たすことができません。次に、破産状態の人は3ドルから30ドルで、日常的なニーズや基本的な住居を他人に頼っています。貧しい人は30ドルから300ドルで、時折お金を集めることができるものの、不安定な住居に住んでいます。下層階級は300ドルから3,000ドルで、一定の収入はあるものの、しばしば不安定な生活状況にあります。労働者階級は3,000ドルから30,000ドルで、いくつかの支出を管理できるものの、依然として負債に苦しんでいます。中流階級は30,000ドルから300,000ドルで、貯蓄や投資ができ、安定した生活を送っています。快適な生活を送る人は300,000ドルから300万ドルで、経済的なストレスなく生活しています。裕福な人は300万ドルから3,000万ドルで、かなりの富を持ち、雇用に選択肢があります。超裕福な人は3,000万ドルから3億ドルで、投資や贅沢な生活を管理しています。億万長者は3億ドルから30億ドルで、世代を超えた富を持つ非常に裕福な個人です。マルチ億万長者は30億ドルから300億ドルで、この富を持つのはごく少数の人々です。超億万長者は30億ドル以上で、世界で最も裕福な個人です。
これらの観点から富を理解することで、社会における広範な格差や富の不平等の影響を明確にすることができます。
50.Report: Tim Cook could step down as Apple CEO 'as soon as next year'(Report: Tim Cook could step down as Apple CEO 'as soon as next year')
要約がありません。
51.クォートで書籍作成(Writing a book with Quarto)
スティーブン・ターナーは、RMarkdownを基にした現代的な出版システムであるQuartoを使った体験を共有しています。彼は、古いコースウェブサイトを1時間以内に洗練された電子書籍に変換しました。Quartoを使うと、1つのソースから書籍、ウェブサイト、プレゼンテーションなど、さまざまな文書を作成できます。ターナーは、データサイエンスとバイオインフォマティクスのコースのために作成したウェブサイトを持っており、Rを使ったデータ操作や可視化といった実践的なトピックが含まれています。
彼は会議でQuartoについて学んだ後、既存のRMarkdownの資料をQuartoの書籍に変換することを決めました。プロセスは簡単で、プロジェクトファイルに少しの調整を加えるだけで済みました。その結果、2015年から2018年にかけて開発したコース内容を示す「Biological Data Science with R」という書籍がオンラインで公開されています。
ターナーは、Quartoの追加機能についても触れています。Quarto ManuscriptsやQuarto Dashboardsを使うことで、物語形式の文書やインタラクティブなダッシュボードを作成できます。彼は他の人々にも、自分の出版ニーズに合わせてQuartoを探求することを勧めています。詳細については、quarto.orgでQuartoのドキュメントや例を見つけることができます。
52.JVM例外の謎(JVM exceptions are weird: a decompiler perspective)
Javaのクラスファイルを逆コンパイルする際の複雑さについて、特にJava仮想マシン(JVM)での例外処理に焦点を当てています。著者は、効率的な逆コンパイル手法を例外処理に拡張するのは簡単だと思っていましたが、JVMの設計やクラスファイルの構造のために多くの問題に直面しました。
JVMはスタックベースのアプローチを採用しており、ほとんどの命令はスタックを使って操作します。しかし、例外処理はより複雑で、バイトコードに簡単にエンコードすることができません。例外は、コードの特定の領域とそれに対応する例外ハンドラを関連付ける例外テーブルを通じて管理されます。これらの領域は重なり合うことがあり、厳密にネストされていないため、逆コンパイルを難しくするさまざまなエッジケースが発生します。
特にtry...finallyブロックの処理は難しいです。Javaコンパイラ(javac)は、tryブロックからの各可能な出口に対してfinallyブロックを複製し、常に実行されるようにします。このため、構造がより複雑になります。JVMの命令は、見た目には無害なものでも例外を投げる可能性があるため、どの命令が例外を投げるかを判断するロジックが複雑になります。
JVMには二つの型チェッカーがあります。一つはStackMapTableを使用して正確な型チェックを行い、もう一つは到達可能な命令に対してのみ型を推論します。このため、例外処理の動作を判断する際に問題が生じることがあります。try...catchブロックと例外処理領域の関係は一対一ではないため、コードを正しく逆コンパイルする上でさらに複雑さが増します。
著者は、これらの複雑さを扱うことが正しい逆コンパイラを作成するために重要であると述べ、Javaの特異性や逆コンパイルの課題についてのさらなる議論を呼びかけています。全体として、Javaの例外処理の複雑さがバイトコードや逆コンパイルの文脈で強調されており、さまざまなエッジケースや動作を慎重に考慮する必要があることが示されています。
53.The US AI Bubble Reminds Me of the Eve of China's Real Estate Collapse(The US AI Bubble Reminds Me of the Eve of China's Real Estate Collapse)
要約がありません。
54.レクン、AI新会社設立へ(Meta's Yann LeCun to Launch Physical AI Startup After Declaring LLMs 'Dead End')
メタの最高AI科学者であるヤン・ルカンが、同社を離れて自身のAIベンチャーを立ち上げることになりました。この変化は、メタが高度なAIシステムや超知能の開発に注力する中で、ルカンの長期的な研究が行われているファンダメンタルAIリサーチ(FAIR)ラボが脇に置かれることに伴っています。ルカンは機械学習やニューラルネットワークへの重要な貢献で知られ、2013年からメタに在籍しています。
彼の新しいスタートアップは「ワールドモデル」に焦点を当て、AIシステムが言語だけでなく物理的な世界を理解する手助けをすることを目指しています。ルカンは大規模言語モデル(LLM)の将来に疑問を呈し、これらを人間のようなAIを実現するための「行き止まり」と位置付けています。彼は、AIが真に進化するためには、自らの環境を認識し理解する必要があると考えています。スタンフォード大学のフェイフェイ・リーや、グーグルディープマインド、エヌビディアのチームなど、他の研究者たちも同様の概念を探求しています。
ルカンは、AIをテキストだけで訓練することでは人間レベルの知能に到達するには不十分であり、物理的な概念を推論し理解できるシステムが必要だと強調しています。
55.目を離して: スクリーン接触検出モデルの構築(EyesOff: How I built a screen contact detection model)
Yusuf Mohammadは、他人が自分の画面を見ているかどうかを検出するアプリ「EyesOff」の開発について説明しています。このアプリは、肩越しに画面を覗き見されるのを防ぐことを目的としていますが、このタスクに適したデータセットが存在しなかったため、彼は2万枚以上の画像にラベルを付け、トレーニング用の合成ラベルを作成しました。最終的なモデルは、異なる距離での視線検出において約71%の精度を達成しました。
EyesOffの目的は、ユーザーの画面が無断で見られるのを防ぐことです。著者は最初に既存のモデルを使用することを考えましたが、それらは適切でなかったり、特定の用途に限られていたりしたため、カスタムモデルを作成することにしました。
データ収集の段階では、関連するデータセットが不足していることに苦労しました。最初はさまざまなソースから画像にラベルを付けましたが、十分ではないと感じました。最終的に、彼は自分のニーズに合った「Video Conferencing Dataset (VCD)」を見つけました。
ラベリングプロセスでは、画像を「見ている」または「見ていない」と一貫して分類するためのフレームワークを開発しました。このプロセスを効率化するためのツールを使用し、正確なラベリングを目指しました。
モデルのトレーニングは二段階で行われました。最初の段階では視線回帰タスクでの事前トレーニングを行い、次の段階では画面接触の分類に焦点を当てました。モデルは、事前にトレーニングされたEfficientNetB0アーキテクチャを基に構築されました。
モデルの性能はさまざまなシナリオでテストされ、データが増えることで精度が向上することが明らかになりました。最も良い結果を出したモデルは、より大きなデータセットと追加の事前トレーニングを含むものでした。
今後の改善点としては、さらなるデータ収集、モデルサイズの効率化、そしてパフォーマンス向上のためにより良いアーキテクチャの使用が挙げられています。このプロジェクトは、機械学習モデルのトレーニングにおけるデータの重要性と、新しいアプリケーションを開発する際の課題を浮き彫りにしています。
56.Rustでサーバーレス開発(Building Serverless Applications with Rust on AWS Lambda – AWS Compute Blog)
AWS LambdaがRustのサポートを正式に追加し、開発者は高性能でメモリ安全なサーバーレスアプリケーションを作成できるようになりました。このサポートはAWSによって提供され、商用利用が可能です。
Rustの主な特徴は、高速性とメモリ効率を兼ね備え、C++に似た性能を持ちながら、高水準言語の信頼性も備えている点です。これにより、サーバーレスアプリケーションの構築に最適です。
始めるためには、まずAWSアカウントを持ち、適切な権限が必要です。また、AWSコマンドラインインターフェース(CLI)を設定し、Rust(バージョン1.70以上)とNode.js(バージョン20以上)をインストールする必要があります。さらに、AWS CDKもインストールしておきます。
Cargo Lambdaを使用すると、RustのパッケージマネージャーであるCargoが、Rust関数をAWS Lambdaに簡単にデプロイできるようにします。インストールはターミナルでコマンドを実行することで行います。
Rust Lambda関数を作成するには、cargo lambda newを使って新しいHTTPベースの関数を作成します。プロジェクト構造には、関数のロジックを定義するmain.rsやhttp_handler.rsなどの重要なファイルが含まれます。
関数のロジックでは、function_handlerが受信したリクエストを処理し、レスポンスを返します。Rust Lambdaランタイムはロギングをサポートし、AWS CloudWatchと統合されています。
ビルドとテストには、cargo lambda buildを使用して関数をデプロイ可能なバイナリにコンパイルします。ローカルテストは、cargo lambda watchを使ったり、curlでリクエストを送信することで行えます。
デプロイは、cargo lambda deployを使ってAWSに関数をデプロイします。デプロイされた関数はリモートでテストできます。
API Gatewayを作成するには、AWS CDKを使用してRust Lambda関数の前にAPIを作成します。このプロセスには、CDKプロジェクトの初期化、Lambda関数の定義、API Gatewayの設定が含まれます。
デプロイされたリソースを削除するには、cdk destroyを使って料金が発生しないようにします。
AWS LambdaでのRustサポートにより、開発者は効率的なサーバーレスアプリケーションを作成できるようになります。詳細については、AWS Lambda開発者ガイド、Cargo Lambdaのドキュメント、AWS CDKのドキュメントを参照してください。
57.スクレイパー対策(Messing with scraper bots)
この投稿では、著者が公のウェブサイトでのスクレイパーによる問題について議論し、これらのボットに対抗するためのアプローチを紹介しています。
多くの小規模なウェブサービスは、意図せずに分散型サービス拒否攻撃(DDoS)を引き起こすスクレイパーによって混乱しています。著者は、マルコフ連鎖について学び、スクレイパーを欺くために偽のデータを生成するツールを作成しました。これにより、スクレイパーが本物のウェブサイトのコンテンツにアクセスするのを妨げることを期待しています。
著者は、最も有害なボットは悪意を持っているものであり、ウェブサイトの脆弱なファイルを狙っていると指摘しています。最初はこれらのリクエストをブロックしましたが、その後、偽の応答を送信することに決めました。
ボットのリクエストを効率的に処理するために、著者は公に利用可能なテキストからランダムなコンテンツを提供する静的サーバーを構築しました。これにより、スクレイパーを圧倒することができます。
これらの戦術は面白く、楽しむことができる一方で、著者は注意を促しています。偽のコンテンツが検索エンジンにスパムとして認識されるリスクがあり、サイトの評価に悪影響を及ぼす可能性があります。
著者は、スクレイパーに悩まされている小規模なプロジェクトを持つ人々に同様の方法を試すことを勧めていますが、検索エンジンの可視性に依存している人々には慎重になるようアドバイスしています。
58.コーツィーの詩的プログラム(The computer poetry of J. M. Coetzee's early programming career (2017))
ノーベル賞受賞作家のJ. M. コーツィーは、1962年から1965年までコンピュータープログラマーとしてのキャリアをスタートさせました。この期間、彼はイギリスのアトラス2スーパーコンピュータに関わり、アルゴリズムを使って言葉を選ぶ「コンピューターポエトリー」を創作しました。彼はこの作品を出版することはありませんでしたが、後の詩にはそのフレーズが取り入れられています。
コーツィーのコンピュータへの重要な貢献にもかかわらず、彼のプログラミングの過去は学者たちにあまり注目されていません。彼の自伝的な著作『ユース』では彼の経験が簡単に触れられていますが、アトラス2プロジェクトでの役割やコンピュータへの関心は広く認識されていません。
研究者のレベッカ・ローチは、ランソムセンターでコーツィーの文書を調査し、機械語やFORTRAN、個人の擬似コードなど、さまざまな形式の複雑なコードを発見しました。また、フロッピーディスクからコーツィーのデジタルファイルにもアクセスし、彼が執筆活動を通じて使用したソフトウェアを理解する手助けとなりました。
ローチの研究は、デジタル文学の読み方や保存方法について重要な問いを提起しています。特に、ますます多くの作家がデジタル作品を創作する中で、彼女のプロジェクト「マシーン・トーク」はデジタル文学におけるコミュニケーションに焦点を当て、これらの問題に光を当てることを目指しています。
59.分散最小化の平均重み(Weighting an average to minimize variance)
投資において、100ドルを2つの資産、AとBに分ける場合、AがBよりもリスクが高い(変動が大きい)とすると、全額をAに投資するのは良くありません。むしろ、より安全な資産Bに多くの資金を投じつつ、Aにも少しは資金を配分するのが最適な方法です。
最適な配分を見つけるために、2つの資産を表す変数XとYを考えます。リスクを最小限に抑えるために、投資の一部(t)を配分したいと考えます。このtは0から1の間である必要があります。一般的なルールとして、Yの方がXよりも変動が少ない場合、Xには少ない金額を投資すべきです。両者の変動が同じであれば、投資を均等に分けます。Xの方がリスクが高い場合は、より少ない割合で投資します。
この考え方は、2つ以上の資産にも応用できます。複数の資産の場合、ラグランジュの未定乗数法という数学的手法を用いて、リスクを最小化しつつ、総投資額が1になるような最適な配分を見つけます。この解法は、すべての資産の変動に基づく方程式のシステムを含みます。
この要約は、全体のリスクを減少させるために投資を分散させることの重要性を強調しています。
60.アメリカの計算革命(Computing Across America (1983-1985))
コンピューティング・アクロス・アメリカの旅は、1983年にスティーブン・K・ロバーツによって始まりました。彼は、テクノロジーと冒険を融合させたノマドライフスタイルを求めていました。当時、コンピュータや通信はまだ未発達で、携帯電話もなく、オンラインサービスも限られていました。30歳のロバーツは、クライアントとつながるために、ポータブルコンピュータを搭載した太陽光発電のリカンベントバイクで旅に出ました。
当初はハイテクな自転車ツアーとして計画されていましたが、メディアはロバーツの移動性とテクノロジーのユニークな組み合わせに魅了され、彼の旅はキャリアへと変わりました。彼は『コンピューティング・アクロス・アメリカ』という本を書き、旅の途中でさまざまな雑誌に記事を寄稿しました。彼は17,000マイル以上を旅しました。
テクノロジーが急速に進化する中、ロバーツは装備をアップグレードし、ラジオシャックのモデル100からヒューレット・パッカードのポータブルコンピュータに移行しました。これにより、彼は走行中でも仕事ができるようになりました。シリコンバレーで10,000マイルに達した後、彼は旅を一時中断し、本の執筆と装備の強化に取り組みました。
ウィネビコバイクは、軽量フレームやシンプルな電子機器を備えた設計で、彼のテクノマディックな冒険を支えるものでした。この経験は、人々が移動中にどのように働き、つながることができるかに大きな変化をもたらしました。
61.$5プラネットスケール始動!($5 PlanetScale is live)
PlanetScaleは、月額5ドルで利用できる単一ノードのPostgresデータベースを発表しました。このデータベースは生産環境に適しており、スタートアップやサイドプロジェクト、開発作業に最適です。顧客は、クエリインサイトやスキーマの推奨、信頼性などの機能も利用できます。
さらに、開発用ブランチの価格が月額10ドルから5ドルに引き下げられ、ステージングや開発環境の構築がより手頃になりました。
プロジェクトが成長するにつれて、データベースのスケールアップも簡単に行えます。単一ノードのデータベースのサイズを増やすことも、高可用性(HA)モードに切り替えて追加のレプリカを利用することも可能です。PlanetScaleは、さらなるスケーリングオプションとして、シャーディングされたPostgresソリューション「Neki」の導入も計画しています。
始めるには、PlanetScaleのアカウントにサインアップし、データベース設定時に「単一ノード」を選択してください。価格の詳細は、価格ページをご覧ください。
62.片手キーボード(One Handed Keyboard)
ある人が、事故で右手の機能を失った娘のために、片手用のキーボードを作る手助けを求めてきました。これにより、タイピングが非常に困難になっています。
このキーボードは、トラックボールを備えたメカニカルデザインで、QMKファームウェアを使用しています。主なリソースは以下の通りです。
キーボードモデルには、左手用と右手用の三つのデザインがあり、詳細なPCB(プリント基板)の回路図が含まれています。ファームウェアとしては、QMKファームウェアとキーボード用の設定ファイルが提供されています。また、組み立てガイドやハードウェアの仕様書も用意されています。
ハードウェアの構成要素には、左手用と右手用の異なるタイプのPCBが含まれています。トラックボールやマウスホイール、制御基板などの部品も指定されています。キーキャップやハウジング、その他の部品を印刷するための材料もリストアップされています。
組み立て手順には、PCBの接続方法、部品の取り付け、ファームウェアのプログラミングに関するガイドラインが含まれています。すべての部品が正しく機能することを確認した上で、最終的な組み立てを行う手順が示されています。
このプロジェクトはオープンソースであり、今後の改良のためにフィードバックを歓迎しています。
63.ネバダ州知事の隠蔽(Nevada Governor's office covered up Boring Co safety violations)
イーロン・マスクが設立したボーリングカンパニーは、トンネル内での訓練中に二人の消防士が化学薬品によるやけどを負ったことを受けて、大きな罰金を科せられました。ネバダ州の労働安全機関から40万ドル以上の罰金を受け取った直後、同社の社長スティーブ・デイビスがネバダ州知事のオフィスに連絡し、罰金がわずか1日で取り消されました。この迅速な対応は、規制プロセスにおける政治的介入への懸念を呼び起こしました。通常の手続きが守られず、事件に関する書類が行方不明になったためです。
罰金が取り消されたにもかかわらず、ボーリングの建設現場では安全問題が続いており、従業員は日常的に化学薬品によるやけどや事故を報告しています。元従業員は、安全プロトコルがしばしば無視される「カウボーイ文化」について語りました。ネバダ州の労働安全衛生局(OSHA)の職員は、安全規則を施行することによる報復を恐れており、ボーリングの調査に関与した二人の従業員が懲戒処分を受けた後、特にその懸念が強まっています。
ボーリングカンパニーはラスベガスで地下交通システムの開発に取り組んでおり、かなりの投資を受けていますが、最近の出来事は監視と安全対策に疑問を投げかけています。批評家たちは、OSHAのケースに高官が関与することが、同機関の独立性と安全な労働条件を確保する効果を損なうと主張しています。
64.AIの世界時計(AI World Clocks)
毎分、九つの異なるAIモデルが新しい時計を作り出しています。
65.温暖化と硫化水素の脅威(Is our death from a hydrogen sulfide event inevitable in climate warming? (2005))
約2億5100万年前にシベリアで起きた火山の噴火が、一連の出来事を引き起こし、海洋と大気中の硫化水素の濃度を最高レベルにまで高めました。このことが、地球史上最大の大量絶滅であるペルム紀末の絶滅を引き起こしたと研究者たちは示唆しています。
地球科学者のリー・R・カンプは、これらの噴火から放出された二酸化炭素が地球を温暖化させたものの、それだけでは大量絶滅を引き起こすには不十分だったと説明しています。むしろ、この温暖化により海洋の酸素濃度が低下し、海洋生物に影響を与えました。通常、冷たい水は酸素を吸収し、海を循環しますが、温かい水は酸素をあまり保持せず、その動きも遅くなります。
酸素が減少することで、海洋は好気性生物を支えることができなくなり、硫化水素を生成する細菌が増加しました。この有毒な化合物は、ほとんどの海洋生物や陸上生物を死に至らしめました。カンプは、硫化水素が豊富な大気が絶滅をよりよく説明できると述べています。なぜなら、二酸化炭素は陸上植物に害を及ぼさないからです。
さらに、硫化水素の増加はオゾン層を破壊し、有害な紫外線が大気中に侵入する原因となった可能性があります。これにより、硫化水素やメタン、強い放射線に満ちた環境が生まれ、絶滅をさらに助長しました。
現在、研究者たちは海洋の堆積物の中に特定の細菌の痕跡を探しており、硫化水素がこの大量絶滅事件に果たした役割を示すさらなる証拠を得ようとしています。
66.ユビキティの激安スイッチレビュー(Ubiquiti Flex Mini 2.5G Review Ubiquiti Does a Cheap 5-Port 2.5GbE Switch)
Ubiquiti Flex Mini 2.5Gは、効率的なネットワーキングのために設計されたコンパクトな5ポートスイッチです。この製品の特徴は以下の通りです。
サイズは非常に小さく、4.6インチ x 3.5インチ x 0.8インチで、同カテゴリーの中でも最も小型の一つです。このため、冷却に関する課題があるかもしれません。電源供給のオプションとしては、5番ポートを通じてPower over Ethernet(PoE)での給電が可能で、またUSB Type-C入力でも電源を供給できます。
性能面では、Realtekのチップセットを搭載しており、他の手頃な価格のスイッチでもよく見られるもので、信頼性の高いパフォーマンスを提供します。デザインについては、プラスチック製の筐体に通気口はありませんが、カスタムヒートスプレッダーが搭載されており、低電力ながら効果的に熱を管理します。
このレビューは、Ubiquitiの事前承認なしに独立して行われており、公正な評価がなされています。全体として、Flex Mini 2.5Gは、小型でありながら機能的なネットワークスイッチを必要とするユーザーにとって、コストパフォーマンスに優れた選択肢を提供します。
67.Meta Replaced the Native WhatsApp for Windows 11 with a Shitty Web App(Meta Replaced the Native WhatsApp for Windows 11 with a Shitty Web App)
要約がありません。
68.Designing a Language (2017)(Designing a Language (2017))
要約がありません。
69.Why export templates would be useful in C++ (2010)(Why export templates would be useful in C++ (2010))
要約がありません。
70.AMD continues to chip away at Intel's x86 market share(AMD continues to chip away at Intel's x86 market share)
要約がありません。
71.メアリーおばさんの物語(Aunt Mary's Storybook)
アント・メアリーのストーリーブックは、子どもたちが刑務所にいる親や親戚とのつながりを保つ手助けをするプログラムです。このプログラムでは、子どもたちが愛する人の声で物語を聞くことができます。1993年にシカゴのクック郡刑務所で始まり、現在では14の施設に拡大し、親の投獄による感情的な影響に対処する手助けをしています。
このプログラムの仕組みはこうです。刑務所にいる親や祖父母が本を選び、ボランティアの助けを借りて自分の声で読み上げた録音を作ります。その録音と本を子どもに送ることで、離れていても愛されていると感じられるようになります。
このプログラムはイリノイ州内のさまざまな刑務所や矯正施設で活動しています。支援者は、月に10ドルを寄付することで、より多くの家族がこの大切なつながりの恩恵を受けられるよう手助けできます。
72.History and use of the Estes AstroCam 110(History and use of the Estes AstroCam 110)
要約がありません。
73.VPN禁止法案(Lawmakers want to ban VPNs)
ウィスコンシン州とミシガン州の議員たちは、新たな年齢確認法を推進しています。この法律は、特定のオンラインコンテンツにアクセスするために仮想プライベートネットワーク(VPN)の使用を禁止する可能性があります。法律の目的は、子供たちを守ることで、ウェブサイトにユーザーの年齢を確認させ、VPN接続をブロックすることです。しかし、これは技術的に難しく、多くの正当なユーザー、例えば企業や学生、脆弱な立場にある人々に悪影響を及ぼす可能性があります。
提案されているウィスコンシン州の法案は、「未成年者に有害」とされる内容の定義を拡大し、教育的または芸術的な資料の広範な検閲を引き起こす可能性があります。もしこの法案が通過すれば、企業や学生は重要なリソースにアクセスするのが難しくなり、ウェブサイトにアクセスするために個人情報を提出しなければならないため、プライバシーの懸念が高まります。
VPNをブロックすることは、プライバシーの大きな問題を引き起こし、ユーザーのデータが漏洩や監視にさらされる危険性があります。また、人々は商業用でないVPNや他の方法を使って法律を回避する可能性が高いです。批評家たちは、これらの法律がプライバシーを守るのではなく、逆に脅かすものであり、政府によるインターネットの管理の危険な前例を作る可能性があると主張しています。
子供たちをオンラインで安全に保つための解決策は、すべての人のプライバシーを妥協することではありません。議員たちは、プライバシーの権利を攻撃するのではなく、教育や親のための適切なツールに焦点を当てるべきです。ウィスコンシン州の住民は、法案に反対するために自分の上院議員に連絡するよう呼びかけられています。
74.C言語のジェネリクス入門(How to write generics in C)
C言語はジェネリクスをネイティブにサポートしていませんが、既存のツールを使って型安全なジェネリクスを実装することができます。いくつかの一般的な方法を紹介します。
まず、関数のようなマクロを使う方法があります。例えば、#define vector_push(vector, item) vector.buf[vector.idx++] = item;という形です。しかし、このアプローチは型が緩くなったり、インライン化の問題が生じる可能性があります。
次に、ボイドポインタを使う方法もあります。例えば、void vector_push(Vector vec, void *item);のように記述しますが、これでは型安全性が失われ、未定義の動作が発生することがあります。
また、ディスパッチ特殊化を利用して、特定の型のための関数をマクロで作成する方法もありますが、これによりIDEのオートコンプリート機能が壊れることがあります。
推奨されるアプローチは、ヘッダーのインスタンス化を使用することです。これは型安全で、マクロに依存しません。具体的には、アイテムの型とオプションのサフィックスを定義します。例えば、#define VEC_ITEM_TYPE long longと#define VEC_SUFFIX numを使い、#include "vector.h"を追加します。これにより、vector_push_numのような特化した関数が作成されます。
命名を管理するためにマクロを使用することもできます。例えば、#define G(name) name##_##VEC_ITEM_TYPEという形です。また、アイテムの型が定義されていることを強制し、誤用を防ぐために、#ifndef VEC_ITEM_TYPEと#error VEC_ITEM_TYPE was not definedを使います。
関数を実装する際には、正しい命名を確保するためにGマクロでラップします。
課題としては、同じヘッダーが複数回含まれると再宣言エラーが発生することがあります。この問題を解決するために、実装をチェックするパターンを使用できます。例えば、#ifndef VEC_IMPLEMENTATIONとbool G(vec_pop)(G(vec_Vector) *vec, VEC_ITEM_TYPE *dest);のように記述します。
同じ型でヘッダーを複数回含めると再宣言エラーが発生するため、ヘッダーの最後で型定義を未定義にすることで回避できます。
最終的なヘッダーには、正しい使用を保証し、複数回のインクルードによるエラーを防ぐために必要なすべての定義とチェックを含めるべきです。このアプローチにより、Cコードにジェネリクスを柔軟に追加しながら、型安全性を維持することができます。
75.獣の本質:ルブランの人獣 hybrids(The Nature of the Beast: Charles Le Brun's Human-Animal Hybrids (1806))
シャルル・ル・ブランは17世紀の画家で、動物の特徴を使って人物の性格を表現する独特な肖像画を制作しました。例えば、「牛の顔を持つ男」は勤勉そうに見え、「狐の顔を持つ男」は泥棒のように感じられます。このアプローチは、ルイ14世のヴェルサイユ宮殿を飾る大規模なプロジェクトにおいて、さまざまな社会階級を作品で区別するのに役立ちました。
ル・ブランはパリの芸術界において影響力があり、ゴブラン工房や王立絵画彫刻アカデミーなどの重要な機関を共同設立しました。1671年には人間と動物の顔相について講義を行いましたが、その原文は失われてしまいました。後に、彼の弟子クロード・ニヴロンのノートを基にした出版物が、これらの考えを再構築しようとしました。
ル・ブランの作品には、感情を描写するための方法が含まれており、これはルネ・デカルトの心と体の関係に関する理論に影響を受けています。この方法は、アーティストが顔の表情を通じて感情を表現する必要性を強調し、以前の無表情な描写からの脱却を促しました。
この出版物では、性格に関連する身体的特徴についても触れています。例えば、鼻の形がその人の性格を示すことがあるとされていますが、これは道徳的な教訓ではないと強調されています。むしろ、特定の身体的特徴が特定の性格特性と関連していることを示唆し、芸術的理解を深めることを目的としています。例えば、目立つ鼻は英雄的な性格と関連付けられることが多く、他の形状は異なる気質を示すことがあります。
76.インターネットの主力TCP(TCP, the workhorse of the internet)
この記事では、インターネットを信頼性のある機能的なものにするためのTCP(Transmission Control Protocol)の重要性について説明しています。
TCPは、インターネット上で送信されるデータが信頼性が高く、順序通りで、破損していないことを保証するために不可欠です。TCPは、IP(Internet Protocol)などの他のプロトコルと連携して、アプリケーション間のデータフローを管理します。
IPはパケットを正しいホストに届けることができますが、特定のアプリケーションへのデータの配信方法を管理することはできません。TCPは、パケットの損失やデータの破損、順序の入れ替えといった問題を処理し、開発者がこれらの複雑さを気にせずにアプリケーションの構築に集中できるようにします。
TCPはフロー制御を使用して、受信側の機械のストレージ容量を圧倒しないようにします。また、ネットワーク全体のデータフローを管理するために混雑制御を実施し、過負荷の状況を避けることで、重大な遅延を防ぎます。
TCPは、三者間ハンドシェイクと呼ばれるプロセスを通じて接続を確立し、シーケンス番号と確認応答番号を使用してデータの送信を追跡します。これにより、すべてのデータが受信され、必要に応じて順序を入れ替えることができます。
この記事には、基本的なTCPサーバーとHTTPサーバーをTCPを使用して設定する方法を示すコード例が含まれています。クライアント-サーバーモデルにおけるデータの送受信の仕組みが強調されています。
TCPはデータの整合性を確認するためのチェックサムを含み、接続を管理するためのさまざまなフラグを使用します。これには、接続の確立や終了が含まれます。
著者は、信頼性のあるインターネット通信を可能にする技術に対する感謝の意を表し、過去数十年の間における重要な進歩について言及しています。
全体として、TCPはインターネット通信の基本的な要素であり、データが正確かつ効率的に送信されることを保証しています。
77.新しいDOM変形アルゴリズム(I made a better DOM morphing algorithm)
著者は、現在の状況が以前よりも良くなっていると考えていますが、同時に重要な点を見落としている可能性があることも認めています。
78.Major Bitcoin mining firm pivoting to AI(Major Bitcoin mining firm pivoting to AI)
要約がありません。
79.Strap Rail(Strap Rail)
要約がありません。
80.ハスケルのループ(Löb and Möb: Loops in Haskell (2013))
「quchen」というプロジェクトリポジトリには、Haskellプログラミングに関連するさまざまなファイルが含まれています。このリポジトリは93のフォークと1.3kのスターを持ち、人気の高さを示しています。Markdownファイルには、Haskellに関する質問、モナド、関数、スタイルガイドなどのトピックが取り上げられています。また、「hindley-milner」や「applicative monad」、「lens infix operators」といったHaskellの概念に関連するディレクトリやファイルも存在します。
ユーザーは通知設定を変更するためにサインインする必要があり、ページの読み込み中にエラーが発生することもあります。ナビゲーションオプションには、コード、問題、セキュリティに関する情報が含まれています。このリポジトリは、Haskellプログラミングのリソースや議論に焦点を当てています。
81.Structured outputs on the Claude Developer Platform(Structured outputs on the Claude Developer Platform)
要約がありません。
82.ウェブ改造ツール(Tweeks (YC W25) – Browser extension to deshittify the web)
ジェイソンとマットは、Tweeksというブラウザ拡張機能を開発しています。これにより、ユーザーは簡単にウェブサイトをカスタマイズできるようになります。従来のユーザースクリプトマネージャーとは異なり、Tweeksでは、やりたいことを普通の言葉で説明するだけで変更が可能です。このツールは、広告や不要なコンテンツであふれたウェブを整理することを目指しています。
Tweeksはもともと個人的なプロジェクトとして始まりましたが、ユーザーの関心が高まり成長しています。例えば、「クッキーバナーを非表示にする」や「価格スコアを追加する」といったリクエストを入力することで、ウェブサイトを変更できます。AIがリクエストを確認し、変更を適用します。これらの変更は保存したり、オンオフを切り替えたり、他の人と共有したりできます。
Tweeksの機能の一例として、YouTubeのショート動画を削除したり、Hacker Newsの投稿をフィルタリングしたり、Googleのテーマを1970年代の端末風に変更することが挙げられます。このサービスは現在無料ですが、各アクションにトークンを使用して過剰な利用を制限しています。
ユーザーは自分の作成物を共有し、フィードバックを提供することが奨励されています。開発者たちはツールの改善を続けています。Tweeksの詳細は、tweeks.ioで確認できます。
83.Feature Extraction with KNN(Feature Extraction with KNN)
要約がありません。
84.Windhawk Windows classic theme mod for Windows 11(Windhawk Windows classic theme mod for Windows 11)
要約がありません。
85.Steam Machine(Steam Machine)
要約がありません。
86.ASLR突破!ROPでRCE獲得(No Leak, No Problem – Bypassing ASLR with a ROP Chain to Gain RCE)
マイケル・インフェルドのブログ記事では、最新のIoTデバイス、特にIN-8401 2K+ IPカメラに関する高度な悪用技術が紹介されています。この研究は、ファームウェアの抽出、脆弱性の特定、そしてそれを利用して認証なしでリモートコード実行(RCE)を達成することに焦点を当てています。
対象デバイスはIN-8401 2K+ IPカメラで、ウェブインターフェースを持ち、他のINSTARモデルと共有されるファームウェアがあります。オンラインでは12,000台以上のこのデバイスがアクセス可能です。ファームウェアへのアクセスは脆弱性分析において重要です。著者はUARTインターフェースを使用してカメラのブートローダーにログインし、ルートアクセスを得ることを目指します。
著者は、認証なしでウェブリクエストを処理する2つの重要なコンポーネント、fcgi_serverとipc_serverを特定します。これにより、脆弱性を探すための基盤が整います。悪用技術としては、ファジングや静的・動的分析を用いて、fcgi_serverにおけるスタックベースのバッファオーバーフローを見つけます。バッファオーバーフローを悪用するために、リターン指向プログラミング(ROP)チェーンを構築します。これにより、アドレス空間配置のランダム化(ASLR)を回避します。
著者は、バイナリからのガジェットを使用してROPチェーンを開発し、メモリを操作して任意のコードを実行します。このチェーンには、グローバルオフセットテーブル(GOT)のエントリを読み取り、system関数のアドレスを計算して実行するステップが含まれています。GOTへの書き込みにより、system関数へのリダイレクトが可能になり、コマンドの実行につながります。
この悪用により、デバイス上でルートシェルを取得することに成功しました。脆弱性はINSTARに責任を持って開示され、修正が行われました。全体として、この投稿は現代のIoTセキュリティの複雑さ、徹底的なテストと分析の重要性、そしてサイバーセキュリティ研究における責任ある開示の必要性を強調しています。
87.A new Google model is nearly perfect on automated handwriting recognition(A new Google model is nearly perfect on automated handwriting recognition)
要約がありません。
88.EUチャット規制の復活(The disguised return of EU Chat Control)
この記事では、オンラインコミュニケーションを監視することを目的とした新しいEUの規制についての懸念が述べられています。この規制は「チャットコントロール」と呼ばれることもあります。パトリック・ブライヤー氏は、これらの措置が私的なメッセージのスキャンや若者のアクセス制限につながる可能性があると警告しています。彼は、これらの行動が欺瞞的であり、個人のプライバシーを侵害するものであると考えています。全体として、これらの規制が個人の自由やプライバシー権に与える潜在的な悪影響が強調されています。
89.Manganese is Lyme disease's double-edge sword(Manganese is Lyme disease's double-edge sword)
要約がありません。
90.小さな拡散モデル(Tiny Diffusion – A character-level text diffusion model from scratch)
このテキストは、テキスト生成のために設計された言語モデルについて説明しています。具体的には、キャラクターレベルの拡散モデルです。このモデルは、NanochatのGPTモデルの改良版に基づいており、Tiny Shakespeareを使用して訓練されています。モデルは比較的小さく、パラメーター数は1070万しかないため、ローカルのコンピュータでも簡単に動かすことができます。
91.How the Spoils of an Infamous Heist Traveled the World(How the Spoils of an Infamous Heist Traveled the World)
要約がありません。
92.Streaming AI agent desktops with gaming protocols(Streaming AI agent desktops with gaming protocols)
要約がありません。
93.Linux用非公式Teams(Unofficial Microsoft Teams client for Linux)
Teams for Linuxは、Linuxユーザー向けに設計された非公式のMicrosoft Teamsクライアントです。このデスクトップアプリは、Linux向けにウェブ版Teamsの機能を強化しています。主な機能には、システム通知、システムトレイへの統合、カスタム背景やテーマ、画面共有、複数アカウントのプロフィールサポートがあります。このプロジェクトは独立しており、公式のTeamsアプリと比べていくつかの制限があります。
インストール方法としては、DebianやUbuntu、RHELやFedoraのパッケージリポジトリを利用するか、GitHubからさまざまな形式で手動でダウンロードすることができます。
完全なドキュメントが用意されており、インストール、設定、トラブルシューティングなどについて詳しく説明されています。
サポートに関しては、コミュニティチャットに参加したり、問題を報告したり、プロジェクトに貢献することができます。
セキュリティの向上のためには、Electronの機能だけに頼るのではなく、FlatpakやSnapパッケージのようなシステムレベルのサンドボックス手法を使用することが推奨されています。
このプロジェクトはGPL-3.0のライセンスの下で提供されています。
94.インカスOS: 不変のLinuxハイパーバイザー(Incus-OS: Immutable Linux OS to run Incus as a hypervisor)
IncusOSは、ユーザー体験とパフォーマンスを向上させるために設計された新しいオペレーティングシステムです。このシステムは、シンプルさ、効率性、そしてセキュリティに重点を置いています。スムーズなインターフェースとアプリケーションへの迅速なアクセスを提供し、誰にとっても使いやすいことを目指しています。主な特徴としては、速度の向上、リソース管理の改善、そしてユーザーデータを保護するための強力なセキュリティ対策があります。全体として、IncusOSは現代のユーザーのニーズに応えるために、使いやすさと信頼性を重視して構築されています。
95.言葉以上の響き(Can text be made to sound more than just its words? (2022))
キャプションは、言葉が大きく話されたり、小さく話されたり、異なるトーンで話されたりしても、同じように表現されることが多く、重要な声のニュアンスが失われることがあります。この問題を解決するために、研究ではキャプションに視覚的要素を追加して、声の特性を示すことを提案しています。具体的には、フォントの太さやベースラインの変更、文字間隔の調整などのタイポグラフィの変化を用いて、音声の抑揚や大きさ、音の高さを反映させる方法です。117人の参加者を対象に行った評価では、この改良されたタイポグラフィに触れた人々は、元の音声と平均65%の精度で一致させることができました。アニメーションテキストと静的テキストのパフォーマンスには大きな差はなく、参加者は音声に応じたタイポグラフィについてさまざまな意見を持っていました。
96.営業利益率(Operating Margins)
営業利益率は、営業費用を差し引いた後に残る収益の割合を示す財務指標です。これにより、企業が売上からどれだけの現金を保持しているかを理解することができます。
営業利益率の分析から得られる洞察として、高い営業利益率はしばしばビジネス戦略に影響を与えます。例えば、アマゾンは高い利益率を持つクラウドサービス(AWS)に注力し、グーグルは広告ビジネスを優先しています。1万社以上の公開企業のデータを分析した結果、中央値の営業利益率は約10%ですが、大企業は高い利益率のためにこの数値を歪めることがあります。
ビジネスのカテゴリーにはいくつかのタイプがあります。独占的な業種では、料金所運営や証券取引所のように厳しく規制されているセクターが平均して非常に高い利益率(約49%)を示します。準独占的な企業、例えばNvidiaやMastercardは、競争が難しい大きな資本要件があるため、高い利益率(それぞれ61%と54%)を持っています。セメントやクルーズ業界のような「奇妙な独占」も、低技術でありながら驚くほど高い利益率(15-16%)を示しています。フランチャイズビジネスであるピザ業界は、強い利益率(20%)を持ち、LVMHのような高級ブランド(21%)と似たような水準です。また、高価値の製品を生産する企業、例えば健康補助食品を扱う会社は、高い利益率(37%)を達成しています。
国別の比較では、営業利益率には顕著な違いがあり、資源が豊富な国ほど高い利益率を示す傾向があります。例えば、南アフリカの平均利益率は82%ですが、アメリカは22%とかなり低いです。イスラエルは、多くの利益を上げていないスタートアップが存在するため、負の利益率が目立ちます。
営業利益率を理解することは、企業の財務状況や競争力を示すため非常に重要です。一般的に、高い利益率はより良い収益性と成長の可能性を示唆します。この分析は、営業利益率に基づくビジネス行動のパターンを明らかにし、さまざまな業界における企業評価におけるこの指標の重要性を強調しています。
97.$10k RTX Pro reportedly snaps under its own weight during transit($10k RTX Pro reportedly snaps under its own weight during transit)
要約がありません。
98.線形代数と翻訳の壁(Linear algebra explains why some words are effectively untranslatable)
一部の言葉は実質的に翻訳できないという主張があり、数学の線形代数の比喩を用いてこの概念を説明しています。著者のマルコ・ジャンコッティは、言語とベクトルの類似性を強調し、ベクトルが選ばれた基底によって異なる表現を持つように、言語の概念も使用される言語によって異なる形で表現されることを示しています。
まず、ベクトルと概念についてです。ベクトルは抽象的な対象であり、選ばれた基底によって異なる方法で表現されます。これは、概念がさまざまな言語で異なる形で表現されるのと似ています。
次に、言語は抽象的な概念を表現するための枠組みとして機能します。これは、基底がベクトルの表現を可能にするのと同じです。異なる言語では、同じアイデアを伝えるために必要な言葉の数が異なることがあります。
翻訳できない言葉についても触れています。ある言葉は、一つの言語で特定の意味を持ち、他の言語では単一の同等の言葉で表現できないことがあります。例えば、日本語の「もののあわれ」という言葉は、英語で説明するには複雑なアイデアを含んでいます。
翻訳の限界についても言及されています。翻訳者は、時間やスペースの制約から意味を簡略化することが多く、これがニュアンスの喪失につながることがあります。また、言語には有限の単語しかないため、表現の精度が制限されます。
認知的な観点からも考察されています。コンパクトな言葉を持つことで概念を考えやすくなりますが、翻訳することで元の意味が薄れる可能性があります。
ジャンコッティの比喩は、ベクトルに対する数学的操作は異なる表現でも一貫しているのに対し、言語の翻訳はより複雑であり、一部の言葉は言語間の本質的な違いのために翻訳できないことを示しています。
99.バチカンのAI報告(New Vatican document examines potential and risks of AI (Jan, 2025))
バチカンは「アンティクア・エト・ノヴァ」という文書を発表しました。この文書は人工知能(AI)と人間の知能の関係について探求しています。バチカンの二つの教義局が作成したこの文書は、教育、経済、労働、健康、人間関係、戦争などのさまざまな分野におけるAIの潜在的な利点とリスクを強調しています。
AIの可能性とリスクについては、AIが生産性を向上させ、サービスへのアクセスを広げる一方で、仕事の減少や自動監視、特に自律型兵器における倫理的な懸念などのリスクもあると指摘されています。
文書はAIと人間の知能を区別しており、AIを人間のような知能と誤解しないよう警告しています。AIは良い使い方もあれば悪い使い方もあり得ると述べています。
社会的な懸念として、AIは差別や貧困、社会的不平等を悪化させる可能性があり、特に少数の強力な企業によって制御される場合にはその影響が大きいとされています。
軍事用途におけるAIの使用は深刻な倫理的問題を引き起こし、自律型兵器の禁止を求める声が上がっています。これらの兵器は人類に対する脅威となる可能性があります。
人間関係においては、AIが孤立や倫理的な違反を引き起こす可能性があり、特に人間として誤解される場合には教育や個人的な関係に影響を及ぼすことがあります。
医療や教育の分野では、AIが改善の可能性を持つ一方で、賢く使わなければ個人の対話や批判的思考を損なうリスクもあると警告しています。
また、文書はAIが偽情報を広める役割を果たすことや、プライバシーや個人データの管理に対するリスクについても警鐘を鳴らしています。
環境への影響についても触れられており、AI技術は高いエネルギー消費や資源の使用によって環境に負担をかけています。
バチカンは、AIは人間の知能を補完するものであり、置き換えるものではないと強調し、技術への過度な依存に対する警告を発しています。
全体として、この文書はAI技術の開発と適用において慎重な考慮と倫理的な監視が必要であると呼びかけています。
100.ゴーの甘い16歳(Go's Sweet 16)
2025年11月10日、Goプログラミング言語はオープンソースとしてのリリースから16周年を迎えました。Goチームは新しいバージョンを継続的にリリースしており、2月にはGo 1.24、8月にはGo 1.25を発表しました。これらのバージョンでは、生産性、安全性、パフォーマンスの向上に重点が置かれています。
主な改善点には、まず新しいtesting/synctestパッケージがあり、これは並行コードのテストを簡素化し、より迅速で信頼性の高いテストを可能にします。次に、Go 1.25ではコンテナに対応したスケジューリングが導入され、開発者の負担を増やすことなくパフォーマンスが最適化されました。また、フライトレコーダー機能により、運用システムの最近のイベントを詳細に記録し、トラブルシューティングを容易にします。さらに、Goは暗号化パッケージを強化し、CAVP認証を取得し、FIPS 140-3準拠に向けた取り組みを進めています。パフォーマンスの向上としては、マップの実装が再設計され、新しいガーベジコレクタ「グリーンティー」によりオーバーヘッドが大幅に削減されました。
Goチームは、gopls言語サーバーを含むソフトウェア開発ツールの強化にも取り組んでおり、これによりより良いコーディングプラクティスをサポートし、AIコーディングアシスタントとの統合が進められています。Goコミュニティはこれらの開発に積極的に関与しており、チームはオープンソースの協力の価値を維持しながらプラットフォームの改善を続けることを目指しています。
今後、Goは開発者の生産性を向上させる新しいツールや、最新のハードウェアへの対応、コアライブラリの継続的な改善を計画しています。Goチームは、ユーザーや貢献者のニーズに応えるために言語を進化させることにコミットしています。