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
Perth Code Dojo 5
Search
William Webster
November 27, 2014
Technology
0
44
Perth Code Dojo 5
William Webster
November 27, 2014
Tweet
Share
More Decks by William Webster
See All by William Webster
Building_Highly_Engaged_Teams.pdf
burlistic
0
110
Quantum Encryption - Advances In Data Security
burlistic
0
49
Perth Code Dojo 12
burlistic
0
79
Perth Code Dojo 11
burlistic
0
61
Introducing Agile to Enterprise
burlistic
0
71
Perth Code Dojo 6 - Decoupling the UI
burlistic
0
59
Perth Code Dojo 4
burlistic
0
45
Perth Code Dojo 3
burlistic
0
89
Perth Code Dojo 2
burlistic
0
99
Other Decks in Technology
See All in Technology
「アウトプット脳からユーザー価値脳へ」がそんなに簡単にできたら苦労しない #RSGT2026
aki_iinuma
9
4.4k
善意の活動は、なぜ続かなくなるのか ーふりかえりが"構造を変える判断"になった半年間ー
matsukurou
0
330
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
310
歴史から学ぶ、Goのメモリ管理基礎
logica0419
12
2.4k
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
0
300
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
21k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.6k
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
310
AI との良い付き合い方を僕らは誰も知らない (WSS 2026 静岡版)
asei
1
250
Qiita Bash アドカレ LT #1
okaru
0
170
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
0
780
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
140
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
How to Talk to Developers About Accessibility
jct
1
94
Mind Mapping
helmedeiros
PRO
0
46
Exploring anti-patterns in Rails
aemeredith
2
220
Ruling the World: When Life Gets Gamed
codingconduct
0
120
Agile that works and the tools we love
rasmusluckow
331
21k
The Language of Interfaces
destraynor
162
26k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
What does AI have to do with Human Rights?
axbom
PRO
0
1.9k
Side Projects
sachag
455
43k
Transcript
Perth Code Dojo 5 @willwebst #CodeDojo
Check-In ➔ Your name ➔ What do you want for
Christmas? ➔ Do you believe in Santa?
Code Dojo Format A Coding Dojo is a coding session
centered around a programming challenge. The dojo provides a safe place to learn and experiment away from the pressures of business delivery. All programmers of varying skill levels meet as equals to learn and share.
Software Craftsmanship “Deliberate practice is closely related to the attained
level of performance of many types of experts” - Dr. K. Anders Ericsson
Dojo Rules ➔ Paired Programming ➔ Simple Design ➔ Test
Driven Development ➔ Refactoring
XP Practices ➔ Test Driven Design ◆ Red - Green
- Refactor ◆ Keep the unit small ◆ DESIGN / Design by contract ◆ Flow
XP Practises ➔ Benefits ◆ More extensible and maintainable solutions
◆ Quality improvements / cost of defects ◆ Automated builds ◆ Peer reviews / pairing ◆ Confidence to refactor ◆ Coverage ◆ Legacy code
XP Practises ➔ Disadvantages / challenges ◆ Requires buy in
◆ Learning curve ◆ Purest approach ◆ Overly loose coupling ◆ Not always productive ◆ Potential overconfidence ◆ Tests require maintenance / refactoring
Pomodoro ➔ Pomodoro Technique ◆ 25 mins on, 5 mins
off ◆ http://tomatoi.st/perthcodedojo ➔ Four iterations
Retro & Pizza Closing with Pizza and a mini retrospective
➔ Share solutions on the big screen ➔ Discuss challenge / approach ➔ Feedback on the dojo
Polite Notice Please respect each others commitment. During a Pomodoro.
➔ No Facebook ➔ Mobile phones ➔ Etc.
Have Fun! Most importantly have fun! ➔ Drinks are available
- help yourselves
Objective Given a word list, containing one word per line.
Find all the combinations of each word which are anagrams.
Objective Examples: Webster - bestrew Software - forwaste
Objective Think about the algorithm approach • Simplest • Fastest
Test First!
Find Anagrams http://codekata.com/data/wordlist.txt Find all the anagrams contained within the
list for each word
Begin! 25 mins
Stop! 5 mins
Remove Acronyms Remove any non-words • ACB • BBSes •
BMW's
Begin! 25 mins
Stop! 5 mins
Remove Non-English Remove any words which contain non-UFT8 characters •
étagères • Ångströms • Österreich's Remove an names - starting with uppercase
Begin! 25 mins
Stop! 5 mins
Thank You - Dave Thomas Credit goes to @PragDave /
Ruby community for this Katak Check out - http://codekata.com/ Great source for Code Katas.
Thank you sponsors! Code - http://github.com/burlistic Slides - http://speakerdeck.com/burlistic @willwebst
Mini Retro How did everyone find the exercise? Small break
for Christmas. See you in 2015! Next up - Decoupling Logic from the UI