rabbit-slide-kou-sezemi-2014-readable-code-2-code-change 2014.7.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 04bff0755687581d56acafac28bb9793b194c812
4
+ data.tar.gz: 9cf69fd8e2ed976e6427f91479c51c244239109b
5
+ SHA512:
6
+ metadata.gz: 7cecf12c8f2863197a2a3aeae777a77097f25e911f511a0b4c6edbc9ea899f6ad9708f6cae223cbd2e2823b106911c4c53ac2e79ce689549f8d69edc9c23b818
7
+ data.tar.gz: 87a5be194574fb9f54fda900e5791a110d29e4b8516f6dc6e06bdd1eb2bcf5962c11af53a6eebd67e3bcf13502f252062585c4213de04fd3cffa6de95f79ccd3
data/.rabbit ADDED
@@ -0,0 +1 @@
1
+ why-change.rab
@@ -0,0 +1,33 @@
1
+ = SEゼミ2014 - コードチェンジ
2
+
3
+ 2014年のSEゼミの「プログラミングが好きな学生のためのリーダブルコード勉
4
+ 強会」のコードチェンジのやり方の説明。
5
+
6
+ == ライセンス
7
+
8
+ CC BY-SA 4.0
9
+
10
+ 原著作者名は以下の通りです。
11
+
12
+ * 株式会社クリアコード
13
+
14
+ == 作者向け
15
+
16
+ === 表示
17
+
18
+ rake
19
+
20
+ === 公開
21
+
22
+ rake publish
23
+
24
+ == 閲覧者向け
25
+
26
+ === インストール
27
+
28
+ gem install rabbit-slide-kou-sezemi-2014-readable-code-2-icebreaker
29
+
30
+ === 表示
31
+
32
+ rabbit rabbit-slide-kou-sezemi-2014-readable-code-2-icebreaker.gem
33
+
@@ -0,0 +1,17 @@
1
+ require "rabbit/task/slide"
2
+
3
+ # Edit ./config.yaml to customize meta data
4
+
5
+ spec = nil
6
+ Rabbit::Task::Slide.new do |task|
7
+ spec = task.spec
8
+ # task.spec.files += Dir.glob("doc/**/*.*")
9
+ # task.spec.files -= Dir.glob("private/**/*.*")
10
+ task.spec.add_runtime_dependency("rabbit-theme-clear-code")
11
+ end
12
+
13
+ desc "Tag #{spec.version}"
14
+ task :tag do
15
+ sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
16
+ sh("git", "push", "--tags")
17
+ end
@@ -0,0 +1,23 @@
1
+ ---
2
+ id: sezemi-2014-readable-code-2-code-change
3
+ base_name: next-step
4
+ tags:
5
+ - rabbit
6
+ - readable-code
7
+ - sezemi
8
+ presentation_date: 2014-07-06
9
+ version: 2014.7.6.0
10
+ licenses:
11
+ - CC BY-SA 4.0
12
+ slideshare_id: sezemi-2014-readable-code-2-code-change
13
+ speaker_deck_id:
14
+ ustream_id:
15
+ vimeo_id:
16
+ youtube_id:
17
+ author:
18
+ markup_language: :rd
19
+ name: Kouhei Sutou
20
+ email: kou@clear-code.com
21
+ rubygems_user: kou
22
+ slideshare_user: kou
23
+ speaker_deck_user: kou
@@ -0,0 +1,205 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
6
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+ xmlns:cc="http://creativecommons.org/ns#"
8
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+ xmlns:svg="http://www.w3.org/2000/svg"
10
+ xmlns="http://www.w3.org/2000/svg"
11
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13
+ width="701.48853"
14
+ height="444.00336"
15
+ id="svg2"
16
+ version="1.1"
17
+ inkscape:version="0.48.4 r9939"
18
+ sodipodi:docname="goal-for-future.svg">
19
+ <defs
20
+ id="defs4">
21
+ <linearGradient
22
+ id="linearGradient3768"
23
+ osb:paint="solid">
24
+ <stop
25
+ style="stop-color:#204a87;stop-opacity:1;"
26
+ offset="0"
27
+ id="stop3770" />
28
+ </linearGradient>
29
+ <marker
30
+ inkscape:stockid="Arrow1Mend"
31
+ orient="auto"
32
+ refY="0"
33
+ refX="0"
34
+ id="Arrow1Mend"
35
+ style="overflow:visible">
36
+ <path
37
+ id="path3768"
38
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
39
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
40
+ transform="matrix(-0.4,0,0,-0.4,-4,0)"
41
+ inkscape:connector-curvature="0" />
42
+ </marker>
43
+ </defs>
44
+ <sodipodi:namedview
45
+ id="base"
46
+ pagecolor="#ffffff"
47
+ bordercolor="#666666"
48
+ borderopacity="1.0"
49
+ inkscape:pageopacity="0.0"
50
+ inkscape:pageshadow="2"
51
+ inkscape:zoom="1"
52
+ inkscape:cx="234.89992"
53
+ inkscape:cy="326.36379"
54
+ inkscape:document-units="px"
55
+ inkscape:current-layer="layer1"
56
+ showgrid="false"
57
+ inkscape:window-width="1259"
58
+ inkscape:window-height="816"
59
+ inkscape:window-x="1920"
60
+ inkscape:window-y="27"
61
+ inkscape:window-maximized="0"
62
+ fit-margin-top="10"
63
+ fit-margin-left="10"
64
+ fit-margin-right="10"
65
+ fit-margin-bottom="10" />
66
+ <metadata
67
+ id="metadata7">
68
+ <rdf:RDF>
69
+ <cc:Work
70
+ rdf:about="">
71
+ <dc:format>image/svg+xml</dc:format>
72
+ <dc:type
73
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
74
+ <dc:title />
75
+ </cc:Work>
76
+ </rdf:RDF>
77
+ </metadata>
78
+ <g
79
+ inkscape:label="レイヤー 1"
80
+ inkscape:groupmode="layer"
81
+ id="layer1"
82
+ transform="translate(37.06662,-186.71819)">
83
+ <path
84
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
85
+ d="m 83,533.36218 520,0"
86
+ id="path2985"
87
+ inkscape:connector-curvature="0" />
88
+ <path
89
+ inkscape:connector-curvature="0"
90
+ id="path4218"
91
+ d="m 122.125,570.48718 0,-319"
92
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend)"
93
+ sodipodi:nodetypes="cc" />
94
+ <text
95
+ xml:space="preserve"
96
+ style="font-size:40px;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"
97
+ x="577"
98
+ y="617.36218"
99
+ id="text4220"
100
+ sodipodi:linespacing="125%"><tspan
101
+ sodipodi:role="line"
102
+ id="tspan4222"
103
+ x="577"
104
+ y="617.36218">時間</tspan></text>
105
+ <text
106
+ xml:space="preserve"
107
+ style="font-size:40px;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"
108
+ x="-34.72287"
109
+ y="230.31194"
110
+ id="text4224"
111
+ sodipodi:linespacing="125%"><tspan
112
+ sodipodi:role="line"
113
+ id="tspan4226"
114
+ x="-34.72287"
115
+ y="230.31194">リーダブルコード力</tspan></text>
116
+ <text
117
+ sodipodi:linespacing="125%"
118
+ id="text2990"
119
+ y="617.36218"
120
+ x="205"
121
+ style="font-size:40px;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"
122
+ xml:space="preserve"><tspan
123
+ y="617.36218"
124
+ x="205"
125
+ id="tspan2992"
126
+ sodipodi:role="line">今日</tspan></text>
127
+ <path
128
+ sodipodi:nodetypes="cc"
129
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 6;stroke-dashoffset:0;marker-end:none"
130
+ d="m 240.125,570.48718 0,-319"
131
+ id="path2992"
132
+ inkscape:connector-curvature="0" />
133
+ <text
134
+ xml:space="preserve"
135
+ style="font-size:40px;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"
136
+ x="442.73209"
137
+ y="250.71695"
138
+ id="text4013"
139
+ sodipodi:linespacing="125%"><tspan
140
+ sodipodi:role="line"
141
+ id="tspan5842"
142
+ x="442.73209"
143
+ y="250.71695">将来を重視</tspan></text>
144
+ <rect
145
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
146
+ id="rect4021"
147
+ width="224.8284"
148
+ height="65.1091"
149
+ x="430.90366"
150
+ y="204.56619"
151
+ rx="10.338835"
152
+ ry="10.338835" />
153
+ <path
154
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
155
+ d="m 122.00863,493.65843 118.18729,1 0,-101.39771 255.96495,0.81044"
156
+ id="path3968-0"
157
+ inkscape:connector-curvature="0"
158
+ sodipodi:nodetypes="cccc" />
159
+ <text
160
+ xml:space="preserve"
161
+ style="font-size:40px;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"
162
+ x="361.89801"
163
+ y="617.36218"
164
+ id="text5787"
165
+ sodipodi:linespacing="125%"><tspan
166
+ sodipodi:role="line"
167
+ id="tspan5805"
168
+ x="361.89801"
169
+ y="617.36218">半年後</tspan></text>
170
+ <path
171
+ inkscape:connector-curvature="0"
172
+ id="path5803"
173
+ d="m 419.11281,570.48718 0,-319"
174
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3, 6;stroke-dashoffset:0;marker-end:none"
175
+ sodipodi:nodetypes="cc" />
176
+ <g
177
+ transform="translate(178.62352,-100.90538)"
178
+ id="g3808">
179
+ <path
180
+ sodipodi:nodetypes="cc"
181
+ inkscape:connector-curvature="0"
182
+ id="path3970"
183
+ d="m 250.11569,493.24835 0,-93.47287"
184
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
185
+ <path
186
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
187
+ d="m 239.99905,494.38929 20.23328,0"
188
+ id="path3796"
189
+ inkscape:connector-curvature="0"
190
+ sodipodi:nodetypes="cc" />
191
+ <path
192
+ sodipodi:nodetypes="cc"
193
+ inkscape:connector-curvature="0"
194
+ id="path3798"
195
+ d="m 239.99905,400.43133 20.23328,0"
196
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
197
+ </g>
198
+ <path
199
+ style="fill:none;stroke:#a40000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
200
+ d="m 122.06511,493.72155 118.37868,1 -0.38277,-36.69744 205.39749,-181.30256"
201
+ id="path3968-6"
202
+ inkscape:connector-curvature="0"
203
+ sodipodi:nodetypes="cccc" />
204
+ </g>
205
+ </svg>
@@ -0,0 +1,158 @@
1
+ = コードチェンジ
2
+
3
+ : author
4
+ 須藤功平
5
+ : institution
6
+ 株式会社クリアコード
7
+ : content-source
8
+ SEゼミ2014 - リーダブルコード勉強会2
9
+ : date
10
+ 2014/07/06
11
+ : allotted-time
12
+ 5m
13
+ : theme
14
+ clear-code
15
+
16
+ = 目的の確認
17
+
18
+ (('tag:center'))(('tag:large'))
19
+ 参加者の\n
20
+ リーダブルコード力の\n
21
+ レベルアップ
22
+
23
+ ((' '))
24
+
25
+ = 将来を重視
26
+
27
+ # image
28
+ # src = images/goal.svg
29
+ # relative_height = 100
30
+
31
+ == プロパティー
32
+
33
+ : enable-title-on-image
34
+ false
35
+
36
+ = 目指すこと
37
+
38
+ (('tag:center'))(('tag:large'))
39
+ リーダブルコードを\n
40
+ 発見できるようになる
41
+
42
+ ((' '))
43
+
44
+ = 目指さないこと
45
+
46
+ * テクニックをたくさん((*覚える*))
47
+ * 難しいプログラムでも\n
48
+ 実装できるようになる
49
+ * 速く実装できるようになる
50
+
51
+ = 目指すためにやること
52
+
53
+ コードチェンジ
54
+
55
+ = コードチェンジでやること
56
+
57
+ (1) 書いて←自己流で本気をだす\n
58
+ (('note:(午前中にやった)'))
59
+ (2) 読んで←((*他のコードから吸収*))
60
+ (('note:(読まないといけない状況を強制的に作る)'))
61
+ (3) 書いて←((*↑を活用して成長*))
62
+
63
+ = どうしてこうやるか
64
+
65
+ (1) 既存のテクニックの習得
66
+ * 本から学ぶ
67
+ * 野生のコードを読む→\n
68
+ リーダブルコードを発見→\n
69
+ 吸収 ((*↑を体験*))
70
+ (2) 新規にテクニックを発明
71
+ * リーダブルでないコードを発見→\n
72
+ 改善案を発明
73
+
74
+ = やり方
75
+
76
+ * 交換相手を決める
77
+ * 交換相手のリポジトリーをfork
78
+ * ↑を使って開発継続
79
+
80
+ = 交換相手の決め方
81
+
82
+ * 基準
83
+ * だいたい同じ状況同士
84
+ * 例: 進み具合、環境
85
+ * メンターがヒアリング
86
+ * 積極的に協力して
87
+
88
+ = リポジトリーをfork
89
+
90
+ * やり方がわからない人は挙手
91
+
92
+ = 開発継続
93
+
94
+ * どこまで進んでいるかを確認
95
+ * READMEやlogを参考に\n
96
+ (('note:(どういう風に書いておけばよかったか考えてみて)'))
97
+ * ↑から開発を継続
98
+
99
+ = 忘れないで
100
+
101
+ * よいコードを見つけたらメモ
102
+ * memo.mdに追記して随時push
103
+ * 後でよいコードを共有する時に使う
104
+ * 書くこと
105
+ * コードのURL
106
+ * よい理由
107
+ * 見つけたきっかけ
108
+
109
+ = ポイント
110
+
111
+ 悪いコードより\n
112
+ よいコード
113
+
114
+ = 悪いコード
115
+
116
+ * 見つけやすい
117
+ * 異質
118
+ * リーダブルじゃない
119
+ * 過剰に指摘したくなる
120
+ * 「マサカリを投げてみたい」
121
+
122
+ = マサカリ投げたい症候群
123
+
124
+ (('tag:center'))(('tag:margin-bottom * 2'))
125
+ 早めに卒業しましょう
126
+
127
+ * 必要十分な事実伝達以外の\n
128
+ 否定的な情報を過剰に含む指摘\n
129
+ (('note:必要十分な事実伝達がない場合もある'))
130
+ * 必要十分な事実伝達:\n
131
+ ○○な理由で××ではなく△△だ\n
132
+ (('note:本に書いているから、は理由になっていない'))
133
+ * 優越感を得られる
134
+
135
+ = よいコード
136
+
137
+ * 見つけにくい
138
+ * リーダブルだから
139
+ * すーっと理解できてひっかからない
140
+ * 今日のチャレンジ
141
+ * 意識して見つけよう!
142
+
143
+ = 発見方法のヒント
144
+
145
+ * リーダブルコード
146
+ * ((*読む人*))がリーダブルと思ったコード
147
+ * 読む人視点が重要
148
+ * 交換直後の今が読む人の視点!
149
+
150
+ = 忘れないで
151
+
152
+ * よいコードを見つけたらメモ
153
+ * memo.mdに追記して随時push
154
+ * 後でよいコードを共有する時に使う
155
+ * 書くこと
156
+ * コードのURL
157
+ * よい理由
158
+ * 見つけたきっかけ
metadata ADDED
@@ -0,0 +1,81 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-kou-sezemi-2014-readable-code-2-code-change
3
+ version: !ruby/object:Gem::Version
4
+ version: 2014.7.6.0
5
+ platform: ruby
6
+ authors:
7
+ - Kouhei Sutou
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-07-05 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
+ 2014年のSEゼミの「プログラミングが好きな学生のためのリーダブルコード勉
43
+ 強会」のコードチェンジのやり方の説明。
44
+ email:
45
+ - kou@clear-code.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - ".rabbit"
51
+ - README.rd
52
+ - Rakefile
53
+ - config.yaml
54
+ - images/goal.svg
55
+ - pdf/sezemi-2014-readable-code-2-code-change-next-step.pdf
56
+ - why-change.rab
57
+ homepage: http://slide.rabbit-shocker.org/authors/kou/sezemi-2014-readable-code-2-code-change/
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: SEゼミ2014 - コードチェンジ
81
+ test_files: []