スキップしてメイン コンテンツに移動

目的と手段、思考過程

問題提起

我々は、何事かを成そうと欲すれば、何らかの思考枠組み・思考方法により、これを達そうとする。しかし、その思考枠組みがその目的を達するため適切であるかどうか、また、その適切性をどのように判断すべきか。
 なぜ、このような事を考える必要があるのか。これは例えば、私達が100歳まで生きることができるとして、残された時間は、24×365×100=876000時間である。これは、36500日であり、仮に読者が二十歳であるならば、すでに7300日使用している為、残り29200日である。このように考えているうち、私は次のような結論に至った。すなわち、私達には有限の時間しか与えられていないが、しかし、あえて限られた時間が与えられていることには、何らかの意味があり、ならば、その時間を有効に活用すべきである、と。そして、時間の有効活用は、思考枠組みの改善により達することができるのではないかと予感した。この予感に従い、この問題を以下述べる。

結論

無理。わかりません。なぜなら、人がどのように思考するのかは、私の専門外だから(心理学?哲学も含む?民法は合理的経済人を前提としているらしい)。そして、わからないものを改善する方法を書くなんて無理でした。

傍論

一応、言いたいことの具体例として、

(目的)
 英語が読めるようになりたい。
(手段)
 そのために、毎日法律の勉強をする。

このように、目的と手段の因果関係が破綻している場合、時間の浪費が生じる。これを回避したい。

また、例えば、
int main(int argc, char* argv[])
{
    // 目的と手段の因果関係がまずい例
    // 目的:10+10の答えを出す。
    // 手段:下記の通り
    for (int i = 0; i < 100*100; ++i) {
        // なんかすごい計算がたくさん。
        int ans = 103938 > 323 ? 28289 : 2973923;
        ans *= (1928 > 2738 ? (18 == 19 ? 1933 : 239) : 2183);
        i = 0;
    }


    // 上記の例ではなく、下記の通りにすべき。
    // 目的:10+10の答えを出す。
    // 手段:下記の通り
    int ans = 10 + 10;
    return (0);
}
このように、計算リソースの無駄遣いが、思考枠組みのバグだといえば伝わりますでしょうか?

これらを、回避するため、まず目的の正当性についてチェックすべきであり(そもそも、10+10を計算する必要はあるの?)、そして、その手段が適切であるか否か(そもそも、足し算で答えを出す必要はあるのか?30ー10ではダメなのか等)、について検討すること大事だと思います。

このブログの人気の投稿

記述試験の書き方(仮)

記述試験の書き方(仮) 1,まえがき   法学部の試験では記述式の試験が出てくる。   その試験では、あるテーマについて自由に論ぜよとされている。 しかし、論ぜよと言われても、どのように論じればいいのか、すなわち、記述の仕方について教わったことがない(よくよく考えると、法的文章力を習得させる事だけが目的の授業はないと思われる)。   本稿では、私自身が法学畜になり、見聞きし、実際に活用している論述方法についてまとめている、はずである。その要点は、①条文、判例、学説を使う。②単なる事実と法的事実を区別する。③文章内に一貫性を持たせる。である。 法律と、プログラミング

本サイトの今後について

告知 本サイトは今後更新されることは、おそらくありません。 過去記事等はこのまま放置するつもりです。内容の陳腐化並びにその正確性等については保証はできません。自己責任で活用いただければと思います。 This site won't update in future. And Thank's everyone. new site -> sysrigar

node.js で SQLite3 を使用するコードを書くときの予備録

node.js で SQLite3 を使用するコードを書くとき、予備録 まず、非同期処理。 C言語や Perl のように上から下に処理が続くと決して思ってはいけない。 SQLite3 の each は SQL 文実行完了時に呼び出す関数を指定できる SQLite をインストールします、 npm install sqlite3 [test.js] var sqlite3 = require('sqlite3').verbose(); var db = new sqlite3.Database(':memory:'); db.serialize(function() { db.run("CREATE TABLE lorem (info TEXT)"); var stmt = db.prepare("INSERT INTO lorem VALUES (?)"); for (var i = 0; i < 10; i++) { stmt.run("Ipsum " + i); } stmt.finalize(); var listInfo = new Array(); db.each("SELECT rowid AS id, info FROM lorem", function(err, row) { var tmp = new Object(); tmp.id = row.id; tmp.info = row.info; console.log("[ROW]\t" + row.id + ": " + row.info); listInfo.push(tmp); }, function() { // Each 完了時に呼び出される for (var i = 0; i < listInfo.length; i++) { console.log("[BUF]\t" + listInfo[i].id + ": " + listInfo[i].info); } console.lo