文章の順番を入れ替えたラブレター（中編）｜文章題で身に付くプログラミング思考入門️（15/25）

## はじめに

今回は、[前回](https://qiita.com/yuki_thewaggle/items/221bf14462fc5c4170ac)の続きです。
引き続き、文章の順番の入れ替えについてです。
元々の原稿を公開するとともに、なぜ良いのか？について分析していきたいと思います。

『文章題で身に付くプログラミング思考入門️』は、日常や文章問題からプログラミング思考を身に付けていく、簡単で身近で、あなたをちょっと輝かせてくれるシリーズです。

## これまでのまとめ

https://qiita.com/advent-calendar/2024/thewaggle

## 対象者
- プログラミングの考え方を学びたい人
- プログラミングに挫折したことのある人
- 論理的思考を鍛えたい人
- 文系の人
- エンジニアの思考を理解したい人

## 概要
さて、まずはChatGPTの出してくれた元々の文章を記載しましょう。

```
ふと振り返ると、私たちは本当にたくさんの時間を共に過ごしてきましたね。
楽しいことも、つらいことも、すべてを一緒に乗り越えてきたことが、私たちの絆を深めてくれたと思います。
甘い思い出もたくさんあります。
初めて手をつないだあの日、笑い合った何気ない瞬間、そして特別な記念日たち。
けれど、それ以上に、苦しい時にあなたがそばにいてくれたことが、私にとって何よりも大きな支えでした。

辛いことがあったときも、迷いがあったときも、あなたはいつも優しく励ましてくれましたね。
「大丈夫、一緒に乗り越えよう」という言葉に、どれほど救われたことでしょう。
あなたとだからこそ、どんな逆風も耐えてこれたんだと思います。

これから先も、甘い瞬間だけではなく、時には試練が訪れるかもしれません。
でも、今の私には確信があります。
私たちなら、どんな困難も乗り越えられる。
なぜなら、あなたといることで、私はどんなときも力強く前を向けるから。

これまで本当にありがとう。
そして、これからもよろしくね。
あなたと一緒に歩む未来が、私の何よりの幸せです。
心からの愛と感謝を込めて。
```

そして、このラブレターのゴールをもう一度振り返りましょう。
```
長年連れ添ったパートナーへ、感謝の気持ちと愛情を伝える
```

### 分解してみる

前回同様、起承転結で分解してみましょう。

起：パートナー関係を振り返る
> ふと振り返ると、私たちは本当にたくさんの時間を共に過ごしてきましたね。
楽しいことも、つらいことも、すべてを一緒に乗り越えてきたことが、私たちの絆を深めてくれたと思います。
甘い思い出もたくさんあります。
初めて手をつないだあの日、笑い合った何気ない瞬間、そして特別な記念日たち。
けれど、それ以上に、苦しい時にあなたがそばにいてくれたことが、私にとって何よりも大きな支えでした。

承：相手を賞賛する
> 辛いことがあったときも、迷いがあったときも、あなたはいつも優しく励ましてくれましたね。
「大丈夫、一緒に乗り越えよう」という言葉に、どれほど救われたことでしょう。
あなたとだからこそ、どんな逆風も耐えてこれたんだと思います。

転：未来への前向きな気持ちを語る
> これから先も、甘い瞬間だけではなく、時には試練が訪れるかもしれません。
でも、今の私には確信があります。
私たちなら、どんな困難も乗り越えられる。
なぜなら、あなたといることで、私はどんなときも力強く前を向けるから。

結：愛と感謝を伝える
> これまで本当にありがとう。
そして、これからもよろしくね。
あなたと一緒に歩む未来が、私の何よりの幸せです。
心からの愛と感謝を込めて。

なるほど、素晴らしいですね。
私はChatGPTに一行だけしか指示していないのですが、この文章を分解してみると、良いと言える根拠がありそうですね。

なお、私のプロンプトは以下です。
```
酸いも甘いも乗り越えてきた長年のパートナーへラブレター書いてみて
```

ちなみに私は、日本語がちょっとおかしくてもChatGPTにはそのまま流しています。
書き直す必要がないくらい空気を読んでくれるので、かなり時短になってます。
とは言え、文脈の理解が一つだけになるように見直してはいます。

### なぜ良いのか？整理する

では、具体的にどう良いのかを前回と同じように整理してみましょう。

- 起：どんなテーマの話なのか？
    - パートナー関係を振り返る
- 結：結局何が言いたいのか？
    - 愛と感謝を伝える

つまり、「これまでのパートナー関係に対して、愛と感謝を伝えたいんだな」と読み取れますね。

- 承：『起』（テーマ）の詳細は何か？
    - 相手を賞賛する
- 転：つまり本題は何なのか？
    - 未来への前向きな気持ちを語る

要するに、「この人は私のことを称賛したくて、本題としては私との未来に前向きな気持ちでいるんだな」となりますね。
これはラブレターですね。素晴らしい。

なぜこちらの文章が良いのか？もっと深堀りするつもりでいましたが、これだけで結論になりましたね。
このラブレターのゴールと照らし合わせて、素晴らしい出来です。 

```
ゴール：
長年連れ添ったパートナーへ、感謝の気持ちと愛情を伝える

読み取れる内容：
- これまでのパートナー関係に対して、愛と感謝を伝えたいんだな
- この人は私のことを称賛したくて、本題としては私との未来に前向きな気持ちでいるんだな
```

### 前回と今回を比較してわかること：文脈を変えるのは情報の順番

前回の文章
```
ふと振り返ると、私たちは本当にたくさんの時間を共に過ごしてきましたね。
心からの愛と感謝を込めて。これまで本当にありがとう。

楽しいことも、つらいことも、すべてを一緒に乗り越えてきたことが、私たちの絆を深めてくれたと思います。
初めて手をつないだあの日、笑い合った何気ない瞬間、そして特別な記念日たち。
あなたと一緒に歩む未来が、私の何よりの幸せです。
あなたとだからこそ、どんな逆風も耐えてこれたんだと思います。
私たちなら、どんな困難も乗り越えられる。
なぜなら、あなたといることで、私はどんなときも力強く前を向けるから。

辛いことがあったときも、迷いがあったときも、あなたはいつも優しく励ましてくれましたね。
「大丈夫、一緒に乗り越えよう」という言葉に、どれほど救われたことでしょう。
そして、これからもよろしくね。

けれど、それ以上に、苦しい時にあなたがそばにいてくれたことが、私にとって何よりも大きな支えでした。
甘い思い出もたくさんあります。
でも、今の私には確信があります。
これから先も、甘い瞬間だけではなく、時には試練が訪れるかもしれません。
```

今回の文章
```
ふと振り返ると、私たちは本当にたくさんの時間を共に過ごしてきましたね。
楽しいことも、つらいことも、すべてを一緒に乗り越えてきたことが、私たちの絆を深めてくれたと思います。
甘い思い出もたくさんあります。
初めて手をつないだあの日、笑い合った何気ない瞬間、そして特別な記念日たち。
けれど、それ以上に、苦しい時にあなたがそばにいてくれたことが、私にとって何よりも大きな支えでした。

辛いことがあったときも、迷いがあったときも、あなたはいつも優しく励ましてくれましたね。
「大丈夫、一緒に乗り越えよう」という言葉に、どれほど救われたことでしょう。
あなたとだからこそ、どんな逆風も耐えてこれたんだと思います。

これから先も、甘い瞬間だけではなく、時には試練が訪れるかもしれません。
でも、今の私には確信があります。
私たちなら、どんな困難も乗り越えられる。
なぜなら、あなたといることで、私はどんなときも力強く前を向けるから。

これまで本当にありがとう。
そして、これからもよろしくね。
あなたと一緒に歩む未来が、私の何よりの幸せです。
心からの愛と感謝を込めて。
```

一文単位でしか入れ替えていないことがわかると思います。
これほどまでに、情報の順番が文脈を変えるのだということがわかりますね。

```
ゴール：
長年連れ添ったパートナーへ、感謝の気持ちと愛情を伝える

読み取れる内容（今回）：
- これまでのパートナー関係に対して、愛と感謝を伝えたいんだな
- この人は私のことを称賛したくて、本題としては私との未来に前向きな気持ちでいるんだな

読み取れる内容（前回）：
- あれ？この人は私との未来に不安があって、パートナー関係を終わらせたいんだろうか？
- この人は自分の話がしたくて、本題としてはもっと私に要求したい、というところかな？
```

### 裏話

実は今回、Claudeにもラブレターを書かせてみたんです。
ChatGPTと同じプロンプトを利用しました。

Claudeの方は文章生成能力がさらに高くて、文章を入れ替えただけでは破滅的な手紙になりそうになかったので、不採用にしました。

つまり、一文単位で磨き上げると複数の解釈が生まれにくくなる、ということですね。

以前にお伝えしたことがあると思いますが、ほとんどのものは入れ子になっています。
一文中の組み立てや単語の選択が、何層にもなって文脈を作ります。

俯瞰的な目線と共に、細やかな目線も両方必要ということですね。
鳥の目、虫の目、というやつです。

**いかに柔軟な目線で縦横無尽に検証できるか。**
そのマインドはとても大事ですね。

さて、あなたが今回の文章をさらに磨き上げるとしたら、どのようにしますか？

次回はラブレターシリーズの最終回です。
このラブレターから無駄を省いたり、合わせたりして、シンプルにしてみましょう。

## まとめ

順番の入れ替えに必要なこと
1. まず初めに、ゴールは何なのかを明確にする（前回）
1. 俯瞰的に見直す（前回）
    1. いかに柔軟な目線で縦横無尽に検証できるか


## 最後に
ここまで読んでくださってありがとうございます！
少しでも役に立ったら「いいね」をください。続ける励みになります！