Совет 24 Великолепная задача на сегодня

Совет 24

Великолепная задача на сегодня

Хорошо сделать свою работу и получить за это высокую оценку приятно. Интуитивно большинство из нас это понимает, но когда дело доходит до реального приложения усилий, позволяющего выделиться, мы демонстрируем удивительную избирательность. Мы не нарадуемся дизайну проекта технологического прорыва для отдела сбыта или мобилизуем все силы, чтобы спасти положение в случае явной катастрофы, потому что наши мозги расценивают подобные моменты как возможность показать, на что мы способны. Мы даже старательно и кропотливо работаем всю ночь над задачами, которые в обычном состоянии быстро нас утомляют. Зачастую экстренная ситуация заставляет нас проявлять свои лучшие качества.

Насколько интересной ты мог бы сделать свою работу?

Во время самых ужасных провалов и сорванных сроков только пьянящее чувство восторга давало мне энергию и силы для результативной работы. Но почему без давления внешних факторов мы не в состоянии вызвать в себе это альтруистическое и в высшей степени продуктивное безумие? Насколько производительным ты мог бы стать, если бы сумел подойти к самым неинтересным и опостылевшим задачам с тем же лихорадочным желанием сделать все правильно?

Последний вопрос лучше переформулировать. Насколько интереснее стала бы твоя работа, если бы ты мог подойти к самым неинтересным и опостылевшим задачам с тем же лихорадочным желанием сделать все правильно? Когда нам интересно, мы лучше справляемся со своими обязанностями. А если интерес отсутствует, нам скучно, в результате страдает качество работы.

Как сделать скучную работу более интересной? При взгляде с противоположной стороны ответ на этот вопрос становится очевидным. Почему скучная работа столь скучна? Почему она изначально не интересна? В чем разница между работой, которая доставляет тебе удовольствие, и работой, к которой ты питаешь отвращение?

Для большинства технарей работа оказывается скучной по двум основным причинам. Во-первых, дело, которое нам нравится, заставляет напрягать мышцы нашей изобретательности. Разработка программного обеспечения является творческой деятельностью, и по этой причине многие из нас пришли в эту область. Работу, которая нам не нравится, мы практически никогда не можем назвать творческой. Обдумай это. Вспомни список своих рабочих дел на следующую неделю. Задания, выполнения которых ты предпочел бы избежать, скорее всего, не заставляют работать воображение. Это всего лишь рутина, которую ты с удовольствие перепоручил бы кому-то другому.

Вторая причина, по которой такие задания нас не увлекают, по общему мнению, тесно соединена с первой и заключается в том, что они не бросают вызов нашим способностям. Людям нравится искать и находить решения сложных проблем, в которых другие потерпели неудачу. Именно это чувство заставляет представителей нашего вида ради развлечения заниматься альпинизмом или прыгать на тарзанке с моста. Мы любим делать вещи, демонстрирующие наши возможности. Нудные задания, как правило, элементарны. Их выполнение по степени трудности и интересности можно сравнить с выносом мусора.

Так как же нам задействовать свой творческий потенциал и бросить вызов своим способностям в рутине будничных служебных обязанностей (которые у большинства из нас занимают более 80 % рабочего времени)?

А что, если попробовать делать рутинные дела идеально? К примеру, ты ненавидишь модульное тестирование. Ты обожаешь программирование, но чувствуешь раздражение, когда дело доходит до написания автоматизированных тестов. Что, если ты попробуешь сделать эти тесты идеальными? Как это повлияет на твое поведение? Что означает определение идеальный в случае модульного тестирования? Скорее всего, это связано с эффективностью теста. Идеальная эффективность означает, что ты протестировал функциональность своего кода на 100 %. Идеальные модульные тесты обычно свободны от ошибок, удобны в сопровождении и не зависят от множества сторонних факторов, которые может быть сложно воссоздать на другом компьютере. На новой машине они должны запускаться непосредственно после проверки версий. И разумеется, эти тесты должно проходить в 100 % случаев.

Задача начинает усложняться. 100-процентная эффективность теста звучит как практически нереальная вещь. Много сложностей представляет и разделение тестов, позволяющее избавить их от внешних зависимостей. Скорее всего, для обеспечения подобной возможности тебе придется править свой код. Но, справившись с этой задачей, ты получишь невероятный результат.

Не знаю, что подумаешь ты, но с моей точки зрения это звучит весьма увлекательно. Конечно, это искусственный пример, но аналогичным образом можно подойти к решению большинства встречающихся тебе задач. Попробуй сделать это завтра. Посмотри на свой рабочий день и задай себе вопрос: «Насколько хороша сегодняшняя работа?» Ты обнаружишь, что как только тебе начнет нравиться твоя работа, ты начнешь нравиться ей[14].

Действуй!

1. Сделай это наглядным. Преврати рутинные задачи в соревнование со своими коллегами. Кто может справиться с ними лучше? Не нравится писать модульные тесты? Распечатай набор требований к тестам для кода, проверка которого осуществляется каждый день, и повесь их перед собой на стену. Сделай доску оценок для всей группы. Соревнуйтесь за похвалу (или даже за призы). После завершения проекта можно сделать, например, так, чтобы остальные члены группы на неделю освободили победителя от рутинных обязанностей, взяв их на себя.

Данный текст является ознакомительным фрагментом.



Поделитесь на страничке

Похожие главы из других книг:

1. CSS3 сегодня

Из книги автора

1. CSS3 сегодня Глядя в прошлое, на яркую историю CSS, мы видим важные этапы, которые формировали наше видение веб-дизайна. Прорывные приемы, статьи и события научили нас создавать гибкие и доступные сайты, которыми мы можем гордиться – и их обликом, и качеством кода.Можно


ОБЩАЯ ЗАДАЧА ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ

Из книги автора

ОБЩАЯ ЗАДАЧА ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ Итак, мы хотим учить детей законам программирования. Еще не зная их, мы понимаем, что они неизбежно будут выражены в сумме некоторых достаточно специфических приемов. Нам еще предстоит разбираться, в какой мере они посильны детям,


10.6. Задача производителей и потребителей

Из книги автора

10.6. Задача производителей и потребителей В разделе 7.3 мы описали суть задачи производителей и потребителей и привели несколько возможных ее решений, в которых несколько потоков-производителей заполняли массив, который обрабатывался одним потоком-потребителем.1. В нашем


5. Один объект — одна задача

Из книги автора

5. Один объект — одна задача РезюмеКонцентрируйтесь одновременно только на одной проблеме. Каждый объект (переменная, класс, функция, пространство имен, модуль, библиотека) должны решать одну точно поставленную задачу. С ростом объектов, естественно, увеличивается


ТИПОВАЯ ЗАДАЧА: ИНВЕНТАРИЗАЦИЯ КНИГ

Из книги автора

ТИПОВАЯ ЗАДАЧА: ИНВЕНТАРИЗАЦИЯ КНИГ      Гвен Гленн хочет напечатать опись своих книг. Она хотела бы занести в нее различную информацию о каждой книге: ее название, фамилию автора, издательство, год издания, число страниц, тираж и цену. Теперь некоторые из этих элементов,


4.5. Задача о восьми ферзях

Из книги автора

4.5. Задача о восьми ферзях Эта задача состоит в отыскании такой расстановки восьми ферзей на пустой шахматной доске, в которой ни один из ферзей не находится под боем другого. Решение мы запрограммируем в виде унарного отношения:решение( Поз)которое истинно тогда и только


5.2.4. Задача классификации объектов

Из книги автора

5.2.4. Задача классификации объектов Предположим, что у нас есть база данных, содержащая результаты теннисных партий, сыгранных членами некоторого клуба. Подбор пар противников для каждой партия не подчинялся какой-либо системе, просто каждый игрок встречался с


13.2.2. Задача о ханойской башне

Из книги автора

13.2.2. Задача о ханойской башне Задача о ханойской башне (рис. 13.6) — это еще один классический пример эффективного применения метода разбиения задачи на подзадачи и построения И / ИЛИ-графа. Для простоты мы рассмотрим упрощенную версию этой задачи, когда в ней участвует


ТЕМА НОМЕРА: Задача с ограничениями

Из книги автора

ТЕМА НОМЕРА: Задача с ограничениями Автор: Леонид Левкович-МаслюкВ этом номере мы заканчиваем тему «Наблюдатели в Альпах», начатую в «КТ» #686 и посвященную «мягкому и жесткому контролю при мониторинге информационных сетей». Напомним, что фраза в кавычках воспроизводит


Задача предложения rescue

Из книги автора

Задача предложения rescue Последний комментарий позволяет нам продвинуться в лучшем понимании механизма исключений, обосновав теоретическую роль предложения rescue. Формальные рассуждения помогут получить полную


4 Что вы делали сегодня?

Из книги автора

4 Что вы делали сегодня? В юношеские годы я начинал вести дневник. Каждый вечер, перед тем как отправиться спать, я брал ручку и подробно записывал события прошедшего дня. Как раз в это время я начал встречаться с девушками, и вскоре страницы моего блокнота были заполнены