魔術師をめざして

魔術師を目指して、相場・数学・プログラム言語を研究しています。

Python

ぼくはプログラミング言語マニアだった。

気の多いぼくは不必要に多くの言語を学んだ。最後の時期に学んでいたのは、Io と Haskell だった。Haskell は、ぼくにとって、もっともエキサイティングだったが、Haskell を必要とする応用分野がぼくにはなにもなかったのだ。

f:id:fxrobot:20130921052510p:plain

ぼくにとって、身近な応用分野のために必要な言語は Perl だった。Perl6 についても洋書を取り寄せ学んだ。

しかし、困ったことに、言語好きのぼくには、放っておけない優れた言語がこの分野には多くあったのだ。PythonRubyLua などがそれだ。

そしてぼくは、すべてを学び始めてしまった。おもしろくたのしかったのだろう。学ぶことに夢中で、その言語を使うことや応用に目が向かなかったのだ。

冒頭に言語マニアだったと過去形で書いたのは、言語を学ぶという趣味を今年になって封印したからだ。そして応用分野に目を向けるようになったのだ。

言語を選ぶ余地のあるプログラミングは、すべて Pythonを使うことにした。この素朴で優れた言語を使うことにしたのだ。Pythonを使うこということは、プログラミング言語への拘りを棄てるという意味を含んでいる。ぼくにとってはね、そうなのだ。

ところで、日本国内では Rubyのほうが圧倒的に人気があるように思う。これは国産への想いというより、Rubyの美しさに惹かれるのだろう。Rubyはよい言語だと思う。

よく、Python支持派は Rubyを貶すし、Ruby支持派は Pythonを貶したりする。おもしろい現象だと思うし、ぼくはそれをみて、それをけっこう楽しんでいる。ほほえましく思う。どちらも素晴らしい言語だと思う。

さて、Pythonは素朴で易しい言語だ。これから言語を学ぶ人に最適な言語のひとつだと思う。ぼくは学んだだけで使うこともなく何年も経ってしまった。そこで Pythonの復習のために「パーフェクト Python」という本を購入した。読んだことのない本なので、これを読みながら頭のなかから多くの言語を掻き出してしまおうと思った。

Pythonでなにを作るのかなにをするのか。ぼくが今後集中的に取り組む2つの応用分野、Webとロボットのためのプログラミングのために使うことになるだろう。しかしもし、商品化が必要になったらコンパイラ言語で書き直すかもしれない。それは別の話として、いまは考えないことにしたい。

Webといってもサーバーのプログラムを Pythonで書こうというのではない。それが必要になれば経験のある PHPを使うことだろう。クライアントのプログラムにはこれも経験のある JavaScriptを使うだろう。ロボットのためには MQLを使うよね。なにがなんでも Pythonしか使わないという意味ではないのだ。

また、GUIのためには wxPythonを使うことにした。ずいぶん前のことだが洋書を購入して読み始めたものだった。洋書ということもあり途中で面倒になり、続きは使うときに読めばいいさと放りだしたままだ。ぼくにはこういうパターンも多くある。はずかしい情けなさだ。

まぁ、そういうわけで、遅ればせながら実戦で Pythonの経験を積んでいくことにしたのだ。やはり、わかっていることでも実際に経験を積むことは別であり大切なことだと思う。そして、ここに書くことで、この決心を変えることのないようにしたいと考えた次第なのである。