ども。週末プログラマーのパチです。
先日、マイカさんという方が以下のようなツイートをしていました。
僕なら「JavaScript おみくじ 作り方」でググって真似してみる感じですね。
— パチ@週末プログラマー (@TK_appdev) August 7, 2020
※「元女優」というパワーワードでつい返信を送ってしまいました(笑)
さて、
「ググって真似ろ」とリプ欄の中でも一番辛辣な返信でしたが、実際は『おみくじプログラムなんか作るな』というのが本音です。
初心者向けに紹介される「簡単なゲームのプログラム」ですが、ぶっちゃけ作る必要はありません。
初心者でも「おみくじゲーム」のようなプログラムは不要である理由
プログラムを始めると、最初は簡単なゲームでも作ってみたい。となるのが良くあるパターンですが個人的にはあまりオススメしません。
その理由を紹介していきます。
逆にモチベーション低下になる
実際に動いているのを見ると「達成感」や「モチベーションアップ」につながると思われがちですが、
「逆にこんなのしか作れないのか」と絶望する人は多いと思います。
特にゲームは、テレビゲームやスマホゲームなどでハイレベルなものに慣れ親しんでいるので、自分が作ったものを見て「こんなの絶対無理!」と絶望するでしょう(笑)
初学者なので当たり前ですが、苦痛に耐えて基礎を勉強してきてるわけなので、きっかけで諦めてしまう人は多いと思います。
どうせ作れるようになる
別に簡単なゲームのプログラムを組まなくても、それぐらいできるレベルにはなれる。
初心者向けのプログラムですから当然と言えば当然ですが、別のことをしていても達成できるものをわざわざ作る必要ってないですよね。
後述しますが、僕は完全に実践派の方が成長できると思ってます。
レベルの低いスキルであっても自分が想像した何かを生み出すほうに力を入れて欲しいですね。
達成感や進歩が感じれる成果物とは?
特に目的意識を持ってプログラム学習を始めてない人は、「達成感・進歩」を定期的に感じれなければ継続して続けづらいと思います。
では、そういう人がチャレンジすべき最初のプログラミングって何が良いと思いますか?
具体的に説明します。
自分が作りたいと思っている一部でも作ってみる
「プログラムでこういうものを実現したい」と明確にあるならば、その一部の機能を作ってみるのも良いでしょう。
身に付けた知識でできる範囲で良いので、自分のイメージ通りに近づけるようにゴリゴリ調べながら書くのがおすすめです。
将来的に(必要ならば)書き直すことになると思いますが、自分の目的に向かって進んだという感覚が得られます。
最初にWEB系の言語を学んだときはこの感じで攻めました。
〇〇を作るためには、〜〜が必要で、その一つの△△の部分だけ作ってみよう。という感じです。
誰かに対して明確なメリットがあるモノを作る
僕が1番最初に触れたプログラムと言うものはExcelのVBAでした。
当時、Excelを使うときはセルの中に数式を入力する使い方をしてみましたが、ちょっと複雑なデータのやりとりをするのに、他のセルを使うみたいなことをよくしてたんですよね。
そういった経験ある人多いと思います。
VBAで記述すると、そういった余分なセルをなくせるので、入力ミスやセルの数字の意味というのが伝わりやすくなるというメリットがありました。
このように明確に「誰かのためになる」「自分が楽になる」と感じて作ると、モチベーションを損なわずに粘ることができます。
やっている事は大したことないですし、時間をかけて作った割に大きな効果は得られませんが、『ちょっとでもメリットがある』というだけで達成感が全然違います。
個人的にはすぐ実践した方が面白い
プログラミング学習では最初のスキルアップでの挫折は多いと感じます。
全くわからないため1番ストレスがかかりますし、子供の頃と違って褒めてくれる人などいません。
なので、少しでもできる事が増えれば、自分で考えたものをすぐ実践すると言うのが良いかと思います。
子供を見ると分かりますが、彼らはすごい簡単なことでも楽しそうにできますよね。
これは、人から指示された事ではなく、自分で考えて実行したことで達成感が得られてる証拠だと思います。
大人も同様でしょうから、自分のやりたい事があったらすぐ実践してみましょう!
最後に、、、
パチさん!
ググります!
ありがとうございます🙇🏻♀️😊— マイカ【元女優×プログラミング勉強中】 (@IST_maika) August 7, 2020
あの返信にリプくれるとは。。ええ子や☺️
コメント