99
ШРИ руководитель отдела разработки поисковых интерфейсов Парное программирование Сергей Бережной суббота, 3 ноября 12 г.

Сергей Бережной — Парное программирование

  • Upload
    yandex

  • View
    6.392

  • Download
    4

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Сергей Бережной — Парное программирование

ШРИ

руководитель отделаразработки поисковых интерфейсов

Парное программирование

Сергей Бережной

суббота, 3 ноября 12 г.

Page 2: Сергей Бережной — Парное программирование

суббота, 3 ноября 12 г.

Page 3: Сергей Бережной — Парное программирование

Явные профиты3

суббота, 3 ноября 12 г.

Page 4: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода

4

суббота, 3 ноября 12 г.

Page 5: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки

4

суббота, 3 ноября 12 г.

Page 6: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

4

суббота, 3 ноября 12 г.

Page 7: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

• сложные задачи

4

суббота, 3 ноября 12 г.

Page 8: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

• сложные задачи• интеграционные задачи

4

суббота, 3 ноября 12 г.

Page 9: Сергей Бережной — Парное программирование

Неявные профиты5

суббота, 3 ноября 12 г.

Page 10: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег

6

суббота, 3 ноября 12 г.

Page 11: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом

6

суббота, 3 ноября 12 г.

Page 12: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект

6

суббота, 3 ноября 12 г.

Page 13: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования

6

суббота, 3 ноября 12 г.

Page 14: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде

6

суббота, 3 ноября 12 г.

Page 15: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде• дисциплина

6

суббота, 3 ноября 12 г.

Page 16: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде• дисциплина• удовольствие

6

суббота, 3 ноября 12 г.

Page 17: Сергей Бережной — Парное программирование

Примеры7

суббота, 3 ноября 12 г.

Page 18: Сергей Бережной — Парное программирование

Примеры

• i-bem.js

8

суббота, 3 ноября 12 г.

Page 19: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML

8

суббота, 3 ноября 12 г.

Page 20: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST

8

суббота, 3 ноября 12 г.

Page 21: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW

8

суббота, 3 ноября 12 г.

Page 22: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make

8

суббота, 3 ноября 12 г.

Page 23: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки

8

суббота, 3 ноября 12 г.

Page 24: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки• Единая Карта

8

суббота, 3 ноября 12 г.

Page 25: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки• Единая Карта• Серп

8

суббота, 3 ноября 12 г.

Page 26: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки• Единая Карта• Серп• Картинки

8

суббота, 3 ноября 12 г.

Page 27: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки• Единая Карта• Серп• Картинки• Видео

8

суббота, 3 ноября 12 г.

Page 28: Сергей Бережной — Парное программирование

Примеры

• i-bem.js• BEMHTML• XJST• APW• bem server/make• сложные Лего-блоки• Единая Карта• Серп• Картинки• Видео• Почта

8

суббота, 3 ноября 12 г.

Page 29: Сергей Бережной — Парное программирование

Примеры

• не только программы

9

суббота, 3 ноября 12 г.

Page 30: Сергей Бережной — Парное программирование

суббота, 3 ноября 12 г.

Page 31: Сергей Бережной — Парное программирование

Парное программирование — техника программирования, при которой весь исходный код создаётся парами людей, программирующих одну задачу, сидя за одним рабочим местом.

11

суббота, 3 ноября 12 г.

Page 32: Сергей Бережной — Парное программирование

Парное программирование — техника программирования, при которой весь исходный код создаётся парами людей, программирующих одну задачу, сидя за одним рабочим местом. Один программист управляет компьютером и, в основном, думает над кодированием в деталях.

12

суббота, 3 ноября 12 г.

Page 33: Сергей Бережной — Парное программирование

Парное программирование — техника программирования, при которой весь исходный код создаётся парами людей, программирующих одну задачу, сидя за одним рабочим местом. Один программист управляет компьютером и, в основном, думает над кодированием в деталях. Другой программист сосредоточен на картине в целом и непрерывно просматривает код, производимый первым программистом.

13

суббота, 3 ноября 12 г.

Page 34: Сергей Бережной — Парное программирование

Парное программирование — техника программирования, при которой весь исходный код создаётся парами людей, программирующих одну задачу, сидя за одним рабочим местом. Один программист управляет компьютером и, в основном, думает над кодированием в деталях. Другой программист сосредоточен на картине в целом и непрерывно просматривает код, производимый первым программистом. Время от времени они меняются ролями, обычно, каждые полчаса.

14

суббота, 3 ноября 12 г.

Page 35: Сергей Бережной — Парное программирование

Экстремальное программирование15

суббота, 3 ноября 12 г.

Page 36: Сергей Бережной — Парное программирование

Следовать своей роли16

суббота, 3 ноября 12 г.

Page 37: Сергей Бережной — Парное программирование

Состыковать график работы17

суббота, 3 ноября 12 г.

Page 38: Сергей Бережной — Парное программирование

Меняться ролями18

суббота, 3 ноября 12 г.

Page 39: Сергей Бережной — Парное программирование

Меняться ролями19

суббота, 3 ноября 12 г.

Page 40: Сергей Бережной — Парное программирование

Меняться парами20

суббота, 3 ноября 12 г.

Page 41: Сергей Бережной — Парное программирование

Разница в уровне21

суббота, 3 ноября 12 г.

Page 42: Сергей Бережной — Парное программирование

Совместимость22

суббота, 3 ноября 12 г.

Page 43: Сергей Бережной — Парное программирование

Побыть одному23

суббота, 3 ноября 12 г.

Page 44: Сергей Бережной — Парное программирование

суббота, 3 ноября 12 г.

Page 45: Сергей Бережной — Парное программирование

Дисциплина25

суббота, 3 ноября 12 г.

Page 46: Сергей Бережной — Парное программирование

Катализатор собственных мыслей26

суббота, 3 ноября 12 г.

Page 47: Сергей Бережной — Парное программирование

1 + 1 > 227

суббота, 3 ноября 12 г.

Page 48: Сергей Бережной — Парное программирование

Персональная ответственность за коллективное28

суббота, 3 ноября 12 г.

Page 49: Сергей Бережной — Парное программирование

Диалог29

суббота, 3 ноября 12 г.

Page 50: Сергей Бережной — Парное программирование

Обучение30

суббота, 3 ноября 12 г.

Page 51: Сергей Бережной — Парное программирование

«Притирка»31

суббота, 3 ноября 12 г.

Page 52: Сергей Бережной — Парное программирование

Инструменты32

суббота, 3 ноября 12 г.

Page 53: Сергей Бережной — Парное программирование

Одинаковые настройки33

суббота, 3 ноября 12 г.

Page 54: Сергей Бережной — Парное программирование

Доска / бумага34

суббота, 3 ноября 12 г.

Page 55: Сергей Бережной — Парное программирование

Удалённая работа35

суббота, 3 ноября 12 г.

Page 56: Сергей Бережной — Парное программирование

Удалённая работа

• IDE (например Cloud9)

36

суббота, 3 ноября 12 г.

Page 57: Сергей Бережной — Парное программирование

Удалённая работа

• IDE (например Cloud9)• tmux / screen

36

суббота, 3 ноября 12 г.

Page 58: Сергей Бережной — Парное программирование

Удалённая работа

• IDE (например Cloud9)• tmux / screen• VNC / Remote Desktop

36

суббота, 3 ноября 12 г.

Page 59: Сергей Бережной — Парное программирование

Удалённая работа

• IDE (например Cloud9)• tmux / screen• VNC / Remote Desktop• EtherPad

36

суббота, 3 ноября 12 г.

Page 60: Сергей Бережной — Парное программирование

Удалённая работа

37

суббота, 3 ноября 12 г.

Page 61: Сергей Бережной — Парное программирование

remotepairprogramming.com

Удалённая работа

37

суббота, 3 ноября 12 г.

Page 62: Сергей Бережной — Парное программирование

GitHub38

суббота, 3 ноября 12 г.

Page 63: Сергей Бережной — Парное программирование

GitHub39

github.com/therubymug/hitch

суббота, 3 ноября 12 г.

Page 64: Сергей Бережной — Парное программирование

Страхи40

суббота, 3 ноября 12 г.

Page 65: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние

41

суббота, 3 ноября 12 г.

Page 66: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние

• Накладные расходы больше, чем получаемый профит

41

суббота, 3 ноября 12 г.

Page 67: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние

• Накладные расходы больше, чем получаемый профит• Психология

41

суббота, 3 ноября 12 г.

Page 68: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние

42

суббота, 3 ноября 12 г.

Page 69: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние– кто за клавиатурой, находится под давлением

42

суббота, 3 ноября 12 г.

Page 70: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние– кто за клавиатурой, находится под давлением– один программирует, второй отвлекается

42

суббота, 3 ноября 12 г.

Page 71: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние– кто за клавиатурой, находится под давлением– один программирует, второй отвлекается– кто не за клавиатурой, не понимает, что происходит

42

суббота, 3 ноября 12 г.

Page 72: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние– кто за клавиатурой, находится под давлением– один программирует, второй отвлекается– кто не за клавиатурой, не понимает, что происходит– невозможность сидеть за одним рабочим местом

42

суббота, 3 ноября 12 г.

Page 73: Сергей Бережной — Парное программирование

Страхи

• Не будет работать как ожидается, не удастся войти в правильное состояние– кто за клавиатурой, находится под давлением– один программирует, второй отвлекается– кто не за клавиатурой, не понимает, что происходит– невозможность сидеть за одним рабочим местом– разница в квалификации

42

суббота, 3 ноября 12 г.

Page 74: Сергей Бережной — Парное программирование

Страхи

• Накладные расходы больше, чем получаемый профит

43

суббота, 3 ноября 12 г.

Page 75: Сергей Бережной — Парное программирование

Страхи

• Накладные расходы больше, чем получаемый профит– расходуется время на синхронизацию

43

суббота, 3 ноября 12 г.

Page 76: Сергей Бережной — Парное программирование

Страхи

• Накладные расходы больше, чем получаемый профит– расходуется время на синхронизацию– два человека делают столько, сколько мог бы сделать один

43

суббота, 3 ноября 12 г.

Page 77: Сергей Бережной — Парное программирование

Страхи

• Накладные расходы больше, чем получаемый профит– расходуется время на синхронизацию– два человека делают столько, сколько мог бы сделать один

– можно было бы заменить на ревью

43

суббота, 3 ноября 12 г.

Page 78: Сергей Бережной — Парное программирование

Страхи

• Психология

44

суббота, 3 ноября 12 г.

Page 79: Сергей Бережной — Парное программирование

Страхи

• Психология– два дела одновременно (программировать, общаться)

44

суббота, 3 ноября 12 г.

Page 80: Сергей Бережной — Парное программирование

Страхи

• Психология– два дела одновременно (программировать, общаться)– нет гордости за самостоятельно достигнутый результат

44

суббота, 3 ноября 12 г.

Page 81: Сергей Бережной — Парное программирование

Страхи

• Психология– два дела одновременно (программировать, общаться)– нет гордости за самостоятельно достигнутый результат– иногда нужно побыть одному

44

суббота, 3 ноября 12 г.

Page 82: Сергей Бережной — Парное программирование

Итого45

суббота, 3 ноября 12 г.

Page 83: Сергей Бережной — Парное программирование

Явные профиты

46

суббота, 3 ноября 12 г.

Page 84: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода

46

суббота, 3 ноября 12 г.

Page 85: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки

46

суббота, 3 ноября 12 г.

Page 86: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

46

суббота, 3 ноября 12 г.

Page 87: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

• сложные задачи

46

суббота, 3 ноября 12 г.

Page 88: Сергей Бережной — Парное программирование

Явные профиты

• выше качество кода– банальные опечатки– архетектурные решения

• сложные задачи• интеграционные задачи

46

суббота, 3 ноября 12 г.

Page 89: Сергей Бережной — Парное программирование

Неявные профиты

47

суббота, 3 ноября 12 г.

Page 90: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег

47

суббота, 3 ноября 12 г.

Page 91: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом

47

суббота, 3 ноября 12 г.

Page 92: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект

47

суббота, 3 ноября 12 г.

Page 93: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования

47

суббота, 3 ноября 12 г.

Page 94: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде

47

суббота, 3 ноября 12 г.

Page 95: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде• дисциплина

47

суббота, 3 ноября 12 г.

Page 96: Сергей Бережной — Парное программирование

Неявные профиты

• обучение менее опытных коллег• передача знаний и коллективное владение кодом • скорость погружения в новый проект• соблюдение стиля кодирования• выстраивание коммуникаций в команде• дисциплина• удовольствие

47

суббота, 3 ноября 12 г.

Page 98: Сергей Бережной — Парное программирование

суббота, 3 ноября 12 г.

Page 99: Сергей Бережной — Парное программирование

руководитель отделаразработкипоисковых интерфейсов

[email protected]

Спасибо

Сергей Бережной

@veged

github.com/veged

суббота, 3 ноября 12 г.