009. スクリプト言語

「複合言語学習メモ」というサイトを立ち上げました。

なぜ立ち上げたかというと…

  1. スクリプト言語が苦手な人
  2. shellスクリプトは書けるけど、Perlは無理っていう人
  3. 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ランク止まりです。いい勉 強になりますので、ぜひトライしてみてください。