教育情報化コーディネータ(ITCE)という資格試験がある。現在、3級、準2級、2級の試験が実施されており、上位資格の受験資格を得るためにはひとつ下位の資格に合格する必要がある。
この試験方法が結構面白い。以下、私が受験した際の話をベースに。

3級の試験は試験会場でPCに向かって問題を解いてゆく。問題は同じであるが、受験者によって問題の出現の順番が異なる。また、問題ごとに個別の制限時間があり、後で見直しができない。回答は基本的には選択(択一のみならず複数選択もある。中には数字を入れる、というものもある)である。
合格すると3級の資格が付与され、2級一次試験の受験資格が3年程度付与される。

2級一次試験は、午前が3級と同様であるが、若干難易度が高いようである。午後が論述式であり、インターネットの利用/パソコンの持ち込みが可能である。なお、持ち込みは、Windowsに不慣れであるなら有効だが、通常Windowsを使っているなら持ち込むメリットはあまりないように思う。
合格すると準2級の資格が付与される。

2級二次は試験は、申し込むと課題がメールで送られてくる。つまり、申し込みは早いほうが課題に取り組む時間が長くなるので、早めに申し込む方がいいだろう。
課題に対し、指定された日までに課題に対するプレゼンテーション資料を作り、プレゼンテーションを撮影したビデオと共に送付する。試験当日はその資料とビデオ内容についての個別面接がある。
これに合格すると2級の資格が付与される。

受験者は学校の先生、学校にソフトやシステムを販売する会社の人がほとんどのようである。知名度が非常に低く、試験人数も制限されている(試験会場のキャパがあるから)ため、こういうユニークな試験ができるのだろう。

このようなやり方、特に2級二次のやり方は、入社面接などの最終選考などには使えるかもしれないな、と思っている。


Operaブラウザの、すごい!と思うところを挙げてみる。

◆「タブブラウザ」に見えて、実は「MDIブラウザ」である。

FirefoxやIEの7なんかは「タブブラウザ」である。Excelの「シート」のイメージで表示画面を切り替えることができる。ただ、同一ブックの別シート、つまり別タブは同時に閲覧することができない
「MDIブラウザ」のOperaは、Excelの「ブック」のイメージである。複数ブックを開けていてもウィンドウを並べて表示したり重ねて表示したりできるが如く、重ねて表示や並べて表示ができるのだ。

◆他のブラウザに成りすませる。

サイトによってはOperaだとはじかれるとか、対応していないとか、肩身の狭い思いをする。
しかし、サイト単位ではあるが「Internet Explorer」または「Firefox」に成りすますことで表示可能になることがある。

◆デザインが選べる

アメブロのスキン、のイメージ。アメブロは利用者がスキンを選べるが、Operaも外観を選択できる。標準だと2種類だが、設定操作の中でダウンロードして利用することができ、ユーザーが「ダウンロード」の操作をそれほど意識する必要がない。



年齢としては40歳くらい。朝は早くから居るし、夜もそこそこ遅くまで頑張っていた。それもCOBOL一筋。ならら当然サクサクと仕事をしてくれるだろう、と思っていた。

ある日、その人はサブリーダーからCOBOLでデータフォーマット変換プログラムを1本託されていた。
入力レコードのフォーマットはレコードごとに持つレコード区分によって異なり、1件読み込んだらそのレコード区分(5種類)を判定し、レコード区分に合ったフォーマットに変換し1件出力する、というもの。入力ファイルは1つ、出力ファイルはレコード区分数だけあるから5つ、論理的には 入力ファイルの入力件数 = 5つの出力ファイルへの出力件数の合計 となる。

そう、分かる人には分かるだろうが、データ定義さえきちんとできればCOBOLに於いてはかなり簡単な部類のプログラムなのだ。

金曜朝に渡され、なぜか土曜も出勤して作成していた。土曜の夜に進捗を確認したら2日間で「まだ半分くらい」とのことであった。

通常な出力レコードにCOPY句を使うか、プログラム内に出力レコードフォーマットを定義して項目間でMOVE文を書けば、*1設計書はあるので半日仕事のはず。
不思議に思いソースコードを見せて貰うと、すべて部分列参照でデータを移そうとしていた*2。通常、こういう処理はCOPY句を入手するか作成するかをする。入力にREDEFINES*3も、入出力にCOPY句も使ってはいけない、との指示を受けた、とのことであったが、サブリーターに確認すると「そんな制約は一切ない」とのことであった。

経験年数ばかり長いだけで、中身は2~3年目のプログラマにも劣るくらいスカスカであった。

座席が遠かったので気づかなかったが、後で聞くと「昼間はよく居眠りをしていた」とのこと。これほど酷いエンジニアもなかなかいないが、無駄に経験年数だけを積んでいる人は感覚的には10人中2~3人は混じっているかな、と思う。

IT業界って、そういう人も平気で混じっているところが恐ろしい。


*1 ある項目からある項目へデータを転送する命令。COBOLの MOVE A TO B  は、VBなどの B = A と同じ意味。

*2 VBでいうTYPE文を別ファイルとして適宜呼び出せるようにして共有できるようにできるもの。データの定義だけではなく処理も切り出せるが、一般的にはデータフォーマットの定義に使うことが多い。

*3 今でこそRDB全盛期だが、昔はファイルのマッチング処理によってデータの結合を行うのが一般的であった。しかしマッチング処理させるよりは1ファイルの中に概要、詳細1、詳細2というようにフォーマットの異なるデータを連続して入れておいたほうが処理効率がよいため「マルチフォーマット」というものがあった。そのマルチフォーマットデータを読み込んだ際に1つの物理的なレコードを、概要、詳細1、詳細2のような複数のフォーマットで閲覧できるようにするのがREDEFINESである。これだけでは説明不足ではあるが、ここではこのくらいの説明とさせていただく。