Как пасти котов. Наставление для программистов, руководящих другими программистами
Добавить в закладки К обложке
- Предисловие - Страница 2
- Об авторе - Страница 4
- О научном редакторе - Страница 5
- Об иллюстраторе - Страница 6
- Благодарности - Страница 7
- От издательства - Страница 8
- Введение - Страница 9
- Структура книги - Страница 10
- Кому и зачем стоит прочесть эту книгу - Страница 12
- Стиль и позиция - Страница 13
- Глава 1Как привыкнуть к роли руководителя - Страница 14
- Правда ли, что настоящие руководители ходят в черном? - Страница 15
- Насколько важно быть крутым? - Страница 16
- Мало быть крутым – смотри в оба! - Страница 18
- Как руководить чокнутыми, чудаковатыми, странными и обычными программистами - Страница 19
- Какие бывают породы программистов - Страница 20
- Умение обращаться с представителями разных пород - Страница 25
- Слава, почет и деньги - Страница 26
- Мотивирование деньгами - Страница 27
- Уровень мышления[14] - Страница 28
- Как вы адаптируетесь - Страница 30
- Что дальше - Страница 31
- Глава 2Как руководить собой - Страница 32
- Взгляд в зеркало - Страница 33
- Рай, ад, чистилище и ваше место во вселенной - Страница 34
- Ваша работа в корне меняется - Страница 35
- Вам нужно заново учиться оценивать свои успехи, увлечения, амбиции - Страница 36
- Естественный отбор и время - Страница 37
- Избегайте ненужных, неэффективных совещаний - Страница 38
- Не планируйте слишком мало или слишком много - Страница 39
- Бессмысленно ожидать чего-либо при отсутствии контроля - Страница 40
- Проектируйте архитектуру, прежде чем выбирать технологию - Страница 41
- Баланс между чистотой и практичностью - Страница 42
- Не выполняйте задания, а распределяйте их - Страница 43
- Документируйте то, что вы делаете или планируете делать - Страница 44
- Оценка вашей производительности - Страница 45
- Контролируйте свои слабости - Страница 46
- Ответы - Страница 48
- Что дальше - Страница 51
- Глава 3Как вести стаю за собой - Страница 52
- Как справиться с административными функциями - Страница 53
- Как не отвлекаться на раздражители - Страница 55
- Когда проект разрастается - Страница 57
- Как объединить усилия тех, кто гуляет сам по себе - Страница 60
- Опасность! - Страница 61
- Как сформировать команду и как ее поддерживать - Страница 62
- Как нанимать сотрудников - Страница 63
- Как увольнять сотрудников - Страница 65
- Денежное поощрение и продвижение сотрудников по службе - Страница 66
- Как готовить преемника - Страница 67
- Ну хватит уже! - Страница 68
- Что дальше - Страница 69
- Глава 4Как организовать успех - Страница 70
- Как превратить информацию в знания и действия - Страница 71
- Бумажная волокита - Страница 72
- Безбумажная волокита - Страница 74
- Как выработать собственные навыки администрирования - Страница 77
- Как организовать контроль - Страница 78
- Информационный поток - Страница 79
- Назначение заданий - Страница 80
- Архитектура - Страница 81
- Рабочие часы - Страница 82
- Ожидания - Страница 83
- Взаимоотношения - Страница 84
- Как повысить организованность в масштабах всей компании - Страница 85
- Руководство продуктами - Страница 86
- Руководство процессами - Страница 88
- Тестирование - Страница 89
- Руководство инфраструктурой - Страница 90
- В конце рабочего дня - Страница 92
- Что дальше - Страница 93
- Глава 5Как вести совещания - Страница 94
- Еженедельные совещания - Страница 95
- Проектные совещания - Страница 97
- Беседы один на один - Страница 101
- Совещания с другими группами - Страница 102
- Ретроспективные совещания - Страница 103
- Телеконференции - Страница 104
- Время между совещаниями - Страница 105
- Консенсус и действия в результате совещаний - Страница 106
- Что дальше - Страница 107
- Глава 6Философия и методы технического лидера - Страница 108
- Как уразуметь свою техническую роль и придерживаться ее - Страница 109
- Конструировать или выращивать - Страница 110
- Примат архитектуры - Страница 111
- Проектные ограничения в архитектурном планировании - Страница 112
- Аналитические позиции как средство управления проектными ограничениями - Страница 113
- Свежий взгляд на проектирование - Страница 115
- Нулевой этап проектирования - Страница 116
- Этапы проектирования 1, 2, 3, 2, 1, 4… - Страница 118
- Кодовая полиция - Страница 121
- Следите за законностью - Страница 122
- Наиболее распространенные нарушения - Страница 123
- Скорый суд и неотвратимость наказания - Страница 125
- Философия в действии - Страница 126
- Конкретный пример философии в действии – Леонардо да Винчи - Страница 127
- Ложка дегтя - Страница 128
- Перспективы - Страница 129
- Что дальше - Страница 130
- Глава 7Закат лидера - Страница 131
- Обличие тьмы - Страница 132
- Негативные эталоны в менеджменте - Страница 133
- Мелочная опека - Страница 134
- Советы тем, кто увлекается мелочной опекой - Страница 137
- Неорганизованные руководители - Страница 138
- Гений не на месте - Страница 140
- Строители империй тьмы - Страница 142
- Заигрывание с дьяволом - Страница 144
- Вы достигли своего предела - Страница 145
- Вы прыгнули выше головы - Страница 146
- Вас бесит критика - Страница 147
- Как выжить в период упадка и восстать из пепла - Страница 148
- Как избежать заката - Страница 149
- Что дальше - Страница 150
- Глава 8Восход лидера - Страница 151
- Фундаментальные принципы лидерства - Страница 152
- Понимание - Страница 153
- Передача знаний - Страница 154
- Делегирование - Страница 155
- Проверка - Страница 156
- Участие - Страница 157
- Надстройка - Страница 159
- Наставничество - Страница 160
- Вознаграждение - Страница 161
- Исправления - Страница 162
- Предвидение - Страница 163
- Адаптация - Страница 164
- Пойдут ли за вами? - Страница 165
- Принуждение - Страница 166
- Долг - Страница 167
- Восхищение - Страница 168
- Вознаграждение - Страница 169
- Знание - Страница 170
- Возрастные аспекты лидерства - Страница 171
- Как лидеру сочетать форму и содержание - Страница 172
- Энди Гроув – агрессивный параноик - Страница 173
- Билл Гейтс – одержимость и расчетливость - Страница 174
- Вы – _____ (введите недостающее слово) - Страница 175
- Резюме - Страница 176
- Лидерство формируется в практической деятельности - Страница 177
- Отталкивайтесь от основных принципов лидерства - Страница 178
- Что дальше - Страница 179
- Глава 9Как ужиться с начальством - Страница 180
- Как понять, чем живет ваша начальница - Страница 181
- Честность и принципиальность против подтасовок и лжи - Страница 182
- Как помочь начальнице удачно спланировать процесс - Страница 184
- Знайте свой потолок - Страница 185
- Как ожидать неожиданность - Страница 186
- Как преодолеть безынициативность компании - Страница 187
- Следите за тенденциями в отрасли - Страница 188
- Экспериментируйте с новыми методами и приемами - Страница 189
- Учитесь чувствовать время - Страница 190
- Не забывайте, что интересы клиента на первом месте - Страница 191
- Резюме - Страница 192
- Конец уже близко - Страница 193
- Глава 10Слова без песни - Страница 194
- Распределенная рабочая сила - Страница 195
- Суть проблемы - Страница 196
- Решение - Страница 197
- Культурный фактор в менеджменте - Страница 199
- Язык и культура - Страница 200
- Мотивация чужаков и контроль над ними - Страница 201
- Оценка методологий разработки программных средств - Страница 203
- Программная инженерия - Страница 204
- MSF - Страница 205
- Экстремальное программирование - Страница 206
- Гибкая разработка - Страница 207
- Мастерство – ядро любого успеха - Страница 208
- Технологические революции - Страница 209
- Экономические несчастья - Страница 210
- Одиночество руководителей - Страница 211
- Уделяйте время исследовательской работе - Страница 212
- Как превратить административные функции в инженерные - Страница 213
- Стратегическое планирование как наука - Страница 214
- Учитесь ценить человеческие отношения - Страница 215
- Финал - Страница 216
- ПослесловиеСнова в плавание… - Страница 217
- Руль - Страница 218
- Парус - Страница 219
- Якорь - Страница 220
- Приложение АКак ухаживать за живностью – электронный администратор - Страница 221
- Приложение БКак дать скотине в глаз – критический обзор кода электронного администратора - Страница 223
- Контекст и происхождение программного продукта - Страница 224
- Правила игры - Страница 225
- Следовал ли я стандартам? - Страница 226
- Как насчет связности и взаимозависимости? - Страница 227
- Другие достоинства и недостатки - Страница 228
- Заключение - Страница 229
- БиблиографияРесурсы для специалистов по выпасу котов - Страница 230
- Разработка программного обеспечения - Страница 231
- Классические труды - Страница 232
- Выдающиеся работы - Страница 233
- Примечательные работы - Страница 234
- Полезные работы - Страница 236
- Общие работы по менеджменту - Страница 237
- Работы по языкам программирования - Страница 238
- Разные работы - Страница 239
Конструировать или выращивать
Традиционной метафоре строительства в нашей профессии соответствует термин «конструирование»[58]. Как часто мы им пользуемся для описания своих действий? По моим наблюдениям, довольно часто. Все начинается с детства. Если вы из моего поколения, то ребенком, наверное, играли с конструкторами – ну а представители поколения X, вероятно, помнят свои экзерсисы с Lego. Обиходное понятие «конструирование программного обеспечения» вполне доходчиво обозначает повседневную деятельность программиста. Попробуем проанализировать эту метафору в буквальном смысле и объяснить, что значит дополнять приложения новыми характеристиками. Можно ли надстроить небоскреб дополнительными десятью этажами и при этом пребывать в уверенности, что фундамент их выдержит? Мне так не кажется; надеюсь, что и вы придерживаетесь моего мнения. Придется обратиться к еще одной метафоре – садоводству. Разбивая сад и выращивая его, вы, естественно, время от времени выкорчевываете одни растения и высаживаете другие. В своей книге о прагматическом программировании Эндрю Хант (Andrew Hunt) и Дэвид Томас (David Thomas) высказываются об этой метафоре следующим образом:
«Растения в саду высаживаются, с одной стороны, в соответствии с исходным замыслом, а с другой – согласно текущим обстоятельствам. Некоторые из них выживают, другим же суждено превратиться в компост. Растения можно пересаживать, менять их расположение, играя, таким образом, со светом и тенью, ветром и дождем. Переросшие растения подрезают или срезают, а если, к примеру, какой-нибудь цветок по своему цвету не соответствует окружению, его пересаживают в более подходящее (с эстетической точки зрения) место. Занимаясь садоводством, мы выдираем сорняки и удобряем растения, которым нужна дополнительная поддержка. Хороший садовод постоянно наблюдает за здоровьем растений на своем участке и при необходимости вносит разного рода коррективы (удобряет почву, пересаживает растения, придумывает новый вариант разбивки)»[59].
Надо сказать, что метафора садоводства значительно лучше соответствует разработке программных средств. Она делает очевидным преходящий характер программных продуктов и акцентирует внимание на архитектуре, гибкость которой подразумевает возможность реализации новых структур. В контексте архитектуры системы конструируются, а непосредственно программные продукты выращиваются. Чтобы соответствовать потребностям бизнеса XXI века, мы должны построить органичную методику разработки программных продуктов.
Чтобы соответствовать потребностям бизнеса XXI века, мы должны построить органичную методику разработки программных продуктов.
Метафора садоводства, к тому же, выражает различие между органическим и синтетическим. Все органическое выращивается; синтетические же объекты собираются из конструируемых компонентов. Действительно, конструируя компоненты, мы делаем их синтетическими по самой природе. Однако та среда, в которой их предполагается выращивать, должна выводить целое за рамки суммы компонентов. Кроме того, она должна предусматривать возможность адаптации к изменяющимся коммерческим требованиям и к технологической эволюции.
Итак, пытаясь усвоить материал, который я излагаю в дальнейшем, не забывайте о биологии и старайтесь не зацикливаться на аналогиях со строительной индустрией. Функции метафор ограничены – они просто-напросто помогают применить абстрактные понятия в условиях рутинной технической деятельности. Нельзя писать код, исходя из метафоры. В этом процессе без деталей проектного решения не обойтись. С другой стороны, все эти детали в совокупности формируют образец. А вот образец уже можно рассматривать метафорически, анализируя степень его применимости к решению бизнес-задач. Вы ведь еще не забыли, как важно для нас думать? Штудируя мою книгу, вы должны были уже уяснить, что главное в нашей работе – мыслить. Мыслить широко и ни в коем случае не поверхностно. Никогда не забывайте этот принцип – он вам пригодится.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239