009. スクリプト言語
「複合言語学習メモ」というサイトを立ち上げました。
なぜ立ち上げたかというと…
- スクリプト言語が苦手な人
- shellスクリプトは書けるけど、Perlは無理っていう人
- Perlで落ち着いてしまっている人
などを対象に、ワンランク上を知ってもらい、理解してもらい、簡単な例で学んでもらい、仕事効率を上げてもらいたいな、という考えからです。
管理者の経験から言えば、現役時代は
- 簡単なことはshellスクリプトで
- 手のこんだことはPerlで
やってきました。が、SystemVerilogを学んで使うようになってからは、クラスの利便性を嬉しく思い、逆にそれが使えないPerlに限界を感じてきました。また、簡単なことはshellスクリプトで、と書きましたけ ど、まあディレクトリ走査などもshellスクリプトで行っていました。しかし、tcshのサイトを書いている時に、同じことをRubyでさせてみたら、なんとまあ!と思うほど処理速度が速いんです。こちらを参照
ただ、ディレクトリ走査や特定のファイル確認など、標準で用意されたコマンドを使う方が簡単ですね。で、じつはその一歩先の処理もshellスクリプトでやらせてしまったりしていませんか?そこへんで複雑化し てしまうなんてことありませんか?
複雑なshellスクリプトは読みづらいです。それはPerl、Ruby、Pythonにも言えますが、ある処理を実現させたい時、RubyやPythonならこう書けるのに、Perlだとこうしなくちゃ…shellスクリプトだとあのコマンド を使ってこのコマンドにパイプして…などと、実現可能な処理の難易度が、扱う言語によって変わってきてしまいます。
「でもさあ、Perlやったことないし」とか、「Ruby?クラス?無理!無理!」なんて思うかもしれませんが、技術者としてのスキルを少しずつ上げることで、「あ、そんな難しくないじゃん」なんてなるわけで す。
とは言うものの、10年くらい前なら残業規制も厳しくありませんでしたが、昨今はなかなか、こういうスキルアップにかけられる時間も減りました。
そこで、複合言語学習メモ、というサイトの登場です。
同じ処理を、複数の言語で実現するサンプルを用意することで、tcshスクリプトが分かる人はそこからPerl、Perlが分かる人はRubyやPythonで同じことを記述する方法がわかるわけです。いろんなサンプルを用意 していくことで、「あれ、こういうケースではtcshスクリプトベースではキツイかな」とか、「え?こういうケース、Perlだとこんな感じで書くけれど、Rubyを使ったらこんなにシンプルでわかりやすく書けちゃ うんだ」とか、気がついてくれたらなぁと。
そういう思いのもとで新しいサイトの作成を開始しています。
なお、このサイトは管理者のスキルの関係で、現在はtcsh, Perl, Ruby, Pythonまでの扱いです。そのうち、C言語やC++、Javaや部分的にはSystemVerilogを組み入れていくつもりです。
蛇足:
PerlやRubyやPythonが書ける方には、会社ではアレですが、家でちょっと力試し的に「paiza」という、プログラマー向けの転職サイト(スキルレベル測定機能付き)をやってみてください。アカウントをチョ チョイのチョイで作成するだけで、名前とか登録していなくても、技量を把握できます。技量把握のための問題がたくさんあります。ランクがE,D,。。。、A,Sとありまして、管理者はAランク止まりです。いい勉 強になりますので、ぜひトライしてみてください。