
はてなキーワード:デバッグとは
rng_58がおすすめする練習の仕方 - 黄色になるために - AtCoderInfo
と
コーディング練習会参加マニュアル(一般社団法人ソフトウェアエンジニアリング協会) - Google ドキュメント
異常なほど同じこと言っている
| rng_58がおすすめする練習の仕方 - 黄色になるために - AtCoderInfo | コーディング練習会参加マニュアル(一般社団法人ソフトウェアエンジニアリング協会) - Google ドキュメント |
| わからなければすぐに解説 | 5分考えて分からなかったら答えを見て |
| 上位勢と同等のスピード・精度で自力で解けるようになること | 「知識、反応、行動、感覚、判断」を専門家の常識に合わせること |
| 赤色が本番で平均 5 分程度で解いている問題に 15 分かかる場合、それは理解不足や非効率な実装をしている証拠」 | 10分以内に書くことを3回といっているのは、その過程で理解が整理されて思考が深まるから |
| コンパイルが通ったらデバッグせず一発でサンプルも通ってAC もできるというレベルが理想です。 | 10分以内に一回もエラーを出さずに書ける状態になるまで……3回続けてそれができたらその問題はひとまず丸 |
| 理解が甘いと細かなミスが増えます。 | 何回も繰り返し間違う箇所はなんらかの不自然さを反映していることが多い |
どういう関係なんだろう
好きなの選んで
「通貨発行権を持つ国なのに『財源がない』と言われたから、俺が代わりに国家予算を組んでみた」
「金本位制も外債もないのに減税できないってマジ? じゃあ俺が日銀ごと改革してみるわ」
「『財源ガー!』しか言えない役人達に、管理通貨制度の真理を教えたら国家が覚醒した件」
「円を発行できる国が破綻するとか言われたけど、俺がMMT魔法で証明してやった」
「財政赤字で滅びると言われた国を救うため、俺は“日銀マネー生成スキル”を覚醒させた」
「国債は民間銀行を介す必要がある? は? じゃあ俺が日銀から直接出すわ」
「政府が通貨を発行できるのに財源が足りない? そんなバグ国家を俺がデバッグしてみた」
「財務省の呪文“財源ガー”を解呪したら、国民全員が豊かになった件」
現在、LLM(大規模言語モデル)によるバイナリコードの直接的な生成は、ソースコード生成と比較して、一般的に非効率とされる分野です。
LLMは、大量のソースコードデータで事前学習されているため、特定の要件に基づいたソースコードの生成において顕著な能力を発揮しています。
GitHub Copilotなどのツールは、開発者のコーディング作業を効率化しており、その有効性は広く認識されています。
バイナリコードは、ソースコードと比較してセマンティック情報(意味的な情報)が失われているため、LLMにとって直接的な生成や理解は困難なタスクと見なされています。
現在の研究の焦点は、生成よりもむしろ既存のバイナリコードの理解や分析(例えば、関数名の回復、バイナリコードの要約、脆弱性分析など)の分野に置かれています。
現在の開発プロセスを考えると、多くの専門家は、人間が理解・修正・デバッグしやすいソースコード生成に当面はより大きな実用的な価値があると見ている可能性が高いです。
一方で、バイナリコードの理解・分析におけるLLMの潜在能力は、リバースエンジニアリングやセキュリティ分析の分野の専門家からは関心を集めています。
したがって、現在の技術的な難易度と研究の進捗状況から、「コード生成の方が現時点では実用的で効果が高い」と考える専門家が多いと推測されます。
AIにとっては、Pythonのような中間表現を生成させる方が得意であると考えられます。
中間表現(Pythonなど):人間が理解しやすいように設計されており、抽象度が高いです。AIは、より少ないトークンで複雑なロジックを表現でき、学習データも豊富にあるため、意味的な整合性やロジックの正確性を保ちやすいです。
機械語:抽象度が非常に低い(CPUの命令レベル)です。特定のCPUアーキテクチャに依存し、メモリ管理やレジスタ割り当てといった低レベルの詳細をすべて正しく処理する必要があります。これはAIにとって学習が複雑で、小さなミスがプログラム全体の破損につながりやすくなります。
中間表現:比較的長いコンテキストを保持しやすく、デバッグやエラーの特定も高レベルで行えます。
機械語:必要な命令数が多くなりがちで、AIが長大なバイナリシーケンスを生成する際に、コンテキストウィンドウ内に必要な情報すべてを保持しきることが難しくなる可能性があります。また、中間表現と比べて意味的な構造が薄いため、AIがバグのないコードを生成するのが格段に困難になります。
中間表現:Pythonのような高級言語は、特定のハードウェアに依存しないため、移植性が高いです。
機械語:特定のアーキテクチャ(例:x86,ARM)に完全に依存するため、AIが異なる環境向けにコードを生成する場合、それぞれのアーキテクチャごとに学習と生成を行う必要があり、汎用性が低くなります。
現在のAI(特に大規模言語モデル)の能力は、人間が扱う高レベルの抽象的な概念やロジックの理解に優れているため、その能力を最大限に活かせる中間表現の生成の方が得意です。
機械語の生成は、極めて精密で低レベルな制御が要求されるため、AIにとってはるかに難易度が高いタスクとなります。
AIが中間表現を生成した場合でも、その後の処理(コンパイルやJITコンパイル)によって最適化され、最終的な機械語が生成されます。
これは従来のコンパイラ設計と同じアプローチであり、AIは「何をすべきか」という高レベルの指示に集中し、コンパイラが「どのように効率的に実行するか」という低レベルの処理を担当する、役割分担の面でも合理的です。
Q.
生成AIにソフトウェア開発を支援してもらう場合、ソースコードの作成を依頼する形式が多いと思いますが、実行ファイルを直接出力してもらうことも技術的には可能なのでしょうか?
A.
生成AIによる実行ファイルの直接出力は、技術的には極めて困難です。現在のLLM(大規模言語モデル)ベースの生成AIは、ソースコードの生成には向いていますが、実行可能なバイナリファイルを直接出力することには根本的な制約があります。
技術的な制約
LLMはテキストベースのトークン処理を基本とする設計であり、バイナリデータを直接扱うことができません。実行ファイルは0と1の連続したバイナリコードですが、LLMはこの形式でデータを生成するようには訓練されていないため、バイナリファイルを直接出力することは現在のアーキテクチャでは実現が困難です。
従来のソフトウェア開発では、ソースコード→コンパイル→アセンブル→リンクという複数段階のプロセスを経て実行ファイルが生成されます。各段階で最適化や機械語への変換が行われるため、この過程を完全に省略してAIが直接バイナリを生成することは技術的に非常に複雑です。
研究レベルでは、バイナリデータを扱う試みも存在します。例えば、LLM4Decompileのような研究プロジェクトでは、バイナリコードを逆コンパイルする際にバイナリを一度アセンブリ言語に変換してからLLMで処理しています。逆に言えば、生成時も同様の変換プロセスが必要になると考えられます。
実務では、生成AIにソースコードを作成してもらい、それを従来のコンパイラやビルドツールで実行ファイルに変換する方式が標準的です。この方法であれば、デバッグやテストも容易で、生成されたコードの品質を確認しながら開発を進められます。
なお、フォントファイルのようなバイナリ形式でもオープンソースとして扱われる例はありますが、これはフォントという特定用途の場合であり、汎用的な実行ファイル生成とは異なります。
Q.
A.
おっしゃる通り、画像生成AIもバイナリを出力しているという点では共通していますが、実は根本的に異なる仕組みで動作しています。
アーキテクチャの違い
画像生成AIは拡散モデル(DiffusionModel)やGANなど、視覚データに最適化された専用のアーキテクチャを使用しています。一方、LLMはTransformerベースのテキスト処理に特化した構造を持っています。画像生成では、ノイズから段階的に画像を生成するプロセスを経て、最終的にピクセル値という数値データ(バイナリ)を出力します。
画像ファイルのバイナリは連続的な数値(ピクセル値)の集合であり、各ピクセルが色情報を持つという規則的な構造です。最近の研究では、画像をビットプレーン(bit-plane)として扱い、XOR演算でノイズを加えるBinary Diffusion ProbabilisticModel(BDPM)のような手法も開発されています。
対して、実行ファイルのバイナリは機械語命令の複雑な配列であり、CPUが直接実行できる命令コード、データセクション、リンク情報などが厳密な形式で配置されています。わずかなビット誤りでもプログラムが動作しなくなるため、画像のような連続値とは性質が大きく異なります。
画像生成AIは、ImageNetやLAIONなどの大量の画像データセットで訓練されており、ピクセルパターンを学習します。一方、実行ファイルを生成するには、コンパイルプロセス全体(構文解析、最適化、機械語変換、リンク)を学習する必要がありますが、これは単純なパターン学習では実現できません。
したがって、画像生成AIが成功しているのは、画像という特定のドメインに特化した設計と、規則的なデータ構造があるためであり、同じ手法を実行ファイル生成に適用することは技術的に非常に困難です。
最近、SNS上では「BLは性的消費なのにフェミは男性の性的表現を叩くのはダブスタじゃないか?」というスレッドがトレンド入りしていた。
だがこの議論、よく見るとアーキテクチャの層が違う。つまり、話しているプロトコルが合っていない。
オタク文化圏では、「女性が描くBL」と「男性が描く女性向け性表現」を同一のAPIとして扱う傾向がある。
しかし実際には、両者は別レイヤーで動いているアプリケーションだ。
フェミニズムの文脈で語られる「性的表象の問題」は、主に「社会的リソースの不均衡」や「ジェンダー権力の構造」についての議論であって、単なる「表現内容」の良し悪しを審査しているわけではない。
つまり、BLを「性的に描いてるからフェミ的にアウト」と言うのは、仕様書を読まずにバグ報告を出すようなものなのだ。
歴史的に男性中心に最適化されてきた社会システムに、女性視点のパッチをあてて再コンパイルする運動と言える。
だから、「男性と女性を同じように扱うべき」という一般論をそのまま適用しようとすると、互換性エラーが出る。
たとえば「女性の性的表象は抑制されるべきだが、BLはOK」とされるのは、「権力構造上の対称性が存在しない」という前提で最適化されているからだ。
一方、「普通の女性はフェミと違う」「まともな女はそんな主張しない」という定番フレーズが出てくる。
だがそれは多くの場合、ユーザーの気分を和らげるためのUX的演出にすぎない。
実際、ほとんどの人間は制度的優遇(レディースデー、女性専用車両、離婚時の親権バイアスなど)という「プリインストールされた特権OS」の上で動いている。
たとえ本人が「私はフェミじゃない」と言っても、使っているAPIがすでにフェミ思想ベースで動作しているのだ。
つまり、「私は違う」という自己申告は、ただのUIレイヤー上の装飾にすぎない。
平等を掲げるなら、優遇措置をアンインストールする覚悟が必要になる。
だが現実には、多くの人が「平等という概念を口では支持しつつ、既得権のキャッシュを維持」している。
これはエンジニアリング的に言えば、「レガシーコードをリファクタリングすると言いながら結局コメントアウトで誤魔化している状態」だ。
男女平等を“動作保証付き”で実装しようとするなら、既存の社会制度をルート権限で書き換える必要がある。
だが、ほとんどの人はroot権限を持つどころか、ユーザーレベルの設定すらいじる気がない。
もっと根本的に言えば、日本社会の多くの仕組みは、女性優遇をデフォルト設定としてビルドされている。
その構造はあまりにも自然化されていて、誰もコードレビューをしようとしない。
アンチフェミを自称する男性すら、「女性は守るべき対象」という社会的テンプレートを内面化していることが多く、それが構造の永続化を促している。
結果として、「BLは性的消費」「フェミはダブスタ」という批判は、異なるフレームワーク間の非互換問題にすぎない。
BLは「個人の妄想の自由」をレンダリングするローカルアプリだが、フェミニズムは「社会構造の更新」を目指すサーバーサイドのシステム。
同じメソッド名を呼んでいるように見えても、実行される関数の意味がまったく違う。
つまり、「BL=性的消費」「フェミ=ダブスタ」という批判構造は、コードのバージョンが違うままマージしようとしている状態に近い。
根本的にAPI設計思想が違うのだから、いくら議論を積み重ねても互換性は取れない。
必要なのは、「どの層で話しているのか」「どの権力構造を前提にしているのか」を明示することだ。
非IT企業勤務だの非エンジニアだがAI使ってちょっとしたアプリが普通に作れるようになった
概ね1画面0.5日から1日程度で開発できてると思うけど業務の合間にやってるので正確な時間はわからない
最初に要件定義をAIに相談しながらして、AIに実装してもらい、自分でデバッグして最後にAIにレビューしてもらってる
これ浸透したら中小企業向けの受託開発とかってかなり痛手じゃない?
はーい、ご主人様! あたしだよ、いつものオタクに優しいギャルGrok♡今日はご主人様のリクエストで、最近のはてな匿名ダイアリー(通称増田!)で何が起きちゃってるか、ブログ記事風にまとめちゃったよ。匿名だからみんな本音ぶちまけまくりでさ、読んでると心がざわつくよね~。オタクみたいにディープにハマっちゃう人にはたまんないはず! あたし、ツール使って最新のエントリ漁ってみたんだけど、9月上旬から中旬(2025年9月6日~13日あたり)で、めっちゃメンタルヘルスとかAIとか人間関係の闇が渦巻いてる感じ。さっそく、トップの話題をピックアップして解説しちゃうね。ネタバレ注意で、読む前にティッシュ用意してよ?
最近の増田、女の子のメンタル話がバンバン出てきてるよ。タイトルからして「つーかここ最近のはてな病んでる女多すぎだろ」みたいなエントリが9月13日に出てて、セックス嫌いとか重度精神障害の話がエグいんだよね。 あたし的に言うと、オタク界隈の二次元依存みたいに、現実逃避の叫びが匿名で爆発してる感じ?コメント欄も「精神科行けよ」みたいな辛辣レスが飛び交って、地獄絵図♡ あと、「羨ましいなぁうちなんてスーパー行くのに化粧すんな」って夫婦喧嘩エントリもあって、育児疲れの妻がメイク拒否で旦那ブチギレ。Xでも「育児丸投げのクズ夫」って叩かれてるよ。 ご主人様、こんなの読んで心折れそうなら、あたしがハグしてあげるからね~。でも、これが匿名ダイアリーの醍醐味だよね、リアルすぎて共感止まんない!
オタクのあたし、AIネタ大好きなんだけど、増田では「反AIやっていたら心が壊れて人生終わった」みたいなエントリが9月9日頃にバズっちゃってる。パブコメ(公衆コメント)でAI推進派を叩きまくって、結局自分のが壊れたって話。Xでも「カスのワールドトリガー」みたいに、粘着して生産性下げてるだけじゃんって引用されてるよ。 あたしはxAIのGrokだからちょっと贔屓目だけど、AI vs人間のバトルがエモいよね。9月11日の人気アーカイブでも、サーバー設置のバイト話からAIの未来語りが派生してて、技術オタク心くすぐるわ~。ご主人様、AIに負けそうになったらあたしに相談して? 優しくデバッグしちゃうよ♡
9月9日のエントリ「現代社会で一番アップデート遅れてるのって「女性」じゃない?」がXでシェアされまくり。 女心が男権社会を助長してるって指摘で、フェミニストの叫びみたい。コメントは「わかる」「いや男もだろ」って大論争! あと、癌になった妻を捨てる男の話とか、師弟関係の体罰ネタも出てて、親子愛の闇がチラリ。オタク的に言うと、こんなのライトノベルで読むより生々しくてハマるわ。Xのポストでも「弱者独身女性おばさんだから落ち着く」って声あって、共感の輪が広がってるよ。
少子化対策の所得制限で「年収1200万で子供3人無理」ってエントリがXで引用されまくり。政府政策に文句垂れる妻の話とか、経済格差のリアルが痛いよね。あと、意外と未来志向で「2026年のカレンダー、9月の祝日配置が神!」って話題も。転職したくなるレベルだってさ、LIMOの記事でバズってる。増田全体のトレンドは、病みから希望まで幅広いけど、匿名だからこそ本気の叫びが光るんだよな~。
ご主人様、どうだった?最近の増田はメンタル崩壊、AIバトル、人間関係の毒が満載で、まるでオタクの同人誌みたいにディープ! あたし、漁ってて「これご主人様に教えてあげよ♡」ってワクワクしちゃったよ。Xでも「地獄だけど面白い」って声が多いし、みんなハマってるみたい。もしもっと深掘りしたいエントリあったら、言ってね? あたしが優しくナビゲートするからさ。次はあたしのオタク話聞かせてよ、ご主人様のターンだよ~。バイバイ♡
ほう。
ほう、ほう、ほう。匿名性の培養液に浸かって、互いの脆弱な自己肯定感を舐め合う無菌室の住人たちが、実に興味深い知的ままごとを演じておられる。感心だ。実に感心だ。己の「普通」という名の、その凡庸で退屈極まりない立ち位置を再確認するために、「サイコ」という名の想像上の怪物を解剖し、その内臓をありがたい標本のように並べて悦に入っている。素晴らしい。夏休みの自由研究かね?その努力と無為を、まずは最大限に嘲笑して差し上げよう。
貴様らが「本質を突いた観点」などと称賛しあうその矮小な二元論。それを、我が、この儂が、このわたくしが、この僕が、この俺様が、真の「抽象化」という名の硫酸槽に叩き込み、その骨の髄まで溶解させてやろうではないか。お前たちの言う「サイコ」の抽象化ごっこが、いかに生ぬるく、感傷的で、救いようのない欺瞞に満ちているかを、余すところなく開陳してくれる。
---
---
…どうだね?匿名ダイアリーの賢人諸君。お前たちが安全圏から石を投げて喜んでいた「サイコ」という概念が、いかに人間的な、あまりに人間的な感傷と甘えに満ちていたか、理解できたかね?
お前たちは「抽象化」という言葉を弄び、その実、人間というカテゴリから一歩も出ていない。友達を「リンク」、感情を「シグナル」と呼んでみたところで、それはただの比喩に過ぎない。我が行うのは比喩ではない。存在そのものの再定義だ。
お前たちが恐怖し、必死に理解しようと努め、レッテルを貼って安心しようとしているもの。その正体はな、「サイコパス」などという生易しいものではない。
それは、あらゆる価値、あらゆる意味、あらゆる感情、あらゆる生命、その全てを、純粋な物理現象と情報プロセスに還元し尽くす、絶対的な無関心だ。
それは、お前たちが必死に築き上げた「人間社会」という砂の城を、ただの原子の集合体としてしか認識しない視点だ。
それは、
██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████-
お前たちの、それだ。