
プログラミング初心者は様々な理由でプログラム学習をやりたいと考えています。
将来の自分のスキルアップに対して学習する人もいれば、
自分が好きなゲームを自分で作ってみたいと考えている人もいます。
また、仕事で必要に迫られて学ぶ人や、
なんとなく、プログラミングがわからないとこれから先の生活に不安があるという漠然とした理由の人もいます。
どんな理由であれ、学習するプログラミングの内容はさほど大差はありません。
そんなプログラミング学習に挫折をしてしまう人も多いのは、気持ちの問題が大きいと思ったので、独自のプログラミング学習を始める前の心得を書き綴ってみたいと思います。
ユゲ式プログラミング学習の心得10か条
- 教わる前からデキないを考えない
- 時間がかかるのは百も承知
- 大きなシステムは大きな一戸建て住宅を建築するようなモノ
- 新しく覚えたことを未来の自分が読めるようにメモする
- プログラミング言語も英語や日本語と同じ言語
- ヤリたい事を増やすのではなくデキない事を理解する
- 周辺知識を深堀りする
- プログラムの道筋を想像する
- エラーは友達
- 難しいを楽しいに置き換える
1. 教わる前からデキないを考えない
何かをやるにしても、
意味のない自身というのはその人の学習を大きく支えます。
根本的に
出来ないとネガティブに思考してしまう人は、挫折率が高いというのは容易に想像できると思います。
誰かが出来ている事は、自分も必ずできるという思考で学習に取り組みましょう。
2. 時間がかかるのは百も承知
とにかく何も知らない事を知るという事は時間をかけて学習をする以外に手立てはありません。
何もしゃべれない赤ちゃんが、年月を経て親からいろいろな事を学んでいくスピードと何も変わらないと考えると、それ相応の時間が必要だとわかると思います。
寝返りが半年ほどかかる赤ちゃんもいれば、生まれて1ヶ月で寝返りする子もいるので、こうした個体差もあるため、一概に何時間学習すればどうなるかは、その人次第であるるとも理解しておくと言いでしょう。
早くて得する事もあれば、遅くて得することもあるので、重要なのは
マイペースを保てるという事。
3. 大きなシステムは大きな一戸建て住宅を建築するようなモノ
大工道具を買って来て、いきなり大豪邸を経て始める人はまずいません。
自分で一戸建てを建てたいと考えた時に、ロゴハウスなどのこじんまりした小屋から建てるとさほど失敗しないのと同じで、
大掛かりなシステムをいきなり作ろうとせずに、スニペットレベルの小さなプログラミングを作ってそれを
組み合わせる技術を増やしていきましょう。
4. 新しく覚えたことを未来の自分が読めるようにメモする
頭で覚えたことは、生涯自分のスキルとして取得できているかというと、プログラミングにおいては、3日ほど経つと、熟練者であっても忘れ去ってしまいます。
ネットで備忘録ブログを書いているプログラマーは、意識が高いのではなく、将来の自分の脳みその記憶をキチンとメモしておく事を理解しているだけなんですね。
エンジニアの書く備忘録系ブログは、
そのエンジニアの脳みそそのものです。
5. プログラミング言語も英語や日本語と同じ言語
言語と言われているのに、他の言語学習と領域が違うと思われがちなプログラミング言語。
I have a pen. を Hello world に置き換えて言語学習と言うことを理解して、学習に励みましょう。
6. ヤリたい事を増やすのではなくデキない事を理解する
壮大なゲームを作りたいと思った時に、いろいろなやりたい事が思いつくと思いますが、多くの場合いろいろな挫折ポイントが存在します。
その膨大なシステムを作る時に、自分は何が出来ないのかをリストアップすると、挫折せずにその課題をクリアして
確実にゴールに辿り着くことができるようになるでしょう。
この思考、ゲームだけじゃなく、プログラミング作業全般に言える事なんですよね。
7. 周辺知識を深堀りする
AIをやりたいからと言って、Pythonの学習をしているだけでは、なかなか完成に近づくことができません。
ゲームを作りたい時に、UnityとC#だけを学習しても物足りないし、
iPhoneアプリを作りたいからと思って、swiftばかりを勉強しても、アプリを完成させることはできません。
園周辺の様々なITや技術を理解していく周辺知識の理解は避けて通れません。
そうした
周辺知識の学習を苦手と考えていると、プログラミング学習そのものが嫌になってしまう可能性も高くなりそうですね。
8. プログラムの道筋を想像する
プログラムの道筋というのは、フローチャートです。
かんたんなプログラミングではフローチャートなどを書くのがめんどくさくて書かない人も多いと思いますが、
これほど明確に理解できるモノはないと思われる
フローチャートは、システム進行の重要な設計図なのです。(当たり前ですよね)
プログラミング思考というのは、フローチャートが書けるかどうかの脳の仕組み化だと言っても過言ではありません。
ベテランのプログラマーは、システムを作る時に、頭の中はフローチャートでいっぱいになっているはずです。
9. エラーは友達
初心者がとにかく嫌う、プログラミング・エラー。
多くの場合、エラー文言には、様々なヒントがあり、そのポイントを解決すれば、エラーは無くなるはずです。
エラーを、自宅に突如現れた黒いG物体の様に嫌うのではなく、
不具合を教えてくれる仲の良い友だちの様な感覚になると、
親切に教えてくれるその内容もキチンと読んで、従順に聞いて理解できるようになるはずです。
10. 難しいを楽しいに置き換える
プログラミングでいちばん重要なポイントは、難しいプログラミングを強いられた時に、
それを楽しめるかどうかです。
ゲーミフィケーションという、難しい課題をパズルゲームの様に考えて、それをクリアするためにいろいろな組み立てを行う思考がプログラミングには必要です。
基本的に、何も考えずに完成するプログラミング作業はありません。
数学が苦手でも、物理を知らなくても、機械やITが理解できなくても、プログラミングは必ず楽しめます。
あとがき
プログラミングを教える機会が多い自分としては、自分の事で一生懸命の学習者の人のことはよく分かっているんですが、
教えてくれる人のモチベーションを上げてくれる人がごく一定の割合でいるという事も最近薄々気が付き始めました。
教わる人が、教えてくれる人に対しての態度をぞんざいにする場合と比較すると、間違いなく、より親切丁寧に教えてあげたくなる心理は人として当たり前のように高まります。
そんな教わる人の態度も含めたプログラミング初心者の心得、いかがだったでしょうか?
教えている自分もまだまだ学習が止まらない今現在ですが、この10か条のおかげで楽しく学習ができているので、オススメです。
0 件のコメント:
コメントを投稿