「プログラミングとロジカルシンキングが一気にわかる本」完読

プログラミングとロジカルシンキングが一気にわかる本を読んだので,まとめた.

「プログラミング」と「ロジカルシンキング」の共通点

プログラミング思考:「今やっている仕事を自動化するとしたらどうやるか」を考えること
⇒ 仕事の効率化,ミス削減,共同作業ができる

プログラミング思考ができていない人は,
「本来なら簡単なものを難しく考えてしまっている」特徴がある.

料理のような題材からでもプログラミング思考は学べる

アンプラグド・プログラミング:コンピュータを使わずともプログラミングで考える方法論
unplugged programming.子供のプログラミング教育でも使われる
⇒ 情報活用能力の育成 ⇒ PCに意図した処理を行うように指示できる

techtarget.itmedia.co.jp

一歩引いた視点があるとプログラミング思考もロジカルシンキングも身につけられる

論理構成がしっかりしないと言いたいことが伝わらない.物事の段取りをどう考えるか学ぶこと

プログラミングにおいて「絶対的な正解」はない.状況に合わせて最適な方法を選ぶことが重要

仕事が捗るプログラミング思考

上司に質問ができないビジネスパーソンには厳しい時代になった
⇒ そのためにもプログラミング思考で段取りから考える

MECE(モレなくダブりなく)に考えると段取りのクオリティが上がる
MECE:Mutually Exclusive Collectively Exhaustive
事前にユーザが行う操作をMECEに考えて,その操作に対するプログラムの動きを全て想定しておく

MECEのコツはサンマ感とフレームワーク思考.MECEのために目的を押さえる.
サンマ感:抽象度のレベル感が異なるものを並べてしまうこと
フレームワーク:ビジネスの様々な側面で,何かを考える際のよく知らせたチェックリスト

www.insightnow.jp

汎用的なフレームワークを使いこなせると,仕事の出来る人に近づく.
別の切り口で考えられるかどうか.
以下,ビジネス・フレームワークの例

マーケティングの4P

販売側の視点

  • Product(製品|そのものにどんな特徴を持たせるかの製品設計)
  • Promotion(販促|どのような方法で世の中に知らせるかという告知方法)
  • Price(価格|定価いくらで販売するかという値付け)
  • Place(流通|どういうルートを通して販売するかの流通経路)

AIDMA

買い手の視点

  • Attention(注意|注意をひきつける)
  • Interest(興味|興味をかきたてる)
  • Desire(欲求|欲しいと思わせる)
  • Memory(記憶|記憶してもらう,思い出してもらう)
  • Action(購入~購入してもらう)

AISAS

AIDMAの変形版
ネットショッピングが当たり前になった時代.

  • Attention(注意|注意をひきつける)
  • Interest(興味|興味をかけたてる)
  • Search(検索|検索する)
  • Action(購入|購入する)
  • Share(共有|SNSや口コミサイトなどでシェアする)

ビジネス・フレームワークは時代とともに変わる

5W2H

  • Why
  • Who
  • What
  • When
  • Where
  • How
  • How much

まずはWhyとWhoから考えよう
誰をどんな状態にすることがゴールか?

ヒト・モノ・カネ・資源

ビジネスに必要な資源

Will・Can・Must

何かを考える際に

  • Will(やりたい)
  • Can(できる)
  • Must(やらなければ)

の3要素で考え,その交点こそが今やることだ.

BANT

営業中のお客様の見込みを判定するときに使う

  • Budget(予算|予算を持っているか)
  • Authority(権限|決定権限を持っているか)
  • Need(需要|ニーズ・需要があるか)
  • Timing(タイミング|今購入したいと思っているか)

意外と知らないロジックツリーの使い方

ロジックツリーはMECEな枠組みの階層構造 ⇒ モジュール化

ロジックツリーで全体像を整理すると相手に伝わる.俯瞰的に考える.メタ思考.

ロジックツリーで曖昧さを排除できる.

ロジックツリーでアイデアを創出.反対を考える.対概念法.

ロジックツリーでイノベーションを発見できる ⇒ ロジカルシンキングは楽して成果を上げる技術

わかりやすいコミュニケーションの技術

コミュニケーションで最初に気を付けるのは,論点を絞ること.
⇒ 今,ここで話すべきことをしっかり押さえる.

自分の弱点は素直に改善するのが本当にできる人

頭の中にビジュアルなイメージを持つ.
⇒ 「敷地」というキーワードで論点のズレを解消できる

わかりやすい話し方のためには「何の論点か」を最初に宣言
C言語の関数のプロトタイプ宣言みたいな.

結論を先に言うのは相手への最大の気遣い
目的を意識すること.相手の認知・思考負荷を下げること.

隠れた前提があると話が噛み合わないので要注意.すれ違いが生じる.
みんながみんな同じ常識を持つとは限らない.

大人数でロジカルシンキングが出来るとチームワークが高まる

ナマのプログラミングでわかるロジカルシンキングとの関連性

プログラミングのコードを見ることでロジカルシンキングとプログラミングの共通点がわかる

プログラミングはサンドイッチ構造.ifで挟まれている.関数で挟まれている.

Excelと同じようなIFによる論理構成でプログラミングが動く

プログラミングの中身もMECEになっている
nullチェックしているか.数値なのか文字列なのか.

プログラミングでも宣言話法を使う

大人数でプログラミングをするためには他人が読んでもわかりやすい工夫が必要
コメント.インデント.一歩引いた視点を.

プログラミングで研ぎ澄ます論理構成力

Excelの計算式を考えることで論理構成力を研ぎ澄ます

エラーにぶち当たって乗り越えるのが成長の秘訣

優先順位を付ける際は,「締切」以外の要素も考える
緊急度と優先度.条件付け.

コードを書きたいと思ったら,まずは検索

終わりに

プログラミング思考と論理思考の感覚を掴むのにいい感じの本.
特にフレームワーク思考は参考になった.
何かを決めるときの判断基準を知らないまま永遠と悩むことがあったので,
判断基準の一つとしてフレームワーク思考が役に立つと感じた.
この本では具体的なシーンに沿って,この場合はどのように考えるか?
切り口はどうするか?をしっかり説明してくれるので頭に入りやすい.