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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
William Webster
November 27, 2014
Technology
53
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Perth Code Dojo 5
William Webster
November 27, 2014
More Decks by William Webster
See All by William Webster
Building_Highly_Engaged_Teams.pdf
burlistic
0
120
Quantum Encryption - Advances In Data Security
burlistic
0
65
Perth Code Dojo 12
burlistic
0
93
Perth Code Dojo 11
burlistic
0
73
Introducing Agile to Enterprise
burlistic
0
83
Perth Code Dojo 6 - Decoupling the UI
burlistic
0
68
Perth Code Dojo 4
burlistic
0
57
Perth Code Dojo 3
burlistic
0
98
Perth Code Dojo 2
burlistic
0
110
Other Decks in Technology
See All in Technology
ガバメントクラウドでのランサムウェア対策
techniczna
1
690
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
470
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
最高のシステムプロンプトを作るためにフィードバック機能を導入した話
alchemy1115
1
310
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
110
plamo-3-translateの開発
pfn
PRO
0
270
初めてのGitHub Actions / GitHub Actions at First
tooppoo
0
140
サイバー捜査員研修(前半)
nomizone
1
1.4k
[MIRU26] To What Extent Does MLLM-as-a-Judge Exhibit Cross-Model Preference Bias?
keio_smilab
PRO
0
200
Digitization部 紹介資料
sansan33
PRO
2
7.7k
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
350
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.6k
Featured
See All Featured
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
400
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
How GitHub (no longer) Works
holman
316
150k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Producing Creativity
orderedlist
PRO
348
40k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
The Pragmatic Product Professional
lauravandoore
37
7.4k
GraphQLとの向き合い方2022年版
quramy
50
15k
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