COBOLだからというのは違うんじゃないかなぁ

注)過去に書いた内容とかなりダブっています


少年よ、COBOLからは全力逃げろ!
http://d.hatena.ne.jp/itoasuka/20080602/1212380214

個人的にはJavaは数値演算に関してはCOBOLの足元にも及んでいないこと,大概スキルが問題になる人の場合,制御構造がうまくつくれていなくて言語以前の問題であることなどもあってCOBOL言語そのものが問題だとは思えない.

以前に何度か書いてあるとおり,ステップ数をもとにバグの数を算出する(バグが100ステップにつき1つなかったらそれはバグを含んだコードなので結合テスト不可能といわれる)とか資料が資料の役割をあらわしていない(定数一覧がない.定数は帳票として納品する資料そのものだけなので1ページに1つか2つの定数値がかかれている.たとえば性別の定数を探すだけですさまじく時間がかかる)とか,単体テストを知らないというほうが問題だと思っている.これは古の開発手法ではなくて比較的最近のJavaを使ったWebアプリの開発だった.

昔はこれでよかったのかもしれませんが,今の時代はあいませんよと.今の言語での開発は技術者の質にも左右されすぎる上に,技術者のスキルに見合わない無理な納期設定(みんなWebアプリ初挑戦)があっただけに納得がいかないことだらけだった.それだけ開発効率が悪いことを強いるくせにこの納期かよ,と.


このへんの問題はひがさんのエントリのほうが自分の感覚と非常に近くてよい.

SI業界の老害が若手と下請けを蝕む理由
http://d.hatena.ne.jp/higayasuo/20080602/1212379147

ひがさんの今年最良のエントリだと個人的には思ってる.



コーディングシートが出てきたのでコーディングシートの話をすると,コーディングシートでの手書きは非常につらく,ハンドアセンブルをやっていた時代を思い出すくらいだった.当時はフルスクリーンエディタなんて金持ちしか買えないもの(Winに付属のメモ帳も当時のPCならば5800円くらいで売り物になる)だったので紙に書くこと自体はなれていたけど,COBOLのコードって宣言文とか長いのが面倒だったんだよね.

一番の紙にコードを書くことの問題ってあとから追加とかができないことだった.だから,定期的にコメント入れてスペース入れてみたりしたものの根本的解決はなかったかな.これはフローチャートにもいえることなんだけど,手書きのフローチャートも追加があるとすごいことになってたよね.

個人的にはPCをつかわずに頭の中で整理させるという意味で,まずはPCをあたえず机上デバッグできるようになってほしいから紙にかかせるというのはありかなとは思っている.コードとエラーメッセージを見ればすぐにわかるようなところもソースコードデバッガを起動してステップ実行させる人があまりにも多すぎるから.どうもコンパイル時間が非常に短くなったおかげでトライアンドエラーがしやすくなりすぎて,コードの動きを頭で追おうとしない人が増えすぎちゃったみたい.原因はこれで特定できてもどう対処すればいいのかがわからない人が多いみたい.

おいらはC言語でたいしたことのないステップ数でもコンパイルしたらコーヒーブレイクが必要だった世代の人間だから,とくに気になっちゃうのかな.30歳以上の人はわかってくれそうだけど.