Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Metacognition for system engineer(エンジニアに必要なメタ思考)

694 views

Published on

エンジニアによくある「言語を学ぶ事」が目的になっていることから脱却するための参考資料

Published in: Career
  • Be the first to comment

  • Be the first to like this

Metacognition for system engineer(エンジニアに必要なメタ思考)

  1. 1. © 2019 M&S Advisory エンジニアに必要なメタ思考 森本 晃弘 (中小企業診断士・2級色彩コーディネータ)
  2. 2. © 2019 M&S Advisory 目次 1.エンジニアあるある? 2.少し立ち止まって考えよう! 3.メタ思考とは? 4.メタ思考を応用してみよう!
  3. 3. © 2019 M&S Advisory 1.エンジニアあるある? • 何となく不安だから ひたすらプログラミング言語を学ぶ • 流行り始めたから/流行ってるから言語を学ぶ (少し前だとJava、最近だとPython・R・Goあたり?) • 次のプロジェクトでXXを使うから勉強しといて! と言われたからXXを勉強する いらすとや
  4. 4. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 表現が適切ではないかもしれませんが… 言語は何かを実装するための「手段」でしかない!
  5. 5. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 価値を生み出すためには何かを実装する事は非常に重要! しかし
  6. 6. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 何を実装するのか? 何故実装するのか? の方がより一層重要!
  7. 7. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 例えば、HPを作るだけなら HTML5(+ JavaScript) ・ペライチ ・WIX ・BASE などなど で良くないですか?
  8. 8. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 例えば、3Dモデルを作るだけなら C++/C + OpenGL で良くないですか? Unity (+ JavaScript)
  9. 9. © 2019 M&S Advisory 2.少し立ち止まって考えよう! 一方で、川の氾濫による被害低減や鉄砲水による死者防止のための エッジコンピューティング(≒高精度予測IoTセンサー)を実装するなら 「アセンブリ言語」や「C言語」を学ぶ意味があります! 何故か?
  10. 10. © 2019 M&S Advisory 2.少し立ち止まって考えよう! IoTセンサーは比較的タフな環境で利用される ⇒タフな環境で利用するため早く壊れる可能性が高い ⇒早く壊れる物は保守の観点から手軽で安価な方が良い ⇒安価にするためには機能を絞る(特化させる)or低スペックにする ⇒特化させる場合はほぼ自己完結出来るように組込処理にする ⇒組込処理ならアセンブリ言語などで実装する ⇒低スペックの場合はメモリを上手く使う(富豪プログラミングが不可能) ⇒メモリの割当と解放を制御できるC系言語などで実装する
  11. 11. © 2019 M&S Advisory 3.メタ思考とは? • 分かりやすく言うと、さっきの様な連想ゲーム • 通っぽく言うと、抽象化(もしくは抽象化思考) • 正確に言うと、視座を上げるまたは一つ上の視点から考える
  12. 12. © 2019 M&S Advisory 3.メタ思考とは? な ぜ 何を どのように 水害事故防止or低減 察知予測 変更 禁止 天気 予報 治水 立入 禁止 IoT 計測 タフな環境で利用 タフにならない様に工夫 安価に実装 耐久性を上げる 設置場所を工夫 機能を絞る スペックを落とす • 模式的に表すと以下の様な感じ
  13. 13. © 2019 M&S Advisory 3.メタ思考とは? な ぜ 何を どのように 水害事故防止or低減 察知予測 変更 禁止 天気 予報 治水 立入 禁止 IoT 計測 タフな環境で利用 タフにならない様に工夫 安価に実装 耐久性を上げる 設置場所を工夫 機能を絞る スペックを落とす ここでは無く ここで考える
  14. 14. © 2019 M&S Advisory 4.メタ思考を応用してみよう! な ぜ 何 を 水害事故防止or低減 察知予測 変更 禁止 天気 予報 治水 立入 禁止 IoT 計測 • 水害事故防止をコンテンツ配信PFの安定稼働に応用してみる コンテンツ配信PF安定稼働 察知予測 変更 禁止 利用率 ダッシュボード コンテンツ 自動圧縮 大容量 UL禁止 アラート 通知
  15. 15. © 2019 M&S Advisory 4.メタ思考を応用してみよう! な ぜ 何を どのように オンデマンドマッチング 会話相手 動画 移動ゲーム仲間 チャット ルーム • 身近で起きていることで応用してみる (俗にいう) 部屋 Youtube/ VOD Uber
  16. 16. © 2019 M&S Advisory 4.メタ思考を応用してみよう! 有料から無料へ (販売部数が激減) 新聞・ 雑誌 • 実際のビジネスで起きている事象だと以下の様な感じ 無料から有料へ TV 趣味水 な ぜ 何 が ど こ で 情報過多・組織から個人 百科 事典 SIも? 専門化・ブランディング
  17. 17. © 2019 M&S Advisory 4.メタ思考を応用してみよう! • 整理も一種のメタ思考 • 右の図はプログラムの パラダイムで整理したもの • パラダイムとは 考え方・概念の種類 引用:Programming Paradigms for Dummies: What Every Programmer Should Know 状態の表現が豊か =手続き型言語 状態の表現が乏しい =宣言型言語
  18. 18. © 2019 M&S Advisory 4.メタ思考を応用してみよう! 出典:プログラミング言語を4つの目的別にカテゴライズしました 用途 言語 組込み系・制御系 C/C++, Java, Python Web系 フロント:HTML(5), JS バック:PHP, Ruby, Python, C#, SQL 業務系 Java, C/C#, SQL スマホアプリ iPhone:Swift, Objective-C, SQL Android:Java, SQL • 整理も一種のメタ思考 • 用途別にまとめると以下の様な感じ
  19. 19. © 2019 M&S Advisory 5.まとめ なぜ 何を どのように • メタ思考とは一つ上の視点から考えること ×:仕様書通り・言われた通り作る 〇:何を作るのか?なぜ作るのか?を一度考えてみる • 身近なこと・過去に経験したことを抽象化して 知識として蓄えておくと(多分)仕事が少し楽になる
  20. 20. © 2019 M&S Advisory 参考文献 • 本資料の作成にあたり 右の書籍のフレームワーク(考え方) を参考にさせて頂きました • メタ思考のトレーニングをしたい人や 他の事例を知りたい人は読んでみてください 引用:PHP研究所

×