前置き
プログラミングを4年ほど続けているので、ふらっと初心にかえって思ったことを書きます。
これからプログラミングに縁がありそうな人にとって、或いは新しいことに挑戦しようとしてる人にとって、参考になる話ができたら嬉しいかも。
プログラミングってなに?
コンピュータへの命令文である「プログラム」を書くことをプログラミングっていいます。
プログラミングで作れるものは色々あって、例えばWebサイトやゲーム、人工知能などが作れます。
プログラミングはいつでも誰でも挑戦できる!
プログラミングに挑戦するために必要な事前知識はありません!
強いて言うならパソコンの基本操作が分かっているとスムーズに学習を進められますけど、むしろパソコンに慣れるためにプログラミング学んでもGoodですね。
「パソコン詳しくないから…」や「文系だから…」などを理由にプログラミングに挑戦しないのは勿体無いです! 1ミリでも気になっているならプログラミングやってみよう!!
ちょっとだけ、初心にかえる
ここから少しだけ、個人的な話になります。
いや、最初は要点だけ掻い摘んで書こうとしたんですよ? でもでもいざ書いてみたらつまらんまとめサイトみたいな文章になっちゃって、これじゃ面白くないなー、と。
身内のイベントなんだし、どうせなら実話を元に書いた方が説得力もあるかな、みたいな?
べ…別に自分語りがしたいわけじゃ、ないんだからね!
はじめてのプログラミング
プログラミングに挑戦したのは今から4年前、高校2年生のときです。とあるプログラミング教室でUnityを使ったゲーム作りを始めました。
当時の自分が抱いていたプログラミングに対するイメージは「とにかく難しくて頭が良くないとできないもの」でした。だけど、やってみたらめちゃめちゃ楽しかったんですよねー。なんで今までこれを知らずにいたのかと本気で後悔するようなレベルでした。
そんな高校生の自分が3ヶ月で作った初めてのゲームがこちら。プログラミングを始めたての人がよく作るような、なんの変哲もないフライトゲームです。
ゲームの内容はさておき、ゲームを完成させ、みんながプレイできるように公開もしていることは偉かったと思います。
インプットはアウトプットを形作る
さて、なぜみんなが遊べるように公開(=リリース)しているかというと、通っていたプログラミング教室で、リリースをすることが最終目標として設定されていたからです。
なので最初から「作ったゲームをリリースするぞ!」とは思ってませんでしたし「リリースよりも先にやるべきことがあるのではないか」と、内心思っていました。
世の中は素晴らしいコンテンツでありふれています。そんな素晴らしき世界に自分の制作物をリリースするなんて恐れ多い! だからこそ、特に最初のうちはインプットに集中して、より良いアウトプットができるようにたくさん勉強しなきゃ!
「より良いアウトプットのために、しっかりとインプットに励むべき」
これが当時の自分が考えてたことです。この考えの裏側には「高級なアウトプットは高級なインプットの蓄積によって達成される」という論理があります。
アウトプットは次のアウトプットを形作る
突然ですが、ここで持論を述べます!
インプットは量より質、アウトプットは質より量だと思ってます。
はい。完全に持論なので、全く共感できなくても大丈夫です。
というか、インプットにおいてもアウトプットにおいても、量と質はどっちも大事ですよね。だからどっちの方が重要であるかを決めたいわけではないです。
……ただ、世間一般的に「インプットはたくさんするけど、アウトプットはそんなにしてないよ」っていう人、多いと思いませんか?
なんかそういうデータあるんですか?
ないです。(あるかもしれないけど。)
いや、世間の皆様のことなんてどうでもよかったですね。
大事なのは、自分がどうだったか。
そしてこれを読んでいる「あなた」がどうであるかです。
「より良いアウトプットのために、とにかくアウトプットを重ねるべき」
この考えの裏側には「高級なアウトプットは低級なアウトプットの蓄積によって達成される」という論理があります。
どうです? どっちの方が正解っぽく聞こえますか?
まぁ、どっちが正解とかないんですけどね。むしろどっちも正解だし、もしくは両方を合わせたら正解なのかもしれない。
まとめ
これからプログラミングを学ぶ人、或いはプログラミングに限らず、何か新しいことに挑戦しようとしてる人はインプットだけでなく、アウトプットにも力を注げると素晴らしいよね、というお話でした。