$30 off During Our Annual Pro Sale. View Details »
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
60
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
WordPress は終わったのか ~今のWordPress の制作手法ってなにがあんねん?~ / Is WordPress Over? How We Build with WordPress Today
tbshiki
1
530
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
750
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
170
プロダクトマネージャーが押さえておくべき、ソフトウェア資産とAIエージェント投資効果 / pmconf2025
i35_267
2
590
手動から自動へ、そしてその先へ
moritamasami
0
290
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
210
Uncertainty in the LLM era - Science, more than scale
gaelvaroquaux
0
820
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
210
SSO方式とJumpアカウント方式の比較と設計方針
yuobayashi
7
520
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
580
regrowth_tokyo_2025_securityagent
hiashisan
0
180
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
200
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Designing Experiences People Love
moore
143
24k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
For a Future-Friendly Web
brad_frost
180
10k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.1k
Writing Fast Ruby
sferik
630
62k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Scaling GitHub
holman
464
140k
The Cult of Friendly URLs
andyhume
79
6.7k
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