何故、ガチプログラミング初心者のFラン文系大学生が競技プログラミングに挑戦しようと思ったのか?
こんちゃす!伊茂木です。
※著者はまだガチプログラミング初心者です。
先週の日曜日、めっちゃバイト入ってました。
バイトで忙しくて、先週のAtCoderさん主催の競技プログラミングに参加できませんでした😢
なので、先週分はおやすみ、、、
そういうわけなので、僕が何故、競技プログラミングのブログを書こうと思ったのかについて話します。
ちなみに、前回はこれ☟☟☟
本題に入りますが、皆さんは何かを始める時、ネットを参考にしませんか?
僕はがっつりしますね~(笑)
実は昔、プログラミングに挑戦しようとしたことがあるのですが、一瞬で、挫折しました。どうしてなんでしょうかね?
それは、、、
初心者向けの記事は初心者が書いていないからです。
いやどういうことなんだよ!!!
さて、一体どういうことなんでしょうか?詳しく説明します。
初心者向けの落とし穴
まず、プログラミングに挑戦しようと思い、いわゆる初心者向けブログを見ていました。
「よ~し、僕もプログラマーになるゾ^~」なんて思ったりして、、、
しかし、「プログラマーになるぞ、という目標」は言ってしまえば、「就職するぞ、という目標」みたいに漠然としています。実際に初心者向けブログを見た僕の感想は、「結局なにすればいいかわからん」です。実際に、初心者向けの記事を見てください。おそらく、こんな感じでしょう。
プログラミングとは?
プログラミングでできること一覧
ゲーム開発
etc...
プログラミング言語とは?
Pythonとは?
C++とは
etc...
プログラミングスクールについて
おすすめスクール
etc...
はい!こんな感じ。まず、最初に根本的なプログラミングとは?について書いています。これはいいです。問題なのはその次からの、次はプログラミングで、できることなのですが、これが一つ目の罠です。
一つ目の罠
初心者は知らないと思いますが(お前も初心者だろw)、最初に、プログラミングでやりたいことを決めないと、何も始まりません。例えば、「ゲーム開発」と「ウェブサイトを立ち上げたい」では、話がまるっきり変わってきます。二つ目の罠で解説しますが、まず、言語が違います。さらに、プログラミングの書き方や何のソフトを使うか、どんな技術がいるか等、初心者からしたら、もはや別次元です。絵で言うなら、漫画とイラストでは、使う技術が全然違うのと同じです。あと、はっきり言いますが、ガチのプログラミング初心者は一個のソフトを入れるだけで疲れます。これらのことが、初心者向けの記事を書いている人は頭にないのです。確かに基礎の部分では、一緒なので、何か一個極めてしまえば、別のことでもすぐに極めれるかもしれないでしょう(知らんけどw)。ですが、何か一つでも極めている人が、ガチ初心者にいるでしょうか?いませんね。
「じゃあどうしろってんだよ😡」
これに関しては、すごく難しいです。なぜなら、何をするか決めきれない優柔不断人間が、存在しているからです。プログラマーを目指すことにおいて、優柔不断は罪です。100%挫折します。まあ僕なんですけどねw 逆にゲーム開発だけがしたいです、って人はやりたいことが定まっているので、まだ、挫折しにくくて良いと思います。でも、ゲーム開発がしていって人が最初に、ガチプログラミング初心者向けの記事を見ると思いますか?僕なら最初に、「ゲーム開発プログラミング初心者向けの記事」を見ます。そういうことです。
二つ目の罠
昔の僕「はえ~プログラミングっていろんなことができる^^でも自分が何がしたいかわかんないよ!次は、えっと、言語一覧、、、か、、、おっ多いよ!!!え?え?え?わからんわからん、どの言語がいいの~」
まあざっとこんな感じです。つまり、やることが決まってない優柔不断人間は、必然的に、言語も決まらないのです。
例えば、ゲーム開発といえば、unityやUE4が有名ですよね?じゃあもう使う言語はきまってます。C#かC++です。ウェブサイトなら?javascriptが有名(多分)ですよね?やることが決まっていれば、必然的に使う言語が決まってきます。
では、問題です。
やることが決まっていない優柔不断人間の僕は、どの言語を選択したでしょうか?
答えは挫折です。
結局、何がしたいかわからない僕は、何の言語を選べばいいのかわからず、挫折しました。
しかし、これを見た一部の人はこう思うはずです。
「あなたの感想ですよねw」
はいそうです。僕の感想です。
しかし、僕のように、ガチプログラミング初心者で、優柔不断人間は同じことを思って、挫折した人は少なからず、いると思います。挫折しなかった人間はとりあえず、何か始めた人です。
結局、伊茂木は何が言いたいんw?
1.プログラミング初心者はやりたいことを決めろ。
2.ガチプログラミング初心者向けの記事を見るな(例外として、やりたいことの初心者向けの記事は見てもいいと思う、知らんけどw)。
3.もしも、ガチプログラミング初心者記事を見る場合、プログラミングで何ができるかだけ見ろ。
4.迷うくらいなら、適当に選べ。何もしないよりはマシ。
5.結局、適当に選べず、何するか決めきれないなら、競技プログラミング始めようぜ!ガチ初心者の俺も頑張るからさ!
え?ちょっと待って、何故競技プログラミングのブログを書こうと思ったか言ってなくないw?
ガチプログラミング初心者がある程度慣れるまでの過程の記事ってあんまりなかったんよね、、、じゃあ僕が書けばいいやんってことです。
あと、ガチプログラミング初心者の俺がもしも、成功した時、「最初のクソ雑魚ボロボロ成績でこんなにも、成長できたから君にも、頑張ればできる」って証明したかった。
ほんで、ある程度プログラミングに慣れてきたら、僕がその過程までの記事を使って、
ガチプログラミング初心者の、
ガチプログラミング初心者による、
ガチプログラミング初心者のための記事、を作ろうと思うので、今はそれが最終目標でブログやってます。
夢デカくね?(笑)
いかがでしたか?(定型文)
こんだけなんかいろいろ語ってますが、実はこいつ未だに、ガチプログラミング初心者ですw。でも、頑張って初心者を脱するので、応援してください。
ちなみに、記事名の由来は、最終的にガチプログラミング初心者でも!Fラン文系大学生でも!競技プログラミングに挑戦できたよ!だから、君でもできるから、諦めないでほしい的な状態にしたいから。まあもしも、途中で挫折したら、結局、無理だったで終わっちゃうんよねw
うおおお!!!挫折せずに頑張るぞ!!!
以上