嫌われプログラミングの代弁者

「何で頭ごなしに嫌う人間が居るのか」を色々考える

まともな名前をつけさせてくれず、意味がわからない 1

どの様な話? 名前の付け方や、第一級の括りの意味を知る事は、オブジェクト志向だからどうだと言う、独自の考えは無いと思います。 逆に、名前の付け方や、第一級の括りの意味について「虫が良すぎる」(長期間の真剣な研究開発でも解が無い)仮説が有った…

悪口を言われる 3

コボラーに対する悪口 コボラーに対する悪口は、人権をつかさどる機関でも、プラットフォーマーでも野放しだと思います。これはファクトだと思います。 何処もいっさい咎めないのです。 悪口の内容 特に「何かの属性を持った人」と言う訳でも無い人が、 コボ…

意味がわからない 3

もしかすると もしかすると、プログラミングとは、 (機械学習では無い)人造のAI と言う側面を持っているのでは無いでしょうか? 人造なので、(特に困る問題に対してのロバスト性を担保する為の) ひらめき、内省に相当するif文 だとかを備えていますが、…

家で勉強しないといけない 1

どの様な話? プログラマーは家で勉強しないといけないのか否か、と言う議論はよく有り、結論も出ません。しかしよく考えてみると、私の場合、家で勉強すると言うのは、 新しいやり方(新版のLinuxとか)で解が有るのかについて、(Linuxだと本来的には有る…

意味がわからない 2

学術分野で無く商用分野でも 学術分野で無く商用分野でも、 正当なチャレンジをする若手に対しては、かなりの配慮はなされます。そしてそれは中堅の犠牲の上になされます。もちろん、自分らもしてもらったから、同じ事をしているだけで、それ以上でも以下で…

意味がわからない 1

どの様な話? 「プログラミングの意味が判らない」からプログラミングが嫌いだ について私見を述べます。 私にとっての意味 プログラミングの意味は、プログラムの意味とデータの意味に分かれる プログラムの意味は、データの意味を担保する手段のみで デー…

まともな名前を付けさせてくれない 3

どの様な話? 変数名などに、 まともな名前(妙に一般的な、普遍的な名前)を付けたがり、 名前が同じなら、操作的意味も同じ(しかもその意味は自分が思っている通り) (という様な非常にナイーブな(悪い意味で)態度で)としたがる事を始めたのは、パソ…

関数型プログラミングである 3

少しはファクトも持っています 信じられない程、素晴らしい性質を持った、関数型プログラミングですが、それを吹聴しているリーダーに、 実際、それはどうやったら出来るのですか と聞いたら、 何を言っているんだ、それを考えるのはお前たちだろ と言われま…

関数型プログラミングである 2

何で20年間以上も粘着するのか? 主に2つ有ります。 嘘の手法が持ち上げられると、そうで無い手法を使っている専門家の価値が有意に下げられる。(チャレンジしていないとか)プログラミング技術は、レガシーと次世代という括りで考えるのが一般なので、これ…

関数型プログラミングである 1

どの様な話? 私の勤めているソフトウェア会社で、評価面談があり、その際に、 お前はチャレンジしていない と評されました。話をうかがうと、 関数型プログラミングを期成するのがチャレンジだ という風に聞こえました。その頃、関数型は次世代技術として大…

COBOL言語である 4

COBOL言語でない(さらに別案) 宣言型プログラミングというものがあるそうで、オブジェクト指向プログラミングの「次世代」として、関数型と双璧を成していました。 これは、 プログラムを固定して、動作を変化させるデータ(プロパティとか設定情報とかい…

COBOL言語である 3

COBOL言語でない(別案) 関数型プログラミングというものがあるそうで、変数に関数を代入出来、機能をプラガブルに変更出来るそうです。 これを私が耳にしたのは、オブジェクト指向プログラミング真っ盛りの頃で、次世代のプログラミング手法ということで、…

COBOL言語である 2

COBOL言語でない コボラーにとっての黒船はまさにオブジェクト指向言語で、完全に飲み込まれた形となりました。適応しないと仕事が無くなりました。 私がCOBOL言語でない言語に初めてぶち当たったのが、オブジェクト指向言語としては中途半端な(クラスが作…

COBOL言語である 1

どの様な話? COBOL言語が人から嫌われる直接の原因は、 柔軟性が無い 為だと思います。ちょっとの仕様変更もしてもらえないとなると、嫌われて当然です。じゃんじゃんモダナイズすべきだと思います。 何で柔軟性が無いのか 私が小学生だった1970年代でも、…

常識が通じない 1

どの様な話? 歴史的に有る時点まで(普通に動くコンピュータが10万円以下で手に入る様になるまで)、プログラミングが主な手段であるシステム開発は、SIerの様なコンピュータの側面からのみ突き詰めるプレイヤーによってなされて来ました。 しかし、コンピ…

より簡単な手法にさせてもらえない 3

なぜ手法により、解くべき「問題」を変えるのか? 「より簡単な」手法を成立させるための秘訣とは、具体的には、 解きたい問題をある動かない物体に例えた時、 ある手法をその物体に対する視座に例えると、 正面からの視座よりも、わざと横目ギリギリの視座…

より簡単な手法にさせてもらえない 2

簡単とは、複雑とは? 簡単とは、 機能さえ使えればヨシ→典型的には「コミュニケーションの介在」(広義では、データベース、ファイル共有、サインイン、証明など含む)で、 複雑とは、 それ以外全てで、必要悪としてさまざまな「再発明」が必要で、それでも…

より簡単な手法にさせてもらえない 1

どの様な話? COBOL74、COBOL85、VB6、VB.NET、Java6、Java8と扱ってきましたが、 時代が進む(進歩する)度に、より複雑になっている しかしへたに複雑にすると将来とりのこされるので簡単には複雑に出来ない という傾向にあると思います。複雑に向かう進歩…

自由裁量でリファクタリングをしないとならなくなる 1

どの様な話? 「リファクタリング」とは、 リファクタリング (refactoring) とは、コンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理することである。 リファクタリング (プログラミング) Wikipedia…

まともな名前を付けさせてくれない 2

どの様な話? 「まともな名前」の1例です。 何で!? 経理部門の人が、数あるプロジェクトの中で、ほんの時限的な小型プロジェクトで、 こともあろうに「project@example.com(仮名)」というMLを、そのプロジェクト用に作ってくれ と言ってきました。もちろ…

まともな名前を付けさせてくれない 1

どの様な話? 特に経理畑の人が、プログラミングの各種名前に一々、まともな名前(妙に一般的な、普遍的な名前)を付けてしまい、理由が有って否定されます。これはプログラミングが嫌われて当然の話ですが、理由が有ります。 どんな理由? 目的は、一貫した…

悪口を言われる 2

どの様な話? IT業界の多重下請け構造というのは、悪口が原因では無いかと思えてなりません。 プログラマーとその経験が無い上司が同じ会社・部署に居ると、 上司から(プログラマーから見た)悪口を際限なく言われ続ける どう見ても中毒としか見えない、多…

悪口を言われる 1

どの様な話? 実際にプログラムを書いていると、書いていない人から悪口を言われます。それに対してなかなか反論出来ません。 なぜでしょうか? 実際にやっている人(この場合はプログラムを書いている人)と、悪口を言う人(この場合は書いていない人)を天…

テストを書いてくれない 1

どの様な話? プログラミングにはテストが必須です。それは正解との適合性の検証です。そして多分、テストはプログラミングの素養がなければ書けません。 それは、 テストが出来る様な対象は有史以来、プログラミングが初めて だからです。プログラミングが…

原理原則が見当たらない 1

どの様な話? プログラミングにおいては、 ある原理原則が出来、それに基づいて業務を遂行していると、 それに携わっている人間にとっては致命的に困る差異があり、 しかし基本的には同一の、 別の原理原則を作り出す事が容易 です。ですので通常、原理原則…

箇条書きが書けない 1

どの様な話? これはプログラミングというよりプログラミングの設計の話ですが、 管理職やリーダーは、プログラマーにとって指示を受けたり、相談したりする相手ですが、彼ら彼女らの「必殺技」として、箇条書きが有ります。複数のレベルの項目を行を分けて…

記述の順番が異なる 1

どの様な話? 何とプログラミングと異なるか? というと、(自然言語で書かれた)要件定義書と異なる、です。『何で同じに書かないのか』で、嫌いになる場合が実際に有りました。 プログラミングは(たとえどんな論理的糖衣をまぶしても)、結局の所、 プロ…

はじめに

はじめに 30年前、会社に入ってオフコンCOBOLから始めました。もちろんその頃は最先端の技術で、何ら恥いるものでは有りませんでした。 しかし、その頃でも「プログラミングをやらなければならないなら、今ここで死んでやる」とか言う人も居ましたし(その会…