SlideShare a Scribd company logo
1 of 12
Download to read offline
練習の仕方 Powered by Rabbit 2.1.7
練習の仕方
須藤功平
株式会社クリアコード
SEゼミ2015 - リーダブルコード勉強会
2015-06-06
練習の仕方 Powered by Rabbit 2.1.7
課題が目指すこと
↓を体験する
コードを読んで✓
リーダブルコードを見つける✓
↑を活かしてコードを書く✓
練習の仕方 Powered by Rabbit 2.1.7
課題が目指さないこと
テクニックをたくさん覚える✓
難しいプログラムでも
実装できるようになる
✓
速く実装できるようになる✓
練習の仕方 Powered by Rabbit 2.1.7
課題の傾向
技術的に難しいことは
意図的に避けている
✓
段階的に改良していく✓
時間内で実装しきれない分量
すべて実装する必要はない!✓
✓
練習の仕方 Powered by Rabbit 2.1.7
練習としてやること
仕様1を実装進め方の詳細はtask.mdを参照
https://github.com/clear-code/sezemi-2015/から辿れる
メンター:参加者がtask.mdを見つけられるようにサポート
メンター:見つけられたら教えて
練習の仕方 Powered by Rabbit 2.1.7
メモ
課題は精一杯の
リーダブルコードで実装する
✓
リーダブルポイントをメモする
メモはリポジトリーにpush✓
書き方は後述✓
コードを交換した相手も読むよ!✓
✓
練習の仕方 Powered by Rabbit 2.1.7
リーダブルコードとは
読む人基準
読む人が
読みやすいなら
リーダブル
✓
✓
読む人の視点を意識してみて
どんな人が読む?✓
どんな前提知識がある?✓
✓
練習の仕方 Powered by Rabbit 2.1.7
困ったら1
メンターに相談
メンターは答えを教えない✓
一緒に考えてくれる✓
✓
なんで!?答えを教えてよ!
トレーナーが禁止している
(参加者が考える機会を奪わないため)
✓
メンターは意地悪ではない✓
✓
メンターへ:新しい視点に導いてあげてください
練習の仕方 Powered by Rabbit 2.1.7
困ったら2
まわりの参加者に相談
答えを教えてもよい✓
一緒に考えてもよい✓
✓
ヒント
答えを教えるときは理由も伝える
(教える参加者が考える機会になる!)
✓
聞く人は理由も聞く
(考え方を知ると新しい視点でコードを読める!)
✓
✓
練習の仕方 Powered by Rabbit 2.1.7
困ったら3
他の参加者のコードを見る
コードから学ぶ!✓
この勉強会で大事にしていること✓
✓
ヒント
参考にするときは理由を考える✓
どうしてこのコードがリーダブル?✓
メモに書こう✓
✓
練習の仕方 Powered by Rabbit 2.1.7
課題1が終わったら
メンターに確認依頼
→OKなら各自休憩✓
✓
休憩後
task.mdを最初から読み直す✓
読み直したら課題2以降を進める✓
随時メモを書こう!✓
✓
メモ:task.mdにあるメモの書き方例を紹介することを忘れない
練習の仕方 Powered by Rabbit 2.1.7
…課題実装中…
今の自分の精一杯の
リーダブルコードを書こう
✓
↑をmemo.mdにメモろう
実際のコード・説明・一言説明✓
例はtask.md参照✓
✓
メンターへ:メビューで使うのでメンターもメモろう
メンターへ:たまに「どんなメモ書いた?」と聞いて課題をこ
なすことではなくリーダブルコードを書くことに参加者の注意
を向けてみよう

More Related Content

What's hot

アプリのテストを書かなければならないと分かっているけども、書けていない人たちへ
アプリのテストを書かなければならないと分かっているけども、書けていない人たちへアプリのテストを書かなければならないと分かっているけども、書けていない人たちへ
アプリのテストを書かなければならないと分かっているけども、書けていない人たちへTomohiro Yamasaki
 
ペアプロのオイシイ料理法、おしえます。
ペアプロのオイシイ料理法、おしえます。ペアプロのオイシイ料理法、おしえます。
ペアプロのオイシイ料理法、おしえます。takepu
 
Mizukiryu refactering-20110821
Mizukiryu refactering-20110821Mizukiryu refactering-20110821
Mizukiryu refactering-20110821Mizuki Yamanaka
 
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -Takao Oyobe
 
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なことY Watanabe
 
プログラマーのお仕事
プログラマーのお仕事プログラマーのお仕事
プログラマーのお仕事Kohei Kadowaki
 
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!慎一 古賀
 
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップJavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ慎一 古賀
 
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例de:code 2017
 
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?Yasuhiko Yamamoto
 
LancersのCakePHPバージョンアップ施策について
LancersのCakePHPバージョンアップ施策についてLancersのCakePHPバージョンアップ施策について
LancersのCakePHPバージョンアップ施策についてShigemasa Akiyama
 
Arachne Unweaved (JP)
Arachne Unweaved (JP)Arachne Unweaved (JP)
Arachne Unweaved (JP)Ikuru Kanuma
 
PMBOKで学ぶプロジェクトマネジメントの基礎
PMBOKで学ぶプロジェクトマネジメントの基礎PMBOKで学ぶプロジェクトマネジメントの基礎
PMBOKで学ぶプロジェクトマネジメントの基礎Hiroyuki Tanaka
 
リーダブルコード勉強会 in 筑波大の進め方
リーダブルコード勉強会 in 筑波大の進め方リーダブルコード勉強会 in 筑波大の進め方
リーダブルコード勉強会 in 筑波大の進め方Kouhei Sutou
 
Hey It's Not My TDD!
Hey It's Not My TDD!Hey It's Not My TDD!
Hey It's Not My TDD!Yasui Tsutomu
 
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったことapuruni
 
ゲーム向けマネジメントツール 「Hansoft」の概要と コンシューマ開発で1年間 運用した事例
ゲーム向けマネジメントツール「Hansoft」の概要とコンシューマ開発で1年間運用した事例ゲーム向けマネジメントツール「Hansoft」の概要とコンシューマ開発で1年間運用した事例
ゲーム向けマネジメントツール 「Hansoft」の概要と コンシューマ開発で1年間 運用した事例Hiroyuki Tanaka
 
SEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジSEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジKouhei Sutou
 

What's hot (20)

アプリのテストを書かなければならないと分かっているけども、書けていない人たちへ
アプリのテストを書かなければならないと分かっているけども、書けていない人たちへアプリのテストを書かなければならないと分かっているけども、書けていない人たちへ
アプリのテストを書かなければならないと分かっているけども、書けていない人たちへ
 
ペアプロのオイシイ料理法、おしえます。
ペアプロのオイシイ料理法、おしえます。ペアプロのオイシイ料理法、おしえます。
ペアプロのオイシイ料理法、おしえます。
 
Mizukiryu refactering-20110821
Mizukiryu refactering-20110821Mizukiryu refactering-20110821
Mizukiryu refactering-20110821
 
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -
アジャイルサムライ壱の太刀 - 説得しないはじめないアジャイル開発のはじめ形 -
 
Benchmarkspec
BenchmarkspecBenchmarkspec
Benchmarkspec
 
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
 
プログラマーのお仕事
プログラマーのお仕事プログラマーのお仕事
プログラマーのお仕事
 
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!
本になりました! ~ チーム開発の教科書 C#によるモダンな開発を実践しよう!
 
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップJavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
JavaScriptを使った開発を始めるなら!TypeScriptをはじめよう ~ ステップアップ
 
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例
[DO12] ナビタイムジャパン CTO 菊池氏が語る IT リーダのための開発を加速させる DevOps の実践例
 
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?
Visual Studio 2015 の新機能: Pex はユニットテストの福音となるか!?
 
LancersのCakePHPバージョンアップ施策について
LancersのCakePHPバージョンアップ施策についてLancersのCakePHPバージョンアップ施策について
LancersのCakePHPバージョンアップ施策について
 
Arachne Unweaved (JP)
Arachne Unweaved (JP)Arachne Unweaved (JP)
Arachne Unweaved (JP)
 
PMBOKで学ぶプロジェクトマネジメントの基礎
PMBOKで学ぶプロジェクトマネジメントの基礎PMBOKで学ぶプロジェクトマネジメントの基礎
PMBOKで学ぶプロジェクトマネジメントの基礎
 
リーダブルコード勉強会 in 筑波大の進め方
リーダブルコード勉強会 in 筑波大の進め方リーダブルコード勉強会 in 筑波大の進め方
リーダブルコード勉強会 in 筑波大の進め方
 
Hey It's Not My TDD!
Hey It's Not My TDD!Hey It's Not My TDD!
Hey It's Not My TDD!
 
Git入門
Git入門Git入門
Git入門
 
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
 
ゲーム向けマネジメントツール 「Hansoft」の概要と コンシューマ開発で1年間 運用した事例
ゲーム向けマネジメントツール「Hansoft」の概要とコンシューマ開発で1年間運用した事例ゲーム向けマネジメントツール「Hansoft」の概要とコンシューマ開発で1年間運用した事例
ゲーム向けマネジメントツール 「Hansoft」の概要と コンシューマ開発で1年間 運用した事例
 
SEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジSEゼミ2015 - コードチェンジ
SEゼミ2015 - コードチェンジ
 

Viewers also liked

リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有
リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有
リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有Kouhei Sutou
 
リーダブルコードを読んだ後
リーダブルコードを読んだ後リーダブルコードを読んだ後
リーダブルコードを読んだ後Kouhei Sutou
 
実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジKouhei Sutou
 
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりSEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりKouhei Sutou
 
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりSEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりKouhei Sutou
 
クリアなコードの作り方 - How to make clear code
クリアなコードの作り方 - How to make clear codeクリアなコードの作り方 - How to make clear code
クリアなコードの作り方 - How to make clear codeKouhei Sutou
 
実践リーダブルコードのまとめ
実践リーダブルコードのまとめ実践リーダブルコードのまとめ
実践リーダブルコードのまとめKouhei Sutou
 
プログラマー
プログラマープログラマー
プログラマーKouhei Sutou
 
The history of testing framework in Ruby
The history of testing framework in RubyThe history of testing framework in Ruby
The history of testing framework in RubyKouhei Sutou
 
OSS Gateワークショップ(チュートリアル) - フィードバック
OSS Gateワークショップ(チュートリアル) - フィードバックOSS Gateワークショップ(チュートリアル) - フィードバック
OSS Gateワークショップ(チュートリアル) - フィードバックKouhei Sutou
 
MariaDBにバンドルされていないMroonga
MariaDBにバンドルされていないMroongaMariaDBにバンドルされていないMroonga
MariaDBにバンドルされていないMroongaKouhei Sutou
 
実践リーダブルコードのアイスブレイク
実践リーダブルコードのアイスブレイク実践リーダブルコードのアイスブレイク
実践リーダブルコードのアイスブレイクKouhei Sutou
 
Rubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアRubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアKouhei Sutou
 
SEゼミ2015 - リーダブルコード勉強会のアイスブレイク
SEゼミ2015 - リーダブルコード勉強会のアイスブレイクSEゼミ2015 - リーダブルコード勉強会のアイスブレイク
SEゼミ2015 - リーダブルコード勉強会のアイスブレイクKouhei Sutou
 

Viewers also liked (16)

リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有
リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有
リーダブルコードワークショップ(パイオニア向け)のリーダブルコードの共有
 
リーダブルコードを読んだ後
リーダブルコードを読んだ後リーダブルコードを読んだ後
リーダブルコードを読んだ後
 
実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ
 
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりSEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
 
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえりSEゼミ2014 - リーダブルコード勉強会のグループふりかえり
SEゼミ2014 - リーダブルコード勉強会のグループふりかえり
 
クリアなコードの作り方 - How to make clear code
クリアなコードの作り方 - How to make clear codeクリアなコードの作り方 - How to make clear code
クリアなコードの作り方 - How to make clear code
 
実践リーダブルコードのまとめ
実践リーダブルコードのまとめ実践リーダブルコードのまとめ
実践リーダブルコードのまとめ
 
プログラマー
プログラマープログラマー
プログラマー
 
The history of testing framework in Ruby
The history of testing framework in RubyThe history of testing framework in Ruby
The history of testing framework in Ruby
 
OSS Gateワークショップ(チュートリアル) - フィードバック
OSS Gateワークショップ(チュートリアル) - フィードバックOSS Gateワークショップ(チュートリアル) - フィードバック
OSS Gateワークショップ(チュートリアル) - フィードバック
 
MariaDBにバンドルされていないMroonga
MariaDBにバンドルされていないMroongaMariaDBにバンドルされていないMroonga
MariaDBにバンドルされていないMroonga
 
実践リーダブルコードのアイスブレイク
実践リーダブルコードのアイスブレイク実践リーダブルコードのアイスブレイク
実践リーダブルコードのアイスブレイク
 
HerokuでGroonga
HerokuでGroongaHerokuでGroonga
HerokuでGroonga
 
Groongaの特徴
Groongaの特徴Groongaの特徴
Groongaの特徴
 
Rubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアRubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェア
 
SEゼミ2015 - リーダブルコード勉強会のアイスブレイク
SEゼミ2015 - リーダブルコード勉強会のアイスブレイクSEゼミ2015 - リーダブルコード勉強会のアイスブレイク
SEゼミ2015 - リーダブルコード勉強会のアイスブレイク
 

Similar to SEゼミ2015 - 練習

リーダブルコード勉強会 in 筑波大 - コードチェンジ
リーダブルコード勉強会 in 筑波大 - コードチェンジリーダブルコード勉強会 in 筑波大 - コードチェンジ
リーダブルコード勉強会 in 筑波大 - コードチェンジKouhei Sutou
 
リーダブルコードワークショップ(パイオニア向け)の概要
リーダブルコードワークショップ(パイオニア向け)の概要リーダブルコードワークショップ(パイオニア向け)の概要
リーダブルコードワークショップ(パイオニア向け)の概要Kouhei Sutou
 
SEゼミ2014 - コードチェンジ
SEゼミ2014 - コードチェンジSEゼミ2014 - コードチェンジ
SEゼミ2014 - コードチェンジKouhei Sutou
 
SEゼミ2015 - OSS Hack 4 Beginners - フィードバック
SEゼミ2015 - OSS Hack 4 Beginners - フィードバックSEゼミ2015 - OSS Hack 4 Beginners - フィードバック
SEゼミ2015 - OSS Hack 4 Beginners - フィードバックKouhei Sutou
 
実践リーダブルコードのふりかえり
実践リーダブルコードのふりかえり実践リーダブルコードのふりかえり
実践リーダブルコードのふりかえりKouhei Sutou
 
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTipsShou Takenaka
 
SEゼミ2015 - OSS Hack 4 Beginners - まとめ
SEゼミ2015 - OSS Hack 4 Beginners - まとめSEゼミ2015 - OSS Hack 4 Beginners - まとめ
SEゼミ2015 - OSS Hack 4 Beginners - まとめKouhei Sutou
 
リーダブルコード勉強会 in 筑波大のまとめ
リーダブルコード勉強会 in 筑波大のまとめリーダブルコード勉強会 in 筑波大のまとめ
リーダブルコード勉強会 in 筑波大のまとめKouhei Sutou
 
Potatotops20141217
Potatotops20141217Potatotops20141217
Potatotops20141217Mogi Isamu
 
nseg第5回勉強会
nseg第5回勉強会nseg第5回勉強会
nseg第5回勉強会ko ty
 
SEゼミ2015 - リーダブルコード勉強会のまとめ
SEゼミ2015 - リーダブルコード勉強会のまとめSEゼミ2015 - リーダブルコード勉強会のまとめ
SEゼミ2015 - リーダブルコード勉強会のまとめKouhei Sutou
 
実践リーダブルコードのまとめ
実践リーダブルコードのまとめ実践リーダブルコードのまとめ
実践リーダブルコードのまとめKouhei Sutou
 
SEゼミ2015 - リーダブルコード勉強会のグループふりかえり
SEゼミ2015 - リーダブルコード勉強会のグループふりかえりSEゼミ2015 - リーダブルコード勉強会のグループふりかえり
SEゼミ2015 - リーダブルコード勉強会のグループふりかえりKouhei Sutou
 
5minQues - SWET近況報告
5minQues - SWET近況報告5minQues - SWET近況報告
5minQues - SWET近況報告Masaki Nakagawa
 
リーダブルコード勉強会 in 筑波大のグループふりかえり
リーダブルコード勉強会 in 筑波大のグループふりかえりリーダブルコード勉強会 in 筑波大のグループふりかえり
リーダブルコード勉強会 in 筑波大のグループふりかえりKouhei Sutou
 
実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジKouhei Sutou
 
テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2Masashi Shibata
 
ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 schoowebcampus
 

Similar to SEゼミ2015 - 練習 (20)

リーダブルコード勉強会 in 筑波大 - コードチェンジ
リーダブルコード勉強会 in 筑波大 - コードチェンジリーダブルコード勉強会 in 筑波大 - コードチェンジ
リーダブルコード勉強会 in 筑波大 - コードチェンジ
 
リーダブルコードワークショップ(パイオニア向け)の概要
リーダブルコードワークショップ(パイオニア向け)の概要リーダブルコードワークショップ(パイオニア向け)の概要
リーダブルコードワークショップ(パイオニア向け)の概要
 
SEゼミ2014 - コードチェンジ
SEゼミ2014 - コードチェンジSEゼミ2014 - コードチェンジ
SEゼミ2014 - コードチェンジ
 
SEゼミ2015 - OSS Hack 4 Beginners - フィードバック
SEゼミ2015 - OSS Hack 4 Beginners - フィードバックSEゼミ2015 - OSS Hack 4 Beginners - フィードバック
SEゼミ2015 - OSS Hack 4 Beginners - フィードバック
 
実践リーダブルコードのふりかえり
実践リーダブルコードのふりかえり実践リーダブルコードのふりかえり
実践リーダブルコードのふりかえり
 
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips
自社開発プロダクト ALL-IN で行っている単体テストのパフォーマンスチューニングTips
 
SEゼミ2015 - OSS Hack 4 Beginners - まとめ
SEゼミ2015 - OSS Hack 4 Beginners - まとめSEゼミ2015 - OSS Hack 4 Beginners - まとめ
SEゼミ2015 - OSS Hack 4 Beginners - まとめ
 
リーダブルコード勉強会 in 筑波大のまとめ
リーダブルコード勉強会 in 筑波大のまとめリーダブルコード勉強会 in 筑波大のまとめ
リーダブルコード勉強会 in 筑波大のまとめ
 
Potatotops20141217
Potatotops20141217Potatotops20141217
Potatotops20141217
 
nseg第5回勉強会
nseg第5回勉強会nseg第5回勉強会
nseg第5回勉強会
 
SEゼミ2015 - リーダブルコード勉強会のまとめ
SEゼミ2015 - リーダブルコード勉強会のまとめSEゼミ2015 - リーダブルコード勉強会のまとめ
SEゼミ2015 - リーダブルコード勉強会のまとめ
 
実践リーダブルコードのまとめ
実践リーダブルコードのまとめ実践リーダブルコードのまとめ
実践リーダブルコードのまとめ
 
SEゼミ2015 - リーダブルコード勉強会のグループふりかえり
SEゼミ2015 - リーダブルコード勉強会のグループふりかえりSEゼミ2015 - リーダブルコード勉強会のグループふりかえり
SEゼミ2015 - リーダブルコード勉強会のグループふりかえり
 
5minQues - SWET近況報告
5minQues - SWET近況報告5minQues - SWET近況報告
5minQues - SWET近況報告
 
リーダブルコード勉強会 in 筑波大のグループふりかえり
リーダブルコード勉強会 in 筑波大のグループふりかえりリーダブルコード勉強会 in 筑波大のグループふりかえり
リーダブルコード勉強会 in 筑波大のグループふりかえり
 
実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ実践リーダブルコードのコードチェンジ
実践リーダブルコードのコードチェンジ
 
テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2テスト駆動開発入門 - C4K Meetup#2
テスト駆動開発入門 - C4K Meetup#2
 
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
 
ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発
 
.Netlab202107
.Netlab202107.Netlab202107
.Netlab202107
 

More from Kouhei Sutou

RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache ArrowRubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache ArrowKouhei Sutou
 
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021Kouhei Sutou
 
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache ArrowRubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache ArrowKouhei Sutou
 
Rubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェアRubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェアKouhei Sutou
 
Apache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのかApache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのかKouhei Sutou
 
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory dataApache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory dataKouhei Sutou
 
Redmine検索の未来像
Redmine検索の未来像Redmine検索の未来像
Redmine検索の未来像Kouhei Sutou
 
Apache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory dataApache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory dataKouhei Sutou
 
Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6Kouhei Sutou
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームKouhei Sutou
 
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システムMySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システムKouhei Sutou
 
MySQL 8.0でMroonga
MySQL 8.0でMroongaMySQL 8.0でMroonga
MySQL 8.0でMroongaKouhei Sutou
 
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!Kouhei Sutou
 
MariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システムMariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システムKouhei Sutou
 
PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!Kouhei Sutou
 

More from Kouhei Sutou (20)

RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache ArrowRubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
 
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
 
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache ArrowRubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
 
Rubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェアRubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェア
 
Apache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのかApache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのか
 
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory dataApache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory data
 
Apache Arrow 2019
Apache Arrow 2019Apache Arrow 2019
Apache Arrow 2019
 
Redmine検索の未来像
Redmine検索の未来像Redmine検索の未来像
Redmine検索の未来像
 
Apache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory dataApache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory data
 
Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6
 
Apache Arrow
Apache ArrowApache Arrow
Apache Arrow
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
 
Apache Arrow
Apache ArrowApache Arrow
Apache Arrow
 
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システムMySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
 
MySQL 8.0でMroonga
MySQL 8.0でMroongaMySQL 8.0でMroonga
MySQL 8.0でMroonga
 
My way with Ruby
My way with RubyMy way with Ruby
My way with Ruby
 
Red Data Tools
Red Data ToolsRed Data Tools
Red Data Tools
 
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
 
MariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システムMariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システム
 
PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!
 

SEゼミ2015 - 練習

  • 1. 練習の仕方 Powered by Rabbit 2.1.7 練習の仕方 須藤功平 株式会社クリアコード SEゼミ2015 - リーダブルコード勉強会 2015-06-06
  • 2. 練習の仕方 Powered by Rabbit 2.1.7 課題が目指すこと ↓を体験する コードを読んで✓ リーダブルコードを見つける✓ ↑を活かしてコードを書く✓
  • 3. 練習の仕方 Powered by Rabbit 2.1.7 課題が目指さないこと テクニックをたくさん覚える✓ 難しいプログラムでも 実装できるようになる ✓ 速く実装できるようになる✓
  • 4. 練習の仕方 Powered by Rabbit 2.1.7 課題の傾向 技術的に難しいことは 意図的に避けている ✓ 段階的に改良していく✓ 時間内で実装しきれない分量 すべて実装する必要はない!✓ ✓
  • 5. 練習の仕方 Powered by Rabbit 2.1.7 練習としてやること 仕様1を実装進め方の詳細はtask.mdを参照 https://github.com/clear-code/sezemi-2015/から辿れる メンター:参加者がtask.mdを見つけられるようにサポート メンター:見つけられたら教えて
  • 6. 練習の仕方 Powered by Rabbit 2.1.7 メモ 課題は精一杯の リーダブルコードで実装する ✓ リーダブルポイントをメモする メモはリポジトリーにpush✓ 書き方は後述✓ コードを交換した相手も読むよ!✓ ✓
  • 7. 練習の仕方 Powered by Rabbit 2.1.7 リーダブルコードとは 読む人基準 読む人が 読みやすいなら リーダブル ✓ ✓ 読む人の視点を意識してみて どんな人が読む?✓ どんな前提知識がある?✓ ✓
  • 8. 練習の仕方 Powered by Rabbit 2.1.7 困ったら1 メンターに相談 メンターは答えを教えない✓ 一緒に考えてくれる✓ ✓ なんで!?答えを教えてよ! トレーナーが禁止している (参加者が考える機会を奪わないため) ✓ メンターは意地悪ではない✓ ✓ メンターへ:新しい視点に導いてあげてください
  • 9. 練習の仕方 Powered by Rabbit 2.1.7 困ったら2 まわりの参加者に相談 答えを教えてもよい✓ 一緒に考えてもよい✓ ✓ ヒント 答えを教えるときは理由も伝える (教える参加者が考える機会になる!) ✓ 聞く人は理由も聞く (考え方を知ると新しい視点でコードを読める!) ✓ ✓
  • 10. 練習の仕方 Powered by Rabbit 2.1.7 困ったら3 他の参加者のコードを見る コードから学ぶ!✓ この勉強会で大事にしていること✓ ✓ ヒント 参考にするときは理由を考える✓ どうしてこのコードがリーダブル?✓ メモに書こう✓ ✓
  • 11. 練習の仕方 Powered by Rabbit 2.1.7 課題1が終わったら メンターに確認依頼 →OKなら各自休憩✓ ✓ 休憩後 task.mdを最初から読み直す✓ 読み直したら課題2以降を進める✓ 随時メモを書こう!✓ ✓ メモ:task.mdにあるメモの書き方例を紹介することを忘れない
  • 12. 練習の仕方 Powered by Rabbit 2.1.7 …課題実装中… 今の自分の精一杯の リーダブルコードを書こう ✓ ↑をmemo.mdにメモろう 実際のコード・説明・一言説明✓ 例はtask.md参照✓ ✓ メンターへ:メビューで使うのでメンターもメモろう メンターへ:たまに「どんなメモ書いた?」と聞いて課題をこ なすことではなくリーダブルコードを書くことに参加者の注意 を向けてみよう