0
Help us understand the problem. What are the problem?

posted at

実用に耐えるプログラムを書く教育ができそうかを懸念しております

実用に耐えるプログラムを書く教育ができそうかを懸念しております

 Microsoft Windowsにおいて、組織変更やファイルサーバーを入れ替えるとパスが変わり、それまでに作ったショートカットが使えなくなるという問題がある。これを、ショートカットのリンク先を一括で繋ぎ替えることによって解決するというプログラムを昔作った。
 自らソフトを書かないことが前提の組織文化なので、目立たぬようMicrosoft ExcelのVBAで書いている。
 10年以上前に作ったのが最初のバージョンで、それから誰でも使えるようにちまちま改良を重ねている。
 それでも最初の最初から、この機能だけは持っていた。
「リンクを変更した場合、その先に該当のファイルが有るかどうかを確認してからショートカットを書き換える。」

 つまり「今より絶対悪くならない」のである。ショートカットの張り替え先についての設定を間違えたら何もしない。リンクのパスに含まれた組織名が変わるので、パスの組織名だけを書き換えるつもりが、たまたま一致する文字列がヒットした場合でもスルーするだけだ。
 では何を改良したかというと、最初は他のソフトでリンクファイルの一覧を取得して、それを書き換えの入力にしていたのを一気通貫でやるようにしたとか、複数のパス変更に対応するようにした。ローカルでドライブレターを割り当てていたものも対象とした(ローカルのドライブレター割当状況もツール内で取得)といった、部分である。要するに誰にでも使えるようにしたわけだ。

 さて、このへんの「今より悪くはならない」というセーフティネットを張る感覚、持っている人どれくらいいるだろうか?
 気になっているのは「情報」の授業が必修になったらしいこと。そこそこコンピュータを扱えることが普通になりそうだ。しかし、そいつらがこういう実用に耐えるプログラムが作れるかどうか、ははっきりとしない。いや、絶対無理だろう。フォイエルバッハに関するテーゼの第3項「教育者自信が教育される」。教えられる教員が一体どれだけいるだろうか。果てしなくゼロに近いような気がする。

 もうひとつ、こういうセーフティネットを張ることが重要と認識している人が(たとえば文部科学省の)意思決定者にいるか、も不安材料である。教えられる人がいなければ呼んでこないといけないのだが、その決定がされるかどうか。

 というわけで誰でも使えるプログラムを作って欲しいなら、入社してからそーゆーことを教えないといけないのだが、なまじっか「情報」の教育を受けているがゆえに素直に「そーゆーめんどくさいこと」をうけいれられないのではないかなぁ、というのが懸念していることである。

 ひょっとして彼らは「テスト」すら嫌がるかもしれない。AIというか機械学習ライブラリを使った経験くらいは持っていてもおかしくないからだ。機械学習させたAIが判断ミスしたとき、それを作った人たちはどう言うだろう?「学習させたデータが足りなかった」「過学習におちいったのではないか」、ようするに「教え方が悪かった」という発想になるようで、自分の作ったプログラムがおかしい、とは少なくとも第一義的には考えなくなっているのではないかな。
 機械学習のライブラリをコールして結果を出せれば「情報」のカリキュラムの範囲では上位層なのかもしれないけども、たぶん彼らのプログラムは「必要なライブラリをpip installして、きちんと出力が返ってきたか」の動作確認しかやっていそうもない。
 であれば「プログラムが期待した結果を出さないとすればそれは使い方が悪い」と考える傾向も強かろう。テストの重要性を認識しないかもしれない、ましてや誤った使い方をしても今より悪くならないというセーフティネットを張る意識はないんじゃなかろうか。

 でも、テスト代行業者の方のテスト手法も旧態依然の先入観から脱しているような気がしなくもない。えっと、ラジオボタンの入力が一箇所増えると、テストケースが2倍になる、ですか?ラジオボタンの選択によって以後の入力可能箇所を切り替えるとか、そーゆーの考えません?普通は。そりゃテストケース数が増えるとあなた請求額は増やせるからあなた儲かるかもしれないですけど。(ちょっとムカっときた見積もりがあったので余計なことですが付け加えさせてください。m(_ _)m)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?