パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

科学者は研究に使っているコードを公開すべき?」記事へのコメント

  • by Anonymous Coward
    基本的に自分とその周辺しか使わないし、たとえメモリリークなんかのバグがあってもアウトプットが正しければ良いので、やっつけ仕事、コピペ継ぎ接ぎのかたまりです。
    議論で公開しろと言われれば、しますけどね…
    公開するならもう少し綺麗なコードにしたいし、その時間があるなら別のことをしたいというのが本音。

    一応、プログラムが正しい結果を出すことはチェックしている…つもりなんですが…
    学生さんに渡したプログラムに、卒論提出直前にとんでもないミスが見つかったことがあります。
    • by Anonymous Coward on 2010年02月11日 18時17分 (#1716888)
      メモリリークやバッファオーバフローなど正常に動くかどうかという問題以前に、
      アルゴリズムの実装がまともかどうかを検証する上で、コード公開は価値があるかと。

      桁あふれや浮動小数における誤差など、コンピュータの世界では実数の四則演算が通用しないわけですよ。

      それを知っている学者ならいざしらず、
      コンピュータが万能だと妄信している学者 or コンピュータに詳しくない学者は、
      アルゴリズムさえ完璧なら出力する数値が完璧だと思っているわけですよ

      # コード公開においては、OSS文化と学者文化に隔たりがあるな・・・と思う。
      親コメント
      • by BlueRain (37857) on 2010年02月11日 23時25分 (#1716996)
        ソースよりもフローチャート(アルゴリズム)を公開すれば別の方法(プログラミング言語)で試してくれる人が出るかもしれない。そうすれば言語仕様による問題は切り分けできる可能性もある。
        プログラミング(コーティング)のバグはある程度しょうがないと思うけど、理論のバグはまずいよね。

        けど、理論を記述する方法(エディターとか)ってやっぱり昔ながらの果てしなく手書に近いフローチャートなんでしょうか。
        まずやりたいことの概略を書いていてって、つぎにそれぞれの項目を詳しく書き、最終的にコードまで落としこむみたいな言語ってあるのでしょうか。素人なんでそういうことよく知らないんですが。
        回路図なんかだとブロック図を書いてその下の階層にさらに細かいブロック図、その下の階層に実際の回路図みたいな書き方ができるのでブロック図の中はブラックボックスとして機能さえ理解できれば全体像をつかみやすいのですが。
        親コメント
        • by Anonymous Coward on 2010年02月11日 23時58分 (#1717010)
          一番上のACですが、自分の場合(多体)では元になる式(F=maとか)をうまく変形して、コンピュータで計算できるようにします。
          ですから、基本的に理論はすべて数式であり、フローチャート以前の話になっちゃいます。
          その分、理論のミスはそこそこわかりやすいです。
          理論自体にミスがあれば式変形がおかしくなりますし、保存量が保存しません。
          また、どのくらいの誤差が出るのかもわかりますので、理論が正しいかはその辺でも判断できます。
          その式をCやFortranに落とし込んで、それを走らせることになります。
          親コメント
        • by Anonymous Coward
          > プログラミング(コーティング)のバグはある程度しょうがないと思うけど、

          今回問題になっているのはこちらのほうです。これはもうプログラムそのものにあたらないとどうしようもない。

          > まずやりたいことの概略を書いていてって、つぎにそれぞれの項目を詳しく書き、最終的にコードまで落としこむみたいな言語ってあるのでしょうか。素人なんでそういうことよく知らないんですが。

          いわゆるトップダウンプログラミングに思えますが。

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

処理中...