本日も乙

ただの自己満足な備忘録。

脳内ダンプ(Dump)することで自分自身をデバッグする

今日も北海道のニセコにいますが、これから帰ります。電車+飛行機の長旅ですね。

 

IT用語に「ダンプ(dump)」というのがあります。dumpという英単語そのものは「中身を放出する、ゴミを捨てる」という意味だそうですが、IT系に限ると以下のような意味になります。

ダンプとは、デバッグやデータ修復のために、ファイルやメモリの内容をディスクに出力することである。

ダンプされたファイルにはダンプ作成時のメモリ上のデータが丸ごと書き出される。プログラムの開発などを行う場面では、データをダンプしてデバッガに読み込ませると、プログラムの問題点を発見できることがある。特にUNIX系OSにおける、メモリを強制的に中断させて内容を書き出すことを、コアダンプと呼ぶ。

データベースにおいては、データベースの情報をファイルに書き出して保存することダンプと呼ぶ。これはデータベース移行の際に利用される。

IT用語辞典バイナリ https://www.sophia-it.com/content/%E3%83%80%E3%83%B3%E3%83%97 より引用

プログラミング言語のJavaではヒープ・ダンプ、PHPならvar_dump関数などが提供されています。データベースのMySQLならmysqldump、PostgreSQLならpg_dumpがあります。

一言で表すなら、特定の対象の値や構造などすべての状態をある媒体に出力する、という意味で捉えることができます。プログラムを書いているときのデバッグ(プログラムのバグを潰す)やトラブルシューティングをするときに、変数やオブジェクトに対してダンプをすることでどういう値や構造になっているかを調査するときに使います。また、データベースのデータのバックアップや別の場所に移すときにデータを一旦吐き出すときにもダンプを使います。

 

頭の中身をダンプする

日常をなんとなく生きていると、思考の癖がいつの間にか身に染み付いていることがしばしばあります。例えば「自分は◯◯だから△△できない」(◯と△は適当なワードに置き換えてください)という自分を縛る言葉です。年齢(◯◯歳だから)、職種、性格、置かれている状況等で本当はやりたいことがあるはずなのに、できない理由を探してやらないということはやってしまいます。これを思考のバグとします。

バグなので原因がわかれば潰すことができます。これをデバッグ(debug)といいます。プログラミングにおけるデバッグならソースコードを読んだりツールを使えば原因の箇所を見つけることができますが、問題は思考のバグはそもそも本人がバグだと認識していないことです。俗に言う「これは仕様です」状態です。そうした思考のバグを潰すためには、一旦自分の頭の中身を外部リソースに吐き出してみることです。外部に吐き出されたものは自分の脳から切り離された状態なので客観的に捉えることができるようになり、思考のバグに気づける可能性が高まるというわけです。

まずは自分が考えていること・思っていることを紙やエディタ何でもいいのでひとまず書いてみることです。このブログも自分の中にある思考のバグがないかを点検するのにも一役買っています。

第三者からのフィードバックをもらう

紙などの媒体に書いてみるのが良いと書きましたが、第三者に読んでもらってフィードバックをもらうのが理想です。外部に吐き出すことで自分の脳内に溜め込んでいる状態よりかは客観的に捉えることができますが、それでも自分一人だけだと考えが枠にとどまってしまいがちです。自分の脳内を他人に公開するのは大変恥ずかしいので、馬鹿にしたりしない・適切なフィードバックがもらえそうだと信頼できる人に限定するのが良いでしょう。勇気がいる行為ですが、効果は大きいと思います。

いつもブログを読んでいただきありがとうございます。コメント等をいただけることによって自分では気づかなかったことに気づくことで思考のバグを取り除く一助になりますのでお気軽にコメントや感想などをいただけると嬉しいです。