Вход/Регистрация
Человеческий фактор в программировании
вернуться

Константин Ларри Л.

Шрифт:

Теория не является бедной служанкой практики — она превосходит практику. Теория позволяет заглянуть в будущее. Когда Эйнштейн разработал формулу Е = тс2, ядерных реакторов еще не было. Существование планеты Плутон было предсказано еще до того, как ее смогли увидеть; теоретически она должна была существовать, судя по параметрам орбиты Нептуна. В менее космическом масштабе: теория модульной сложности, на которой основано структурное проектирование, предсказала экспериментальные результаты, появившиеся спустя несколько лет. Кроме того, эта теория предвосхитила ключевые понятия объектно-ориентированного программирования, хотя при возникновении понятий связывания и сцепления методология ООП еще не существовала даже как идея.

Надежность любой работы является иллюзорной, но самым лучшим страховым полисом является крепкий фундамент того, что вы делаете. Слово фундамент означает «основы». Общие принципы являются более стабильными, чем те виды конкретной деятельности, которые на них основаны. Подобно гибкому коду, допускающему многократное использование, базовые принципы остаются действующими в изменяющихся контекстах. Если ваши ценности основаны на знании какого-то конкретного языка, или платформы, или среды программирования, то ваш карьерный фундамент стоит на песке, а волны технологии, несомненно, вынесут его из-под ваших ног.

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

Из журнала Software Development, том 3, № 4, апрель 1995 г.

59

Одаренные программисты

Это был долгий год. Месяц за месяцем вы, как и другие программисты из вашей команды, тяжело работали, выполняя обязательства по проекту. Вы начинаете думать о премии в конце года. Это сезон подарков — зимнее солнцестояние, Ханука, Рождество, Кванза и обыкновенный Новый год — праздники идут один за другим. Что вы подарите вашим высокопроизводительным программистам, чтобы они поняли, как вы их цените? И вообще — как вы оцениваете, награждаете или стимулируете разработчиков приложений и программного обеспечения? По существу, именно в этом заключался вопрос, поднятый аудиторией на одном из лекционных туров, который я совершал по Австралии вместе с такими индустриальными светилами, как Роб Томсет и Эд Йордон. Это заставило всех нас задуматься о более творческих и эффективных методах поощрения разработчиков.

Это вечная проблема. Когда речь идет о стимулах, многие из нас склонны думать упрощенно. Несколько лет назад я работал с русскими и украинскими менеджерами из одной недавно приватизированной фирмы, которая раньше принадлежала советскому государству. В какой-то момент я понял, что вместе с ними оказался вовлечен в одну неувядаемую управленческую игру под названием «Почему бы вам не… — Да, но…». Я предлагал способы более эффективной работы, а они отвечали: «Да, но у нас нет надежных источников снабжения», «Да, но наши работники не готовы взять инициативу в свои руки», «Да, но мы не можем уволить работников и не можем изменить их зарплату. Мы не можем стимулировать сотрудников». Сначала эти блестящие и «мотивированные» менеджеры советской закалки не находили мотивацию для своих работников, но ког-да я предложил «мозговой штурм», они придумали десятки способов и средств мотивации, не прибегая к сокращению штатов или денежным поощрениям. Естественно, мы также способны найти эти возможности.

Игрушки для технарей

Многие из нас, чокнутых, любят технологические игрушки. Тест на родство со славным гранфаллоном довольно прост. Загораются ли ваши глаза при мысли о новом замечательном устройстве в ГПИ, или о SD-видео-карте к 21-дюймовому плоскоэкранному монитору, или о гигагерцовом лэптопе с диском в 20 Гбайт? Вы один из тех людей, которые не могут дождаться выхода бета-версии нового продукта? Вы раздираете целлофановую обертку для того, чтобы узнать, решены ли в релизе 2.0 проблемы релиза 1.1?

Одним из вознаграждений за поставку программного обеспечения вовремя может быть первоочередное предоставление стенда для проведения бета-тестирования. Первые копии нового CASE-инструмента или недавно приобретенного пакета для проектирования можно вручать тем членам жоманды, которые работали лучше всех в прошедшем квартале. Команды, справляющиеся с обязательствами, могут первыми вытягивать фиш-зси при очередном апгрейде оборудования.

Конечно, такая тактика работает не всегда. Для некоторых из нас установка бета-версии программного обеспечения — это нечто среднее между плаванием в заплесневелой овсяной каше и заменой спутниковой антенны на крыше во время грозы. За последние несколько лет я сам умудрился принять участие лишь в одном бета-тестировании. Возможно, в качестве более подходящего варианта можно предложить меню, представляющее программные или аппаратные «игрушки». Лучшие работники выбирают в первую очередь. Еще одним вариантом может быть право первого голоса в выборе инструментов, языков и библиотек, которые следует приобрести в следующий раз.

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

Рабочий отпуск

Я должен похвалить Роба Томсета за один из самых творческих способов поощрения лучших и блестящих программистов, позволяющий получить неожиданную обратную отдачу. Он предлагает вознаграждать успешность временем. Работники, которые создают качественное программное обеспечение и представляют его в срок, получают время на участие в любых интересующих их проектах. Какой программист откажется от шанса получить несколько месяцев на изучение нового языка, или экспериментирование с методами сжатия изображений, или разработку нового текстонезависимого метода поиска? Проект может быть каким угодно, и за участие в нем программист получает зарплату! Что действительно вызывает интерес у большинства из нас, технарей, — так это возможность изучать новое, испытывать его, играться с новыми инструментами и методами.

  • Читать дальше
  • 1
  • ...
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: