無料でプログラミング独習できるサイト(主にPython)

Share on:

新入生に紹介するのに良さそうなサイトが有れば教えて下さい! という記事です。


2次元美少女がPythonを無料レッスンしてくれる動画が公開~cvに上間江望さん起用」ということで久しぶりにpaizaを覗いてみたんですが、いつの間にかPython 3.4にも対応してたんですね。紹介されてたpaiza learning(動画学習)「1テーマあたり数分程度の動画説明->ブラウザ内で演習」という流れで進むので、割りと良さ気です。ただし欠点もあって、課題が正しく動いてるかどうかを自動でテストしてくれるのですが、そのテスト内容が全くわからず、「テストに失敗した」ぐらいの情報しかもらえないので、どこをどう改善したら良いのかについての検討材料が無いところは独習に向いてません。(たまにどう考えてもテストの方がおかしいんじゃないかという事例もあったり。私の理解不足という可能性も十分ありますが。)
ちなみに開発途上だからだと想像しますが、動画学習の1章を終えると「paiza Code Gym(1分間タイムアタック)」へのリンクが出てくるんですが、これがPHP版しか用意されてません。Python勉強してPHPで戦えってどういうことよ〜。

似たようなものにドットインストールがありますが、こちらはまだPython 2.xのみっぽいのと、演習課題はなかった気がする(今もそうなのかは知らない)という点でやや物足りない感がありそう。ただし他言語含めて幅広くあれこれ扱ってるという点ではこちらが上ですね。

同じく独習向きサイトとしてはプログラミングコンテスト関連がありますね。slideshareの方が見やすいという人はこっちを見よう。中身はどっちも一緒。この記事ではあれこれ整理して紹介してくれててどこから入ろうかの目安が分かりやすいです。コンテスト系の難点は、こちらのやりたいタイミングでやるというのが難しいことが多いことか。比較的長い期間開催しっぱなしのもあるけど、決められた特定の時間帯にしかやれないのも少なくない。公開されてる過去問で良いなら時間制約もなく、お手頃だと思います。

コンテストではないけれども共有&競争しやすい場を提供してる例としてはCheckiOみたいなタイプがあります。ただ難易度設定が怪しい気もする。例えば一番最初の課題(一番上に表示されたものを選択してみた)が「リストに含まれる数値から非ユニークなものだけを残せ(1度しか出現しないものは削除しろ)」というような課題で、リストもカウントもif文もfor文も知らないとできない課題になってたりします。一度基礎をどこかで学んだ上で「課題ベースで学び直したい。他の人のコード例も読んでみたい」という人向けのサイトかな。

これまでとちょっと違う例としては「プログラミングの勉強」に特化したソースコード検索エンジン「Runnable」が便利過ぎ!なるものが。ただ、ちょっと触ってみた感じでは使い勝手悪い気がするな。探し方が悪いのかもしれないが。

取り敢えず課題がほしいという人向けには、こんなものも。

先に出したものもまとめておこう。

こんなところかな?