みんなのPython 改訂版

久しぶりに技術書を読んだ気がするな。
昨年のRubyに続いて、今年はPython。
節操が無いなと思いつつも、心が赴くままに勉強する方がいろいろと良いんじゃないかと思う。
何よりもモチベーションが赴くままに。

2ヶ月前ぐらいにTwitMailBoxというサービスをPythonで作ったんだけど、一応動いてはいるけど、「ちゃんとコードが書けていない」&「なんだか良くわかっていないので気持ちが悪い」という気がして、Pythonを体型的に学ぶ為に本を読むことにした。

Amazonのレビューでは結構酷評もあったりしたんだけど、Pythonの入門書ってあまり無くて、いきなりオライリー本っていうレベルでも無いと思うので、事実上の定番本となっているこの本を読んでみた。

結論的には「読んで良かった」って思う。
ベストではないだろうけど、現状ではベターな本の一つじゃないかな。

こういう入門書の本って、書かれている内容の一貫したレベルの統一感って凄く大事だと思うんだけど、この本はそこがあまりスムーズに出来ていない。
いきなり「プログラムとは~」って話していたかと思えば、始めて見る関数なんかがポンポン出てくるのには、ちょっと困ったりもした。

けど、この本を読めばある程度全貌は掴めると思うし、多少は掴めたんじゃないかな。
最低限オンライン上にあるマニュアルは読める程度にはなるんじゃないかなと思う。

おぼろげだったPythonの印象もはっきりとしてきて、やっぱRubyよりもカッチリしている印象。
Python3になって、よりそれが顕著になっているんじゃないかな。
そして、Pythonなんか使っているとPHPのゆるゆる具合が不安になってくるのも確か。

んー、やっぱ多言語勉強するのは良いことだね。
懐が深くなる気がする。
これからはPythonの勉強会にも参加していきたいな。
TwitMailBox」というサービスを公開しました!


■作った経緯
最近、日頃から良くTwitterを使うようになって、Twitter上で約束を決めたり話し合ったりということが増えてきました。
重要なことや個人的な内容になると主にTwitterのダイレクトメッセージを使っていたんですが、PCの前にいる時は良いんですけど、PCから離れた途端にやりとりが中断しちゃうのがなんだかなーと思ってました。
iPhoneの様なスマートフォンを利用している人達は、結構リッチなクライアントがあるのであまり感じないかもしれませんが、普通の携帯電話の場合、タイムラインはまだしもダイレクトメッセージをWEB上でチェックするとなると少し面倒なんですよね。

ということで、
「Twitterのダイレクトメッセージを携帯電話のメールみたいに使いたい!」
ってことで、作ったのがコレです。


■主な機能
・登録したメールアドレスへのダイレクトメッセージの転送
・転送されてきたメールをそのまま返信出来る
の2点のみ。


■GAE/Python
サーバはGoogle App Engine、言語はPythonで作成してみました。
Google App EngineはやっぱあのGoogleのインフラを使ってみたいってのと、無料である程度使えるってのが魅力でした。
Pythonを選んだ理由は、以前から知っていたRubyに似ていると聴いていたことと、Javaの方が難しそうだったからです。
JRubyとかって選択肢もあったんですが、ネイティブでサポートされている言語の方が何かと便利だろうということで選択しました(意外とそうでもないみたいですが)。


■その他
こういったサービスを作る時に一番苦手なのがデザイン部分なんですが、どうのこうのさんが別のサイトの為に作成したHTML&CSSを快くパクらせてをくれました。
本当にありがとうございました。


といった感じで、PythonもGoogle App Engineもろくにわかっていませんが、自分で使う分には結構便利なので、利用して貰えれば幸いです。
Pythonをいじり始めた。
理由は簡単、Google App Engineを使いたいから。
新しい言語と触れ合うのは純粋に楽しい。
んー、やっぱこの仕事向いているんだろうか。

Pythonの触る前の印象は
・インデントとか厳しそう
・最近人気臭い
・Rubyに似ている

だったんだけど、実際に触ってみたら、
・インデントが綺麗で泣ける(書いた後のソースが自然と美しいのが良い)
・意外とマイナー(Rubyと比較しても)
・Rubyと似ているけど、頑固な感じ

仕事ではPHPをメインで使っているので、TypeErrorで良く引っかかるんだよね、それが自分の未熟さだと痛感する。
体型的で読み易いマニュアルやサイトがオンライン上ではまだまだ少ない気がするので、本を買った方が良さそう。
リファレンス一つ取っても、ちょっと見難い気がするなあ。
その点PHPは素晴らしいし、Rubyもかなり整備されている印象。

触ってみての感動はあまりない。
Rubyの方が感動が凄かった、先鋭的というか、とても思想を感じた。
その代わりPythonは安心感というか、プログラム言語っぽい頑固な感じがする。
Rubyは融通が効き過ぎてたまに怖くなるもんなー。

Google App Engineは意外とJavaでの説明記事が多い。
Pythonの方がネイティブって感じするんだけどね。
Pythonという言語自体より、Google App Engineが凄い面白いのかもしれない。
多分、こういうやり方が主流になるんじゃないだろうか。
もうサーバ管理は気にしなくてもいいみたいな。

なんか凄い世の中だなー。