へろぽっぽ☆(^~^)

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 プログラムを開発するのが うまくなったので 少しメモって置こうぜ☆?」

KIFUWARABE_80x100x8_01_Futu.gif
「 それより寝ろ☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 うまくなったか へたなのか どうやって検証してんの? 主観?」

20191226blog8a1.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 実践では 考えたり リファクタリングする時間とかないわけだぜ☆
プログラマーがやりたいことは だいたい プログラマーではない人から 無駄だと思われてるんで、
クォリティとか考えていられない☆ ハッカー的な能力を求められるわけだぜ、つまり 脊髄反射で決定して、かつ終わりが速い
こう、ほいっ、ほいっ☆」

KIFUWARABE_80x100x8_01_Futu.gif
「 なんで 卓球のジェスチャーをしてるんだぜ☆?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 結局、 動的計画法 という古くからある方法以外の ひねった方法 をやってみると 手戻り というミスをする☆
そこで ほとんど こうするしかないという開発の必勝法、 動的計画法 を 簡単に説明する☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 動的計画法って、名前に Dynamic と入れておくと アメリカ政府から予算を巻き上げやすいから Dynamic と入れただけで
深い意味は無いそうよ。
だから 正味の意味は プロジェクトが崩壊しないプログラミングの方法 ぐらいの意味なのよ」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 多分 ドラクエの ほりいゆうじ が書いたセリフだと思うんだが、 セーブはこまめに という手法だぜ☆
あるいは 塾の数学の授業でよく言われるような、 計算の過程を残せ、式と答えだけ書いてあって答えが間違っていたら どこが悪かったのか指摘できん という手法だぜ☆
それを頭に入れて 詳しく見ていこう☆」

20191226blog8a2.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑まず最初に 何か要望を抱えた依頼者と ミーティングが始まるが、まあ とにかく聞け☆」

20191226blog8a3.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑じゃあ なんか データがどこかに置いてあるとか、インプットの話しと、
最終的に こういうものが欲しい という アウトプットの話しが どこかにあるだろ☆
この間、具体的な仕様とか 存在するかどうかも不明だぜ☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 依頼者と 直接話しできなくない?
話しを持ち帰ってきた中間と話ししてない?」

KIFUWARABE_80x100x8_01_Futu.gif
「 お父んは 人前に出せないんで……☆
まず シャツがズボンから出ていて アウトなんで……☆」

20191226blog8a4.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑インプットしたものを そのままアプトプットすればいいだけなら それ ずっとインプットなんで
そんな都合のいいこともなく、インプットとアウトプットの間には 何かしらの
ゴミの除去なり、まとめ直しなり、データの編集が加わるぜ☆」

KIFUWARABE_80x100x8_01_Futu.gif
「 依頼者の望むものが 見えてきそうだな☆」

20191226blog8a5.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑で、チェンジはだいたい 一発で終わるものではなく、
こんなときは こう、 ただし これだけ例外で こう、
しかも このケースでは 反対になってこう、 とか 比較が 小出し に こまごま出てくる☆ 例外の山☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 小出しの 後だしで 仕様追加されたら プログラムって ぐちゃぐちゃにならない?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 なる☆」

20191226blog8a6.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 依頼者から見れば、元となるデータを、ある形に加工してほしい、ということかもしれないが、
最初に聞いていた話は簡単で、あとに聞く話は 前に聞いていた話しからすれば 規格外になることは よくある☆」

KIFUWARABE_80x100x8_01_Futu.gif
「 どう自己防衛できるのかだぜ☆?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 自己防衛方法はある☆」

20191226blog8a7.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 依頼者の話しを聞いて、 うまく クラスタリング(おまとめ)して
まとまりごとに 一括処理をする……、といった 丁寧かつ、手際の良さげな方法が プロジェクト崩壊の始まり だぜ☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 何が起こるの?」

20191226blog8a8.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ただし このケースは除く、 しかし このケースは 『除く』から除く、 みたいな Except が入ってくる☆
今どういうロジックになっているのか 業務マンは把握しているが プログラムマンが精査すると ぼんやりしているところが出てくる☆
いちいち質問すると、こうあって欲しいロジックではない方が 仕様として戻ってくる☆
人類は if文 がすっきりしていない方が好き☆」

KIFUWARABE_80x100x8_01_Futu.gif
「 わらう☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 じゃあ どうすれば良かったの?」

20191226blog8a9.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 クラスタリング(おまとめ)せず、 シリアライズ(1本に ならべる)しろだぜ☆
Source から Destination へ直に変換するのではなく、
Source recipe とでもいうような いったん整列フェーズ を挟めだぜ☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 クラスタをボンと投げるのではなく、
ジブラルタル海峡の橋を渡る勇士に 球が飛んでくみたいに 1発 1発 ぼんぼん投げろだぜ☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu.gif
「 データがでかくならない?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 なる☆ データベース上に レシピを作れだぜ☆ 作ったレシピを実行しろだぜ☆
テストがしやすくなる☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 で、新しい仕様の小出しが来たら ロジックは 書かず、 データベース上の レシピ をいじれだぜ☆
ロジックに手を付けるたび 地雷度 が跳ね上がる☆ ロジックを触ってはいけない☆ レシピを触る☆」

20191226blog9a10.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑ ヨコ軸に 依頼者の要望が、 タテ軸に 実行する球 が並ぶわけだぜ☆
SELECT 文で 結果を配列に詰めて foreach文で回せだぜ、1行が1命令☆ 簡単だろ☆」

KIFUWARABE_80x100x8_01_Futu.gif
「 ログにもなる☆」

20191226blog9a11.png

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu.gif
「 ↑ 気分的には、結局、フェーズ間に レシピが要る☆
いろいろ やってみろだぜ☆」

<書きかけ>

何度でもクリック!→

むずでょ@きふわらべ第29回世界コンピューター将棋選手権一次予選36位

光速のアカウント凍結されちゃったんで……。ゲームプログラムを独習中なんだぜ☆電王戦IIに出た棋士もコンピューターもみんな好きだぜ☆▲(パソコン将棋)WCSC29一次予選36位、SDT5予選42位▲(パソコン囲碁)AI竜星戦予選16位

Crieitは個人で開発中です。 興味がある方は是非記事の投稿をお願いします! どんな軽い内容でも嬉しいです。
なぜCrieitを作ろうと思ったか

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください!

ボードとは?

むずでょ@きふわらべ第29回世界コンピューター将棋選手権一次予選36位 の最近の記事