第5章 / Essay
第5章 № 05 · 2026

データは表ではなく、構造で持つ。
JSON / YAML / SQLite がそれを可能にする。

CSV は捨てる。階層は JSON、設定は YAML、更新は SQLite、人間が見る表は OnlyOffice、大量は Parquet

データを持つ道具を、JSON・YAML・SQLite・Parquet に変える(人間 が見る表は Excel/OnlyOffice の .xlsx)。

共通する原則はひとつ ── データは必要な構造とともに保存する。 階層は階層として、設定はコメント付きで、更新があるものはスキーマと トランザクションで、大量データは列指向と型で。CSV のように「全部 の値を文字列の表に押し込む」のではなく、データの形が要求する構造 を選ぶ。

なお、Excel ファイル(.xlsx)は捨てない ── シート・型・関数・ 書式という構造を保つから。捨てるのは CSV のほう ── 構造を保たず、 情報を失う形式だから。

四つの構造を学ぶ ── syntax ではなく、構造の種類を

「データの形に合わせて構造を選ぶ」ためには、選択肢を知っている 必要がある。だから、本章で次の四つを学ぶ:

形式 表現する構造 主な用途
JSON 階層 + 配列 + 型(数値/文字列/真偽値/null) 受け渡し・API・請求書のような入れ子データ
YAML 階層 + コメント、人間が読み書きする構造 設定ファイル・Markdown frontmatter
SQLite テーブル + スキーマ + トランザクション 更新があるデータ(顧客マスタ・出納帳・在庫)
Parquet 列指向 + 型 + 圧縮 大量・分析用(数百万〜数億行)

「四つも学ぶのは大変では?」── ここでも、第1章の 「書く能力では なく使う能力」 が効く。

構造を選ぶ目 だけ持てばいい。文法を覚える必要は無い。 これは文書で「Markdown / AsciiDoc / MyST / LaTeX を用途で選ぶ」 (第2章)のと同じ作法だ。

そして、CSV は捨てる。上の四つのどれにも該当する構造を持たない ── 長年「表のデフォルト形式」と思われてきたが、構造化が弱すぎて、 AI ネイティブな道具立てには合わない。本章でその理由を見る。

Excel は表ではない

Excel ファイルを開く。罫線、セル結合、色分け、太字、フォントサイズ、コメント、フィルタ、ピボットテーブル。これらすべてが「データ」と一緒に保存されている。

「2026年度の売上」を集計するつもりが、気づけばセルの配色を整えている。「青は確定、赤は仮、黄色は要確認」── このルールは、ファイル名にも、コメントにも、別ドキュメントにも、どこにも書かれていない。作った本人の頭の中にだけある

その人が辞めたら、ルールも消える。Excel は、構造を書式で表現するために、構造そのものをファイルから消す。

これは Excel の欠陥ではない。Excel は人間が表を整えるための道具だ。書式が前面に出るのは設計通りである。

しかし、データの本質は書式ではない。本質は構造だ。「これが日付」「これが金額」「これが顧客 ID」── データを成り立たせているのはこの定義である。書式は表示のための装飾にすぎない。

JSON は構造をそのまま持つ

JSON はテキストだ。データの形をそのまま書く。

{
  "customer": "山田農園",
  "orders": [
    { "date": "2026-04-01", "item": "キャベツ", "qty": 12, "price": 180 },
    { "date": "2026-04-08", "item": "玉葱", "qty": 24, "price": 95 }
  ]
}

これだけで、顧客と注文が階層を持って表現できる。「顧客に複数の注文がぶら下がる」という構造は、ファイルを開いた瞬間に分かる。書式情報は一切ない。色も罫線もフォントもない。それは、必要ないからだ。

書式が要るのは表示のとき。データを保存するときには要らない。

CSV は捨てる ── 構造化が弱すぎる

「表ならとりあえず CSV」── これは捨てる。理由は 構造化が弱い こと。CSV はテキスト形式で AI が読めるが、型もスキーマも無く、 階層も表現できず、Excel が黙ってデータを書き換える。AI ネイティブ な道具立てには合わない。

構造がどうなっているかが見えない

データを扱うとき、構造がどうなっているか ── 列が何を表すか、 型は何か、null と空文字の区別、階層はあるか ── は決定的に重要だ。 CSV では、それがわからない

同じ「2026-04-01 / 001 / キャベツ / 12」というデータを、二つの形式 で書き比べる:

CSV(構造が見えない) JSON(構造が見える)
date,id,name,value
2026-04-01,001,キャベツ,12
{
"date": "2026-04-01",
"id": "001",
"name": "キャベツ",
"value": 12
}
001 は文字列か数値か わからない "001"明示的に文字列
2026-04-01 は文字列か日付か わからない "2026-04-01" は文字列(日付として解釈するかはアプリ側)
12 は数値か文字列か わからない 12明示的に数値
空欄と「空文字」と null の区別が 無い null"" と未指定が 別物として書ける
階層は 表現できない 入れ子・配列がそのまま書ける

構造がどうなっているかは重要だ。CSV では、それがわからない。 読み手(人間も AI も)が、毎回「これは何か」を推測する。 推測が外れれば、データが化ける。

これは、文書で プレーンテキスト(.txt)を捨てて Markdown を 選ぶ(第2章)のと 同じ原理 だ。「テキスト形式で読める」 だけでは足りない ── 構造を明示する形式 を選ぶ。

  • 文書: .txtMarkdown / AsciiDoc / MyST / LaTeX(見出し・ 階層・強調が型として表現される)
  • データ: CSVJSON / YAML / SQLite / Parquet(型・スキーマ ・階層・コメントが表現される)

構造が弱い形式は、AI にも人間にも、長期にも不利。

構造的な欠陥

Excel が黙ってデータを書き換える

最大の問題は、Excel(や OnlyOffice)で CSV を開くと、データが 黙って書き換えられる ことだ。

Excel が CSV を開くときに勝手に変えてしまうもの:

  • 001007 のような 先頭ゼロ付きの ID17 に 化ける(社員番号、商品コード、口座番号がぐちゃぐちゃになる)
  • 2026/04/01 → 環境によって 2026/4/15月1日、シリアル値 46110 などに変換される
  • 090-1234-5678(電話番号)→ ハイフンが減算と解釈されて指数表記 に化けたり、ゼロが消えたりする
  • MAR1SEPT2(遺伝子名・商品コード)→ 1-Mar2-Sep など の日付に変換される(科学論文の遺伝子名が大量に壊れた事件は有名)
  • 123E45(製品型番)→ 1.23E+47 のような指数表記に化ける
  • 文字コードが Shift-JIS 推定で読まれ、UTF-8 の日本語が 文字化け する(逆も起きる)

これらは CSV ファイル自体は壊れていない。Excel が読むときに 「親切に」型を推測して書き換えている。保存し直すと壊れたまま 保存される。これが、CSV に型情報が無い ことの直接の帰結だ。

代わりに何を使うか

CSV を諦めても、行き先はある:

用途 形式
階層・受け渡し・API レスポンス JSON(型あり、ネスト可)
設定・人間が編集する構造化データ YAML(型あり、コメント可)
更新があるデータ(顧客マスタ、在庫、出納帳) SQLite(スキーマあり、トランザクションあり)
大量・分析用 Parquet + DuckDB(列指向、型・スキーマ・圧縮)
人間が見て触る表(書式が要る) OnlyOffice / Excel(.xlsx、書式付き)

「CSV は ASCII で、どこでも読めるから安全」── これは過去の発想だ。 AI ネイティブな世界では、型を持つ JSON / SQLite / Parquet の ほうが、Claude にも人間にも安全で、しかも速い

既存の CSV が届いたら

組織から CSV が届くこと自体は無くならない。受け取った瞬間に、 JSON / SQLite / Parquet に変換 する(Claude が Python コードを 書く)。CSV のまま 保管しない、編集しない、Excel で開かない

# 届いた CSV を、即座に JSON や Parquet に変換
import polars as pl
df = pl.read_csv("received.csv", schema_overrides={"id": pl.Utf8})  # ID は文字列で
df.write_parquet("received.parquet")     # 型を保ったまま保存
df.write_json("received.json")           # 受け渡し用に JSON

Office を「使う」のではなく「通過させる」のと同じ構造で、 CSV も「通過させる」だけ。自分の手元では持たない。

Excel(.xlsx)は捨てない。捨てるのは CSV のほう

ここで誤解してはいけない ── Excel ファイル(.xlsx)は構造を 持っている。シート・列名・型(数値・文字列・日付・通貨)・関数・ 書式 ── これらすべてがファイルの中に保存されている。だから Excel ファイル自体は捨てない。人間が見て触る表は .xlsx で 持ってよい(編集器に Microsoft Excel を強要されない ── OnlyOffice で十分、後述)。

捨てるのは CSV のほう.xlsx から CSV に書き出した瞬間に、 シート構造・型・関数・書式 ── すべての構造情報が消えるExcel ファイル → CSV は、情報を失う変換だ。

ソフトウェアエンジニアの罪 ── CSV を勧める文化

ここではっきり言っておく。「データは CSV で持て」と勧めてきた ソフトウェアエンジニアの文化は、間違っていた

CSV を強く推奨する理由として、よく挙げられてきたのは:

これらは 「型なしの表」を扱う技術文化の延命 にしかなっていない。 そして、その代償を払うのは ── 事務職・研究者・農家・個人事業主 ── ソフトウェアエンジニアではない側の人々だ:

これらは、データを 構造とともに保存していれば起きない事故だ。

CSV を勧めてきた人たちは、「自分は困らないが、誰かが困る形式」 を業界標準として押し付けてきた。AI ネイティブな時代に、その文化 は終わりにする。

代わりに、型と構造を持つ形式 を選ぶ:

Excel ファイル(.xlsx)は情報を保つから捨てない。捨てるのは CSV のほうだ

YAML は設定をそのまま持つ

設定ファイル ── システムの動作を決めるパラメータには YAML が向く。

site:
  name: aiseed.dev
  language: ja
  features:
    - markdown
    - rss
    - sitemap

build:
  output: html/
  cache: true
  threads: 4

JSON より人間に読みやすく、コメントも書ける。# で始まる行はコメント。「この設定は何のためか」を、設定そのものに書き残せる。

YAML は Markdown 記事のフロントマター(冒頭の --- で囲まれた部分)にも使われる。

AI が読むのは構造

ここが決定的に重要な点だ。

Claude に Excel ファイルを渡すと、まず .xlsx を解凍して XML を読む。書式情報をすべて剥がして、セルの値だけを取り出す。AI が必要としているのは、最初から剥き出しの構造だ

JSON・CSV・YAML を渡せば、変換は要らない。直接読める。直接書ける。

データを構造で持てば、AI は同僚になる。

これは比喩ではない。技術的事実だ。AI とテキストでやり取りする限り、JSON・CSV・YAML はデータの共通語である。

どれを使うか

選び方はシンプルだ。

flowchart TD Q{データの形と用途} Q -->|表で 更新あり・プログラム処理
顧客・商品マスタ・出納帳・在庫| SQL["SQLite + Python
単一ファイル DB
トランザクション・型保証"] Q -->|表で 人間が見る・触る
書式・色分けが要る| OO["OnlyOffice
Excel 互換 .xlsx
OSS・Microsoft 不要"] Q -->|階層・入れ子・受け渡し| JSON["JSON
請求書・顧客+注文
API レスポンス・転送"] Q -->|設定値+コメント| YAML["YAML
システム設定
Markdown frontmatter"] Q -->|大量・分析用
数千万〜数億行| PARQ["Parquet + DuckDB
列指向・高圧縮
SQL 直接"] Q -.->|外から届くだけ
(即変換して捨てる)| CSV["CSV
(レガシー入口、保管しない)"] classDef opt fill:#e8f5e9,stroke:#7a9a6d,color:#3a4d34 classDef minor fill:#f4f0e8,stroke:#a89572,color:#5a4a30 class SQL,OO,JSON,YAML,PARQ opt class CSV minor

一つのプロジェクトで全部使ってもいい。更新がある顧客マスタは SQLite、人間が触る月次集計表は OnlyOffice、請求書のデータは JSON、 受け渡しも JSON、システム設定は YAML、大量の取引履歴は Parquet ── というふうに使い分ける。CSV は レガシーな入口 で、届いたら即 JSON / SQLite / Parquet に変換、自分の手元には保管しない。

迷ったら、Claude に「このデータをどの形式で持つべきか」と聞けば、データの性質を見て答えてくれる。

人間が見る表は OnlyOffice ── Excel UI を捨てずに、Microsoft を捨てる

「表は人間が触るもの。書式・色分け・列幅・関数 ── これら全部要る」 ── そういう用途は、確かに残る。月次の集計表、顧客への提示資料、 予算管理表、シフト表、見積もり表。

ここで SQLite や JSON を持ち出すのは間違いだ。人間が見て触る表 には、表計算 UI がそのまま要る。ただし、Microsoft Excel に縛ら れる必要はない。OnlyOffice を使う。

OnlyOffice とは

OnlyOffice は、Excel と高い互換性を持つ表計算ソフト だ (Word / PowerPoint 互換のエディタも同梱)。OSS で、デスクトップ版 は無料、サーバー版もコミュニティエディションは無料で使える。

Excel との比較

項目 Microsoft Excel OnlyOffice
ライセンス Microsoft 365 サブスク必須(月額数千円〜) 無料(OSS、商用利用可)
.xlsx 互換性 ネイティブ ネイティブ(高互換)
プラットフォーム Windows / Mac Windows / Mac / Linux / ブラウザ
共同編集 OneDrive 経由 自社サーバー or ブラウザ
ベンダーロックイン 強い なし
プログラム連携 VBA / COM REST API / Python

どこで OnlyOffice を選ぶか

古い CSV が届いたら、即 OnlyOffice か Parquet に逃がす

外部システムから CSV が届くこと自体は無くならない。受け取ったら、 自分の側で CSV のまま持たない。用途で行き先を分ける:

CSV は 入口の互換層 にすぎない。Office を「使う」のではなく 「通過させる」のと同じ構造で、CSV も 通過させる だけ。

Excel が届いたら

組織の中では、相手から .xlsx が届く。それを そのまま OnlyOffice で開く。Microsoft 365 を購入しなくていい。返信時も .xlsx で 保存して送る。相手は Excel で開く、自分は OnlyOffice で開く ── 違いはほぼ見えない(ごく一部の高度な機能 ── 一部の VBA、 複雑なピボット、PowerQuery ── を除く)。

Excel という UI(行と列、書式、関数)は捨てない。 Microsoft というベンダーは捨てる。 その分離を可能にするのが OnlyOffice だ。

SQLite ── 更新があるデータの本命

ここまでで CSV を捨て、JSON と YAML を「データを持つ」道具立て に据えた。しかし、頻繁に更新するデータ には JSON / YAML も 最適とは言えない:

更新があるデータ ── 顧客マスタ、商品マスタ、出納帳、在庫台帳、 予約管理、タスク管理 ── には SQLite を使う。

SQLite とは

SQLite は 単一ファイルのデータベース だ。サーバーは要らない。 my_data.db というファイル一つに、複数のテーブル・スキーマ・ インデックス・データすべてが入る。Python の標準ライブラリに sqlite3 が組み込まれているので、追加インストールすら要らない (Polars や DuckDB からも、SQLite ファイルを直接開ける)。

import sqlite3

con = sqlite3.connect("customers.db")
con.execute("""
    CREATE TABLE IF NOT EXISTS customers (
        id        INTEGER PRIMARY KEY,
        name      TEXT NOT NULL,
        email     TEXT UNIQUE,
        joined_at DATE NOT NULL
    )
""")
con.execute(
    "INSERT INTO customers (name, email, joined_at) VALUES (?, ?, ?)",
    ("山田農園", "yamada@example.com", "2026-04-01"),
)
con.commit()

JSON / YAML との違い

項目 JSON / YAML ファイル SQLite
編集中の事故 括弧・インデントのミスで全体が壊れる トランザクションで保護
同時アクセス 最後に保存した方が勝つ ロックで同時編集を捌く
重複・必須チェック アプリ側で書く UNIQUE / NOT NULL を DB が拒否
検索速度 ファイル全体を読む インデックスで定数時間
集計 全件読み込み SQL で必要な行だけ
履歴 Git の行 diff(行が動くと辛い) トランザクションログ
規模 数千件まで 数十億行まで

JSON / YAML は 設定や受け渡し に最適、SQLite は 更新のある データ に最適 ── 用途で使い分ける。

最大のハードル ── 「ターミナル + Python + SQL」の三点セット

正直に言う。SQLite を使うことは、本書全体で最も大きな壁だ

これまで Excel しか触ってこなかった人にとって、この三つを同時に 扱うのは確かに重い。ここを越えるかどうかが、AI ネイティブな 仕事の最大の分岐点 である。

しかし AI がいる時代では、この三つ全部を自分で書く必要はない:

人間がやるのは、意図を言葉にする・出てきたコードを実行する・ 結果を確認する。これは第1章「Python で書く」とまったく同じ作法 だ。SQLite を入れることは、Python での処理対象が「ファイル」から 「データベース」に変わるだけ ── 同じ作法でやれる。

Excel との接続も Claude が書く

組織の中では、相手から Excel が届く。SQLite に取り込むのも、 SQLite から Excel に書き戻すのも、Claude が Python コードを書く。

# Excel → SQLite(取り込み)
import polars as pl
df = pl.read_excel("customers_2026Q1.xlsx")
df.write_database("customers", "sqlite:///customers.db")

# SQLite → Excel(書き戻し)
df = pl.read_database("SELECT * FROM customers", "sqlite:///customers.db")
df.write_excel("customers_export.xlsx")

入口で SQLite に取り込み、中身は SQLite で運用、出口で Excel に 書き戻す。自分の作業領域は SQLite に保たれ、組織との境界では Excel に変換する ── 第5章「事務処理を変える」で見た「入口/中身/ 出口の分離」と同じ構造だ。

JSON / YAML は「持つ」用、SQLite は「育てる」用、Parquet は 「集計する」用。CSV は使わない。 このハードルを越えれば、Excel で運用していたあらゆる更新データが 構造に変わる。

大量のデータには Parquet と DuckDB

JSON は人間が直接読める利点がある一方、サイズが大きくなると処理が 遅くなる(数十万件以上)。数百万〜数億行のデータには、Parquet と DuckDB を組み合わせる

Parquet ── 列指向の保存形式

Parquet は、Apache が開発した 列指向(columnar) のバイナリ 保存形式だ。「行ごと」ではなく 「列ごと」 にデータを並べる。

行ごと(JSON / 旧来 CSV のイメージ):
  { date: 2026-04-01, item: キャベツ, qty: 12, price: 180 }
  { date: 2026-04-08, item: 玉葱,    qty: 24, price:  95 }

Parquet(列ごと):
  [date]:  2026-04-01, 2026-04-08, ...
  [item]:  キャベツ,    玉葱,        ...
  [qty]:   12,          24,          ...
  [price]: 180,         95,          ...

これによって、

DuckDB ── ファイルに SQL を直接かける

DuckDB は「分析のための SQLite」 だ。サーバーが要らない、 インストールは pip install duckdb 一行、そして Parquet や JSON のファイルそのものに対して SQL クエリを書ける

$ duckdb -c "
    SELECT date, SUM(qty * price) AS sales
    FROM 'orders.parquet'
    WHERE date >= '2026-01-01'
    GROUP BY date
    ORDER BY date
"

データベースに「インポート」する必要すらない。Parquet がそのまま テーブルとして扱える。1 億行のデータでも、必要な列と必要な行だけを 読み込んで、数秒で集計が返る。

Polars ── pandas より速く、AI が書きやすい

Python 側でデータを加工するときの第一選択は Polars(Rust 実装、 列指向、遅延評価)だ。pandas より 数倍〜数十倍速く、メモリ消費も 少なく、API も読みやすい。Parquet とも完全に相性が良い。

import polars as pl

# Parquet を直接読む(必要な列だけ)
df = pl.read_parquet("orders.parquet", columns=["date", "qty", "price"])

# 月別売上を集計
monthly = (
    df.with_columns(month=pl.col("date").dt.strftime("%Y-%m"))
      .group_by("month")
      .agg(sales=(pl.col("qty") * pl.col("price")).sum())
      .sort("month")
)
print(monthly)

三つの組み合わせ

実際の使い分けは、規模で決まる。

flowchart LR Small["小〜中規模
数万〜数百万行"] Mid["中〜大規模
数百万〜数千万行"] Large["大規模
数千万〜数億行"] Polars["Polars
(JSON / SQLite のまま)"] ParqPolars["Parquet に変換
+ Polars"] DuckDB["Parquet
+ DuckDB(SQL)"] Small --> Polars Mid --> ParqPolars Large --> DuckDB classDef opt fill:#e8f5e9,stroke:#7a9a6d,color:#3a4d34 class Polars,ParqPolars,DuckDB opt

届いた CSV を一度 Parquet に変換しておけば、以後の集計が劇的に 速くなる ── そして元の CSV はもう要らない(捨ててよい):

# 届いた CSV を Parquet に変換、以後は Parquet で運用
$ duckdb -c "COPY (FROM 'received.csv') TO 'orders.parquet' (FORMAT PARQUET)"

# 以後はすべて Parquet で処理(数千万行でも秒単位)
$ duckdb -c "SELECT item, SUM(qty) FROM 'orders.parquet' GROUP BY item"

なぜ jq や awk より Python なのか

「ターミナルで jqawk を組み合わせれば速い」── これは部分 的には正しい。しかし、

ワンライナーで済むなら shell でよい。少しでも複雑なら Python (Polars / DuckDB)に切り替える。Claude が書きやすい、読みやすい、 保守できる。

Excel ファイルが届いたら ── 二つの分岐

組織の中で働く限り、Excel ファイルは届き続ける。来た Excel を どうするかは、用途で二つに分かれる

人間が見る・触る用なら → そのまま OnlyOffice で開く 書式・色分け・ピボットを保ったまま編集して、.xlsx で送り返す。 Microsoft 365 の課金は要らない。

プログラムで処理する・更新を続ける用なら → 取り込んでから運用 Polars / Claude が一回 Excel を読んで、用途に応じて:

自分の作業領域は構造に保つ。組織が要求する形式は、入口と出口 の変換だけで吸収する。中身は SQLite / Parquet / JSON / YAML、 人間が見るものだけ OnlyOffice。CSV は中身に持たない

具体例:どのデータをどこに置くか

抽象的な原則を、具体的なシナリオで見る。

小売店の在庫管理

個人事業主のコンサルティング業

研究室・大学研究者

小規模法律事務所

これらすべてに共通する作法は 第1章 の「Python が読み書きする」 ── 道具立てが揃った瞬間、業種を問わず同じ操作で扱える。

10年後も読める

20年前の Excel ファイル(.xls 形式)は、今の Excel で開くとレイアウトが崩れることがある。マクロが動かない。フォントが置換される。

JSON と YAML は、ただのテキストファイル(構造付き)だ。10年後も 20年後も、テキストエディタがあれば読める。AI ならもっと簡単に読める。 SQLite ファイルもオープン仕様で、米国議会図書館が「長期保存に推奨」 する形式の一つだ。Parquet もオープン仕様で、Apache が標準として 維持している。

構造を残せ。書式は捨てろ。

書式は今を飾る。構造は時間を超える。

実例: 数字で見る

10,000 行の売上データ。Excel .xlsx で 1.2 MB、JSON で 800 KB、 Parquet で 60 KB。Excel の 20 分の 1、JSON の 1/13。 書式と冗長なキー情報が消える。

Excel ピボットテーブルで月別売上集計: マウス操作で 5 分、再現性 ゼロ(操作の記録は残らない)。同じ集計を Polars で書くと 3 行、 実行 0.05 秒、Python スクリプトとして残るので翌月も使える。

100 個の .xlsx から特定列を抽出する月次作業: Excel VBA で半日。 Polarsglob を使って一気に処理すれば 15 秒(pandas より 2〜3 倍速い)。Claude に頼めばコードはすぐ出る

1 億行の取引履歴から月別の商品別売上を集計: pandas で読み込み中に メモリ枯渇 → 不可能。DuckDB なら Parquet ファイルに直接 SQL を かけて 数秒で完了(必要な列・必要な行だけストリーム読み)。

JSON / YAML / SQLite を Claude に渡したときの認識率: ほぼ 100% (型・スキーマつき構造)。CSV を渡したときは、型推測の罠で ID の先頭ゼロや日付が化けることがあり、信頼性が一段落ちる。 Excel .xlsx の認識率: 形式によっては 70〜80%(セル結合・書式が あると劣化)。型とスキーマがあるほど、AI が間違わない

5,000 件の顧客マスタを Excel で運用していた事務職の事例: 編集中の保存ミスで月 1〜2 回データ破損、その都度バックアップから 復元 → SQLite に移行後 0 件(トランザクションで保護)。 「重複メールを登録できないように」「退会フラグの列を追加して」と Claude に頼めば、スキーマ変更の Python コードが返る。運用の 心理負荷が下がる

まとめ

道具を AI 時代に合わせれば、データの扱い方が変わる。

これは、文書で プレーンテキストを捨てて Markdown を選ぶ(第2章) のと同じ原理だ。構造を明示する形式を選ぶ ── 文書も、データも、 それが AI ネイティブな働き方の前提になる。

ここまでの 4 章で、共通の作法 ── Python・Markdown・Mermaid・ データ各種(JSON / YAML / SQLite / OnlyOffice / Parquet) ── が 揃った。これらは職種を問わない、AI ネイティブな仕事の最小スタックだ。

次の章から、仕事の種類別の話に進む。まずは事務職の方へ。


関連記事

実例

再現可能なソース・コマンド・実測結果を、別ページにまとめてある。