Pythonいいよ

http://askslashdot.slashdot.jp/story/14/06/18/0552247/

だぶん。

主にLinuxサーバでいろいろ雑多なことをやることが多いんですが、Pythonの幅広さには助かってます。

すごく単純なデータ処理、例えばクセが少しあるcsv向けに方言ぶちこめるcsvパーサが役だったことがあります。デーモンから外部スクリプト呼び出すときもバージョンの差はあれするっと動く。Webサーバの場合は飛躍があってDjangoみたいのが必要なんですが慣れると手元のipythonの結果からプロトタイプまでは割と速いです。タスクキューについてはceleryを勉強中で今も使ってます。

shellスクリプトの領域でありそうなところをPythonで書くのも地味に良いと。何が良いかというと自分の中でグレードを上げてloggingとかしっかりした体系に組み込むときにそのままガチっとはめる書き方がわかってきたからなんですけど。shellだとそこで投げ捨てるスクリプト以上にするのは結構結構けーーっこう大変という印象を持ちます。一貫した書き方を期待する点にいたってはかなりダイハードです。

systemdとかの時代にはshellでinitに関連するスクリプトを書きづらくなるのでは、という話を聞いて以降、ある程度このレベルの言語で閉じていいだろうと思う領域は増えた気がします。選べるのならPythonとか……Rubyでもいいけど。

それでも問題は山のようにあります。言語的にカバーできる領域の広さもブラウザの上には到達できずそこはJavaSciriptになるので、今後この快適さを捨てるのも今は考えてます。またサーバ側でがっつりバックエンドを書くのであればPythonではなくGo言語を選ぶと思います。あるいは問題定義と分解点がよほどしっかりしてればHaskellで書きたくなるかもしれません。 (注: 筆者は両言語ともほぼ使えません。印象論です)

Pythonがベストな言語かと言われるとそうでもないんですが、というか割と「ひぃ」と思う点はあるんです。しかも自分が使うのは2.7の方で3.4とか3.5ではない。結構良い機能追加が2.7に降りてこないことが多いので辛いです。ただ、自分が扱う問題 == 動きまくるターゲットに対して上手く当たるという面で、3系よりまだ2系なんですよね。Ubuntu 14.04 LTSのPython3推奨的な考え方には期待してます。

ここまででまるっとRubyでも領域のかぶりは同じような気もするのですが、Rubyにはなぜか選びたくなくなる何かがあるのです。多分好みなんですが、これって10年近く前に両方雑に眺めた時からそうです。これが何を意味してるのか自分なりの答えが知りたいのですが、10年分かりません。

このブログの人気の投稿

LibreOfficeで表紙、目次、本体でフッターのページ番号のスタイルを変える

WiiUのコントローラが通信不良に陥った話

技術書典2 あ-03 『もわねっとのPythonの本』