Global Day of Coderetreat 2013 Chennai - JUGChennai

Post on 15-Jan-2015

1.942 views 0 download

Tags:

description

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

Transcript of Global Day of Coderetreat 2013 Chennai - JUGChennai

Hidden Slide Slower

a day like no other

December 14, 2013

Coderetreat

Hidden Delay

2200 Developers

160 Locations

6 Continents

20 Time zones

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

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

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

Hidden Slide Slower

Continent Sponsors

Corey Haines

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/

NO PRESSURE

feel free to experiment

NO PRESSURE

do not complete the task but master it

FORMAT of the DAY from 10:00 to13:00

MORNING

from 13:00 to14:00

LUNCH

from 14:00 to17:00

AFTERNOON

FORMAT of the DAY

CODING

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

SIMPLE DESIGN

“DELETE” YOUR CODE

AFTER EACH SESSION

WE LOVE TO SEE MULTIPLE PROGRAMMING LANGUAGES

•  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

•  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

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

REFACTORINGS •  OCP STYLE

VARIATIONS

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

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

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

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

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

LIFE EVOLUTION 1 2 3

LIFE EVOLUTION 1 2 3

LIFE EVOLUTION 1 2 3

May the source be with you

Happy coding!