パスワードを忘れた? アカウント作成
11842708 story
プログラミング

金融系ではなぜCOBOLが使われるのか 60

ストーリー by hylom
そこにあるから 部門より
あるAnonymous Coward 曰く、

「金融系ではなぜCOBOLが使われるのか」という話が、Togetterまとめはてなブックマークで話題になっている。

金融系と言えばCOBOL、というのは有名だが、現在ではそれ以外にも多くの言語があり、あえてCOBOLを利用する理由について議論されている。Togetterまとめでは固定小数点演算とその精度、速度が理由として挙げられているが、ほかの言語でも十分なライブラリが登場している現在、ややピントがずれた議論の気もする。

  • 過去の遺産(=財産) (スコア:5, すばらしい洞察)

    by NOBAX (21937) on 2014年12月25日 19時52分 (#2734108)
    敢えて代えるリスクを負いたくないから
    • by Anonymous Coward

      今まで動いてきたシステムに、ちょっとの変更を加えるだけだとしたら、やっぱり今までの環境を持ってくるよなぁということですよね。

      #ふさふさから一本毛を抜いてもふさふさだから、何本毛が抜けてもふさふさだろう理論

      • by Anonymous Coward

        そうやってどんどん進化の袋小路に追い詰められて、時代遅れの生きている化石になることを、
        負の遺産と言ったりしませんか。
        #変更にかかる期間の長期化、保守費用の高騰、保守部品は年々入手困難に、etc

        >#ふさふさから一本毛を抜いてもふさふさだから、何本毛が抜けてもふさふさだろう理論
        #ふと気がついてみたら毛が三本。

        • by Anonymous Coward

          > #ふと気がついてみたら毛が三本。

          おばQですか?

        • by Anonymous Coward

          銀行・金融系はリソースが沢山注ぎ込まれるとか理不尽とかよく言われてるけど、金ドブ権は実在するんだから存分に使ってくれって感じ。
          金持ちがバカなことをやって損するのに「効率が悪い」と進言するような印象を覚える。損するのが意図なら「損をしている」と指摘しても
          しょうがない。

          • by Anonymous Coward

            金ドブ権ってなに?
            銀行が金持ちって何のジョーク?

            銀行の運用益は預金者や何かに返すべきものであって、ドブに捨てて良いようなもんじゃないよ。
            #そういう人の金を自分の物だと思う勘違い君って、マジに存在するんだろうか。

    • by Anonymous Coward

      ユニットテストと無縁な言語なせいでリスク値さらに高止まり
      新旧に繋がりの無い業務形態が突然現れでもしなけりゃ百年先もCOBOLを使ってるだろうね

  • by Anonymous Coward on 2014年12月25日 20時23分 (#2734120)

    帳票作成時のレイアウトのしやすさなんてのもCOBOLのメリットとして
    上がってたよ〜(1980〜1990年頃の話)。

    また、膨大な量の入出力(出力は紙への印字)を短時間で行うには
    チャネル回りが充実してたメインフレームの独壇場であり、そこで
    動作する言語はCOBOLが最もメジャーだったという経緯もあり。
    この辺は今もそうなんじゃないかな。

    • by Anonymous Coward on 2014年12月25日 20時49分 (#2734137)

      富士通のメインフレームからPCサーバに変えたお客さんが、オープン系はプリンタが弱くてね、って愚痴ってましたね。
      メインフレームの周辺機器は専用品だから高価だけど、相性問題もないし、性能や安定性はピカイチだって言ってました。

      だからといってメインフレームに戻すことはないんでしょうけど。

      • by Anonymous Coward

        うちのこと? 億単で金額ひと桁ちがうと元に戻すなんて無理ですよ。

  • 選ばれてCOBOL (スコア:2, すばらしい洞察)

    by Anonymous Coward on 2014年12月25日 19時57分 (#2734110)

    COBOLを捨てて他の言語にしなければならないだけの十分な理由がない
    消極的な選択なんだろうと思う

    • by Anonymous Coward

      メンテナーの確保が年々難しくなるというのは?

      希少価値化して給料が上がれば、拾得者もまた増えてくるという市場原理の均衡が働くのだろうか。

      • by Anonymous Coward

        メンテナーの確保が年々難しくなるというのは?

        教育期間を設ければいいだけのこと。
        COBOLやFortanのようなレガシーなシステムに限らず新しいシステムでも教育期間を設けるのは当たり前。

        • by Anonymous Coward

          むしろ、どマイナーな言語でカタにはめてしまえば人材流出のリスクも減るでしょうね。
          他業他社で通用しないレベルの人材になっても、自社で使えれば何の問題もありませんし。

          • by Anonymous Coward

            逆にCOBOL技術者がひっぱりだこにならないとも言えない

      • by Anonymous Coward

        そういえば、正しいプログラマの前では、プログラミング言語間の差異なんて、
        自然言語の方言の間の差よりも小さい、なんてよく嘯くけど、COBOLは別格なのかな?

        未知の言語でも、数日もあれば、そこそこ使いこなせる。
        本番系ではやらないにせよ、外に出さない雑用レベルで必要に迫られたら、全く触ったことがない言語で書かれてても、
        見た感じの雰囲気だけを頼りに修正、ぐらいのことも良くやる。

        一週間ぐらい集中して勉強しても使いこなせない言語があるとは思いにくい。
        アプリがアプリだけに、そんな気楽な習得レベルで仕事をすんな、みたいなのもあるのかな?

        • by shesee (27226) on 2014年12月25日 20時40分 (#2734127) 日記
          言語仕様が大き目で案外覚えること多いので、そう簡単でもない。
        • by firewheel (31280) on 2014年12月25日 21時22分 (#2734158)

          >正しいプログラマの前では、プログラミング言語間の差異なんて、

          「COBOLを使ってるような奴は『正しくないプログラマ』だから、差違もずっと大きくなる」
          と言いたいわけですね、分かります。

          #既に規格外扱いなのは事実だと思う。

        • by Anonymous Coward on 2014年12月25日 21時23分 (#2734159)

          語彙がややこなれていませんが、言語そのものは簡単です
          #FORループと関数(手続き)呼び出しが両方PERFORM文とか

          難しいというか面倒くさいのが、ローカル変数とか引数の概念がないので、
          ほぼ共通処理なんだけどほんのちょっと違う処理みたいなのを書くときに、他の言語では関数として処理をまとめられるところを、
          コピペして違うところだけ書き直さざるを得ない場面が多数出てきて、デバッグも以下略となるので、
          もうCOBOLは触りたくないです

          ...という人が多いと想像

        • by Anonymous Coward
          > 正しいプログラマの前では
          自分で答分かってる系かな?
          どうやら平均的な能力水準のプログラマはほとんど一つの言語しか扱えないという噂を聞いたことがある
          # 我々日本人が日本語しか使えないのと同じなのかなw
        • by Anonymous Coward

          正しいプログラマならCOBOLぐらいすぐ使えるけど、
          なんか手足縛られたまま仕事させられてる気分になってくるはず。

        • by Anonymous Coward

          一週間あれば勉強できるのは同意だが、
          どうしてそれ以上の部分を学ぼうとしないのかがわからない。

          そこからが面白いところだろうに。

      • by Anonymous Coward

        こんだけ使われていれば処理系も見放されないからな。
        Pythonとかいつ消えるかもわからんのにあほか

  • by Anonymous Coward on 2014年12月25日 19時43分 (#2734102)

    おばちゃまはね

  • by Anonymous Coward on 2014年12月25日 21時46分 (#2734171)

    ワイWeb屋、高みの見物。
    ユーザーから「ログインできないんだけど」とクレーム。
    ワイ「特定のページからログインすると失敗しとったわwすまんなw」
    これで解決。最悪、個人情報お漏らししたって一人500円で許してもらえる。前例作ったソフトバンクとベネッセまじ神!サンキュー!
    Googleとか、「例外は無視する」つー戦略らしいじゃん。100%完璧に想定どおりの演算結果じゃなくても、99.9999%正しければオッケー。
    それがWeb。
    これがpython遣いの発想。

    金勘定の場合
    銀行「1円足りんね。はい不渡り」
    オヤジ「おっ、死のうかなっと」
    銀行「あ、バグがあったわw1円返すねwすまんなw」
    オヤジの遺族「なんやそうやったんやw許すわw」 ← こんな風になるわけないだろ

    • by Anonymous Coward

      しかしメリケンの銀行とか、「こないだお前の口座に振り込んだ金、
      支払人がキャンセルしたから引いといたぜよろしく」みたいなことが普通にあるっていうじゃん。
      日本の金勘定業界がアホなんだよ。

      • by Anonymous Coward

        アホはメリケンでしょう

  • by Anonymous Coward on 2014年12月25日 19時37分 (#2734099)

    演算仕様は準拠してれば正しい結果になるのだろうけど
    おかしくなった時の振る舞いは処理系毎に異なるから
    保守を考えると処理系を替えられないのだろう。

    • by Anonymous Coward

      移植・移行時にバグ入り込んだりするリスクを抱えてまで他の言語使う理由ないし、、、
      QA説明するときは「ここは実績あるので〜」と言えるCOBOLの方が楽だし

  • by Anonymous Coward on 2014年12月25日 19時47分 (#2734105)

    言語仕様に都合の悪い変更がないとかが理由なんじゃないの。処理系も十分枯れているだろうし。
    リンク先ではpythonが上げられているみたいだけど。仮にpython2系に移行していたら。COBOL以上の技術的負債になってるはず。

  • by Anonymous Coward on 2014年12月25日 20時39分 (#2734126)

    はてなやTwitterってWeb系ばっかなんだよね。
    Web系って流行り物を追うだけの単なるミーハーなんだよ。
    Web系の中じゃ古い技術を馬鹿にすることで周りから注目を浴びてドヤ顔できるんだ。
    そういう奴らが自己アピールのためのCOBOLを叩いてるだけなんだよ。

    • >Web系って流行り物を追うだけの単なるミーハーなんだよ。

      J2EEが出てから十年以上は優に経ってるけど,基本はそんなに変わらん。
      流行り物を追うだけのミーハー?バカも休み休み言え。

      • by Anonymous Coward

        多分Javaの事は言ってないから安心しろ。無理に絡んで来なくていいから。

      • by Anonymous Coward

        Java2系か何もかもが懐かしい響きだ
        とか言ってたらjava3系の背中が見えてきた今日この頃

    • by Anonymous Coward

      近頃の若いものは!と怒鳴るだけの老害

    • by Anonymous Coward

      1年で退場するものを誉めたてて、5年残るものを貶めるのはどうかと思うよな。

  • by Anonymous Coward on 2014年12月25日 21時31分 (#2734164)

    新しくシステムを作るという場合でも、COBOLが選択されるんだろうか?

    金融系で働いていてJAVAを使っているという人に会ったことがある。
    そのときは興味なかったんで、どういう部分の仕事をしていたのか聞かなかったけど。

    • by Anonymous Coward on 2014年12月25日 21時49分 (#2734172)

      JR東日本のカードシステムはJava
      TISとかいう会社が大体指揮ってる

    • by Anonymous Coward

      金融系?に入るかわからないけど、たしかNASDAQのシステムがJAVAだった気がする。

    • by Anonymous Coward

      うちは新規案件COBOL指定でくるもの多いですよ。
      多言語の倍は稼げるので転向者常時募集中。
      今生きてる人がCOBOLの衰退を見ることはできないと思う。

      ちなみに新興国の案件もCOBOL指定であったりする。(金融系ではないけど)

    • by Anonymous Coward

      某外国為替のシステムがJava。

  • by Anonymous Coward on 2014年12月25日 22時43分 (#2734203)

    0.1の3倍が0.3にならない(ことがある)言語は使いたくないんだろうな。

    #include

    main() {
        if (0.1*3==0.3) puts("equal");
        else puts("not equal");
        return 0;
    }

    • by Anonymous Coward

      GPUで金融計算しようぜ!

  • by Anonymous Coward on 2014年12月25日 22時46分 (#2734207)

    COBOLのプログラムを出力するプログラムを書かせりゃいいんじゃね?
    プログラマが心ゆくまで自分基準で創造的かつ斬新な抽象化が出来るようにさ。

  • by Anonymous Coward on 2014年12月25日 23時19分 (#2734229)

    Cでバリバリとやっている人ですが、Cにはない他言語の標準関数とかの魅力を感じたりしますね。
    ハッシュテーブルとか。String型とか。
    一方で共用体が無くなった理由がわからん。

  • by Anonymous Coward on 2014年12月25日 23時44分 (#2734243)

    言語仕様で定まっている小数を含めた10進演算、過去の資産、
    メインフレームだと画面構成や通信ライブラリの言語バインディングがCOBOLだとか
    これらを全部置き換えるメリットが無けりゃ移行することはないでしょう

    何度も何度も言われていることなのに、でてくるのはなんなのでしょう
    何かCOBOLが存在していては不味い教の人がいるんでしょうかね

typodupeerror

犯人は巨人ファンでA型で眼鏡をかけている -- あるハッカー

読み込み中...