rabbit-slide-kou-readable-code-workshop-for-pioneer-conclusion 2015.8.11.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,167 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ width="416.15005"
13
+ height="233.13203"
14
+ id="svg2"
15
+ version="1.1"
16
+ inkscape:version="0.48.5 r10040"
17
+ sodipodi:docname="readable-code-reasonability.svg">
18
+ <defs
19
+ id="defs4">
20
+ <marker
21
+ inkscape:stockid="Arrow1Lend"
22
+ orient="auto"
23
+ refY="0"
24
+ refX="0"
25
+ id="Arrow1Lend"
26
+ style="overflow:visible">
27
+ <path
28
+ id="path3764"
29
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
30
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
31
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
32
+ inkscape:connector-curvature="0" />
33
+ </marker>
34
+ </defs>
35
+ <sodipodi:namedview
36
+ id="base"
37
+ pagecolor="#ffffff"
38
+ bordercolor="#666666"
39
+ borderopacity="1.0"
40
+ inkscape:pageopacity="0.0"
41
+ inkscape:pageshadow="2"
42
+ inkscape:zoom="1.979899"
43
+ inkscape:cx="304.97745"
44
+ inkscape:cy="179.2249"
45
+ inkscape:document-units="px"
46
+ inkscape:current-layer="layer1"
47
+ showgrid="false"
48
+ inkscape:window-width="1237"
49
+ inkscape:window-height="817"
50
+ inkscape:window-x="2116"
51
+ inkscape:window-y="68"
52
+ inkscape:window-maximized="0"
53
+ fit-margin-top="10"
54
+ fit-margin-left="10"
55
+ fit-margin-right="10"
56
+ fit-margin-bottom="10" />
57
+ <metadata
58
+ id="metadata7">
59
+ <rdf:RDF>
60
+ <cc:Work
61
+ rdf:about="">
62
+ <dc:format>image/svg+xml</dc:format>
63
+ <dc:type
64
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
65
+ <dc:title></dc:title>
66
+ </cc:Work>
67
+ </rdf:RDF>
68
+ </metadata>
69
+ <g
70
+ inkscape:label="レイヤー 1"
71
+ inkscape:groupmode="layer"
72
+ id="layer1"
73
+ transform="translate(-42.823639,-264.5498)">
74
+ <path
75
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Lend)"
76
+ d="m 62.629458,450.31127 286.883322,0"
77
+ id="path2985"
78
+ inkscape:connector-curvature="0" />
79
+ <path
80
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Lend)"
81
+ d="m 104.04571,487.18183 0,-212.13203"
82
+ id="path2987"
83
+ inkscape:connector-curvature="0" />
84
+ <text
85
+ xml:space="preserve"
86
+ style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
87
+ x="310.62192"
88
+ y="476.57526"
89
+ id="text4402"
90
+ sodipodi:linespacing="125%"><tspan
91
+ sodipodi:role="line"
92
+ id="tspan4404"
93
+ x="310.62192"
94
+ y="476.57526">時間</tspan></text>
95
+ <text
96
+ xml:space="preserve"
97
+ style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
98
+ x="52.022858"
99
+ y="293.73761"
100
+ id="text4406"
101
+ sodipodi:linespacing="125%"><tspan
102
+ sodipodi:role="line"
103
+ id="tspan4410"
104
+ x="52.022858"
105
+ y="293.73761">開発</tspan><tspan
106
+ sodipodi:role="line"
107
+ id="tspan4412"
108
+ x="52.022858"
109
+ y="318.73761">速度</tspan></text>
110
+ <path
111
+ style="fill:none;stroke:#a40000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
112
+ d="m 104.02541,309.39499 c 0,0 15.15229,97.47972 90.40865,116.67261 75.25637,19.1929 140.91628,13.63706 140.91628,13.63706"
113
+ id="path5532"
114
+ inkscape:connector-curvature="0"
115
+ sodipodi:nodetypes="csc" />
116
+ <text
117
+ xml:space="preserve"
118
+ style="font-size:25px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#a40000;fill-opacity:1;stroke:none;font-family:Sans"
119
+ x="174.97467"
120
+ y="387.88406"
121
+ id="text5534"
122
+ sodipodi:linespacing="125%"><tspan
123
+ sodipodi:role="line"
124
+ id="tspan5536"
125
+ x="174.97467"
126
+ y="387.88406">リーダブルじゃない場合</tspan></text>
127
+ <path
128
+ style="fill:none;stroke:#204a87;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
129
+ d="m 103.57143,342.36218 c 0,0 63.28367,10.3815 101.53626,13.06635 43.48081,3.05182 112.03517,4.79079 132.74945,4.07651"
130
+ id="path5546"
131
+ inkscape:connector-curvature="0"
132
+ sodipodi:nodetypes="csc" />
133
+ <text
134
+ sodipodi:linespacing="125%"
135
+ id="text5548"
136
+ y="301.74121"
137
+ x="144.83182"
138
+ style="font-size:25px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#204a87;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
139
+ xml:space="preserve"><tspan
140
+ sodipodi:role="line"
141
+ id="tspan5552"
142
+ x="144.83182"
143
+ y="301.74121">リーダブルな場合</tspan></text>
144
+ <text
145
+ xml:space="preserve"
146
+ style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
147
+ x="148.05447"
148
+ y="330.21933"
149
+ id="text5554"
150
+ sodipodi:linespacing="125%"><tspan
151
+ sodipodi:role="line"
152
+ id="tspan5556"
153
+ x="148.05447"
154
+ y="330.21933">開発速度が落ちにくい</tspan></text>
155
+ <text
156
+ sodipodi:linespacing="125%"
157
+ id="text5558"
158
+ y="412.21933"
159
+ x="177.2403"
160
+ style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans"
161
+ xml:space="preserve"><tspan
162
+ sodipodi:role="line"
163
+ id="tspan5562"
164
+ x="177.2403"
165
+ y="412.21933">開発速度が落ちやすい</tspan></text>
166
+ </g>
167
+ </svg>
data/next-step.rab ADDED
@@ -0,0 +1,172 @@
1
+ = まとめと次のステップ
2
+
3
+ : author
4
+ 須藤功平
5
+ : institution
6
+ 株式会社クリアコード
7
+ : content-source
8
+ リーダブルコードワークショップ\n
9
+ (パイオニア向け)
10
+ : date
11
+ 2015-08-11
12
+ : allotted-time
13
+ 30m
14
+ : theme
15
+ clear-code
16
+
17
+ = 目的
18
+
19
+ (('tag:center'))
20
+ ↓の方法を体験
21
+
22
+ # blockquote
23
+ ((*チームとして*))\n
24
+ リーダブルコードを書く
25
+
26
+ = リーダブルコードの効果
27
+
28
+ * 既存コードの変更コスト↓
29
+ * 理解するまでの時間が短くなるから
30
+ * 既存コードの変更ミス↓
31
+ * 間違って理解しにくくなるから
32
+
33
+ (('wait'))
34
+ (('tag:center'))
35
+ ↓\n
36
+ 開発速度に影響
37
+
38
+ = 変更コストと開発速度
39
+
40
+ # image
41
+ # src = images/readable-code-reasonability.svg
42
+ # relative_width = 90
43
+
44
+ == プロパティー
45
+
46
+ : enable-title-on-image
47
+ false
48
+
49
+ = チームでリーダブルコード
50
+
51
+ * チームとしての開発速度↑
52
+ * 空いている人が対応できる
53
+ * メンバー交代コスト↓\n
54
+ (柔軟なチーム編成が可能)
55
+ * ○○さんが抜けても困らない
56
+ * 新しい人を受け入れられる
57
+
58
+ = 実現方法
59
+
60
+ チームでリーダブルコードを書く\n
61
+ には…
62
+
63
+ (('wait'))
64
+ (('tag:center'))
65
+ (('tag:large'))
66
+ ↓\n
67
+ 他メンバーのコードを読む
68
+
69
+ (('wait'))
70
+ (('tag:center'))
71
+ それも!\n
72
+ リーダブルコードを探す目線で
73
+
74
+ = フィードバックループ
75
+
76
+ # image
77
+ # src = images/readable-code-feedback-loop.svg
78
+ # relative_height = 95
79
+
80
+ == プロパティー
81
+
82
+ : enable-title-on-image
83
+ false
84
+
85
+ = うれしい副作用
86
+
87
+ # image
88
+ # src = images/readable-code-feedback-loop-side-effect.svg
89
+ # relative_height = 95
90
+
91
+ == プロパティー
92
+
93
+ : enable-title-on-image
94
+ false
95
+
96
+ = 体験内容
97
+
98
+ * ((*個人として*))開発する
99
+ * ((*ペアとして*))開発する
100
+ * ペアのリーダブルコードを見つける\n
101
+ →共有
102
+ * ((*チームとして*))開発する
103
+ * 他メンバーのリーダブルコードを\n
104
+ 見つける→共有
105
+
106
+ = 体験した狙い
107
+
108
+ (('tag:center'))
109
+ (('tag:margin-bottom'))
110
+ きっかけ作り
111
+
112
+ * よかったと実感
113
+ * 自分たちのチームに取り入れる
114
+ * そのままでもアレンジしてもよい
115
+ * そうでもなかった
116
+ * 「合わない」という知見が増えた😇
117
+
118
+ = よかった場合向け
119
+
120
+ 参考情報紹介
121
+
122
+ = リーダブルコードの伝え方
123
+
124
+ * (('wait'))Wikiに書く
125
+ * メモの書き方が参考になるはず
126
+ * (('wait'))コードで伝える
127
+ * 人のコードを読むチームならできる
128
+ * リーダブルコードをコミット!
129
+ * →他の人:「またこの書き方だ」
130
+ * →真似する人増加
131
+
132
+ = コードを読む文化
133
+
134
+ * 新人の受け入れにも有用
135
+ * 人の入れ替えにも有用
136
+
137
+ = どうして有用か
138
+
139
+ (('tag:center'))
140
+ (('tag:margin-bottom'))
141
+ 開発を通じて↓を伝えられる
142
+
143
+ * チームが大事にしていること
144
+ * チームのリーダブル
145
+ * チームの開発スタイル
146
+
147
+ = コードを読む文化
148
+
149
+ (('tag:center'))
150
+ チームが大事にしていることを\n
151
+ 開発を通じて伝えられる\n
152
+
153
+
154
+ * 新人の受け入れにも有用
155
+ * 開発速度低下を抑えられる
156
+ * 人の入れ替えにも有用
157
+ * リーダブル見直しのよい機会
158
+
159
+ = これからやること
160
+
161
+ * コミットメールを設定
162
+ * git-commit-mailer
163
+ * github-web-hooks-receiver
164
+ * 使っているOSSのコミットで練習
165
+ * commit-email.info
166
+
167
+ = FAQ
168
+
169
+ * Q: コミットを読むコストが高い
170
+ * A1: コストを下げる方法を試す
171
+ * A2: メリットと天秤にかける\n
172
+ (('note:(自動テストと開発速度の関係と似ている)'))
metadata ADDED
@@ -0,0 +1,81 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-kou-readable-code-workshop-for-pioneer-conclusion
3
+ version: !ruby/object:Gem::Version
4
+ version: 2015.8.11.0
5
+ platform: ruby
6
+ authors:
7
+ - Kouhei Sutou
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-08-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rabbit
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 2.0.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 2.0.2
27
+ - !ruby/object:Gem::Dependency
28
+ name: rabbit-theme-clear-code
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: "リーダブルコードワークショップ(パイオニア向け)のまとめと次のステップの説明。"
42
+ email:
43
+ - kou@clear-code.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - ".rabbit"
49
+ - README.rd
50
+ - Rakefile
51
+ - config.yaml
52
+ - images/readable-code-feedback-loop-side-effect.svg
53
+ - images/readable-code-feedback-loop.svg
54
+ - images/readable-code-reasonability.svg
55
+ - next-step.rab
56
+ - pdf/readable-code-workshop-for-pioneer-conclusion-next-step.pdf
57
+ homepage: http://slide.rabbit-shocker.org/authors/kou/readable-code-workshop-for-pioneer-conclusion/
58
+ licenses:
59
+ - CC BY-SA 4.0
60
+ metadata: {}
61
+ post_install_message:
62
+ rdoc_options: []
63
+ require_paths:
64
+ - lib
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ requirements: []
76
+ rubyforge_project:
77
+ rubygems_version: 2.2.2
78
+ signing_key:
79
+ specification_version: 4
80
+ summary: "リーダブルコードワークショップ(パイオニア向け)のまとめ"
81
+ test_files: []