FC2ブログ

よく考えることは重要

プログラミング作法という本をここ何ヶ月か掛けて少しずつ読んでるのですが、第5章のデバッグが結構面白いです。コードを読むのはちょっと時間が掛かるのですが、時間を決めててもこの章はどんどん先まで読んでしまっています。

そんな5章に「打つ前に読め」ということが書かれていて、「コードを舐めるように読んで、変更を施さずにしばらくよく考えてみること」がデバッグテクニックの一つとして紹介されていました。

私の場合、無駄に考えることが多いです。結局行き当たりばったりで編集して動いたところで、本当にバグの根源になってるところを取り除けたのか不安だし、実際結局バグが直ってなくて、デバッグを再開するハメになったことが何回かあるからなんですけど。
ただ、ひたすら考えるのは一番根本的な解決が出来る唯一の方法だと自分でも思うんですが、結構時間が掛るんですよね。

昨日も研究の主題について、今まで文章に書き起こしてきた研究背景や方向性を洗いざらいチェックして、整理した上でこの研究で最も示すべきことはなんなのか(何を検証して示せばこの研究の背景に貢献できるのか)を丸一日掛けてひたすら考えていました。

今まで立ち止まって悩むのは時間の無駄に思えたり、取り敢えず動くようになればそのほうが早く次に進めるし良いと思ってしまって、結構後ろめたい気持ち(さっさと進めてしまえばいいのにとか、他の人なら同じ時間でももっと先に進めてるだろうにとか)が出てきて、毎回「考えるより手を動かせって」自分に言い聞かせてたんですよね。この本にも「効果的なわりに過小評価されているデバッグテクニック」なんて書かれてますけど。

でも結局自分のためにならないのが嫌だから、投げ出さずに悩んでるわけですし、適当やったってどうせ良いプロダクトなんて生まれないよなーと読んでて思えてきました。

よくTwitterとかで納期が迫ってるからって適当に行き当たりばったりのコードを書いて、取り敢えず問題になってた箇所は修正されたからってリリースしといて、後で痛い目に遭う、みたいな話とかよく見かけますけど、そういうのの原因の終着点って結局ここなんだろうなって思います。しかも、間違いに気づかないままどんどん次の仕事が舞い降りてくるから社員も成長しないという…。
世の中世知辛いですね。

あと、アジャイルが流行ってて、取り敢えずの修正でも完成ってことにしてしまえ、ってことだと思ってる人って結構居そうでそういうのが拍車を掛けてる現場とかあるのかなぁなんてちょっと心配です。

アジャイルは確かに段階を区切って製品をプロダクトしていくんだけど、ある機能を実装してみるってところまでやるってことだったら、そこまでの機能を完全に実装するってことなので、バグが残ったままを許容するなんて真似が決して現場で正当化されないことを切に願ってます(一体どこの誰に対する願いなんだか)。
良いプログラムを作れる現場は少なくともこういうバグをちゃんと直すことに(許容するって言い方は変なので)時間を惜しまない企業だと思います。
これだから日本はーとか、日本が日本がーっていうのはどうせ他の国だって駄目なところがあるだろうから嫌いなんですけど、他の国と比べないにしても、仕事をかき集めて短い時間で大量に製品を作ることが最も効率的で利益が上がると思ってる管理職だったり経営者だったりが日本には少なく無い数いると思います。
でも、プログラムの場合はバグの少ないプログラムこそが信頼できるし、安定した利益に繋がる筈なんです。逆にバグだらけのクソプログラムばかり生産する企業なんて信頼できないし、そういう会社は実際に叩かれまくってます。皮肉にも技術者が居ないから潰れるほど需要はなくならないのかもしれませんが。プログラムなんて幾らでも複製出来るんだから、圧倒的に量より質を重視すべきだと思うんですが。
そもそも問題箇所の修正だけしか確認出来てないのにそのままの製品プログラムなんて外面だけ綺麗にした欠陥商品と同じで、ハッキリ言って詐欺ですよ。完璧には無理でも余計なバグが出ないかぐらいはテストしてからリリースしないと許されないように世間の目も変わってくれると良いんですけど。

なんか書いてるうちに内容が濃くなっちゃいましたw

今までは、いずれはこれが仕事になるかもしれないわけだし、ずっと考え込むのは作業効率が悪くて良くないことだと思ってましたけど、寧ろいわゆる「クソコード」を製品に取り込まないためのプロセスとして「ちゃんとコードを直すこと」、そのために「よく考えてみること」は最重要なんじゃないかと思いました。

☆関連商品☆

コメント

非公開コメント

スポンサードリンク

ブログ内検索

プロフィール

ふじこlp

Author:ふじこlp
はてなブログへ移行しました。https://higechira.hatenablog.com/

ゆとりの大学生です。どれくらいゆとりかというと土曜日に通常授業を受けたことがただの一度もありません。

IBM時代のT43は観賞用となりましたが、X61は現役。
スクエアThinkPad X Series 最高です。
MacBook Pro 始めました。がやはりThinkPadに勝る打ち心地は存在しませんね。

カレンダー

11 | 2019/12 | 01
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

天気予報


-天気予報コム- -FC2-

フリーエリア

ブロとも申請フォーム

QRコード

QR

アクセスカウンター