プログラミング力を上げるための習慣としてAtCoderで問題を解く

今回は技術ネタというより、啓蒙的な内容を記事にしようと思う。ずばり、プログラミング力を上げるための習慣について。技術的なネタは日々の仕事で沢山あるのだけど、どんな単位で記事にしようかと考えると、一気に記事を書くハードルがあがる。っで、久々にブログを書こうと思ったけど、怠惰な僕は技術ネタを書く気力がないなと感じ、ちょっと普段と趣旨が違う内容を書こうと思い立ったわけだ。
さて、プログラミング力を上げるための習慣は毎日プログラミングする当たり前の話過ぎて申し訳ないのですが、これに尽きると思います。

私はGitHubで芝生ってます

っで、私が習慣にしているのは、毎日Githubに草を生やす活動です。(まだ4か月ほどしか続いてないけど。しかも一回失敗した。)

習慣化していくためには、習慣のハードルをとことん下げるというのはよく聞く話です。

なので、とりあえずGitHubで毎日草を生やせばよいのです。フォルダ追加したり、ちょこっとコメント修正したり、全然プログラミングと関係ない作業で切り抜けることもあります。

ですが、それすらも習慣のためには大事な作業なんです。GitHubで草を生やす活動を目標にしていた人が知り合いにいましたが、やはりプログラミングと関係ない作業で切り抜けたり、意味なさそうだし辞めるといような結果になりました。

ただ、僕は思うんです。習慣にできてるだけですでに十分!たとえ多少セコイ数稼ぎであっても、それは成果です。成果を貪欲に追い求めた結果なんですよ!っと毎日自分に言ってます。

もちろん、意味ないかな~と思うことはありますが、とりあえず5年は続けてから結果を見ようかなと思う。

ポイントは
・毎日続けられるくらいハードルをとことん下げる
・ハードルが低すぎて意味がないかもとか考えない
・達成のために多少のセコイ技もOKとする(フォルダの追加とか)

さて、次に重要なのがネタです。何をするかというネタ!毎日GitHubで草生やすにも、毎日何を作るかとか考えてたら無理ゲーです。なので予めネタを用意しておきます。私にとってそのネタはAtCoderの問題でした。

AtCoderで競技プログラミングがお勧め

さて、しばらくプログラミング初心者を意識して書いていきます。昔の僕がそうだったのですが、何をプログラムしたらいいかわからないって人が多いと思う。プログラムを始めて、言われるがままHello Worldして、なんとなくif文とかfor文とかわかった。それで、次何すればいいんだろう?的な状態。これあるあるだと思います。

こういう状態の人はとりあえずAtCoderで問題を解きまくるでOKだと思います。

もちろん何か作りたいものがあって、それでGitHubの草を生やすというのも全然いいです。というか、ちゃんと先に作りたいものが明確ってすごいと思います。ただ、そんな人はごく一部だと僕は思ってます。なので、ざっくりプログラミングやりたいと考えていて、Hello Worldの次にすることが思い浮かばない人はとりあえずAtCoderをお勧めします。やりたいこと,作りたいものができた時にすごく役立つと思います。

ところで、AtCoderマジで難しすぎです。はやく緑になりたいけど、まだ灰色にすらなってない。恥ずかしいけど、AtCoderのID晒します。
takumioda

もっとコンテストでなあかん!ほんまこのままやとあかん!

自分事

ちょっとグダグダ思考を垂れ流します。

本当はブログを書くことも習慣化したい。ただ、ブログって毎日一本というのがなかなか難しい。(ハードル高くない?)毎日一本以外だとどんなハードル設定がいいんだろう。仮に毎日一本ブログ投稿!だとしたら、「今日は書くことがありませんですた。」で僕のブログは埋め尽くされそうだ。

っと書きながらすごくいいアイディアを思いついた!このブログWordPressで運用しているわけですが、WordPressの管理画面に入ること、これを習慣化させるためのハードルに設定しよう。いや~、実際のところ一週間に2本は書きたいんですよねぇ。現状、月に一本くらいな気がする。
この作戦で改善したい!

あ、でもブログの執筆はEvernote上でやってるから、何かしら一文書いている記事に追記するのほうが良さそうだ。そうしよう!それがいいわ!というわけで、ブログも頑張って習慣化していくぞぉー。その先駆けとして今回の記事が誕生したのでした。

まとめ

・毎日Githubに草を生やす
・そのネタとしてAtCoderで問題解く
・やりたいことができたら、そちらにシフトしていく。
・ブログも習慣化したい。

生活

Posted by takumioda