Так говорят программисты
TRANSCRIPT
![Page 1: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/1.jpg)
![Page 2: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/2.jpg)
1. Введение и ограничения доклада2. Часть I. «Жизненная»3. Часть II. «Философская»4. Мораль
![Page 3: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/3.jpg)
Почему решил сделать этот доклад?Почему доклад получился из двух частей?Не хочу никого обидеть!
![Page 4: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/4.jpg)
1. Фразы программистов из реальной жизни.
![Page 5: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/5.jpg)
Когда произносится: Универсальный ответ на любой вопрос связанный с производительностью: «почему программа съела 500 Мб памяти?», «почему так медленно происходит переключение экранов?» и т.п.
Что думает программист: «Как я ловко отмазался!» Что слышу я: ◦ Программист не понимает технологий с которыми работает ◦ Программист не умеет пользоваться профилировкой ◦ Программист не понимает особенности управления памятью◦ Программист уходит от ответственности
Как можно было бы ответить: «Скорее всего у нас утечка памяти. Мне нужно X часов, я запущу под профайлером, проверю гипотезы и скорее всего найду ее»
![Page 6: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/6.jpg)
Когда произносится: Ответ на полученный баг-репорт Что думает программист: «Я все правильно делаю» Что слышу я: ◦ Программист не может воспроизвести проблемную ситуацию◦ Программист не внимательно читает баг-репорты◦ Программист не умеет задавать вопросы◦ Программист не хочет разбираться
Как можно было бы ответить: «У меня работает, но это наверное потому что у меня система отличается<список гипотез> от системы Заказчика (Тестировщика), мне нужно X времени, чтобы проверить какая из них срабатывает у Заказчика (Тестировщика)».
![Page 7: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/7.jpg)
Когда произносится: В ответ на вопросы:◦ «Что у Заказчика происходит на сервере?»◦ «Как возник это Exception?»◦ «Как это работает?»◦ «Сколько времени у меня займет эта задача (это исправить)?»◦ «Как сделать эту задачу?» и т.п.
Что думает программист: Не знаю Что слышу я: ◦ Программист не хочет думать◦ Программист не знает системы, которую создает (как она работает)◦ Программист забыл сделать логгирование
Как можно было бы ответить: «Я не знаю сейчас в чем проблема, но… Дайте мне X часов, телефон Заказчика, логи сервера, доступ к нему и я решу проблему».
![Page 8: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/8.jpg)
Когда произносится: В ответ на просьбу что-то изменить в поведении системы.
Что думает программист: Не хочу ничего делать Что слышу я: ◦ Программист не хочет ничего делать◦ Программист не умеет решать проблемы
Как можно было бы ответить: «Пока я не знаю, что с этим делать. Мне нужно X часов, чтобы разобраться и предложить варианты ».
![Page 9: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/9.jpg)
Фраза №5: «Предупреждаю! Здесь у меня (нас) много багов»
Фраза №6: «Я не делал коммит (сборку) N дней»
Фраза №7: «Тут надо все переделать» Фраза №8: «Это баг не в нашем (моем) коде» Фраза №9: «Я сейчас по-быстрому …» Фраза №10: «Я не мог сделать по-другому»
![Page 10: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/10.jpg)
Когда произносится: Когда уже было произнесено несколько фраз из приведенного списка, но решать проблему все равно надо
Что думает программист: Все оказалось не так как я думал Что слышу я: ◦ Программист не подумал раньше ◦ Программист сделал по-быстрому◦ Программист ошибся, но не считает, что не прав
Как можно было бы ответить: «Я виноват не подумал раньше. Мне нужно X часов на то, чтобы разобраться в создавшейся ситуации и принять решение»
![Page 11: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/11.jpg)
1. Чего руководитель ждет от программиста?2. Почему не всегда оправдываются ожидания?3. Как сделать так, чтобы наши ошибки не
возвращались снова?
![Page 12: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/12.jpg)
Конкретные сроки (время) Конкретные действия Конкретный ожидаемый результат
![Page 13: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/13.jpg)
Сотрудник не выполняет задачу если: Не умеет Нет времени Не понимает задачу Не хочет
(С) Стратосфера (А. Орлов)
![Page 14: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/14.jpg)
Не умеет – пусть учится. Можно даже на своих ошибках, то только правильно это делать.
Нет времени – наша проблема. Нужно решать.
Не понимает задачу – если подойти к проблеме чуть тоньше, то скорее всего не понимает контекст, ситуацию.
Не хочет – можно заставлять, но лучше уволить
![Page 15: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/15.jpg)
«правильный» подход
«неправильный» подход
![Page 16: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/16.jpg)
1. Они работают в команде и их плохая работа влияет на других программистов, тестировщиков
2. Есть заказчик, который ожидает конкретики и который требует ее от Пма
3. Полная стоимость работы включает не только стоимость работы программиста
![Page 17: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/17.jpg)
Полная стоимость работы:
«плохой» программист
«хороший» программист
![Page 18: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/18.jpg)
1. Говорить неправильные фразы – невыгодно! ◦ Они свидетельствуют о слабом уровне программиста,
мешают росту.
1. Программист, который:◦ Быстро учится на своих ошибках (делает выводы и
принимает меры)◦ Понимает общий контекст работы над проектом (не
выпадает из него)◦ Называет конкретные сроки и действия
Это уже как минимум готовый тим-лид!
![Page 19: Так говорят программисты](https://reader033.vdocuments.pub/reader033/viewer/2022060121/5594ac511a28ab8d0e8b4677/html5/thumbnails/19.jpg)
Прошу задавать Ваши вопросы.