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
43
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
78
Perth Code Dojo 11
burlistic
0
59
Introducing Agile to Enterprise
burlistic
0
70
Perth Code Dojo 6 - Decoupling the UI
burlistic
0
58
Perth Code Dojo 4
burlistic
0
43
Perth Code Dojo 3
burlistic
0
88
Perth Code Dojo 2
burlistic
0
98
Other Decks in Technology
See All in Technology
リーダーになったら未来を語れるようになろう/Speak the Future
sanogemaru
0
380
社内お問い合わせBotの仕組みと学び
nish01
1
570
防災デジタル分野での官民共創の取り組み (2)DIT/CCとD-CERTについて
ditccsugii
0
230
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
2
600
社内報はAIにやらせよう / Let AI handle the company newsletter
saka2jp
8
1.4k
AWS IoT 超入門 2025
hattori
0
330
そのWAFのブロック、どう活かす? サービスを守るための実践的多層防御と思考法 / WAF blocks defense decision
kaminashi
0
180
衛星画像超解像化によって実現する2D, 3D空間情報の即時生成と“AI as a Service”/ Real-time generation spatial data enabled_by satellite image super-resolution
lehupa
0
150
How to achieve interoperable digital identity across Asian countries
fujie
0
150
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
290
[Keynote] What do you need to know about DevEx in 2025
salaboy
0
160
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
530
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
What's in a price? How to price your products and services
michaelherold
246
12k
Documentation Writing (for coders)
carmenintech
75
5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
BBQ
matthewcrist
89
9.8k
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