プログラミングを学ぶ上で

プログラミングを学ぶ上で大事なことを、忘れそうな時に振り返る。

■おもいっきり遊ぶ

豊福晋平さんという方がTwitterでプログラミングスキルとか論理的思考力というのは、「遊び」や「創造活動」に没頭した結果もたらされるものであるというツイートがされており、これはとても共感できた。

遊びというのは、仕事や規則・ルールや報酬によって強制されず、個々の自由な意思で自発的に行っているもの(主体的な活動)で、自発的ではないものは遊びではない。遊びというのは、本気になれるし、楽しむことができるものである。なお、遊びは大人であろうが、子供であろうが大事。

自発的ではないものを長期間継続していくことは極めて困難である。日本人は頑張るのが好きだが果たして10年,20年自発的ではないことを、歯を食いしばりながら続けられるのか。自発的ではないことや苦手なことを10,20年以上やっていくほどの時間は、人生にはない。

■生涯学び続ける

答えにたどり着く度、新たな疑問が生まれる。知識の探求に終わりはない。あなたは知ったつもりになっていても、世の中、知らないことが多い。異なる考え方をする人たちと交わり、受け入れられないとしても考え方を知っておく。あなた自身の考えを常に見直し、すでに解決した問題でも改めて考える。

■抽象⇄具象

模写やデッサンをしても上手くならない人向けに書かれている記事だが、記事内の「抽象度を上げる思考訓練」というのは、プログラミングする上で大事だと考える。(http://animesijyuku.blogspot.com/2018/05/blog-post_35.html

■階層的思考(Hierarchical Thinking)

階層的(レイヤー)思考、文法構造、および元のシーン(Hierarchical Thinking, Grammatical Structures, and the Originary Scene)(http://anthropoetics.ucla.edu/ap2502/2502ludwigs/)という記事を翻訳してみると、

”階層的処理の定義「目的行動の中心的な特徴は、主な目標(朝食の準備など)を小さなサブ目標(コーヒーの準備とトーストのバター)に分割することです」”

このようなことが書かれている。これは大事だと考える。

■俯瞰

ものごとを客観的に捉える。

■己を知る

メタ認知で、自分の行動や考え方や性格などを別の立場から見る。自分の考えが正しいと思い込まない。「これが正しい」と思い込むと、それを補強する知識や論理しか受け入れなくなる。

■睡眠

たっぷりと睡眠をとる。睡眠は”心体”に影響する。心と体が整わないと、働くことはできない。心の病気(精神疾患,うつ病)になってしまうと寛解(以前のように元気が回復している状態)までには時間がかかる場合がある。寛解しても再発する可能性があるので、気をつける。

■運動

運動すると脳由来神経栄養因子(BDNF)という物質が脳の中で分泌されます。脳の成長を促します。

■愚直に追い詰める

目標に対して、愚直に追い詰めること。

■部分的成功(失敗)

部分的成功(失敗)する。

■課題を発見する対人スキルを磨く

将来、人工知能(AI)が進化しコードを書く作業は自動化されると考える。会話によって課題・問題を発見する対人スキルを磨く、または異なる立場であっても共通する価値を発見することが大事だと考える(参照:https://sakumaga.sakura.ad.jp/entry/2020/10/21/120000)。

■最後に

またプログラミングを学ぶ上で大事なことを思いつくと追記する。

スポンサーリンク
小林をフォローする
Men of Letters(メン・オブ・レターズ) – 論理的思考/業務改善/プログラミング
タイトルとURLをコピーしました