34
Hidden Slide Slower a day like no other December 14, 2013 Coderetreat

Global Day of Coderetreat 2013 Chennai - JUGChennai

Embed Size (px)

DESCRIPTION

JUGChennai Global Day of Coderetreat 2013 at Software AG, Chennai.

Citation preview

Page 1: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

a day like no other

December 14, 2013

Coderetreat

Page 2: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Delay

2200 Developers

160 Locations

6 Continents

20 Time zones

Page 3: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

JetBrains tools help professional developers simplify their challenging tasks, automate the routine ones and adopt best development practices. We make tools for .NET, Java, PHP, HTML, JavaScript, Ruby, Python, Objective-C developers, as well as team collaboration tools. www.jetbrains.com

Globe Sponsor

Page 4: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

A software company and community of passionate individuals whose purpose is to revolutionise software creation and delivery, while advocating for positive social change. www.thoughtworks.com

Globe Sponsor

Page 5: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over four million people use GitHub to build amazing things together. github.com

Globe Sponsor

Page 6: Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

Continent Sponsors

Page 7: Global Day of Coderetreat 2013 Chennai - JUGChennai

Corey Haines

Page 8: Global Day of Coderetreat 2013 Chennai - JUGChennai

Software development is a craft and as practitioners we need to understand and deliberately work on expanding our skills so we can deliver what our clients need, when they need it and in a sustainable way.

http://leanmagazine.net/lean/software-craftsmanship/

Page 9: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 10: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 11: Global Day of Coderetreat 2013 Chennai - JUGChennai

NO PRESSURE

feel free to experiment

Page 12: Global Day of Coderetreat 2013 Chennai - JUGChennai

NO PRESSURE

do not complete the task but master it

Page 13: Global Day of Coderetreat 2013 Chennai - JUGChennai

FORMAT of the DAY from 10:00 to13:00

MORNING

from 13:00 to14:00

LUNCH

from 14:00 to17:00

AFTERNOON

Page 14: Global Day of Coderetreat 2013 Chennai - JUGChennai

FORMAT of the DAY

Page 15: Global Day of Coderetreat 2013 Chennai - JUGChennai

CODING

Page 16: Global Day of Coderetreat 2013 Chennai - JUGChennai

1. PASSES ALL ITS TESTS 2. CLEARLY EXPRESSES INTENT 3. CONTAINS NO DUPLICATION 4. HAS NO SUPERFLUOUS PARTS

SIMPLE DESIGN

Page 17: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 18: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 19: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 20: Global Day of Coderetreat 2013 Chennai - JUGChennai

“DELETE” YOUR CODE

AFTER EACH SESSION

Page 21: Global Day of Coderetreat 2013 Chennai - JUGChennai

WE LOVE TO SEE MULTIPLE PROGRAMMING LANGUAGES

Page 22: Global Day of Coderetreat 2013 Chennai - JUGChennai

•  AVOID TO USE PRIMITIVES •  AVOID TO USE ELSE IN

CONDITIONS •  EXTREME TELL DO NOT ASK •  MAX OF 5 LINES OF CODE PER

METHOD •  PING PONG PROGRAMMING •  TRY TO USE DIFFERENT

CONCEPTS (GRID GAME CELL...) AS A CENTER

VARIATIONS

Page 23: Global Day of Coderetreat 2013 Chennai - JUGChennai

•  AVOID TO USE CONDITIONS •  TRY TO GUESS THE RESULT

OF TESTS •  DO NOT USE ARRAYS •  USE ONLY INTERACTION

BASED TESTS •  USE ONLY STATE BASED

TESTS •  ALL METHODS RETURNS VOID

VARIATIONS

Page 24: Global Day of Coderetreat 2013 Chennai - JUGChennai

•  DO NOT TALK WITH YOUR PAIR •  TDD AS IF YOU MEANT IT •  DO NOT USE THE MOUSE •  ONLY USE AUTOMATIC

REFACTORINGS •  OCP STYLE

VARIATIONS

Page 25: Global Day of Coderetreat 2013 Chennai - JUGChennai
Page 26: Global Day of Coderetreat 2013 Chennai - JUGChennai

THE GAME OF LIFE IS A TWO DIMENSIONAL GRID OF SQUARE CELLS EACH OF WHICH IS IN ONE OF TWO POSSIBLE STATES ALIVE OR DEAD

Page 27: Global Day of Coderetreat 2013 Chennai - JUGChennai

AT EACH STEP IN TIME EVERY CELL INTERACTS WITH ITS 8 NEIGHBORS FOLLOWING 3 RULES

Page 28: Global Day of Coderetreat 2013 Chennai - JUGChennai

1. ANY LIVE CELL WITH FEWER THAN 2 LIVE NEIGHBORS DIES OF LONELINESS

Page 29: Global Day of Coderetreat 2013 Chennai - JUGChennai

2. ANY LIVE CELL WITH MORE THAN 3 LIVE NEIGHBORS DIES OF OVERCROWDING

Page 30: Global Day of Coderetreat 2013 Chennai - JUGChennai

3. ANY DEAD CELL WITH EXACTLY 3 LIVE NEIGHBORS COMES TO LIFE OF WARMTH

Page 31: Global Day of Coderetreat 2013 Chennai - JUGChennai

LIFE EVOLUTION 1 2 3

Page 32: Global Day of Coderetreat 2013 Chennai - JUGChennai

LIFE EVOLUTION 1 2 3

Page 33: Global Day of Coderetreat 2013 Chennai - JUGChennai

LIFE EVOLUTION 1 2 3

Page 34: Global Day of Coderetreat 2013 Chennai - JUGChennai

May the source be with you

Happy coding!