ラーメン、それは人類が到達した光

日々の気づきと思ったことをそのまま書き連ねるブログ

AtCoder始めてみました(プログラミング入門にはオススメかもしれない)

すごい、超なんとなくなんですがAtCoderを始めてみました。
AtCoderって何?って人のために公式サイトより引用するとこんな感じです。

AtCoderは、オンラインで参加できるプログラミングコンテスト(競技プログラミング)のサイトです。リアルタイムのコンテストで競い合ったり、約2000問のコンテストの過去問にいつでも挑戦することが出来ます。

atcoder.jp

なんでAtCoder始めようと思ったのか?

めちゃくちゃ高いモチベーションがある、というわけでは正直ないです。
が、だいたい以下のような理由です。

  1. これまでIT企業にいたにも関わらず、プログラミングは未経験
  2. なんていうか、統計解析とかサクッとできるようになりたかった
  3. webのスクレイピングとかちょっとやってみたかった
  4. パズルとか好きなので、暇つぶしに良いかなと思った

個人的には、数学が割と好きで、これまでマーケティングリサーチの業務経験もあり、クラスタ分析とかもやってきたので統計の知識もあり、データ解析に強いらしくかつ初心者にオススメの言語であるという情報が多かったPythonで始めてみることにしました。

AtCoder、もしかしたらプログラミング初心者にオススメかもしれない

で、軽くいくつかAtCoderのBeginners Selectionにあった問題を解いてみたりしたのですが、ちょっとやってみて「これ、プログラミング初心者にオススメかもしれない」と感じたのでその理由を書いてみます。

  1. アプリやサイト制作を目標にするよりも、目標とロードマップが明確
  2. 毎日細切れに進捗するので、日々達成感がある
  3. 純粋に楽しい

だいたいこんなところです。

個人的には、何事においても「意識低く新しいことをはじめること」が人生を有意義にするコツだと思っています。
多くの人は、何か新しいことを始めようとすると最初に大層な目標や目的を掲げて、達成までのロードマップを具体化できなかったり、そもそも自分がなりたいものと目標設定が大きくかけ離れていたりして長続きしないことが多いと思います。

特に、アプリ制作などになると、「何ができるアプリを作るのか」「アプリの挙動はどんな感じか」「どういう時に使うのか」みたいな直接コーディングと結びつかないいわゆる企画のような部分が大変で、なかなか「プログラミングできるようになる」というゴールに近づいてる気になれなかったりします。
(しかし、企画しないと良くわからない動くだけのアプリができてあんまり勉強にならないという...)

そこで、「競技プログラミング」と聞くとハードル高いですが、競うというよりは「毎日少しずつパズルを解く」くらいの緩さでAtCoderを始めてみると、いきなりコーディングに直結した目標を細かなマイルストーンで設定できてモチベーションが維持できるような気がなんとなくしています。

正直始めてみてまだ3日も経っていないので長続きするかはわかりませんが、今後は少しずつAtCoderへの挑戦してみた記事みたいなものを書いていけたらいいなぁと思っています。
(マサカリが飛んでくる気もするけど、エンジニアではないしプライドもないのでそんなに怖くはない。)

ということで、中身あんまりないですが「始めてみました」というだけの記事でした。
ちょっと最近本業が少し忙しめで雑な記事が増えてしまってあまり良くないですね...

まぁでもブログは続けるのが大事かなと思っていたりもします。
ということで今日は以上です。それではまた〜。