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
42
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
46
Perth Code Dojo 12
burlistic
0
77
Perth Code Dojo 11
burlistic
0
57
Introducing Agile to Enterprise
burlistic
0
69
Perth Code Dojo 6 - Decoupling the UI
burlistic
0
57
Perth Code Dojo 4
burlistic
0
42
Perth Code Dojo 3
burlistic
0
87
Perth Code Dojo 2
burlistic
0
97
Other Decks in Technology
See All in Technology
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
3
650
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
会社にデータエンジニアがいることでできるようになること
10xinc
9
1.6k
生成AI利用プログラミング:誰でもプログラムが書けると 世の中どうなる?/opencampus202508
okana2ki
0
190
夢の印税生活 / Life on Royalties
tmtms
0
280
[OCI Skill Mapping] AWSユーザーのためのOCI(2025年8月20日開催)
oracle4engineer
PRO
2
150
サービスロボット最前線:ugoが挑むPhysical AI活用
kmatsuiugo
0
190
[CVPR2025論文読み会] Linguistics-aware Masked Image Modelingfor Self-supervised Scene Text Recognition
s_aiueo32
0
210
モダンな現場と従来型の組織——そこに生じる "不整合" を解消してこそチームがパフォーマンスを発揮できる / Team-oriented Organization Design 20250825
mtx2s
6
550
Effective Match Types - Scala Days 2025
bishabosha
1
110
Product Management Conference -AI時代に進化するPdM-
kojima111
0
220
モダンフロントエンド 開発研修
recruitengineers
PRO
3
350
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
Automating Front-end Workflow
addyosmani
1370
200k
Producing Creativity
orderedlist
PRO
347
40k
Rails Girls Zürich Keynote
gr2m
95
14k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
It's Worth the Effort
3n
187
28k
Optimizing for Happiness
mojombo
379
70k
Six Lessons from altMBA
skipperchong
28
4k
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