Python温泉日記
= 登 大遊@筑波大学情報学類の SoftEther VPN 日記。 「慣れ親しむことで、頭で考えなくても行動できるようになる」というのは確かにその通りだと思います。 車の運転とかもそうですね。 で「頭で考えて行動している状態」よりも「無意識的に行動している状態」のほうが生産性が高いというのも 同意できます。 フロー - Wikipedia状態になっている時は頭で考えている割合が低いように思います。
お酒を飲んだときにフロー状態になることも多いように思います。 そもそもプログラミングに論理的な思考が必須だったら、 お酒を飲んでコーディングするのは不可能に近いわけですが、 実際はコーディング自体は酔っていても可能です(むしろ生産性が高い)
なお、何人かの、作業効率が良いコンピュータ関係のことをやっている人と話したところ、大体は上記のようなことを (表現は異なるが) 普段から実践しており、それによって、平均的なレベルと比較して遥かに高い能力で作業をしているようである。確かに。 言わんとしていることには賛同するけども、僕だったらああいう表現はしません。 登君は「意識的に頭を使う論理的思考/無意識的に行う感覚的思考」という対置で書いていますが、 僕は「論理的」という言葉は思考の方法ではなくて内容に使いたいです。 つまり「意識的な思考/無意識的な思考」という対置で、 プログラミングに慣れることで「論理的なプログラミングを無意識的に行えるようになる」 という表現をとるほうが僕好み。
そもそも論理的な思考はルールの数の少ないルールベースの処理なのだから、 脳内バイナリにコンパイルするのも比較的簡単なはず。 プログラミングに必要なある程度の論理的思考は、慣れれば 意識せずに実行できるようになるわけです。 車の運転になれると考えることが減ってしゃべりながら運転できるようになるようなもの。
問題は「慣れて頭を使わずに実行できるようになった」という状況が かならずしも「よい状況」とは限らないという所じゃないでしょうか。 例えばデータ打ち込みのような 単純な知的労働は慣れてくると頭を使わずにできるようになる というのは(プログラミングもそうだということがイメージできない人でも) イメージできると思います。 でも、その「頭を使わない作業」を長期間続けるのは 脳に対してよくないと思います。 なんせ頭を使っていないのですから。 頭を使わない作業を長時間やっていると、頭を使う能力は下がってしまうと思います。
データ入力の仕事に慣れたおかげで、頭を使わずに高速にデータ入力ができるようになった、 とそれはまぁ、それがお仕事なんだから悪いことではないのですけどもね。 僕としてはそういう「頭を使わない仕事」に従事するのは嫌いで、 何とかしてその作業を機械化できないか、とか、 慣れてない新入りバイト君の生産性を上げるためにはどうすればいいか、とか 頭を使う仕事がしたいわけです。
プログラミングの例で言えば、 10000行のコードを書く速度を上げるのではなくて、 その10000行のコードを生成するプログラムを設計することで 1000行のコードで同等のプログラムを作れるようにするとかね。 現在の自分に注目していると、頭を使って「1000行で記述できるようにするシステム」を 作るよりも10000行を何も考えずに作るほうが速いかも知れないけども、 それは将来の自分や他の人を視点に入れると逆に遅いかも知れません。
登君が「頭を使わない作業」に従事しているというのは、 世界全体にとっては損失なのではないかと…。
= ううむ。 機能は秋葉原に行って新居用の家電を買ったのだけど、 その時に普段のカバンじゃ重いからと手提げ袋で行動したせいで、 今日は手帳を忘れた。 今日出そうと思っていた水道や電気の書類も忘れた。 あと転入届を出さないといけないのもすっかり忘れていた。
そうか、手帳を忘れたから 自分の住所もわからない。
書類書き。 Wordは嫌い。
= 帰りの電車。Haskell。
data P2 = P2{x::Int, y::Int}
data P3 = P3{x::Int, y::Int, z::Int}
これが「定義が重複している」エラーになる。
当たり前だけどちょっと許し難い挙動。
= ACアダプタを忘れた。