第五十七回:やりながら最適化する
今日は2020年10月01日です。2020年も残り4分の1を切りました。日本には「終わり良ければ総て良し」という便利な言葉がありますからね。残り3ヵ月をメッチャ充実させて「いや~、いろいろあったけど、2020年も良い年だったなぁ」と言えるように頑張りたいものです。それでは今回もゆるく行ってみましょう。超不定期連載「分かりそう」で「分からない」でも「分かった」気になれるITコラムでございまぁす。このコーナーでは、各用語の説明ページでは取り上げにくいIT関連のネタをテーマに、だらだらと思いついたことを書いていきます。みなさんが「あぁ、なんか役に立ちそうな気もするけど、役に立たないかなぁ。でも、もしかしたら役に立つかも」と思える情報を発信できるように頑張ります!
はじめに
栄えある五十七回目のテーマは……ピヨピヨピヨピヨ(ぴよぴよ的ドラムロール)……じゃん!
やりながら最適化する
です。
前回、前々回とITに関係しそうなコラムを書きました。
微妙に飽きたので、今回はITに関係ない話題です。
ちなみに、お忙しい人向けに先に結論を書いておくと
やりながら最適化するように意識すると
1.始めやすい
2.続けやすい
3.精度の高い仮説を立てやすい
というメリットがあるよ
です。
最後まで読んでくださる方は、この結論を知らないことにして読み進めてください。
「やりながら最適化する」って何?
最初に「やりながら最適化するって何ぞや?」を説明しておきます。
いろいろな解釈ができるでしょうけどね。
今回は
さっさと始めて、実際にやりながら、より良い方法を模索する
と定義します。
例えば、そうですね。
ピヨ太君がピヨ子さんからミカンの皮むきを命令されたとしましょう。
皮をむくミカンの個数は100個です。

「ピヨ子さんの命令は~、ぜったーい!」です。
断れません。
ピヨ太君は100個のミカンの皮をむくことになりました。

とはいえ、100個もむくのは大変です。
ピヨ太君はミカンの山を前にして「どうやれば効率的にむけるかな?」を考え始めました。

はい!ダメ!
これは「やりながら最適化する」ではありません。

「やりながら最適化する」では、取りあえずミカンの皮をむき始めます。

そして、皮をむきながら「どうやれば、もっと効率的かな?」を考えるのです。

このような
さっさと始めて、実際にやりながら、より良い方法を模索する
やり方が、今回のコラムにおける「やりながら最適化する」です。
やりながら最適化するメリットその1
今回のコラムでは、やりながら最適化するメリットを3つご紹介します。
やりながら最適化するメリットその1は
始めやすい
ことです。
何故なら
最初から上手くやる必要はない
からです。
最初は下手くそでも非効率なやり方でも問題ありません。
やりながら徐々に修正していきますからね。
効率的に上手くやるのは未来の自分に任せましょう。
最初から「上手くやろう」と考えると、始めるのが難しくなります。
「もし上手くいかなかったら、どうしよう」と不安になったり「こんな問題が起きたら、どう対処しようか」と検討するのに時間がかかったりしますからね。
大丈夫です。
安心してください。
上手くやるのは「未来の」あなたの仕事です。
今のあなたは結果に責任を持つ立場にありません。
だから、気軽に始めちゃってください。
やりながら最適化するメリットその2
やりながら最適化するメリットその2は
続けやすい
ことです。
何故なら
とりあえず成果(っぽい何か)が出る
からです。
頭の中でこねくり回しているだけでは、成果が目に見えません。
そのため「前に進んでいる感」を感じにくいのですね。
やりながら最適化するようにすると、とりあえず手を動かします。
そうすると、何かしらの成果っぽい何かが生まれます。
この「成果っぽい何か」が「とりあえず進んでいるな」という気分にしてくれ、やる気の神様を連れてきてくれるのです。
「どうしようかな~」と悩んでいるときって停滞感があるじゃないですか。
やりながら悩むことで、(とりあえず何かしらの変化はあるから)停滞感を感じにくくなる理屈です。
やりながら最適化するメリットその3
やりながら最適化するメリットその3は
精度の高い仮説を立てやすい
ことです。
何故なら
そこまでにやってきたことが経験値として蓄積されている
からです。
普通に考えたら「ミカンの皮をむいたことがない人」よりも「ミカンの皮をむいたことがある人」の方が「効率的なミカンの皮のむき方」を見つける可能性は高いですよね。
※逆に経験が邪魔をして画期的な発想ができない可能性はありますが今回は無視します。
計画段階で出てくる「こうやった方が良いかな?」は基本的にすべて机上の空論です。
頭の中だけで考えて、ひねり出したものです。
一方、実際にやってみた上での「こうやった方が良いかな?」は実体験を踏まえて考え出されたものです。
頭の中だけでひねり出したものよりは精度の高い仮説になっているはずです。
やりながら最適化すれば「やりながら」を「最適化する」ための情報源として使えます。
机上の空論で終わらない、実践的な仮説を立てやすくなる理屈です。
注意点その1
ここまでで今回のコラムで言いたいことは大体書きました。
ここからは補足説明です。
まず
「やりながら最適化する」は「とりあえず始める」とは違うよ
というのを頭に入れておいてください。
始める前に「それを、やるべきか?」の検討は必要
です。
例えば、そうですね。
あなたがプログラミングの勉強を始めようと思ったとしましょう。
その上で、独学が良いのかスクールに通った方が良いのか迷っているとします。
この「独学が良いのかスクールに通った方が良いのか」の迷いは、個人的には時間の無駄だと思っています。
まずは独学でやってみて「うわ~、独学だと無理そうだなぁ(--;」と感じたら、スクールに通うことを検討すれば良いだけだからです。
あるいは逆でも良いでしょう。
まずはスクールに通ってみて「こんなものなら独学とたいして変わらなそうだなぁ(--;」と感じたら、独学に切り替えれば良いだけです。
これが「やりながら最適化する」です。
実際にプログラミングの勉強をやりながら、勉強のやり方を最適化していますよね。
ただし、です。
そもそもの話として「プログラミングの勉強をする必要はあるのか?」というのは事前に検討しておく必要があります。
誤解しないでくださいね。
「やりながら最適化する」と「とりあえず始める」は違います。
「プログラミングが流行っているの?じゃあ、とりあえず勉強してみるか!」は「やりながら最適化する」では、ありません。
やるという前提があって、その「やり方」をやりながら改善するのが「やりながら最適化する」です。
「やる」か「やらない」か、言い方を変えると「必要」か「不要」かは、事前にしっかり考えて結論を出してください。
注意点その2
補足説明その2です。
「やりながら最適化する」というやり方は万能では、ありません。
試行錯誤する余地がない事柄には向かない
です。
ご注意ください。
「ミカンの皮を100個むく」であれば、やりながら最適化するのは効果的です。
これが、もし「1個しかない高級ミカンの皮を奇麗にむく」であれば、やりながら最適化できません。
1回こっきりの一発勝負だからです。
個人的には
1.同じことを何回も繰り返すような単純作業
2.途中からでも軌道修正しやすそうなやつ
3.考えても結論が出ない(正解が分からない)ようなこと
は、やりながら最適化するのが有効だと思っています。
「1.同じことを何回も繰り返すような単純作業」は、脳みそが暇なので「どうやったら、もっと良くなるかな?」と考える余裕があるからです。
何回もやるので「こうやったら、良いんじゃないかな?」と思いついたことを試す場もあります。
「2.途中からでも軌道修正しやすそうなやつ」は「あっ、このやり方はダメだわ」と判明しても何とかなるからです。
一度決めたら変えられないような場合は「あっ、このやり方はダメだわ」と分かったときには時すでに遅しですよね。
事前にしっかり検討しておく必要があります。
「3.考えても結論が出ない(正解が分からない)ようなこと」は考えるだけ無駄です。
考えても結論が出ないのですから。
そんな無駄な時間を使うくらいなら、さっさと試して、その結果を踏まえて考えた方が有意義でしょう。
やりながら最適化するのに向いています。
一方で
1.1回しかやらない作業
2.途中から変更できないやつ
3.失敗したらヤバいやつ
などは、やりながら最適化するのに向きません。
試行錯誤する余地がないからです。
「やりながら最適化する」というやり方には、作業の性質によって向き・不向きがあります。
そこの見極めは必要です。
まとめ
今回は
やりながら最適化する
というテーマで好き勝手に語ってみました。
前提として、今回のコラムでは
さっさと始めて、実際にやりながら、より良い方法を模索する
やり方を指して「やりながら最適化する」と表現しています。
やりながら最適化するように意識することには
1.始めやすい
2.続けやすい
3.精度の高い仮説を立てやすい
というメリットがあります。
まず、やりながら最適化するということは
最初から上手くやる必要はない
ので、物事を始める際の心理的な負担を減らせます。
また、考えながらも手を動かすことにより
とりあえず成果(っぽい何か)が出る
ので、続ける際のモチベーションアップにつながります。
さらに
そこまでにやってきたことが経験値として蓄積されている
ので精度の高い仮説を立てやすくなります。
「やりながら」を「最適化する」ための情報源として使えるからです。
あと、留意事項として
1.「とりあえず始める」とは違う
2.作業の性質によって向き・不向きがある
の2つは覚えておいてください。
「やりながら最適化する」は「とりあえず始める」では、ありません。
やるという前提のもとに、その「やり方」をやりながら改善するのです。
「やる」か「やらない」かの検討は事前にしっかりやっておく必要があります。
また「やりながら最適化する」というやり方は万能ではありません。
作業の性質によって向き・不向きがあります。
基本的に
試行錯誤する余地がない事柄には向かない
です。
ご注意ください。
今回のコラムでご紹介した内容は「これは絶対に良いから是非やりなよ!」という類のものではありません。
「こんなやり方(考え方)もあるよ」程度です。
ただし「あれこれ考えて、なかなか行動に移せない」みたいな人は、意識することで行動に移しやすくなるはずです。
私も本質的には慎重派なのですが「いろいろ微妙に不安だけど、やりながら最適化すれば、いーや(--ゞ」と考える癖を付けたことで、物事を始める際の心理的ハードルが低くなりました。
思いつきで始めて惰性で続けている「分かりそう」で「分からない」でも「分かった」気になれるITコラムですが、いかがでしたでしょうか。また何かネタがあったら、ちまちまと更新していきます。コンゴトモヨロシク。






