日本でハリウッドVFXを制作! 「経産省アイディアボックス」 結果:  
●まとめエントリはこちら ●FAQ ●お問い合わせは左のメールフォームから

2016年12月23日金曜日

Pythonスタートブックにたどり着くまで

※この記事は12/23に書いたのですが、12/27に手違いで全文失念してしまいました。
原文も履歴も失われていたため、草稿を基に新たに書き起こしました。
そのため、オリジナルの内容とは大きく変わってしまいました。


前回「Pythonスタートブック+Progate」は、たまたま自分には内容があっていたのと、タイミング的に良かったのだと思います。


Pythonの入門は、これまでも何度もトライしてきました。
ただ書籍ではなくWebサイトばかりです。
日本語の書籍を購入する際、近くの書店に置いてないので中身を確認する手段がないのと、 購入すると送料含めて1.5倍以上の値段になってしまうので手軽に手が出せるのは、Webサイトしかないのが理由です。


ネガティブな評価になっていますが、そもそも自分の目的に添わなかっただけで、そのサイト自体が悪いとは限りません。人によっては全然問題ないものも多いと思います。

Pythonを勉強するにあたり、自分がもっていた目的は以下のようなものです
1)オブジェクト指向がシンプルに理解できる。
2)Pythonの基本構文を必要最低限のシンプルな形で学べる
3)専門用語が少ない。
4)難易度が徐々に適切な程度で上がっていく。
初期のころは「Mayaで使う」という目的もありましたが、今はその目的は二次的





<これまでの経歴>
MayaでのPython利用を目的としたチュートリアル。
元々はMelのチュートリアルが主流で、Melの勉強の時には大変お世話になったサイトです。
説明も丁寧でわかりやすい。

Melの時はなんでも目新しかったのですが、ある程度スクリプトをかけるようになっていたので、ジオメトリを作ったり並べたりのチュートリアルは退屈で興味が持続しなかった。
MelでできることをなぜわざわざPythonでやらなくてはいけないのか?
その意義が見いだせずやる気を失う。



細かいことまで、詳しく説明。
正確に記述するために専門用語が多用される典型的なパターン。
基本的にはそれらの用語は理解しているものとして話は進んでいく。

ある程度プログラミング用語を理解している人なら、問題ないと思うが、自分には理解不能な言葉が多かった。
また一つの説明が多岐にわたるため、ある程度全体が理解できるようになるには時間がかかりすぎると思い、やめた。



有名なサイトですね。
サイトトップに「Python超入門」という書籍が紹介されているということはこの著者さんのサイトでしょうか。
「入門編」「基礎編」「応用編」とカテゴリ分けされていて、ステップ通りやっていけばかなりのことができるような気がします。

「基本構文」のエンコード宣言が自分の環境では正常動作せず、その後の例でもこの「エンコード宣言」が続けてつかわれているので、うまくいく気がせず、やる気がなくなった。
実用面では必要なのだとは思うが、初心者には、はっきり言って不要なようにも思う。
(Python2.7で日本語を使うには避けられないが…)
いきなり文字コードの処理で躓いては入り口で拒否されたような気分になる。
段階的に難易度の高い説明が初めのころにあったり、専門用語の説明が足りない気もした。



MayaでのPython使用について書いていあるTips的解説
プログラム恐怖症のアーティストにもわかりように丁寧にステップ毎に書かれている。
Tips的内容なのでこれだけで入門になるかどうかはわからないが、ちょっとコマンドをつかってみるだけなら十分いける。

自分はもうすこし、プログラミングの基本がしりたかったので、ちょっと試しただけでやめてしまった。



インタラクティブ、かつ豊富なイラストレーションで学べるアプリということでこれなら頭固い自分でも理解できるのではないかと思い、Kickstarterで購入。
非常にきれいな構成になっているし、イラストもシンプルで美しい。

比喩で使われているイラストの必然性が理解できず、わかりづらく、すぐにやめてしまった。

著者がそのイラストで伝えいたい要素を読み手が必ずしも、著者と同じように理解するとは限らない。イラストが適切でなく解釈のしかたに、幅があると特ににその食い違いが大きくなるように思う。
普通の人ならすぐに理解できることが、理解できないのかもしれない、だとしたらADHD傾向があるのかな??



1つ1つのステップがシンプルでわかりやすい。
解説のお兄さんの声も心地よい。
動画だが説明をタイピングして文字で見せてくれるので聞き逃しがない。

ステップが細かすぎてある程度のことができるようになるには非常に時間がかかる気がした。
無料のステップでは、基本的な条件分岐の説明にも至らない。
CG業界でのスタンダードはPython2.7だがドットインストールはPython3.0なので、やってどうなる?という迷いが生じた。


個人的に、初心者は簡単なタイプミスや、基本構文を忘れたりしてエラーに悩まされることが多々あるので、そういったことは、繰り返し入力するだけで向上すると思う。
考える必要もなく、ただひたすらドリル形式で繰り返す訓練を自分は体力系と呼んでいる。
このサイトはそういう繰り返しのエクササイズがあるし、ほかのチュートリアルとは目の付け所が異なる。(良いかどうかではなく異質)
たとえあ論理演算を単語帳に書いて、その計算結果がTrueかFolseかを即答できるようにする訓練とか。
ステップごとに一つか二つのことをとりあげるだけでシンプルにしてあるのは好感がもてるが、説明は必要最低限のことしか書かれておらず、ググれが基本か。
場合によってはこのページを見ているよりも、ググっている時間が長かったりした。
エクササイズも、あまり面白いエクササイズではない。非常に時間がかかり、場合によっては1つのエクササイズに1週間をかけたりもする。
Pythonを習うというよりは、プログラマーの訓練という感じ。
Ex37で完全にやる気をなくした。


楽しくできれば、長続きできると思いやってみたが、そもそも萌え系のアドベンチャーゲームに興味はないのでゲーム要素が邪魔でイライラしてくるという本末転倒な状況に。
肝心のコードの勉強はペースが遅く感じる。



-------------
他にもいろいろと試したものがあるのですが、今思い出せるのは以上です。
また思い出したら後日追加するかもしれません。


振り返ってみて思うのは飛行機に例えると、滑走路を走っているのが入門書を読んでいる段階で、その後ある程度自信をもって基本的なことができる段階に問うと断つするのが「離陸」だとするとその離陸に至るまでの時間が非常に重要に思います。

滑走路が凸凹(難解)だったり、長すぎたり(各段階のステップアップが適切に設定されていない)して離陸までに時間がかかりすぎると、途中で失速(やる気の喪失)になってしまい離陸に至ることができないように思います。


今回は今まで試してみたチュートリアルサイトで、なぜ自分の場合はうまくいかなかったのかを書いてみました。
人によっては、上記のサイトでも、全然問題ないかもしれませんが、私のようなケースもあるということで何らかの参考になればと思って書いてみました。


次回は学習者としての基本事項「動機」について書いてみたいと思っています。



0 件のコメント:

コメントを投稿