私の ADHD 診断書のリバースエンジニアリング

2026/08/28 1:49

私の ADHD 診断書のリバースエンジニアリング

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

改善された要約: 友人が自閉症や注意欠如・多動性障害(ADHD)の診断について話し合った後、ユーザーは精神科医から管理されるオンライン ADHD 評価を行いました。DevTools と公開 API アクセスによるリバースエンジニアリングを通じて、著者はシステムアルゴリズムがこのユーザーを「非常に衝動的」とフラグ化したのは、本物の認知機能の欠如而是因为ではないが、タイミングデータ、ウィンドウフォーカスの喪失、そしてユーザー疲労による軽微なボタンスパムなどといった堅固な指標に基づいていることを発見しました。スパム実行(低信用度)とフォーカス実行(良好な集中にもかかわらず高い衝動性フラグ)を比較した制御実験により、プラットフォームの採点モデルが環境上の妨害や通常の人間のエラーを考慮できていないことが明らかになりました。友人は問題なくテストを完了させた一方、著者の特定のパフォーマンスパターンは精神科医によって高衝動性の ADHD を示すものとして解釈されました。この研究は、現在のデジタル診断モデルが正常な人間のエラーを病状化するリスクを負っており、臨床的診断を発する前に単純な自動行動追跡を超えて進化させる必要があると結論付けます。

本文

ADハブテストのリバースエンジニアリング:衝動性の解析と診断の検証

2026 年 8 月 27 日(木)
著者:veritasStargazing

ある夜、友人との会話中に鮮明な星空を見て、「双眼鏡が欲しい」という衝動的な衝動から Amazon で注文しました。しかし過去の趣味は長く続きませんでした。友人の自閉症スペクトラム診断を受け、自分も**ADHD(注意欠如・多動症)**の有無を評価することに決めました。精神科医からのアドバイス「治療されていない ADHD はうつ病や不安障害と併存する可能性がある」を受け、オンラインでの自己診断テストを開始しました。


テストの実施:Flash 風 UI とハートカード反応

指示

  • 白画面に赤いハート 3 つのカードが表示されたら
    Space
    キーを押す
  • それ以外は無操作
  • タイマーやスコアなし、即時反応必須

経過

  1. ハートのカード出現たびに
    Space
    を連打
  2. 他のクリップアート(混乱誘発)も表示されるが指示に従う
  3. テスト後半は赤ちゃんの泣き声やサイレンなどが流され続け、終わらないように感じたため無意識に
    Space
    連打してしまった

リバースエンジニアリングのきっかけ

  • 好奇心から**開発者ツール(Chrome DevTools)**を開く
  • ウェブソースコードと外部リクエストをキャプチャ
  • スクリプト保存後、テスト完了
  • 医師より「来週に結果をお伝えします」と連絡あり

コード解析:入力検出とフォカス管理機構

スペースキー入力の処理ロジック

$(document).keyup(function (evt) {
    keyPressed = false;
    Context.LastPressTime = Context.CurrentTime;
    if (evt.keyCode == 32 || evt.which == 32) {
        Context.spacePressArray.clickTimes.push(adjustedTime);
        console.log('Pushing Space: ' + Context.CurrentTime + ', Adjusted Time: ' + adjustedTime);
    }
    else if (evt.keyCode != 32 && evt.keyCode != 13 ) {
        Context.spacePressArray.badClickTimes.push(adjustedTime);
        console.log('Pushing Bad Press: ' + ', Adjusted Time: ' + adjustedTime);
    }
}).keydown(function (evt) {
    if (!keyPressed) {
        adjustedTime = Context.CurrentTime - Context.Offset;
    }
    keyPressed = true;
});
  • Space
    キー押下時刻を記録
  • 誤入力(他のキー)もすべて記録される仕組み

フォカス損失検出機構

onBlur = function (present_message){
    present_message = (typeof present_message !== 'undefined' ? present_message : true);
    if (!Context.canLooseFocus) {
        Context.LastinFocusTime = Date.now();
        InnerLog.log('Last in Focus Time: ' + Context.LastinFocusTime + ', Last Test Time in Focus: ' + Context.CurrentTime);
        Context.InFocus = false;
        adhd.prototype.addBeep();
        if (present_message) {
            this.outOfFocusAlert.htmlElement.style.visibility = "visible";
        }
    }
};

$(window).focus(function () {
    if (!Context.canLooseFocus) {
        this.outOfFocusAlert.htmlElement.style.visibility = "hidden";
        Context.LostFocusAggregateTime += (Date.now() - Context.LastinFocusTime);
        Context.InFocus = true;
        Context.spacePressArray.lostFocusAggregateTime = Context.LostFocusAggregateTime;
        adhd.prototype.removeBeep();
        InnerLog.log('Aggregate Not in Focus Time: ' + Context.LostFocusAggregateTime + ", at: " + Context.CurrentTime);
        if (Context.LostFocusAggregateTime < 0 || Context.CurrentTime < 0 || Context.startTime < 0) {
            alert(Context.MessageSomethingWentWrong);
        }
    }
});
  • ウィンドウが失焦点(新タブ開閉など)すると検出され、ビープ音が鳴る
  • フォーカス復帰時に累計失焦点時間を記録

年齢別アセット切り替え

if (ageGroup == 'adults') {
    properties = lib.properties_adults;
}
else {
    properties = lib.properties_children;
}

子供向け設定(15 FPS)

  • 解像度:800x600
  • 色:#666666
  • 音源:鳥、ライトセーバー、ボウリング、飛行機など

大人向け設定(24 FPS)

  • 解像度:800x600
  • 色:#999999
  • 音源:救急車、泣く赤ちゃん、車クラッシュ、警察サイレン、ペットボトル栓等

データ収集内容

テストから収集されたデータは以下のみに限定されていました:

  • スペースキー押下時刻
  • 誤入力(
    badClickTimes
    )のタイミング
  • ウィンドウ失焦点時間総計

スコア計算モデル自体はソースコード内に存在しませんでした。


スコアの算出と診断基準

公式サイト記載の説明

「集中力に関する 4 つの異なる指標(Attentiveness: 注意性、Timeliness: タイミング、Hyper-Reactivity: 高反応性、Impulsiveness: 衝動性)について標準化された Z スコアが提供されます。スコアは年齢と性別に一致する基準集団を元に標準化されています。」

4 つの指標の定義

A: Attentiveness(注意性)

  • 指示に従って刺激を適切に評価・反応する能力
  • 不注意な人は焦点がぼけたように見える(離脱状態)
  • 日常生活での困難:授業中の追従、複雑な指示の理解、周囲変化の把握、計算ミス防止など

T: Timeliness(タイミング)

  • 与えられた時間枠内に適切に反応する能力
  • タイミング問題を持つ人は素早い即時対応に失敗しやすい
  • タスク完了に時間差が生まれ、学習材料にギャップが生じる
  • タスクが進むほど集中力低下、継続性喪失

I: Impulsiveness(衝動性)

  • 禁じられた時点で反応する傾向
  • 目の前の状況や結果を検討せずに行動しやすい
  • 監視プロセスが初回反応後だけに依存
  • 典型的な特徴:順番待ち困難、リスク無視の行為

H: Hyper-Reactivity(高反応性)

  • 運動出力の効率的な調節困難
  • 過剰な反応(動き過ぎ、過剰喋り等)を抑制できない
  • 自らの行動の望まぬ結果に気づいても自制が難しい

医師との面接と不正疑い

医師からの質問

  • 「試験をご不正行為は行いませんでしたか?」
  • 「開発者ツールのトラップを使ったことはありますか?フォーカス検出フックを使いましたか?」

私の回答

「最善を尽くしましたが、終盤にはテストが終わらないような気がしてしまい、無意識にスペースキーを押してしまっていました」

医師の見解

  • グラフ値が標準範囲から著しく外れているため不正疑い
  • 「もしあなたが不正を試みたと約束すれば再テストを受け直させてもらえる」と提案
  • 私は「不正は行わないので次週に再テストを予約してください」と返答

再挑戦:集中力維持と自己観察

新しい試み

  • テスト開始 → スペースキー連打(意識的に抑制)
  • 無意識の連打誘惑に抗うよう努力
  • 終了後、医師より「数日以内にお知らせします」

コード内でのレポート送信関数発見

function sendParentReportToClinic(testId) {
    var clinicEmail = $('#clinicEmail').val();
    var data = {"test_id": testId, "clinic_email": clinicEmail};
    $.ajax({
        type: 'POST',
        async: true,
        dataType: 'json',
        data: data,
        url: location.protocol + '//' + location.host + '/api/tests/send_parent_report',
        success: function (data) {
            alert(data.data);
        },
        error: function(error) {
            var errorText = $.parseJSON(error.responseText).message;
            alert(errorText);
        }
    });
}
  • レポート送信にはテスト IDクリニックメールアドレスのみ必要
  • バックエンドが緩いと、任意のメールアドレスでレポート受信可能(理論上)

cURL による試行

curl -X POST 'https://adhd-test/api/tests/send_parent_report' \
   -H 'Accept: application/json' \
   --data-urlencode 'test_id=1010101' \
   --data-urlencode 'clinic_email=email@example.com'
  • レスポンスはログインページ HTML(登録ボタン表示)
  • メールアドレス・パスワード・名前・電話番号で登録可能
  • ダッシュボードにアクセス:クライアント追加、テスト実施が可能

隠されたダッシュボードの発見

  • サービスがプロバイダー向けにトライアルアカウントを作成することを認めていることが判明

制御実験:自己比較と友人検証

計画

  1. スパムシナリオ:初回同様スペースキー連打(不正疑い再現)
  2. 真剣挑戦:意識的に集中し、連打を抑制

自分自身をクライアントとして登録し、招待を送って実行。

スパムテスト結果(連打時)

  • レポートに**「信頼性低い」**ラベル付与
  • 基準集団比較グラフで不審なパターン可視化

真剣挑戦結果(集中維持時)

  • 「信頼性」インジケーターが緑色(素晴らしい)
  • 基準集団比較は概ね妥当
  • 衝動性(Impulsivity)のみ突出(正常値より高い)

Null Ptr 氏(私)のパフォーマンス概要

  • 持続的注意:A,T,H,I で安定
  • 視覚的妨害下:A,T,H,I で安定
  • 聴覚的妨害下:I(衝動性)上昇、A,T,H 安定
  • 複合音響・視覚的妨害:A,T,H,I で安定
  • 高負荷妨害条件:I(衝動性)上昇、T(タイミング)低下、A,H 安定

モデル判断:I(衝動性)の高値により、ADHD の可能性が高いと判定
「他の所見も併せて考慮すると、ADHD の存在確率が上昇している可能性があります」

友人 Haze へのテスト実施

  • Haze 氏の忍耐強さが高く、18 分間スペースキーを押し続ける様子観察
  • 結果:「注意欠如の可能性があるのは低い確率」

Haze 氏のパフォーマンス概要

  • 持続的注意:A,T,H,I で安定
  • 視覚的妨害下:A,T,H,I で安定
  • 聴覚的妨害下:全指標安定
  • 複合音響・視覚的妨害:全指標安定
  • 高負荷妨害条件:T(タイミング)上昇、A,I,H 安定

医師とのフォローアップと診断の受容

医師からの発表

「あなたは確かにADHD を持っており、衝動性が高いことが分かりました」

私の実感

  • 「びっくり Pikachu!」
  • 将来への影響はまだ不確実
  • 過去の学校生活:未診断のまま、コンピュータ科学以外で成績悪化(明白な徴候があったはず)

診断の意義

  • すべての決定の理由とするわけではないが、自己理解の新しい視点を提供
  • 衝動性の高さが行動パターンを説明する

月面の写真:新たな趣味の始まり

最後に、望遠鏡で撮影した月面の写真。Canon EOS R5 × Celestron NexStar 5SE。
新たな趣味として、今回こそ長く続けることを願っています。

同じ日のほかのニュース

一覧に戻る →

2026/09/01 6:10

Google はChrome ウェブストアから MV2 拡張機能を削除し、UBO も含まれます。

## Japanese Translation: Google は、Chrome ウェブストアからすべての Manifest V2 拡張機能の削除を公式に完了し、Manifest V3 への業界全体での大きな移行の最終段階となりました。この決定的な動きは、Google が旧形式と比較してより優れたセキュリティ、プライバシー、パフォーマンスを提供すると主張していることを背景に、Manifest V3 を新基準として確立しています。Chrome バージョン 138 以前のバージョンを使用するユーザーは既存の拡張機能を利用し続けることができますが、ストアから更新を受け取ったり再インストールしたりすることは事実上不可能になっています。この移行は既に uBlock Origin などの人気ツールに影響を及ぼしており、中央集権的なストアからの配布に依存している開発者も影響を受けています。Chrome ウェブストアは Chromium ベースのブラウザの主要なマーケットプレイスであるため、この変更は Brave などの他のプラットフォームにも影響を与えています。Chromium を使用しないブラウザは現在、Google の一元化されたストアではなく独自のバックエンドで特定の拡張機能ホストしなくてはならないため、Brave は Chrome ウェブストアからの削除にもかかわらず、AdGuard、uBlock Origin、uMatrix、NoScript の 4 つの Manifest V2 拡張機能を独自のバックエンド上で引き続きホスティングすることで機能を維持する決断をしました。これらの拡張機能は Brave 内で簡単に有効化できるよう残っていますが、Chromium ベースのブラウザ向けに Chrome ウェブストアで発見可能でもインストール可能でもありません。さらに、Google は影響を受けた拡張機能開発者に対してこれらの削除について通知を行いました。最終的に、デジタル広告とツール分野の景観は、エコシステム全体のユーザーにとって一部の拡張機能の機能を制限する必要があるとしても、より厳格なセキュリティ制御を優先する新しいモデルへと進化しています。

2026/09/01 1:47

セキュリティカメラを自動的な鳥類識別システムに変えました

## Japanese Translation: BirdNet-Go は、既存のセキュリティカメラや RTSP ストリームからのローカル音声分析により、鳥、コウモリ、カエルその他の野生生物を特定するためのセルフホスト型リアルタイム AI システムです。クラウドへの依存なしに動作し、Docker で実行され、Raspberry Pi ハードウェアとも互換性があります。该系统はマルチモデルのローカル推論を活用しており、Google Perch v2(最大 14,795 の種を検出可能)を含むものであり、前世代のモデルに比べて大幅に能力が拡張されています。利用者は標的動物に対して特定のアラートルールを構成でき、新規種の個体が行き来した際に MQTT を経由して Discord または Home Assistant に即時通知を受け取ることができ、これにより庭の生物多様性を効果的に追跡できます。ソリューションにはオプションの iOS 準拠アプリ("BirdNET-Go Companion")が含まれており、リモート視聴に対応し、BirdWeather と連携してコミュニティでのデータ共有が可能となっています。また、カメラ配置を最適化するための視覚的音声レベル分析機能も備えています。プライバシー保護策として、検出された話声中はマイクロフォン入力自動的に遮断され、RTSP フィードを提供するドアベルカメラへの対応も可能ですが、スタンドアロンのビデオドアベルとしては利用できません。コウモリの検出は専用のマイクロフォンを使用することでより高精度となりますが、该系统単独でも南カリフォルニアだけで 418,000 以上の検出イベントと 270 種を超える独特な種の記録に成功しており、平均的な信頼度は約 61% です。GitHub 上にオープンソースプロジェクトとして公開されており、安価な機器を利用した住宅所有者や研究者が生態モニタリングを行うことを民主化しています。

2026/08/28 18:17

動悸を止めてしまうような「狂った蜂蜜」がネット上で販売されています。

## Japanese Translation: 最も重大な危険は、ヒマラヤの崖蜂(*Apis laboriosa*)から採取される「狂ったハチミツ」を、その伝統的な聖なる文脈の外で摂取することにあります。それはグラニートキシンを含んでおり、これは心筋の電気信号への干渉を引き起こし、30〜60 分のうちに危険なほど心拍数と血圧が低下させる自然毒です。かつてネパールガンダキ州の先住民族であるグルング族は特定の儀式のために安全に収穫を行ってきましたが、この専門知識は薄れつつあり、ハチミツは世界的にオンラインで販売されながら、医薬的用量と毒性用量の間にある狭い限界についての十分な警告がないままです。研究者は 1976 年から 2026 年の記録を調査し、2009 年以降の事例を文書化した 27 つの公開論文を特定しました。中毒者の約 72% は中高年の男性で、高血圧や性功能障害への家庭療法として意図的にハチミツを摂取しました。中毒症例はロドデンドロンの花が咲く春に鋭く集中し、年間を通じて最も高い毒素濃度を示します。2013 年以降、韓国やフランスなど国外で発生した事例は診断上のギャップを浮き彫りにしており、患者が摂取を明かさない場合、医師が毒物に不慣れなために治療が遅れることが多くあります。ほとんどの患者は、静脈内補液とアトロピン薬物療法後に 1〜2 日以内に回復しますが、ネパールにおいてこのハチミツを摂取した死者の報告はありません。即時の健康上の脅威に加え、業界は国際プラットフォームにおける安全面の欠陥に苦しんでおり、「狂ったハチミツ」はキロ当たり数百米ドルで販売されています。また、これを産出する蜂は過剰収穫、生息地の破壊、気候変動の影響を受け、個体数が減少しており、人間の安全と種の保全という二重の危機を生み出しています。