SlideShare a Scribd company logo
1 of 83
ミスター C のつぶやき
到達スピードが大事。一瞥性が大事。
これはUIの話
実利主義と仕組み化
「ちりとり」
ちりとりからザバー
「ちりとり」に集めるものは 「文句」「不平不満」でも言い。
説明が理解できなかった・・・
→ ChatGPTに聞いてみよう。 △
なんか矛盾するような説明だった・・・
→ ChatGPTに聞いてみよう。 ○
Let’s 考えすぎ !
Let’s 思考停止 !
コーダーが中途半端に優秀だと、必ず弊害が起こる。
人にプログラミングを「やらせる」という愚。
「私がプログラミングをやります」という愚。
本来良さそうに見える「自由」や「クリエイティブ」が
開発を阻害する。現場に「地獄」を招き入れる。
コスト意識!
「何かを禁止・統制すること」がアウトプットを高める
ということに気づくべきだ。
巨人の肩の上に立っているが、
その巨人をもっと巨人にしないといけない
ヘンゼルとグレーテル。
立ち戻って直すときに「階層の少なさ」と「KISS」が問われる。
ウサギと亀
ゴールを目指さず、
力がつくまで最初の100mを往復したほうがいい。
ここを100往復
するのだ!
100m 地点
ゴール
ショートカット志向。
今日、問題を抽象化して解決する人を見た。
難しい問題にぶちあたった時
「それ、コントロールできないから(笑)
でね、こないだの件なんだけど・・・。 」
↑世間の評価:デキる人・メンタル強い人。
「いや違う、コントロールできるはずだ( 粘り )。」
↑世間の評価:後ろ向き・メンタル弱い人。
→ 「粘り」や「発明」が軽視されてゆく・・
「 問題のすっ飛ばし 」をした製品がなぜか世に浸透している
それが「けっこう使い勝手が良い」から ・・・
お前か?アホなソフト作ったの?
えっ?
「初心者フレンドリー」 という罠
「複雑が複雑を呼ぶ」は一体どこから始まったのだろうか?
「何だかわからないけどシステム開発は大変だ」
があふれている。
人々には「志向」があり、「惰性」がある
思想を広げるのであればまずそれを最初に考慮に入れる必要がある。
初めから何かを「強制」するから失敗が回避され、責任
追及にまで行かずに済むのである。
その強制の仕組みを作るのが重要である。
失敗が起きてから「誰が作ったんだ」と責任追及する人は
「自分でまいた種」なのである。
3つのモード。
通常戦
格闘戦
リカバー戦
「抽象化」というと難しく聞こえる。
しかし、「共通項を抜き取ること」を抽象化と呼ぶのであれば
それは一般の人でもすぐにできる。
だからクラスやオブジェクトなどと難解な言葉は用いずに
まずは共通項の整理をするのが良い。
狂ったような拡大解釈 あえてそれをやる意味
再定義が必要。
プログラミング界の著名な人物ですら、間違った定義を信じ
こんでいる。そして、その上で発言している。
スパゲティコード、コードクローン、宣言的プログラミング、
フォールトトレラント・・
「ちりとり」として機能していない時に進歩が止まる。
仕組み化担当
相手の感情を読み取り、うまく返せる → 1年の受注・1年の仕事
方法論を打ち立てる → 100年の計
世界中でこれまで「散発的な抵抗」が行われてきた。
「NULLをやめよう」とか・・
「素晴らしいソフトが生まれた」のではない
「様々な弊害と本末転倒が世界規模で広がってく」 のである
徹底的に考える人は、その負の側面にいち早く気づく
「ドラッグ&ドロップでUIが作れちゃう?
バカどもにはちょうどいい目くらましだ。」
「発展」の先に待っているものは「管理」
「さらなる発展」を追い求めてはいけない
プログラマに対して開発上の様々な自由を認めてあげる
というのは、ある種の自殺行為だ。
「仕方ない、人が手でやるしかない」
に抵抗するのが仕事。
「から」「ので」「ねばならない」が多い人
→ まじめ、理屈っぽい・・・。
その人に全部やらせる ×
その人の思考を部品の中に閉じ込める ◎
→最高の品質で量産へ
すでに動いてしまっているコードを改善するのは相当「優秀」でない
といけない。
しかしこれから新たに作るものを、スパゲティ(負債)にしないことは
「誰でも」できる。
ツールの活用とルールの徹底によって。
システム会社の経営指標
「あ、(また)やっちまった」
「できました。」(たぶん大丈夫・・。たぶんトラブらない・・。)
「も、持ち帰って調べます。」
→ これらの発生回数の少なさが「業績」。
売上高は二の次。
ー 思想がドグマに陥らないよう、気をつけること ー
理系の人間はこれが苦手である。
いっぽうで文系は思想やドグマ以前に、
プログラミングを人に丸投げしてしまっている。
過去数十年、「車輪の再発明」があまりにも軽く言われ続けてきた
「たまに意識するといいよ~」みたいなノリで
その作業
「機械的」? それとも「人的」?
「全員無能だ」と仮定するからうまくいく。
技術負債について考えるときはレンガのイメージで
「仮定」の力は絶大。
「○○が○○ならば○○する」 ×
「○○は○○だ」 ○
DBレベルで「○○は○○だ」 ◎
ストップウォッチと損益計算書
は同じ
プログラミングの鉱脈は掘りつくされていない。
やれることはまだ沢山ある。
SOLID原則、アジャイル宣言、デザインパターンより
も優れたスタンダードを打ち立てる!
「木を見て森を見ず」と人は言う。
だが
本当によく見てみると、「木を見て森を見ず」は
そこらじゅうに放置されている。
「スゴい」は作れる。
日本には「察する」という素晴らしい文化がある。
その「察する」文化は、IT業界には弊害ばかりをもたらしてい
るようである。
・・・そして、これは「察して動く」をやめればいいというこ
とでもないないのである。
統計主義。ストップウォッチ主義。
プログラミングが上達したら、プログラミングを覚える前の自分に戻
るべきだ。
そして、できることなら「プログラミングなんか一切やりたくない
人」になり切ってみる。
「認知負荷」ですら、企業にとっては「コスト」である。
「横展開」というのは現場力だろうか?
高次元な横展開について考えてみる・・・。
積極的に理解しようとする人材は貴重
小学生が起業していると「仮定」すればやるべきこと
は明白になる。
基本を教わり、応用問題を解く。
絶対にバグを起こさないコードを1個作って動かしてみる
例えば、引数1個・戻り値1個の function
レンガ積み。
それらの部品だけで構成されるシステム:
→ 理論上は完ぺき
あらゆる引数を渡しても期待した
通りの結果を100%返してくれる。
合格品
不思議なことに mid( ) は続行し .substring は停止する。
六角形の最大化を目指す
「原則の不徹底」は至る所に見出すことができる。
とある思想を採用し、その思想がうまくいかなかった。
なぜだろうか?
→ チームーが思想を理解していないから ×
→ チームが思想を実践できていないから ×
→ 思想を仕組み化することに失敗したから ◎
「優しさ」のふりをした「強制」
そのような部品が求められている。
どこまでも、「シンプルな原則」を貫くべきだ。
だが、世の複雑さがそれを許さない。
その複雑さの前に屈すると、複雑なコードを書くことになる。
そして、「複雑が複雑を呼ぶ」悪循環が始まる。
発電所のタービンは回っている。
しかし、電力は行き届いていない。
→アダプターが必要とされている。「新たな発明」が必要なのではない。
見える、見えるぞ、「表」が!
イノベーションとは「退屈さ」に到達すること
「怠惰」や「完璧主義」がもし100% 悪徳ならば
プログラミングはここまで発展してきていない。
「管理」にはネガティブなイメージが付きまとう。
しかし、管理されていない開発現場ほど、地獄なものは無い
この世に、プログラムは不要。ローコードも不要。
プログラムもローコードもAIも、突き詰めると自己滅却
するだろう。消滅という意味ではなく、人がかかわる部分、
「人次第」な部分をゼロにしていくだろう。
優秀な人間が収益を生むのではなく、優秀な人間を「仕組み化した
姿」が収益を生む
「いや、そうではない」の先に「より良いやり方」がある。
その「より良いやり方」を人に教えようとするからおかしくなる。
40年前から繰り返されていること
プログラミングは「怠惰」の精神が重要
怠惰なエンジニアはライブラリ化へと向かう
しかし、もし彼に「社会性」が欠如していたら・・・?
「自分用・自分たち用」のライブラリ作ってニッコリ。
→ 浮世離れ。 ×
ではなく
○「わかりやすさ = 民衆への解放」
◎「実用的・かつ汎用的 = どんな複雑な要求も吸収してしまう」
システム開発とは
ほとんどの登山ルートが「詰んでる」山
(技術的な会話においては)
共感、同調、イイ声、イイ表情、全て意味がない。
どこかで聞いたような言い回し パワポ脳
「ま、いっか・・・」には2種類ある
「ま、いっか。手を抜くか・・。」
と
「ま、いっか耐えてやるか・・。」(滅私奉公)
後者がやばい。思想や一貫性を欠いた膨大なプログラム(技術負債)の放置。
DBモデルなどボタンの掛け違いをそのままにした「仕方ない」主義。
人海戦術・根性論に陥る。人月ビジネス化する。
複雑は複雑を呼ぶ、負の連鎖。
「まぁ、でも自分は耐えれます・・。」 ← 美しいか?後の世代に何を残
す?

More Related Content

Recently uploaded

物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
Michael Rada
 

Recently uploaded (6)

共有用_aio基本保守プラン_WordPressサイト_20240509.pdf
共有用_aio基本保守プラン_WordPressサイト_20240509.pdf共有用_aio基本保守プラン_WordPressサイト_20240509.pdf
共有用_aio基本保守プラン_WordPressサイト_20240509.pdf
 
物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
物流は成長の準備ができていますか? 警告 1 日あたり 1 章を超えて消費しないでください コンテンツが覚醒と変化への意志を引き起こす
 
company profile.pdf
company profile.pdfcompany profile.pdf
company profile.pdf
 
事例DBサービス紹介資料(Case Study DB service introduction)
事例DBサービス紹介資料(Case Study DB service introduction)事例DBサービス紹介資料(Case Study DB service introduction)
事例DBサービス紹介資料(Case Study DB service introduction)
 
Broadmedia Corporation. 240510fy2023_4q
Broadmedia Corporation.  240510fy2023_4qBroadmedia Corporation.  240510fy2023_4q
Broadmedia Corporation. 240510fy2023_4q
 
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

ミスターCのつぶやき.pptx_________________________