パスワードを忘れた? アカウント作成
13794154 journal
日記

dotkuwaの日記: 何でやってみないと思いつかないか? 3

日記 by dotkuwa

メタな言葉(科学的なとか、権限とか、処理とか、判り易さとか、テストとか)
は、本質的に一部キャラが被り、一部被っていない複数の意味を持ちます。
だからメタであり、メタな言葉である以上、必ずそうなります。
#プログラム言語はキャラが被ってはならず、上位概念下位概念が有ってはなら
#ない為、メタな言葉は無用です。
 
メタな言葉には、常識的な意味が有ります。大抵は必ず有ります。大抵システム
設計でもそこから始めると思います。しかし常識的な意味は、必ず間違います。もし、
常識的な意味のメタな言葉がそのまま有効なら、それですべてが解けるはずだから
です。
 
では、何で常識的な意味ではないが、合っている意味を初めに思いつけない
のでしょうか?
それは、
「一部キャラが被り、一部被っていない複数の意味」が1個で無く、10個台でも
 無く、10万台とか、無限では無いがかなり多い複数だから

では無いでしょうか?
1個なら、システム設計時にはそれに決め打ちすれば良いですし、10個台なら
それら全てを学校で教えれば済むことです。
しかし10万種類の、すべて別のキャラが立っている意味があるとしたならば、やって
みなければ、どれが正解か判らなくて当然だし、初めに思いついたものが、
必ず間違いだと主張しても、外していないと思います。
 
例えば、「判り易さ」など、
・一生に何回かしかしない場合、手ごたえを感じるのは判り易さにつながるでしょう
 けれど、一日に1000回を毎日、仕事でする人には違う
と思います。
 
「テスト」などはさらに問題です。大抵有る筈の、常識的な意味すら無いからです。
実際に動かすためのモックの筈が、特定の値で青信号だとかになってしまったり、
そういうモックとは、いわゆる開発環境そのものなのに、そうでは無い素晴らしい
別の何かがあるとか言われたりします。
 
もっとも、「常識的な意味すら無い」言葉だったからこそ、おかしい主張には、
初めから「おかしい」と言えたのかも知れません。「常識的な意味が有る」
言葉の場合、それが間違いだと判明するには、少なくとも一世代かかると思います。
・違う科学ではないか
と主張しても、30年前には一顧だにされず、僻みだと言われたでしょう。
 
ただし、メタな言葉を排したらよいかと言うと、そうでも有りません。メタで無い
正しい言葉を思いつくのはさらに大変だからです。
 
さらに、デザインパターンなど、
・アドホックな分類に過ぎない
・(プログラミングで無い別の)科学的でない
とされた手法・分類法も、10万種類の、すべて別のキャラが立っている意味がある
様な場面では、十分(この場面に即した)科学的なやり方だったのでは無いで
しょうか?

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by dotkuwa (9387) on 2018年12月23日 10時30分 (#3538490) 日記

    メタな言葉の複数の意味の数ですが、
    ・滑らかなカーブにフィットさせるやり方の統計処理に
     なじまない。
     有史以来、その様な統計処理がわずかでも功を成した
     事が無い。
    ・「常識的に考えて」実際にやってみる前に思いつこう
     としても出来ない。
    という条件が有ります。
     
    多分ですが、
    ・かなり多いが、空気中の分子の数位の多さでは無い。
     もし、それ位の多さなら統計処理が可能。
    ・「複数の意味」は「人間のお気持ち」によって出来る。
     だから、設計でやってみる前に思いつこうとした人間
     のお気持ちに反する種類の事は思いつかない。
    と思います。
     
    もし、「権限」というメタな言葉の種類が10万個だったと
    すると、男性の権力志向が1万、女性の権力志向が1万で、
    それらの中にオタクの権力志向が、それぞれ幾ばくか含まれて
    いる事になるでしょう。
     
    もちろん、仕事で使うソフトウェアに性別や性向に関連
    した意味を含めるのはまずいでしょうけれども、
    実際にやってみる前には、つい、それらを含めてしまう可能性
    もありますし、やってみる前に思いつくという点では、
    ついそれらを含めてしまっても、許容すべきなのかも
    知れません。(もちろん後で修正しないとですが。)
     
    -------------
     
    さらに、「開発」というメタな言葉の内に、
    ・失敗を自分のライバルにさせて、自分を優勢にする為の
     作業
    という意味を持たせている人間にとって、
    英雄的にシステム開発を成功裏に導く人間は、意に反する
    事をしてお金を取ろうとしている背任者に見える事でしょう。
    さらに失敗をなすりつけられようとしている人間からしても
    背任者に見える事でしょう。
     
    人間のお気持ちはそれだけ幅広いと思います。
    さらに言うと、システム開発とは、「成功したシステム開発の
    事である」という意味の数は、逆の意味の数より圧倒的に
    少ないと思います。それを考えて、成功したシステム開発を
    実現したい人は、謙虚になる必要が有ると思います。
    しかも、一度システム開発を成功させてしまうと、次には
    さらに多くの謙虚さを求められてしまう事になると思います。
     
    ひどい話ですが、こちらの方が現状に合っていると思います。

    • ※前回、「お気持ち」という言葉を使いましたが、これはどう使っても
       揶揄にしかならないと反省し、「メンタルモデル」に言い換えたいと
       思います。(「お気持ちや○ざ」の「お気持ち」ですから当然です。)
       (のそのそはい出して来たり、チチチと言ったりする方では有りません。)
       
      今はやりの「デジタルトランスフォーメーション」という潮流には、
      歴史があると思います。
       
      1.恐ろしく高い汎用コンピュータの頃は、その値段自体が権限だった。
      2.オープン化で安くなった所で、ソフトウェア開発に特化した
       メンタルモデルを持った人間(以下おたくと謂う)が、自身の
       メンタルモデルに無批判に設計をした。それがおたくの権力闘争むき出し
       の権力構造になった。
      3.権力の専門家の人々が、「コミュニケーション能力」などの、おたくに
       不利な基準を掲げ、おたくを殲滅した。
      4.さぁ自分らのメンタルモデルのまま、ソフトウェア開発が出来ると
       思い、「デジタルトランスフォーメーション」などの基準を掲げたが、
       あまりに、ソフトウェア開発から見て、不利なメンタルモデルなので、
      成果が上がらない。
      5.専門家に参画してもらえば良いのかも知れませんが、専門家は
       おたくなので、見敵なんちゃらの対象となり、出来ない。
      です。
       
      --------------
       
      その意味からも、「テストを初めに書く」のは最悪だと思います。
      テストを書いた人間のみのメンタルモデルのまま固定され、テストという
      プログラムを書き始めるのですから、上記の歴史を繰り返すだけに
      なると思います。
      自由自在に、テスト(正しさへの道のり)からすら自由に、今の流行も
      取り入れ、まず動くものを作るのが先で、テストは参加者全員の
      メンタルモデルから見て妥当な意味のメタな言葉が固まってから
      すべきです。テストは何にしてもコストがかかり、コストは固定化に
      つながります。
       
      --------------
       
      初めに書くのは(まず「やってみる」のは)、
      「クラス図」だと思います。クラス図のパブリックな名前にはよりメタな、
      プライベートな名前にはキャラの被らない、定義された名前が、それぞれ
      割り振られ、図全体が矛盾しない様に、それを作れば、
      特定の人間のメンタルモデルからそれなりに自由になります。
      (もちろん、特定のメンタルモデルで世界を支配しようとしている
       人間にとっては、面白くないものになると思います。彼ら彼女らとの
       闘争は、ソフトウェア開発の一部ですが、ここでは言及しません。)

      親コメント
      • ・丹精込めて作物を作ったり、
        ・規律を持って運転をし続けたり
        する事は、いくら凝りまくっても「オタク」とは言われにくい
        と思います。
         
        そして、逆に「オタク」は
        ・育たない、慣性を持たない
        ものを対象とすると思います。これらを対象とするのは、
        ・育つ、慣性を持つ
        対象を相手にする際の有利さを捨てる事になるので、
        奇異の目を向けられるのかも知れません。
         
        さて、
        ・人は育つが、ソフトウェアは育たない。
         一々事細かに何とかしないといけない。
        ・物は勢いを付けてやれば動くが、ソフトウェアに慣性は無い。
         一々事細かに何とかしないといけない。
        のは客観的事実だと思います。
         
        技術者は育たない物、慣性の無い物の面倒を見続ける事で、
        間接的に育つのでしょうけれど、
        合わない人は、直接的に人を育ててしまい、技術を圧迫し続ける
        為、合いません。
         
        さらに、そういう人々は、
        ・初めに大歓迎し、頃合いを見計らって、難題を課す。
        行動を取りがちですが、
        育つ相手なら良いですが、ソフトフェアはそうでは有りません。
        初めの大歓迎は大量の技術的負債となり、育つ相手なら助けになる、
        難題はソフトウェアを致命的に壊す事になるでしょう。
         
        たとえ強化学習みたいな分野でも、そういう人が思っているような、
        育ちは無いと思います。
        (この点に付きましても、実際にいじったことが無いので想像です。)

        親コメント
typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...