Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ももたろう
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
terahide
September 06, 2014
Programming
0
79
ももたろう
2014/09/06に行われたXP祭り2014 のLTの資料です。
当日は英語でプレゼンテーションを行いました
terahide
September 06, 2014
Tweet
Share
More Decks by terahide
See All by terahide
アニメに学ぶチームの多様性とコンピテンシー
terahide
0
590
テスト駆動開発でダイエットに挑戦して失敗した話
terahide
0
1.2k
コミュニケーション不全はなぜ起きるか
terahide
0
150
オレオレになりがちなテスト計画を見直した話
terahide
0
170
和服を普段着にするようになって気づいたアジャイルの心
terahide
0
43
Management3.0のワークを受けてから会社の偉い人へM3.0のワークショップをするまでにやったこと
terahide
0
140
一番アジャイルな料理人はソーマくんだと思うんだ
terahide
0
83
Att
terahide
0
26
受託開発でテストファーストしたらXXXを早期発見できてハイアジリティになったはなし
terahide
0
42
Other Decks in Programming
See All in Programming
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.2k
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.4k
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.1k
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
Implementation Patterns
denyspoltorak
0
290
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
300
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
170
AI巻き込み型コードレビューのススメ
nealle
1
290
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
190
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
Scaling GitHub
holman
464
140k
How to train your dragon (web standard)
notwaldorf
97
6.5k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
430
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Transcript
見どころ
英語ができな い てらひで が英語でLTに 挑戦します
てらひで @terahide27 認定スクラムマスター アジャイルコーチ アーキテクト
てらひで @terahide27 http://gigazine.net/news/20140601-anime-2014summer/ 深夜アニメの カバレッジ90%以上
ももたろう
質問です 次のページに 1か所誤りが あります
昔々あるところにお爺さんとお婆さんがいました。働 き者の二人は朝は日の昇る前の暗いうちから、夜は 日が暮れて暗くなるまで毎日毎日働いて暮らしてい ました。それでも二人の暮らしは貧しく日々暮らして いくのが精いっぱいでした。ある日、お爺さんは山に 芝刈りへ、お婆さんは川に洗濯へ出かけました。お 婆さんが川で洗濯をしていると、川の上流から何か が流れてくるではありませんか。なんと大きな桃がど んぶらこ、どんぶらこと流れてきました。お婆さんは 川にはいり桃を拾うと「まぁなんて大きな桃だべや。
おじいさんと一緒に食べることにしましょうかねー」 と桃をしょって帰りました。山から戻ってきたお爺さん と一緒に桃を切ろうとすると、桃はひとりでに「ぱ かーん」と割れ、中から桃子が飛び出てきました。
気づきまし た?
None
http://momokyun.com/
こうしたらわかる •昔々 •お爺さんとお婆さん •流れてきた大きな桃 •桃からももたろう
実装 してみた
注意! もっとよい実装案 があったらぜひ教 えてください
def "ももたろうのストーリー"(){ Calendar cal = Calendar.instance cal.add(Calendar.YEAR, -400) def uncle,aunt
Location.set(Japan,aDeepForest)//TODO a village? uncle = PersonFactory.newInstance() aunt = PersonFactory.newInstance() uncle.move(new Location(20,30),100)//mountain while(true){ Branch b = getBranch() if( b == null){ break; } uncle.pickup(b) } aunt.move(new Location(-30,0),-40)//river for(i=0;i<23;i++){ Clothes c = getClothes (i); aunt.wash(c) } River.flow(new RiverHandler(aunt){ def "catch"(donbrako,aunt){ peach = (Peach)donbrako aunt.keep(peach) } }) def momotaro try{ aunt.cutPeach() }catch(PeachSelfSplitedException e){ momotaro = e.birth } } }
def "ももたろうのストーリー"(){ aLongLongTimeAgo() aDeepForest() def [uncle,aunt] = live() uncle.goMountain() uncle.pickUpBranch(allArround())
aunt.goRiver() aunt.washClothes() eventAtRiver(aunt) def momotaro = birth(aunt.getKeepedPeach) } def eventAtRiver(aunt){ River.flow(new RiverHandler(aunt){ def "catch"(donbrako,aunt){ peach = (Peach)donbrako aunt.keep(peach) } }) } def birth(peach){ def momotaro try{ aunt.cutPeach(new CutPeachHandler(){ def handle(peach){ momotaro = peach.birth } })
あなたの お好みは どちら?
まとめ •意図を伝えるの大事 •読まなくても分かる (直観的) •単純明快
Why Readable? Why Readable?