狠狠撸

狠狠撸Share a Scribd company logo
なぜエンジニアは
パフォーマンス計測しないのか
1
Builderscon 2018
2018/09/08
Hiroshi Mimori?三森?裕史 @mogetta
2
やあ (??ω?‵)?
ようこそ、バーボンハウスへ。?
このテキーラはサービスだから、まず飲んで落ち着いて欲しい。?
?
うん、「また」なんだ。済まない。?
仏の顔もって?うしね、謝って許してもらおうとも思っていない。?
?
でも、このスレタイを?たとき、君は、きっと?葉では?い表せない?
「ときめき」みたいなものを感じてくれたと思う。?
殺伐とした世の中で、そういう気持ちを忘れないで欲しい?
そう思って、このスレを?てたんだ。?
?
じゃあ、注?を聞こうか。
3
懐かしいって思った?
今?のトークのメインターゲット
だからな?
4
5
ネタ被ってる。
6
本セッションの趣旨
1.世の中のガジェットを駆使して、「?分」を測る。
測ったデータをうまく持ち寄って解析しよう!
2.じゃあ、どういう?活をすると、?活の質があがるのか?
3.そもそも、やってみてどうだったか?
7
? ??の?間が連続して計測している内容なので、
科学的な正確性はないです。
? コードの話は期待しないで。
? 当たり前ですが、サーバーのパフォーマンス計測
の話はしません。
8
本?の流れ
- 動機
- ガジェット紹介?計測?法
- コード周りとか
- ABテスト
- 改善施策
9
先に結果から
体重??72kg -> 65kg
体脂肪率 17% -> 12%
平均集中時間?4h30m -> 5h15m
Gobe2によるストレス指数?減少
コミット数 ほぼ0から?体毎?コミット
10
11
ストレス値の下降
GOBE2というデバイスから取得
12
??紹介
?36歳?独??
?フロント寄りのエンジニア
?現職ではPythonを利?した
?動テストやデバッグ補助
?ツールの作成が業務
13
普通の??紹介ではなんなので
体重7年分のログに合わせてやっ
てきたこと紹介します。
14
15
ガラケーとかスマホ
のパチンコアプリのアプリ側担当。
会社の近くにジムがあったため、
体重の推移も穏やか
2011/10 - 2013/10
16
転職
AngularJSを利?した
ソーシャルゲームの
フロントエンド担当
すぐデスマーチ
2013/10 - 2015/02
17
某社でベトナムの某社と組んで
世界発信するぞ!と誘いを受け転職
フルスクラッチで3,4回作り直し
を繰り返したが
最終的にお蔵?りするという不遇の
プロジェクトCocos2dxでUI担当
2015/02 - 2016/05
18
2016/06 - 2016/08
会社をクビになり
無職?活。
19
2016/10 - 2017/08
フリーランス?活。
忙しさから不摂?
UnityのUIやCI
gitおじさん業に勤しむ
20
2017/09 - 現在
今の会社に所属
順調かと思いき
や、、、
21
元旦に振られる
22
7年のログから?えて
くる?分??の傾向
? 仕事が忙しくなると太る
? プライベートが不安定になると太る
? 典型的なストレスによって太る?間(痩せる?もいますね。)
? 結局、リバウンドを繰り返している
? 「ダイエットに失敗し続けている」状態
23
年齢を増すごとに無気?になるのを感じる
肩こり
脂肪増
仕事以外でコードが書けない
??の課題増える
24
科学的に解説してるサイトがあった
? ?に話したり、質問してもらうことで?
?を再確?するらしい
? 科学の?ってすげー
? なんとか?ち直る。(いろいろ相談に
乗ってくれた?々ありがとう
? しかし、マイナスからゼロになった状態。
25
ここでなんとかしない
と??が終わる。
? ここで踏ん張ってく改善しないと、技術的負債ならぬ、
? ??そのものの負債によって潰れるという謎の焦燥感が?まれる
? やる気を取り戻すとか、失恋、?ち直る、科学的などでググる
https://yuchrszk.blogspot.com/2016/12/blog-post_19.html
26
やる気出ない問題も、
科学的アプローチで対処できる
のでは?
27
改善ターゲットをいかに設定
仕事外でコードを書く習慣を?につける。
仕事に集中できる環境を整える。
無理をしなくても体脂肪増を抑えられる?活
28
測定する
29
Withings
Wifi Body
Scale
いわゆる体重計。Wifi 対応。
wifi経由で専?のサービスに保存
IFTTTに対応してるので
体重を測ったらTweetする等できる。
20000円
30
Withings
Activité
腕時計型のガジェット、歩数管理と
睡眠時間管理、起床時の
振動サポート等がある。
2015年当時39800円
31
Withings Sleep
布団やマットレスの下に敷い
て使う睡眠の質を測る装置。
いびき等も検知する。
IFTTT対応!
https://health.nokia.com/jp/ja/sleep
14990円
HEALBE GOBE2
腕時計型のガジェット、歩数管
理と睡眠時間管理、起床時の振
動サポート等がある。
https://gobe.jp/
32
レンタル ?2000円
33
JINS MEME
集中?や姿勢を測る
?そのものを計測してるの
ではなく
筋電位を利?している。
https://jins-meme.com/ja/
度付き 47800円
くらい
34
Spire
呼吸を測ってくれるガジェット
回数等から状態を教えてくれる
今緊張してるか、集中してるか
https://spire.io/
13800円
35
Jabra elite sport
運動中に?拍数を測る
声で適切な?拍数を教えてくれる
https://www.jabra.jp/sports-headphones/jabra-elite-sport
30370円
36
イラッとボタン
AWS?IoT?Buttonを使っ
てイラッとしたときにイラッ
としたときに押すことでイラ
イラを計測するボタン。
(あまり使わず…)
2500円
37
ZOZOスーツ
体の?きさを測ってくれる。
ダイエットの進捗が可視化で
きて良い。
https://jins-meme.com/ja/
0円
38
39
40
体重
体脂肪
睡眠時間
起床時間
睡眠の質
ストレス
?分量
呼吸の状態
集中した時間
歩数
測定項??覧
41
全てを集約していく
42
43
ストレスを測る
最近の研究で、?拍変動がストレスを割と正確に反映している。
ということがわかってきた。
先程紹介したGOBE2ではその?拍変動を検知して、
独?のストレス指数を算出してくれる。
GOBE2のWebページはきれいなSPAだったのでデータを拝借
https://scholar.google.co.jp/scholar?q=%E5%BF%83%E6%8B%8D%E5%A4%89%E5%8B%95+
%E3%82%B9%E3%83%88%E3%83%AC%E3%82%B9&hl=ja&as_sdt=0&as_vis=1&oi=scholart
44
体重管理
?API : http://developer.health.nokia.com/oauth2/
?Golang Lib https://github.com/jrmycanady/nokiahealth
APIとライブラリがあるため、利?してFirebaseに登録する。
つい最近まで OAuth1.0しかなかったが、2.0が追加されまし
た。
睡眠時間を測る 歩数
45
タイプ数を測る
?分はMacを利?しているので上記のライブラリを使?。
https://github.com/KonsomeJona/OctoMouse
46
草を測る
https://github.com/users/mogeta/contributions
いろいろ仕様変更があるし、公式サポートってわけで
はないのでいろいろ変わる。
2018/08現在はsvgで渡されるので分解して登録。
47
48
?事ログを取る
毎?、きっちり計算したり、ログを取れる?は
myfitnessPal等を使うのがおすすめ
後に説明するPFCバランス等も計算してくれる。
とりあえず、写真だけ撮って、GooglePhotoと連
携すると良い機能がある。
https://www.myfitnesspal.com/ja
49
{
"dateFilter": {
object(DateFilter)
},
"contentFilter": {
object(ContentFilter)
},
"mediaTypeFilter": {
object(MediaTypeFilter)
},
"includeArchivedMedia": boolean,
"excludeNonAppCreatedData": boolean
}
{
"includedContentCategories": [
enum(ContentCategory)
],
"excludedContentCategories": [
enum(ContentCategory)
]
}
NONE Default content category. This
category is ignored when any other
LANDSCAPES Media items containing landscapes.
RECEIPTS Media items containing receipts.
CITYSCAPES Media items containing cityscapes.
LANDMARKS Media items containing landmarks.
SELFIES Media items that are sel?es.
PEOPLE Media items containing people.
PETS Media items containing pets.
WEDDINGS Media items from weddings.
BIRTHDAYS Media items from birthdays.
DOCUMENTS Media items containing documents.
TRAVEL Media items taken during travel.
ANIMALS Media items containing animals.
FOOD Media items containing food.
SPORT Media items from sporting events.
NIGHT Media items taken at night.
PERFORMANCES Media items from performances.
WHITEBOARDS Media items containing whiteboards.
SCREENSHOTS Media items that are screenshots.
UTILITY Media items that are considered to be
utility. These include, but aren't limited
50
51
集中度のログをとる
https://jins-meme.github.io/sdkdoc/
メガネの機能を利?できるSDK
はある。しかしWeb?のAPI
がまだない(準備中とのこと。
画?をキャプチャして、
CLOUD VISION API
を利?する。
JINS MEMEと連動するアプリoffice
で集計したデータを集めれば良い
52
53
呼吸データ集計。
APIはあるので、取得ライブラリを作成
func (c Client)fetch(opt ...queryOption) *Spires{
query := Query{}
for _, o := range opt {
o(&query)
}
values := url.Values{}
values.Add("access_token", c.accessToken)
if query.date != "" {
values.Add("date",query.date)
}
resp, err := http.Get(URL + values.Encode())
if err != nil {
fmt.Println(err)
}
body, _ := ioutil.ReadAll(resp.Body)
defer resp.Body.Close()
spireData := new(Spires)
err = json.Unmarshal(body,spireData)
if err != nil {
fmt.Errorf("%s",err)
}
return spireData
}
54こんなデータが取れる
8/28 9/7(昨?)
55
集計データ閲覧
https://
builder-206303.firebaseapp.com
/#/base/daychart
mogettaのデータを触って
君だけのグラフを作ろう!!!!
56
例:
withings_sleeps TotalSec
meme_focus Total
睡眠時間と集中度。というデータになります。
57睡眠データと集中度
58
?
59睡眠データと集中度
60
ヨシ!
?
61
相関関係があるんだかないんだか…
微妙なところだが、ヨシ!!!!
ちなみに、個?的な所感としては、睡眠時間
よりも、寝付く時間を早める、早寝が
重要っぽい感じがしました。
いや、良くはない
62寝付くまでの时间対集中度
63
運動と集中
64
?
65
?体ABテスト
朝ごはんを?べる
07/02?07/08
個?的所感
集中?等には差なし
11時くらいに普段は感じない
空腹感を覚えて?い
66集中度と体重推移
67
カフェイン制限
07/09?07/20
?体ABテスト
68集中度と睡眠时间
69
朝運動をしてみる
?体ABテスト
07/17?07/21
70
71
満員電?に乗る。
?体ABテスト
無駄に?の?線を?周
新宿駅→東京駅→品川→渋??乗り継ぐ
07/23?07/27
72ストレス指数と集中度
73
満員電?に乗る。
つらい。
良い数値が出てないのが?い。
ちなみに、?曜?くらいから体調崩した
74
断酒?そもそもお酒っ
てどうなの?という話
?体ABテスト
8?から今まで。
M なぜエンジニアはパフォーマンス計測しないのか
? a
a
a
a
75
76
エンジニアが体脂肪を
測るべき理由
テストステロンがやる気に作?する
脳機能は?流環境に左右される
健康へのダメージは明?なため、?涯コード記述量
に差が?じる
? https://yuchrszk.blogspot.com/2016/03/25.html
? https://www.ncbi.nlm.nih.gov/pubmed/22970699
77
体脂肪率8?13%(?性は17?21%)
https://www.cell.com/cell-metabolism/fulltext/S1550-4131(16)30596-4
理想の体脂肪率とは?
78
改善施策
導?
79
睡眠の改善
80
睡眠を改善する理由
寝ないとあからさまに集中?が切れる
?定の時間時間確保が必要
?
81
質の良い睡眠とは?
?によって違うので要確認!
ミュンヘンクロノタイプ質問紙
https://mctq.jp/download/
http://www.sleepmed.jp/q/meq/
?分の体質にあった睡眠時間、タイミング
に合わせて寝る、起きる。
82
83
?品質な睡眠を求めて
ブルーライトをカットする
パソコン、スマホ等からでる光が
メラトニンというホルモンの?成を妨げるらしい
メガネにブルーライトカットをつけ、対応する。
84
f.lux
最近はデフォルト設定で利?。
?がすごいことになるけど
?へのダメージを軽減できる
85
寝る時間、起きる時間を明かりで制御
https://github.com/mogeta/hueCurtain
起きる時間は基本のアプリである。
寝る時間については、
Hueを使って段々暗くする。を実装。
86
いますぐ、寝る前スマホをやめる
寝るまでに時間がかかっている?は
明らかに睡眠の質が下がっている。
布団に?ったら寝ることだけに集中する。
寝れなかったら起きる。
スマホは寝る前に!済ませる
87
88
89
?事の改善
90
量ではなく、タイミングを管理する。
16時間断?して、8時間は?べる。
(?性の場合は12時間で様?を?ながら
狙う効果
???作?(オートファジー)
??欲の抑?
??糖値の揺れを抑えて、安定した集中?の獲得
00:00
23:59
13:00
21:00
91
栄養を考える
66×2 = 132g
132×4 = 528kcal
を?標にする。
タンパク質 脂質 糖質
質のいい油を求めて
サバやくるみを?べる
オメガ3、6の
バランスが?事
精製された糖を避ける
ほしいも、
果物メイン
ごはんは運動前に
92
オススメの間?
93
タンパク質、良質な油、栄養価
を考慮した場合の?事例
94
ザミートガイのグラスフェッドビーフ
と低温調理は相性が良い!
ANOVAさんは正解にたどり
着いていた!!!!!!
95
ベストトーク賞とはいわない!3位
のAnovaが欲しい。投票お願いし
ます!!!!!!!
96
サプリメントの話
いろいろ調べたけど、エンジニアは必ずこれを飲め!みたいなの
なかったし、個?差が?きすぎるので省略
タンパク質摂取に不安がある?は
プロテインを飲もう
97
98
?分がした改善施策
ジム通い
パーソナル
トレーニング
歩数
UP
? 毎??呂に?りに?く。
? 気分が悪い?は4分だけ
? 有酸素はしない。
? 正しいフォームを学ぶ
? 重量ではなく姿勢
? 肩こり改善策を学ぶ
? 1?1万歩をノルマに
? ?標は2万歩
? 昼休憩に公園まで歩く
99
??の質を上げるための運動
筋トレ HIIT
? 追い込んだ?の次の?の
? 集中?に注?
?
? ?強度インターバルトレーニング
? 短時間で済むので効率が良い
? やった気になれる。
? 仕事の休憩中にもできる
歩く
? 推奨歩数は??2、300
? 脳の活性化と
100
https://journals.lww.com/acsm-msse/Fulltext/1996/10000/Effects_of_moderate_intensity_endurance_and.18.aspx
タバタトレーニング
20秒の全?運動
10秒の休憩
8セット繰り返す
4分で終わる
忙しいエンジニアにピッタリ
101
102
脳機能改善でよくおすすめされる運動
トレイルランニング クロスフィット
トレーニング時間は1時間内
軽く息が上がる?ヘトヘトになるの間
103
ダイエットの話
? 摂取カロリー<消費カロリーになっていなければ痩せない!
? 体重や体脂肪を絶対の指標にすると?が折れる
? おすすめはゾゾスーツ。
104
開発環境の改善
105
?間の脳がパフォーマンスを
発揮しやすい環境を考える
どうやら座るという?為はリスクが?いらしい。
?間の脳は歩いている時が?番活発になる
https://yuchrszk.blogspot.com/2016/04/130_12.html
https://yuchrszk.blogspot.com/2015/07/blog-post.html
106
開発環境を改善する(物理)
107
開発環境(V1)
?って開発
机を買い直すのはちょっと予算が…
なので、机の上における台を購?
108
集中時間増加による肩こり悪化
に対応する。
Ergodoxの導?
開発環境(V2)
109
?間は歩いているときが?番脳
が働くというらしい。
歩きながらコードを書くには?
ステッパーの導?
開発環境(V3)
110
全部導?すると
111
集中?改善
112
集中できる時間
測定してみた。結果
朝の時間体の集中?は圧倒的。
お昼ごはん後(14時以降)は落ち込む
113
?然に触れる
?然的なものに触れるだけでストレス低減というデータがある。
それによって、時間がないという焦りが減り集中?が増す
114
https://www.youtube.com/watch?v=5wdBpNwNfRo&t=5974shttps://www.youtube.com/watch?v=Ftm2uv7-Ybw&t=4919s
115
116
ホリデイリフトは本当か?
?分で?てた計画に沿った旅?が実?できると
その後のやる気が11週間続くらしい。本当にー?
?泊??、?く場所と
?べる物を計画していってみた
https://www.youtube.com/watch?v=expen5OTVFg
M なぜエンジニアはパフォーマンス計測しないのか 117
別所温泉
長野県上田市
118
?分の??を?分で決める
?分のことは?分で決める
思い通りににできる。
ということが??のモチベーションに繋がる
119
集中UP
120
これって、旅?に限らないのでは?
アジャイル開発、スクラム開発等では「?分たちで?積もる」と
いうことを強調している。
プロジェクトを「?分たちで制御しているぞ」と思えることでや
る気やモチベーションの維持につながる
121
まとめ
122
そんなに計測する必要ある?
ぶっちゃけた話、指標にする数値は?つで?分だと思っている。
その数値を伸ばそうという?活改善を?うと、?然と他のパラ
メータも改善されていく。
123
?分の体のことは、
?分から学ぶしかない
例えばお酒も酩酊する量は?によって違う。
適切な運動量、筋トレ、朝起きる時間、集中できる姿勢。
全部?それぞれだと思います。
124
やる気を出すのではなく
やる気が出る状態を作る
よし!やるぞ!とやる気を出さないと?けない時点で?い。
楽勝すぎるくらいの?動から始めよう!
ジムで筋トレをするぞ?→?ジムの?呂に?りに?くぞ
あの機能を実装するぞ!?→?あの機能の説明を書こう
125
最?のエンジニアライフを
みんなでつくっていこうな!
126
余談:健康情報の情報源
健康界隈、思っていたよりも情報更新が
早いので、流?りにだまされない。
127
128
?写真、素材等
https://www.pexels.com/photo-license/
?アイコンデータ
https://www.iconfinder.com/
?Gopher
https://github.com/golang-samples/gopher-vector

More Related Content

Why dont you_measure_performance