ソフトウェアエンジニア@横浜の徒然日記

SDGs,人と組織,ソフトウェア開発について知ったことを徒然なるままに発信

MENU

仕事で使える! Google Cloud Platform読了

なぜこの本を読んだのか?


GCPでインフラを
構築する機会が増えてきたが,
現状なんとなく使っている状況。
 
なので一度基礎的なこと体系的に
押さえておいたほうが良いと思ったため。
Kindle Unlimitedで探してみた。
書いているのはクラウドエースの
吉積さんだったのか。

第1章 Google Cloud Platformとは?
    ・Googleは15年以上のクラウドの経験
    ・世界最大級のコンピュータ
    ・グローバルネットワーク
    ・分散コンピューティングの革新を
   リードするソフトウェア
第2章 Google Cloud Platformの製品・サービス
    ・基本構成
    ・製品,サービス全体像
    ・コンピュート
    ・ストレージ
    ・Big Data
    ・APIサービス
    ・ネットワーク
    ・管理
    ・他のクラウドとの比較
    ・GCPの特徴とメリット
    ・GCPに足りないところ
第3章 Google Cloud Platformを使ってみる
    ・簡単登録.無料試用
    ・GCEでサーバを立ち上げ
    ・BigQueryでログ検索を試す
    ・Cloud Storageにバックアップ
    ・GAEで静的サーバを立ち上げる
第4章 やっぱり不安?セキュリティについて
    ・クラウドに対する漠然とした不安
    ・Googleにとってセキュリティは最優先事項
    ・Googleのセキュリティの特徴
    ・データの所有権
    ・独立した第三者による認定
    ・クラウドに何を預けるのを決めるのは自分自身
第5章 まとめ
    ・特にGCPを薦めたい5つのケース
    ・あえて挙げる「お薦めできない」ケース
    ・複数のクラウド利用におけるさらなるメリット
    ・サポート情報等
    ・最後に
 
 
本書からのメッセージ

・・・一人のユーザが一ヶ月
Googleのサービスを利用するのに
必要なエネルギーは自動車を1マイル
運転するよりも少ないとされています。
環境への負荷が考慮されているのか。
SDGsの文脈にも関わってきそうだ。
 
・・・Googleは自分自身で光ファイバー
ケーブルを太平洋の海底に敷説しています。
・・・通信会社と同じ土俵で
ネットワークインフラの投資に取り組んでいる。
・・・10万台のサーバがそれぞれ10Gbpsで
情報を交換できる。
 
通信会社も何らかの形でサービスレイヤと
一気通貫でサービスを提供していることを
考えると,ネットサービスは垂直統合の方向に
向かっているのかもしれないな。
 
GCPの特徴はなんといっても,
その上でGoogleのサービスが
動いているということに尽きる。
自社サービスを提供している
プラットフォームを公開する
というモデルはやはり面白い。
 
GCPの各拠点には,ゾーンが複数存在するので,
データセンター間の冗長化が必要な場合には
複数ゾーンにサーバを配置すると簡単に
冗長化が図れる。
なるほど。
 
GCPでは全てのリソースが
「プロジェクト」という枠組みで一元管理される。
プロジェクトには複数のGoogleアカウントを紐づけて
権限を設定することが可能。
またGoogleアカウントで個人を特定。
その個人に必要なプロジェクトの権限を与える。
グループ(ML)にも権限を与えることができる。
Googleアカウントと紐づくところが
シンプルで良いな。手軽に利用開始できる。
 
GCPの製品・サービスは
・コンピュート
    ・App Engine
    ・Compute Engine
    ・Container Engine
・ストレージ
    ・Cloud Storage
    ・Cloud Datastore
    ・Cloud SQL
    ・Cloud Bigtable
・ビッグデータ
    ・BigQuery
    ・Cloud Dataflow
    ・Cloud Dataproc
    ・Cloud Pub/Sub
・APIサービス
    ・Cloud Endpoints
    ・Translate API
    ・Prediction API
の4カテゴリに大別できる。
これらを使いこなせれば,
インフラ構築はなんとかなりそうだ。
 
AWS,Azureとの違いからGCPを
見たときに特徴的なのは,
提供しているGoogleが
・データセンタ自体を一から自前構築していること。
・自前の高速回線を持っていること
など。
自前で持っているのは
Googleだけなのか。
 
GCPの特徴
・グローバルネットワーク
・ライブマイグレーション
・ロードバランシング性能
・Preemptibleインスタンス
・課金について
・性能・コストパフォーマンス
・運用性・アカウント管理
・サポート
・ビッグデータ処理
これだけ見るとメリットの方が
デメリットよりもかなり大きいな。
 
他のクラウドサービスと比較して,
GCPの利用を薦めたい5つのケース。
 
1.ビッグデータを扱う場合
2.グローバルにサービスを展開する場合
3.短時間で大量の計算リソースが必要な場合
4.突発的なピークが発生するような場合
5.アーカイブや災害対策用のデータ保管
 
GCPの利用をお薦めできないケース
1.商用ライセンスが必須な場合
2.日本国内にデータを保持する必要がある場合
3.実勢・ドキュメントが多数必要である場合
利用にあたってのハードルは
「2.日本国内にデータを保持する必要がある場合」
ここにある気がするなあ・・・。
非論理的な理由と本書でもあるが,
心理的な抵抗感が大きそう。
 
この本を読んで考えたこと

ハンズオンは触りの部分だけだったので
もっと積極的にGCPを使ってみよう!
 
それにしても
「世界中の情報を整理する」
シンプルだが明確なこのビジョンが
強力な通信インフラを自前で用意し,
ハードからソフトまでを
一気通貫で提供する原動力になっているのだろうか?

Dart入門

読了。
次は公式ドキュメントに
一通り目を通すことにする。

Dart入門 - Dartの要点をつかむためのクイックツアー
 

なぜこの本を読んだのか。


  • Flutterで利用されている言語
  • FlutterはFuchsiaのUI,アプリケーションにも利用されている
動機はこの2点。
Flutterを使いこなす上で,
Dartの基礎を改めて理解しておく必要が
あると思ったため読了。
 
目次

1.Dartについて
    1.Dartとは何か?
    2.Dartでできること
    3.Dartの基本的な設計思想
    4.ストロングモード
    5.Dartの実績
    6.Dartの導入
    7.Dartのプログラムを実行する方法
2.Dartの文法
    1.コメント
    2.変数
    3.定数
    4.型
3.関数
    1.関数の宣言
    2.関数のパラメータ
    3.無名関数
    4.ブロック
    5.構文的クロージャ
4.演算子
    1.算術的演算子
    2.等価・比較演算子
    3.型演算子
    4.代入演算子
    5.論理演算子
    6.ビット演算子
    7.その他の演算子
    8.三項演算子
5.構文
    1.if-else構文
    2.forループ
    3.while構文
    4.switch文
    5.assert
    6.try-catch-finaly文
6.クラス
    1.プロパティ
    2.コンストラクタ
    3.メソッド
    4.クラスの継承
    5.ジェネリクス
7.パッケージ
    1.標準パッケージの利用
    2.ローカルで宣言したパッケージの使用
    3.代表的なパッケージの紹介
8.非同期処理
    1.async/await
9.様々な利用法
    1.サーバサイドDart
    2.Flutter
    3.AngularDart
 
この本からのメッセージ

Dartの基本的な設計思想
  • 純粋なオブジェクト指向言語
  • 静的型付き言語
静的型付き言語のため,
varを使用して変数の宣言と代入を同時に
行なったときには型推論が実行され,
自動的に変数の型が決定される。
 
Dartの関数の特徴
  • 関数を変数として扱うことが可能
  • 関数もオブジェクトのインスタンスとなる
  • JavaScriptと同様に無名関数の使用可
 
Dartの演算子・構文の特徴
  • 型変数や型チェックのための演算子を用意
  • Javaと異なり,例外の型チェックは行われない
  • asset構文で演算結果の評価が可能
        実行時にassertを有効にする。
        dart --enable-asserts main.dart
 
Dartのクラスの特徴
  • クラスとミックスインベースの継承を基本とする
  • ジェネリクス(総称型)をサポート
 
Dartのパッケージの特徴
  • Dart用パッケージマネージャ(pub)から外部
         外部モジュールをインポート可能。
 
Dartの非同期処理
  • 非同期処理の戻り値の型はFuture型となる
 
この本を読んで考えたこと

Dartの言語仕様は
割とシンプルで覚えやすい。
特に非同期処理のあたりが書きやすい。
 
かつサーバサイド,モバイルを
双方が書けるため便利。
 
Javaに似ている所があるため,
サーバサイド側でJavaメインで開発していた人が,
モバイルアプリケーションをつくることになった場合,
選択肢の一つとして考えると良いかなと思う。

ソフトウェアファースト読了

読了。

ソフトウェア・ファースト あらゆるビジネスを一変させる最強戦略

ソフトウェア・ファースト あらゆるビジネスを一変させる最強戦略

  • 作者:及川 卓也
  • 出版社/メーカー: 日経BP
  • 発売日: 2019/10/10
  • メディア: 単行本
 
なぜこの本を読んだのか。

エンジニアとプロダクトマネージャ。
どちらのキャリアを築くか迷っている自分。
 
そんな自分がこっそりロールモデルにしてる及川卓也さんの著書なので本書を手にした。
 
ビジネスの側面から見たときに,
ソフトウェア開発はどのようにあるべきか?
それを踏まえた上でキャリア形成をしたい。
 
目次

1章 ソフトウェア・ファースト
・サービス化する社会
・サービス化を支えるプロダクト開発手法の変化
・ソフトウェア・ファーストとは
 
2章 IT・ネットの20年戦争に負けた日本の課題と光明
・日本経済の没落とIT産業力の関係
・要因1:ITを「効率化の道具」と過小評価
・要因2:間違った「製造業信奉」から抜け出せない
・要因3:サービス設計〜運用面での誤解
・ITサービスで存在感を示すためのアイデア
 
3章 ソフトウェア・ファーストの実践に必要な変革
・DXの本質的な意味
・ポジション別に求められる意識の変化
・プロダクト企画のやり方を変える
・プロダクトの骨太の方針を決める
・リリース後の運用を最初から考える
・組織変革を並行して進める
 
4章 これからの「強い開発組織」を考える
・理想の体制を考える前に
・開発組織を整備するステップ
・エンジニアの採用難をどう乗り越えるか?
 
5章 ソフトウェア・ファーストなキャリアを築くには
・キャリア形成の「型」を知る
・将来のキャリアパスを考える
・生涯「ソフトウェアに携わる人」として成長する
 
この本から受け取ったメッセージ

冒頭のあたりで,ソフトウェアファーストの
意味が以下のように定義されている。
 
「ソフトウェアファーストとは,
IT(とそれを構成するソフトウェア)活用を
核として事業やプロダクト開発を
進めていく考え方です。」
 
その後日本がソフトウエアの開発力競争に
負けてしまった諸要因が記載されているが
根底にある要因はソフトウェアファーストの
考え方ができていなかった。
 
つまりソフトウェアを
「事業の核となるもの」でなく,
「事業に付随するもの」と
位置付けてしまったことにある。
 
ではソフトウェアファーストを実践させる
ためには何をすればよいか?
 
1.ユーザの感情に訴えるプロダクト開発
プロダクトが何を成し遂げたら
ユーザの課題を解決していると言えるのか?を考え抜く。
 
2.ビジネス/テクノロジー/クリエイティブが
三位一体となったプロダクト開発
そのためにITを手の内化する。
 
3.ITを手の内化するための組織変革
変革を主導する人材を
社内外から登用/採用し,
・デジタイゼーション(デジタル化)
・デジタライゼーション(デジタルデータを用いたプロセス)
・DX(ユーザーに新たな価値を提供する事業を生み出す)
の順番で組織変革を進める。
 
といったことを行う必要がある。
 
ではこれらを実践するために
開発組織はどうあるべきなのか?
 
1.プロダクト志向であること
開発組織も事業サイドと同様に
ユーザーに提供する価値を
最大化するためには何が必要か?
を考える組織に変わっていく必要がある。
 
2.開発の制御権を持っていること
重要なのは100%内製化を
目指すことではない。
・何を作るか
・どう作るか
この2つの制御権を保持し,
開発の全体を指揮することが重要。
 
また実装は機能,性能等のプロダクト品質に
直結するので,ここを外に出すことは
あり得ない。
 
3.適切な評価基準が設けられていること
メンバーシップ型雇用から
ジョブ型雇用へと変更を行い,
組織のミッションを主発点にして
各職種のジョブディスクリプションと
評価基準をつくる。
 
エンジニアの評価は
職能にあたるソフトウェア技術についての
フィードバックを与えられることから,
職能組織の上司をメインとするのが良い。
 
といった組織であること。
その組織の中ではどのようなキャリアパスが
想定されるか?
 
軸足をどの領域に置くかで,
目指す職種やリーダーシップを発揮すべき
対象が変わる。
  1. 技術の領域
  2. 人・組織の領域
  3. プロダクト・ビジネスの領域
どこに軸足を置くかを考えよう。
その際に重視するのは
内発的動機づけとなる。
 
この本を読んで考えたこと

まず自分自身が持つ2つの価値観を
変えることが必要だと感じた。
 
価値観1:ソフトウェアは事業の付随機能
「事業のためにソフトウェアがある」
自分の中にこの定義は揺るぎないもの
として存在する。
文言そのものは間違っていないのだが,
ソフトウェアの配置場所・捉え方を
間違えていた。
 
今までは,
中心に事業があって,周辺に機能として
営業・ソフトウェア・バックオフィス等が
並んで存在するような感じで捉えていた。
 
そうではなく,
中心にソフトウェアがあって,周辺に事業を
置く。そしてソフトウェアが事業に推進力を
与えるような感じに捉え直す必要がある。
 
どうやってこの価値観を変えていくか?
・・・まずは感度の高いソフトウェアの
ユーザになる。そしてソフトウェアの
応用的な使い方を考えるところから
始めよう。
 
価値観2:実装を軽視する
プログラマよりPMやコンサルの方が
収入高いんだからこのような価値観持っても
当然だろ‼️
・・・というグチはさておき,
実装の良し悪しがプロダクトの
競争力に即影響を及ぼすという
認識を持つ必要がある。
 
この価値観を変えるには,とにかく
実装する機会を増やしていくしかないか。
 
さて本題。
肝心の自分の軸足をどこに置くか問題。
 
自分は5年後どうなっていたいか?
「顧客に支持されるプロダクトを生みだす
会社組織をつくるお手伝いをする人」
(皿洗いでなく,皿洗いコンサルタント)
こんな感じをイメージしている。
 
そのためには
  • プロダクトの生みだし方
  • 会社組織のつくり方
に精通する必要がある。
 
そのために置くべき軸足は
  • プロダクト・ビジネスの領域
  • 人・組織の領域
この2つの領域となる。
どちらが中心となるかは状況にもよるので,
まずは「プロダクト・ビジネスの領域」に
軸足を置くことにしよう。
(但し実行は技術領域のベースを上げた後)

SDGs入門を読んだ

読了。
SDGs入門 (日経文庫)

SDGs入門 (日経文庫)

  • 作者:村上 芽,渡辺珠子
  • 出版社/メーカー: 日本経済新聞出版社
  • 発売日: 2019/06/15
  • メディア: 新書
 
なぜこの本を読んだのか?

「ハードウェアはソフトウェアのためにある。ソフトウェアはユーザエクスペリエンスのためにある。ユーザエクスペリエンスは顧客の感情を満たすためにある。」
と言う言葉を聞いたことがある。
 
では何のために顧客の感情を満たすのか?
顧客に焦点を当てるのは良い。
しかしその目的は何か?
納得できる理由はないものか?
 
プロダクトは仕事から生まれる。
仕事は社会的分業から生まれる。
 
故に社会が目指す方向性を理解すれば,
顧客の感情を満たす目的を得ることが
できるかもしれない。
そう考え本書を手に取った。
 
 
目次

第1章 まずはSDGsを理解しよう
  1. SDGsとは持続可能な世界のための17の目標
  2. SDGsが達成できないと,世界はどうなるのか
  3. ミレニアム開発目標(MDGs)からSDGsへ
  4. SDGs達成を誰が進めていくか 
第2章 SDGsとビジネスはどう結びついているのか
  1. 企業とSDGsの関係
  2. 若い人はなぜSDGsに関心があるのか
  3. EGSとSDGsはなぜ一緒に語られるのか
  4. 非上場企業にも広がるESG
第3章 SDGsに取り組むときのヒント
  1. まずは国連や,政府が提供しているツールを知る
  2. 会社の経営理念を確認しよう
第4章 SDGsにビジネスで貢献する
  1. 今ある取り組みからできることを考える
  2. 提案営業にSDGsを取り入れてみる
  3. 何故SDGsでは「誰一人取り残さない」のか
第5章 SDGsの取り組みテーマを選ぼう
  1. 複数のターゲットを組み合わせ,革新的な取り組みアイデアを生み出す
  2. 女性がますます活躍する社会をつくるには
  3. 教育と職業訓練で,チャンスを掴み取る
  4. ますます重要になる働く人の健康促進
  5. 誰もが住みやすいまちをつくる
  6. エネルギー利用に伴う環境負荷に取り組む
  7. 持続可能な消費を探る
  8. 海洋プラスチックごみは削減できるのか
  9. 森林や生態系を気候変動から守る
  10. 科学技術・イノベーションの創出
 
この本から受け取ったメッセージ

SDGsを日本語に訳すと
「持続可能な開発目標」となる。
 
将来の世代の欲求も満たしつつ,
現在の世代の欲求も満足させる。
そして誰一人取り残さない。
それが持続可能な開発である。
 
SDGsは世界が目指すゴールであり,
17個ある目標はそれぞれ相互に関係し合っている。
 
SDGsを達成するためには,
先進国も途上国も,
企業も政府も,
生産者も消費者も,
それぞれができることをやる必要がある。
その中でも企業が特に重要な役割を持つ。
 
SDGsを企業経営に組み込むと,
  1. 事業開発のヒントが得られる
  2. 人材獲得の武器になる
  3. コミニケーションツールとして使える
といった恩恵が受けることができる。
 
SDGsと企業活動を結びつける場合,
  • 事業からスタートして,SDGsの目標までストーリーを結んでいく方法
  • SDGsの目標からスタートして,長期・中期・短期で事業を定義していく方法
の2つのやり方がある。
 
この本を読んで考えたこと

何のために顧客の感情を満たすのか?
最初の問いに対する一定の回答は
得られたような気がする。
 
持続可能な社会をつくるには, 
生産と消費のスタイルを変える必要がある。
(つくる責任,つかう責任)
 
しかし顧客の感情を満たさなければ,
消費のスタイルは変えられない。
消費のスタイルを変えられなければ,
生産のスタイルは変えられない。
 
故に持続可能な社会をつくるには
まず顧客の感情を満たす必要がある。
といった感じだ。
 
またSDGsと社会の営みの関係を
考えてみた。
  • SDGs = 社会全体の目標
  • 消費   = 生活
  • 生産   = 消費のための手段
  • 労働   = 生産のための手段
  • 教育   = 労働のための手段
  • 環境   = 社会の営みの土台となるもの
 
SDGs17目標をこの分類で
カテゴリ分けしてみると,
 
消費と生産に関するもの
  • 2.飢餓をゼロに
  • 3.すべての人に健康と福祉を
  • 6.安全な水とトイレを世界中に
  • 7.エネルギーをみんなにそしてクリーンに
  • 9.産業と技術革新の基盤をつくろう
  • 11.住み続けられる街づくりを
  • 12.つくる責任つかう責任
 
労働と教育に関するもの
  • 4.質の高い教育をみんなに
  • 5.ジェンダー平等を実現しよう
  • 8.働きがいも経済成長も
 
環境に関するもの
  • 13.気候変動に具体的な対策を
  • 14.海の豊かさを守ろう
  • 15.陸の豊かさも守ろう
 
その他
  • 1.貧困をなくそう
  • 10.人や国の不平等をなくそう
  • 16.平和と公正をすべての人に
  • 17.パートナーシップで目標を達成しよう
といった感じになる。
 
自分の生業は
  • ソフトウェア開発
  • 人と組織の課題解決
この2つであるが,
どのようにSDGsに貢献するか?
 
まずは労働と教育の目標とターゲットに
着目することにしよう。

教養は人生をより豊かにするためのもの 〜人生の教養が身につく名言集〜

なぜ教養を身に付けるのか?
そのヒントが冒頭に記載されている。

私は教養とはそういうもの
だと考えています。
人生の彩を豊かに、
わくわく愉しくしてくれるもの。
・・・
「巨人の方に乗っているから、
遠くを見ることができる」
・・・
みなさんの辞書が豊かになるにしたがい,
人生を「図太く、賢く、面白く生きる知恵」も
蓄積されていくはずです。

自分の辞書が豊かになることで
認識できることが多くなる。
認識できることが多くなれば,
人生をより豊かなものにすることができる。

つまり教養を身に付けるのは
人生をより豊かにするためなのだ。

人生の教養が身につく名言集―――「図太く」「賢く」「面白く」 (三笠書房 電子書籍)

人生の教養が身につく名言集―――「図太く」「賢く」「面白く」 (三笠書房 電子書籍)

 

 目次

はじめに
1 人生について考えが深まる名言集
2 人間関係の心得を教えてくれる名言集
3 読むだけで「考える力」がつく名言集
4 より賢く生きるための名言集
5 「仕事の極意」を教えてくれる名言集
6 「生きる知恵」を教えてくれる名言集

人生について考えが深まる名言集

・不幸を遠ざける「考え方」をする
「この門をくぐる者は一切の希望を捨てよ」
神曲・地獄編(ダンテ・アリギエーリ)

・「偶然]を大切にする人を運がいいと呼ぶ
「すべての真の生とは出合いである」
我と汝・対話(マルティン・ブーバー)

・人生の楽しみは「喜怒哀楽の総量」
「人間死ぬまでは、幸運な人とは呼んでも幸福な人と申すのは差し控えねばなりません」
歴史(ヘロドトス)

・よく笑い、よく眠る。悩みの7割はそれで解決
「君たち人間ってのは、どうせ憐れなものじゃあるが、ただ一つだけ、こいつじつに強力な武器をもっているわけだよね。つまり笑いなんだ」
不思議な少年(マーク・トウェイン)

・生きがいー「今の自分ができること」をすること
「愚公山を移す」
列士

・二者択一の連続。それが人生
「過ぎてかえらぬ不幸を悔やむのは、さらに不幸を招く近道だ」
オセロー(ウィリアム・シェイクスピア)

・順調なときこそ「身の丈を知る」
「辛抱強さはよいものだが、それが順風満帆のときであればなおよい」
統治の書(ニザーム・アルムルク)

人間関係の心得を教えてくれる名言集

・誰もが、そこそこに善良で、そこそこにずる賢い
「不思議なものは数あるうちに、人間以上の不思議はない」
アンティゴネー(ソフォクレス)

・「会って別れて」をくり返すのが、人生
「去るものは追わず、来るものは拒まず」
尽心(孟子)

・人を「鏡」にすると、自分が見えてくる
「困難なことは、自分自身を知ること。容易なことは、他人に忠告すること」
ギリシア哲学者列伝(タレスの名言)

・「言わなくてもわかる」は、あり得ない
「世の中のいざこざの因となるのは、奸策や悪意よりも、むしろ誤解や怠慢だね」
若きウェルテルの悩み(ゲーテ)

・善人より、じつは悪人のほうが対処しやすい
「悪人とはゲームができるが、善人とはゲームができない」
悪人礼賛(中野好夫)

・人生を「面白がる」
「天知る、地知る、我知る、子知る」
後漢書(はんよう)

 読むだけで「考える力」がつく名言集

・「本当にそうだろうか?」この一言で考えが深くなる
「ラディカルであることは、物事を根本において把握することである」
ヘーゲル法哲学批判序説(カール・マルクス)

・「国語」で考えるな。「算数」で考えろ
手に入れたデータをすべて使わないで、その一部だけに基づいて決断を下す裁判官があるとしたら、われわれはどんな評価を下すだろうか。
大陸と海洋の起源(アルフレート・ヴェーゲナー)

・「何が枝葉で、何が幹か」を考えよう
「古典を読んでわからなければ、自分をアホだと思いなさい。新著を読んでわからなければ、著者をアホだと思いなさい。」
(高坂正堯)

・「見えないことが見えてくる」縦横思考法
人間は本質的に無知で、獲得という手段を通じて知識を得る。
歴史叙説(イブン・ハルドゥーン)

・決められないのは、考えきってないから
「それ銅をもって鏡となせば、もって衣冠を正すべし。古をもって鏡となせば、もって興替(国の行く末)を知るべし。人をもって鏡となせば、もって得失を明らかにすべし。朕つねにこの三鏡を保ち、もって己の過ちを防ぐ」
(李正民)

・読書の質は「アウトプット」で決まる
自分の頭で考え、自分の言葉で自分の意見を表明できるようになるため。そのために勉強するのです。
(山本義隆)

・大切なことは「世界を変えること」
哲学者たちは、世界をさまざまに解釈したにすぎない。しかし、大切なことはそれを変えることである。
フォイエルバッハに関するテーゼ(カール・マルクス)

より賢く生きるための名言集

・人生後半、やりたいことがある人は本当に強い
「私のように、教育を受けていない、孤児院で育った無学な女でも、まだ一日に一つくらいの花の名前を新しく覚えることはできる」
(ココ・シャネル)

・偉人と「会って話を聞く」
私が人生を知ったのは、人と接したからでなく、本と接したからだ。
(アナトール・フランス)

・ゼロから勉強しない。巨人の肩を借りる。
「巨人の方に乗っているから、遠くを見ることができる」
(ベルナール・ド・シャルトル)

・思考力を鍛える「1行の読み方」
「良書の要約というものはすべて愚劣なものだ」
エセー(ミシェル・ド・モンテーニュ)

・経験の差が結局、人生の差
「年齢の傲慢さは許しがたい。若い人に教えを乞うべき」
(エドマンド・バーク)

・人は「旅から学ぶ」
「青年時代の残りを旅に使う。世間という大きな書物から学ぶ」
方法序説(ルネ・デカルト)

・ひとつ上の「旅の愉しみ方」
「真の発見の旅とは、新しい風景を求めることでなく、新しいものの見方を得ることだ」
失われた時を求めて(マルセル・プルースト)

・迷ったら、やってみる
一期一会
茶湯一会集(井伊直弼)

 「仕事の極意」を教えてくれる名言集

・仕事は人生を楽しめてこそ、がんばれる
「酒を飲め、それこそ永遠の命だ、また青春の唯一の効果だ。花と酒、君も浮かれる春の季節に、楽しめ一瞬を、それこそ真の人生だ」
ルバイヤート(ウマル・ハイヤーム)

・腹落ちするまで考え抜く。それがビジネス。
「ゆっくり急げ」
(古代ローマのことわざ)

・人はあなたの「言葉」でなく「行動」を見ている
「ここがロドス島だ、ここで跳べ」
イソップ物語

・相手に多くを期待しない
「世界は偉人たちの水準で生きることはできない」
金枝編(ジェームズ・ジョージ・フレイザー)

・仕事は、怒ったら負け
「力強いとは、相手を倒すことではない。怒って当然というときに自制できる力をもっていること」
(ムハンマド)

・強さとは、多様性を受け入れるか、どうか
「自家薬籠中のもの」
(荻仁傑)

・撤退するのも、一つの能力
「窮鼠、猫を噛む」
塩鉄論・招聖(桓寛)

・先延ばしにした瞬間、運命の女神は逃げていく
「運命が何を考えているのかは、誰にもわからないものだし、どういうときに顔を出すのかもわからないのだから、運命が微笑むのは誰だって期待できるのである」
政略論(ニッコロ・マキャベリ)

・リーダーに必要なのは「強い思い」と「算数」
「道徳なき経済は犯罪であり、経済なき道徳は寝言である」
二宮翁夜話(二宮尊徳)

「生きる知恵」を教えてくれる名言集

・人生の伴侶とは「自分が泳ぐ川」のようなもの
「あの人の肉体は、私が飛び込んで泳いだ知恵の流れる川。この人の人格は、私がよじ登った本」
イギリス人の患者(マイケル・オンダーチェ)

・恋愛は人間力を鍛えるまたとないチャンス
「人間は恋をしているときには、ほかのいかなるときよりも、じっとよく耐える。つまり、すべてのことを甘受するのである」
(フリードリヒ・ニーチェ)

・人間はそもそも孤独。それを忘れると弱くなる。
「生せじも独りなり、死するも独りなり、されば人とともに住するも独りなり。そひはつべき人なきゆえなり」
(一遍上人)

・還暦過ぎて生きているのはまさに文明の力。
「還暦すぎれば人工生命体」
生物学的文明論(本川達雄)

・人生の閉じ方を考えると、新しい人生が見えてくる。
「ここから、わたしひとりでまいります」
ナルニア国物語 朝びらき丸 東の海へ(C・S・ルイス)

・人生におけるお金は、人生の養分。
「金銭は肥料のようなものであって、ばらまかなければ役に立たない」
ベーコン随想録(フランシス・ベーコン)

・自然と頭を使う。自然と体を使う。
「鉄が使用せずして錆び、水がくさり、また寒中に凍るように、才能も用いずしては損なわれる」
レオナルド・ダ・ヴィンチの手記(レオナルド・ダ・ヴィンチ)

・ほろ酔い程度の酒は、人生において大いに興趣がある。
「花は半開を看、酒は微酔に飲む。この中に大いに佳趣あり」
菜根譚(洪自誠)

React+FireBase+DirelogFlowでチャットBOTをつくる

XX予約システムにチャットBOTがあると
何かと便利かと思いお試しで
つくってみることにした。
今回はまずWeb/SPのみつくり,
MobileアプリとVRアプリは後日。

成果物

GitHub
https://github.com/fieldstone2000/simplechat


画面イメージ

f:id:fieldstone:20190907092850p:plain

画面イメージ

構成

f:id:fieldstone:20190907092943p:plain

構成

開発手順

1.DialogFlowの環境を用意する

qiita.com

このサイトを参考にそのまま環境を用意。
やったことは
・Agentをつくる
・Entityをつくる
・Intentをつくる
の3点。
Try It Nowで応答が変えることを確認。

2.ReactとFireBaseと環境を用意する

qiita.com

このサイトを参考に環境を構築。
バージョンは
node→v11.2.0
npm→6.8.0
でIDEはVSCodeを利用。

・node.js,npmのインストール
・Reactプロジェクト作成
・Reactプロジェクトの実行
・Firebaseのプロジェクト作成
・Firebaseの設定
・Firebaseへデプロイ
・MaterialUIのインストール
・コンポーネント作成
・チャットアプリ実行

ここまでやればチャットは行うことは可能。

3.ReactとDialogFlowとFireBaseをつなぐ

ここからチャットのBOT化を行う。
ReactとDialogFlowをつなぐところは
 

api-ai-javascript - npm

を利用。

チャットで入力したテキストを
以下の順番で処理する。
・FireBaseに送る
・DialogFlowに送る
・DialogFlowからレスポンスを受け取る
・レスポンスをFireBaseに送る


AppChat.jsより一部抜粋

---------------------------------------------
//Sendボタン実行時のイベント

onButtonClick() {
 if(this.state.user_name == "") {
  alert('user_name empty')
  return
 } else if(this.state.text == "") {
 alert('text empty')
 return
 }
 //firebaseにメッセージを登録する
 messagesRef.push({
  "user_name" : this.state.user_name,
 "text" : this.state.text,
 })
 //dialogflowにメッセージを送信する
 const client = new ApiAiClient({accessToken: 'xxxx'})
 .textRequest(this.state.text).then((response) =>
  {console.log(response);
  //レスポンスをfirebaseに登録する。
 messagesRef.push({
  "user_name" : "Bot",
  "text" : response.result.fulfillment.speech,
  })
 })
 .catch((error) =>
  {console.log(error)})
}
---------------------------------------------
今回はここまで。

 

さあ交渉しよう 〜武器としての交渉思考〜

「言葉こそが最強の武器である」
最後はこう締めくくられている。
言葉に磨きをかけて,交渉しよう。

武器としての交渉思考 (星海社新書)

武器としての交渉思考 (星海社新書)

 

目次

・なぜ,いま交渉について学ぶ必要があるのか?
・大切なのはロマンとソロバン
・自分の立場でなく,相手の利害に焦点を当てる
・バトナは最強の武器
・アンカリングと譲歩を使いこなせ
・非合理的な人間とどう向き合うか?
・自分自身の宿題をやろう

なぜ,いま交渉について学ぶ必要があるのか?

革命を起こすには,大きな権力を握る
大人と対等に交渉して,合意を結び,
具体的なアクションにつなげて
いかなければならない。

革命というと仰々しいが,
何か事を成すにあたっては,
交渉→合意→アクションのプロセスが
必ず必要だということ。
要するに「交渉しないと始まらない」
という訳だ。

大切なのはロマンとソロバン

やりたいことがある人は,
お金を集める能力を高めることが重要になる。

 これは素晴らしい事業だ(ロマン)
→儲からなければ事業が続かない。

これは儲かる事業だ(ソロバン)
→何のために事業やってるのか。

故にロマンとソロバンの両方が必要。
ロマンとソロバンをつなぐのが交渉。
そして交渉の前提条件。

相手が儲からない商売は
成り立たない。 

自分の立場でなく,相手の利害に焦点を当てる

「自分は困っている」と主張すれば,
相手は聞いてくれるはず。・・・
それは「子供の論理」。

 相手にメリットのあることを
提示しないと合意には至らない。

「相手が欲しがっているものはなんなのか?」
「相手が妥協してもいいと思っているのは何なのか?」
それらを正確に見極めて,分析することが大切。

 相手の利害に関する情報を
どれだけ集められるか。
交渉の成否はそこで大方決まる。

バトナは最強の武器

交渉において一番初めにやらなければ
ならないのはできる限りたくさんの
選択肢を持つこと。
具体的には目の前の交渉相手と
合意する以外の選択肢を多く持つ。

賃金交渉で利用すると良し。
転職先候補を確保しておく。
副業での収入を確保しておくなど。
そこしか選択肢がない状態は不利。
逆に相手には選択の余地を与えない。

 自分のことだとは思わずに
代理人として交渉を頼まれた
とマインドを切り替えてみる

交渉にあたっては
「他人事」と捉えることで
冷静になることができる。
このマインド切り替えは重要。

バトナは最強の武器

アンカリングとはなにか。

 最初の提示条件で
交渉相手の認識を
コントロールすること。
「提示されるとそれを基準に
考えてしまう」という
人間心理を利用。

最初にこちらから
条件を出すということか。

アンカリングの3条件は高い目標,
現実的,説明が可能であること。

賃金交渉のケースで考えると。
・高い金額
・不可能ではない
・市場からすると適正
といったところか。

相手側が出してくる条件は
まずは「一切無視」ぐらいに
考えておくとよい。 

相手もアンカリングしてくる。
要注意。

次に譲歩。

交渉相手を対立する相手と
捉えるのでなく,ある意味で
ともに同じパズルを解いている仲間
と考えてみる。・・・
相手に取って価値が高いが,
自分に取って価値が低いものを
譲歩する。

相手の
・望むもの
・望まないもの
・バトナ
自分の
・望むもの
・望まないもの
・バトナ
これを分析して,
譲歩できるところは譲歩して,
合意する・・・。
交渉は情報を元に加工する
クリエイティブな作業ということだ。

非合理的な人間とどう向き合うか?

非合理な主張をするタイプは
大きく分けて6タイプいます。
1:「価値観と共感」を求める人
2:「ラポール」を重視する人
3:「自律的決定」にこだわる人
4:「重要感」を重んじる人
5:「ランク主義者」の人
6:「動物的な反応」をする人

各タイプとの交渉方法は
それぞれ異なる。しかし
共通していえることは,
「自分のことではなく,相手を分析する」
相手の利害はどこにあるのか?
それを把握することが交渉の全てである。

自分自身の宿題をやろう

何か大きなことを成そうと
考えたならば,自分の企てを
「プロジェクトX化」
することが大切なのです。 

本当に社会を組織を動かしたいならば,
まず自分が変えたいと思う
社会や組織のネットワーク構造を
熟知することです。

・自分の企ての目的を明確にする。
・次に対象のネットワークの楔を見つける。
・交渉で楔に小さなネットワークをつくる。
この繰り返しにより,
社会や組織に影響を及ぼすことができる。

他人の宿題を解くことを止めて,
自分の宿題を解こう。
さて自分の企ては・・・。