まぁ、つまらないものですが

エンジニニャーの気ままな技術ブログ、日々のログを残してゆきます。

DevLove #201に行ってきました

"ともかく急げ! 汽笛のなりひびくからには時は今なのだ!"

DevLOVE | Doorkeeper

技術書典3で気になっていたKAIZEN JOURNEYをイッキ読みして「自分もこうなりたい!」と思っているときに知ったDevLoveという勉強会。
#201という特別な回として様々な越境者 これからする人が集まって様々な知見を話すということで行ってきました。

ここから下のその時備忘録がてらのメモです。誤字脱字あるけど気にしない


始まりの始まり: 基調講演

新井さん

越境とは何なんだろう?

人間は知らない間に限界を作っている 誰がそれを超えたとき超えれる人が増える

境界は

  • 社会コミュニティ
  • 時間
  • 約束

とかいろいろある 「「わからない」は答えではなく「問い」 どこまでも考え続ける」

どうやって生まれたか?
どうやって存在している

科学

どうして生まれた
どうした存在する

哲学

生活とか仕事生きる自分

自分が思うことは自分以外できない

CRSS POINT

「それであなたは何をしている人なんですか?」
→ わからない

私(新井氏)が思ったこと
→ 「エンジニアが生き生きと働けるところに」

企業文化が大切

  • 毎月部署誕生会
  • 焼き肉メゾット
  • 高級なものを食う
  • 会社の生みの親の塾「宮本塾」
  • 会社の手紙
  • 上司評価(360度評価)
  • 経営会議に血判状
    • アジャイル推進するために
    • 組織図煮出してほしい
    • ホワイトボード
  • 有償研修の開催
  • 会社見学ツアー

というのが僕が妄想からやったこと
いろいろとやった結果これが越境だったのでは

本人は意識してない ただ、結果がそうなった

なぜ八百屋の親父は元気に働いているのか

「われわれはなぜいきいきに働けていないのか」

お客様からのFBが早い

「越境は楽しい」
地獄を一回見るといろんなことが愛おしく感じる
「遺伝子のスイッチ」
考え抜いて開き直る

坂の上の坂 生存戦略 「1/100 * 1/100 * 1/100」はユニーク

## 「働くために生きるのか?生きるために働くのか?」

「それであなたは何をしている人なんですか?」

関係性が本物ならいくら時間が多糖が関係は同じ

「アンテナ感度を高めていろんなものを受信するのだ!」

Can we change the world


第1停車駅: 毎日が越境だ! エンジニアの学習と成長

ギルドワークス株式会社 取締 増田 さん

Special Thanks: http://learningpatterns.sfc.keio.ac.jp/No0.html

## エンジニアの学習と成長 ソフトウェア開発者として
中心はプログラミング
プログラミング脳を開けたい

新しい技術を追うのも一つ出し枯れた技術を使いこなすのも一つの道

自分は分析設計を選んだ

  • Modularity
  • 型によるモジュール

私の越境

最初はエンジニアじゃなかった

とんでもない状態 アンチパターンの見本市
何をしても良かったからある意味イキイキしていた

越境への3つのマインド

毎日のちいさな変化への気付き

周りの変化、少し前の自分への変化の気づきが大切

昨日と同じ、明日も同じなことはない
「昨日は変わった 明日はもっと変わる」

ビジョンという「思い」

妄想は楽しい

自分の道

道は一つではないかもしれないが自分で問らを開けるしかない
ただ力むのではなく自然に思うがままに開けていこう
こうあるべきはない 自分らしく成長を続けよう

いろんな自分らしさが集まって行くのが楽しいよ

9つの絵強スキル

古い設計から解き放つ4つの言葉

  • インクリメンタルな設計
    • 対)アップフロント
    • 最初から良い設計は見つからない
    • コレで設計ということはない
    • ザクッと設計
      • 動かしてフィードバック
      • 書いてみて
      • 改善ネタは見つかったら実験する
      • 毎日が設計
      • 自分がアップフロントの設計に囚われている事を自覚する
  • ビジネスルール
    • 業務アプリの複雑さ
    • 事業運営が複雑なことの反映
    • システムの構成用としてビジネスルールを独立させると新たなシステム開発の道筋が見えてくる
  • 型によるモジュール化
  • ソースコード as ドキュメント

「だいたい知ってる」「一応できる」この壁を乗り越える5つの学習パターン

  • 量が質を生む
    • 大量の情報を凝縮すると理解や施行の日役が起きる
    • 積読事によってアクセスしやすくなる いいぞ積んどけ
    • 壁を乗り越えるために大量の情報をインプットする
    • 失敗料をふやせ
  • 広げながら掘り下げる
    • 深く早く掘るには広げたほうがいい
  • 鳥の目 虫の目
    • 俯瞰と詳細を繰り返す
  • 隠れた関係性から学ぶ
    • 見えていなかった関係性に気づくときにそれがブレイクスルーの瞬間
    • 起こすために「広げながら掘り下げる」「鳥の目虫の目を繰り返す」「質を量で生む」
  • 三日坊主を繰り返す
    • 継続はむづかしい
    • 飽きたら別のことをやる
    • 続かない事を下卑することはない
    • みんなで来てない
    • 思いついたら再開すりゃええ

第2停車駅: ダウンシフトという越境

とみたちひろ(秋葉ちひろ) さん

最近は日本すごろくの旅をしてる流浪のデザイナー

ライフワークの見直し

ライスワークも見直すべきでは?

受託案件の違和感

  • 1件1件に対する深い気持ち
  • 気持ちに対する対価への違和感
    • 気持ちに対しては気持ちが欲しかった
  • やりたくないことはやりたくない
    • 気分が乗らないときにそのことは考えれない
    • 納期がある仕事はやりたくない

→ 実物・実体験のない世界
-----→ 受託開発を物々交換へ 「気持ち」

ダウンシフトとは

過度な出世競争や長時間労働、物質主義的、唯物的な生活環境を日常から排し、よりゆとりのあるストレスの少ない生活に切り替える生活態度の劇的な変化

地球規模の節約

パーマカルチャー

  • ビル・モリソン 「世界中を食べれる森に使用
  • 自然の生態系をお手本にした営み
  • 持ち込まない持ち出さない

「地球で生きることの覚悟と責任」

もののダウンシフト

百姓はそもそも百の事ができる人たち
百姓はめっちゃ越境してる

ただ百一姓(自分が得意なこと)も大切に

「やりたくないことはやらないという選択肢」 「消費からの脱却」


第3停車駅: ソフトウェアアーキテクチャの変遷と再構成に関する一考察

tis株式会社 川島氏

はじめの基礎要素

  • フロントエンド VS バックエンド
  • サーバーサイド VS ネイティブサイド

メインフレーム時代はCliantは与えられたデータを表示するだけ サーバーがデータと処理をする

C/Sシステム時代は表示やデーだ取り出しもCliantでやってサーバーはでt−亜だけ

3層C/S Cliantは表示のみサーバーはフロントエンドとバックエンドをやるように

J2EE フロントエンドとバックエンドでサーバーを分ける Cliantは表示するだけきれいっちゃきれい

Ajax時代 Cliantでフロントエンド Serverもフロントエンドをやり更にバックエンドもやる

RIA CliantでフロントエンドをServerはバックエンド みんな死んだ

スマホ Cliantがフロントエンド サーバーはバックエンドをやる

SPAC Ciantがフロントエンド サーバーはバックエンドをやる

そして現代

サーバーサイドでHTMLをレンダリングする時代は終わったのでは

時代背景

xTechは予算が付きやすくてありがたいね

  • レガシーなシステムにAPIが生えてきた
  • APIを使って多くのアプリケーションを早く作るニーズ
  • レガシーブラウザの死
  • プログラマとデザイナー乗っ分業

お硬いところもなにかやらねばならないという感じになってきた

Monolithの限界点

限界はそこかしこに来ている

フロントエンドとバックエンドのN対Mの時代
要求される知識も多すぎる
* HTML CSS * クライアントとサーバーサイドのセキュリティ * ブラウザの違い * とか

みんなで来て当たり前という風潮

新3層 アーキテクチャ

  • API server
  • BFF
  • ブラウザ/ネイティブのフロントエンドアプリ

体制が組みやすい

RestFul API

HTMLのためにJSON返すだけだとだめ Zalando RESTFul APIガイドラインがよくできている 翻訳したよ

API後方互換

stateless Backend

  • 入力 完了 確認までの入力でデータ
  • 検索条件
  • 閲覧履歴
  • 認証状態 とか
    認証さえなんとかなれば良さそう

認証状態をAPIサーバーの外に持つ(Bouncer)

デザインとロジックの分離

Pure HTMLに近いテンプレートエンジンを使っても解決はしなかった

デザインもコンポーネント思考になってきた

BFF

  • ルーティング
  • クライアントステート
  • フロントエンドロジックAPI呼び出しの最適化

クライアントステとの永続化するには

フロントエンドロジック

Redux-saga
React Componentのレイヤで非同期イベント処理をせずsagaが逝ってに担う


待ち合わせ「越境者たちの集い」

「未来を良くしたいけどやり方がわからない」

2018年 年が明けて2/7にKaizen Journeyが発刊
チームに別れて企画計画している

なぜこの話をしてるのか

いろいろ発信してたらみんな暑苦しい からその有り余る情熱で「越境宣言」を作っていった

越境宣言 Version 0.1

  • 希望と行動の連鎖
  • 勇気を持って踏み出す
  • 越境ネイティブ
  • とかとか

そのあとみんなで越境きっぷを作りました。


始まりの終わり: 越境ジャーニー

市谷 さん

ギルドワークス立ち上げてすでに4年

仮説検証とプロダクト開発の実践と確率 が到達点

越境とは玉ねぎの構造 = ”越境オニオン”

組織にいろんな問題がある 大体は似てる 組織の形はこれでいいのか

それ個人で判断する?

  • 誰のための判断?
    • 会社 上司という枕詞をつけるとき何を思い浮かべている?
    • 自分自身も組織の一員 自分の判断は出来てるのか
  • 多くの組織において歴然とピラミッド型
    • 構想する人とついていく人
  • 無駄な時間無駄なすれ違い 無駄なものづくり
    • 消費としてのプロダクト開発
    • 生産としてのプロダクト開発

問が次の問を連れてくる

なぜ組織のままではだめなのか?
- 組織を大きくしなけれ場ばならない幻想 - 人と人の関係性はコレで良いのか? - マウントの取り合い - Take and take, givi and take - 人の時を思えない

「我々は何をしたいのか」

価値観に向き合おう

人が手に入れた価値観 解釈とその理解が人との関係をより良くする

ビジネスの世界では幼稚扱いされて無視されてきた

有りたい価値観ですべての状況を見直す

「いい感じの状況を作る」

エモい価値観を人と人の間に取り戻す

  • 遭遇 があらゆる可能性の厳選
  • 応援
  • 信頼
  • 共創

他人を周回遅れにしろ

早く行けるなら一人で。

「継承によって時を超える」

「楽しい ジャニーを!」


感想

とても濃密な数時間でした。
濃密すぎて後半にはクタクタになってました。
いろんな人達が越境のための心構えやツールを熱く語ってくださいました。気分はまるで終盤の武器屋にいきなり入ったレベル5のプレイヤーです。
自分もいつか越境した人間として立てるように一歩一歩地平線に向かって歩いていこうと思います。

クタクタな状態で食べる天丼とビールは美味しかった

相互リンク

  • 技術ブログ:ヤモト.tvp
  • 友人氏の技術ブログ 数学ガチ勢がエンジニアになっていく奮闘記