Adastral Park code retreat introduction

ADASTRAL PARK
CODE
RETREAT
The boring stuff
Adastral Park code retreat introduction
Perfection
Pressure
“Real artists ship.”
Perfection




http://www.flickr.com/photos/anguskirk/2814337725
Perfection



   Your normal level




http://www.flickr.com/photos/anguskirk/2814337725
Perfection

   How much you suck

   Your normal level




http://www.flickr.com/photos/anguskirk/2814337725
Perfection

   How much you suck
   Your normal level




http://www.flickr.com/photos/anguskirk/2814337725
Simple code:
1. Passes all its tests
2. Clearly expresses intent
3. Contains no duplication
4. Has no superfluous parts
Simple code:
1. Passes all its tests
2. Clearly expresses intent
3. Contains no duplication
4. Has no superfluous parts
Simple code:
1. Passes all its tests
2. Clearly expresses intent
3. Contains no duplication
4. Has no superfluous parts
Simple code:
1. Passes all its tests
2. Clearly expresses intent
3. Contains no duplication
4. Has no superfluous parts
Simple code:
1. Passes all its tests
1. Fix bad expresses intent
2. Clearly names
2. Remove duplication
3. Contains no duplication
4. Has no superfluous parts
Format of the day
45 min coding   10 min retrospective   5 min break
Format of the day
45 min coding   10 min retrospective   5 min break
Adastral Park code retreat introduction
Adastral Park code retreat introduction
After each session…
After each session…


  Delete
your code!
Conway’s game of life
Infinite 2-d grid
Cells are alive or dead
Each cell has eight
   neighbours

      1   2   3
      4       5
      6   7   8
At each clock tick…
Cells with fewer than
 two neighbours die
Cells with fewer than
 two neighbours die
Cells with two or three
  neighbours live on
Cells with more than
three neighbours die
Cells with more than
three neighbours die
Dead cells with exactly
 three live neighbours
      come alive
Dead cells with exactly
 three live neighbours
      come alive
http://www.youtube.com/watch?v=XcuBvj0pw-E
Languages
Ready?
1 of 36

Recommended

Firecracker Home V.2 by
Firecracker Home V.2Firecracker Home V.2
Firecracker Home V.2RachelRosebud
444 views53 slides
manejo de repositorios by
manejo de repositoriosmanejo de repositorios
manejo de repositoriosPaulina Chacón
198 views5 slides
Sampling Postmodernism by
Sampling PostmodernismSampling Postmodernism
Sampling Postmodernismguestda5679
630 views9 slides
Jasmine by
JasmineJasmine
JasmineKerry Buckley
18.2K views21 slides
You've Made It - Pitching to TechCrunch & Using AngelList by
You've Made It - Pitching to TechCrunch & Using AngelListYou've Made It - Pitching to TechCrunch & Using AngelList
You've Made It - Pitching to TechCrunch & Using AngelListRandy Ksar
6.8K views12 slides

More Related Content

More from Kerry Buckley

Testing http calls with Webmock and VCR by
Testing http calls with Webmock and VCRTesting http calls with Webmock and VCR
Testing http calls with Webmock and VCRKerry Buckley
9.9K views21 slides
BDD with cucumber by
BDD with cucumberBDD with cucumber
BDD with cucumberKerry Buckley
5.7K views54 slides
Ruby nooks & crannies by
Ruby nooks & cranniesRuby nooks & crannies
Ruby nooks & cranniesKerry Buckley
846 views253 slides
TDD refresher by
TDD refresherTDD refresher
TDD refresherKerry Buckley
1.1K views38 slides
Javasccript MV* frameworks by
Javasccript MV* frameworksJavasccript MV* frameworks
Javasccript MV* frameworksKerry Buckley
1.3K views30 slides
Tdd for BT E2E test community by
Tdd for BT E2E test communityTdd for BT E2E test community
Tdd for BT E2E test communityKerry Buckley
1.2K views88 slides

More from Kerry Buckley(20)

Testing http calls with Webmock and VCR by Kerry Buckley
Testing http calls with Webmock and VCRTesting http calls with Webmock and VCR
Testing http calls with Webmock and VCR
Kerry Buckley9.9K views
Javasccript MV* frameworks by Kerry Buckley
Javasccript MV* frameworksJavasccript MV* frameworks
Javasccript MV* frameworks
Kerry Buckley1.3K views
Tdd for BT E2E test community by Kerry Buckley
Tdd for BT E2E test communityTdd for BT E2E test community
Tdd for BT E2E test community
Kerry Buckley1.2K views
What I learned from Seven Languages in Seven Weeks (IPRUG) by Kerry Buckley
What I learned from Seven Languages in Seven Weeks (IPRUG)What I learned from Seven Languages in Seven Weeks (IPRUG)
What I learned from Seven Languages in Seven Weeks (IPRUG)
Kerry Buckley1.1K views
MongoMapper lightning talk by Kerry Buckley
MongoMapper lightning talkMongoMapper lightning talk
MongoMapper lightning talk
Kerry Buckley1.2K views
The secret life of bees by Kerry Buckley
The secret life of beesThe secret life of bees
The secret life of bees
Kerry Buckley1.9K views
Background processing by Kerry Buckley
Background processingBackground processing
Background processing
Kerry Buckley1.3K views
Katas, Contests and Coding Dojos by Kerry Buckley
Katas, Contests and Coding DojosKatas, Contests and Coding Dojos
Katas, Contests and Coding Dojos
Kerry Buckley919 views
Kanban and Iterationless Working by Kerry Buckley
Kanban and Iterationless WorkingKanban and Iterationless Working
Kanban and Iterationless Working
Kerry Buckley747 views
Software Development Trends by Kerry Buckley
Software Development TrendsSoftware Development Trends
Software Development Trends
Kerry Buckley1.4K views

Recently uploaded

Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...The Digital Insurer
24 views52 slides
SAP Automation Using Bar Code and FIORI.pdf by
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdfVirendra Rai, PMP
25 views38 slides
PharoJS - Zürich Smalltalk Group Meetup November 2023 by
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023Noury Bouraqadi
139 views17 slides
"Running students' code in isolation. The hard way", Yurii Holiuk by
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk Fwdays
24 views34 slides
Future of AR - Facebook Presentation by
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook PresentationRob McCarty
22 views27 slides
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
43 views35 slides

Recently uploaded(20)

Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi139 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays24 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty22 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
The Forbidden VPN Secrets.pdf by Mariam Shaba
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdf
Mariam Shaba20 views
Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn26 views

Adastral Park code retreat introduction

Editor's Notes

  1. \n
  2. \n
  3. Created format as group practice exercise, concentrating on code quality and removing pressure to deliver working system.\n
  4. When did you last write perfect code? Never.\n
  5. Pressure to deliver (even self-imposed pressure, eg on hobby projects).\n
  6. Delivery pressure not a bad thing! No use writing perfect code that never does any useful work.\nBut, just for today, concentrate only on quality of code, not finishing the problem (it’s designed so you can’t finish it)\n
  7. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  8. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  9. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  10. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  11. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  12. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  13. Hopefully go back to work on Monday writing code that sucks a little bit less!\n
  14. Intent: each piece of the system should do one thing only, and make it clear what that is.\nDuplication: concepts as well as actual chunks of code.\nOrdered, highest priority first.\n
  15. Do these things and you’ll generally have good code.\nClean code is all about minimising the cost of change.\n
  16. Do these things and you’ll generally have good code.\nClean code is all about minimising the cost of change.\n
  17. Do these things and you’ll generally have good code.\nClean code is all about minimising the cost of change.\n
  18. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  19. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  20. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  21. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  22. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  23. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  24. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  25. First session get a feel for the problem, then start approaching from different directions, or with different constraints.\n
  26. Pair with someone different each session. Learn something from everyone, and also helps approaches to today’s problem spread.\nSwap driver and navigator frequently.\nTry a different language.\n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n