3 Рутинные процедуры

3

Рутинные процедуры

Слово «рутинный» имеет отрицательный оттенок. Анонсы новых программных продуктов пестрят обещаниями избавить пользователя от рутинной работы. «Рутинный» означает «скучный», не так ли?

Не так! Как системный администратор я приветствую скуку. Я мечтаю, чтобы в течение недели все происходило по расписанию, проекты завершались в срок, приложения устанавливались без проблем, а документация содержала ответы на мои вопросы. «Дайте мне хотя бы один скучный день!» — кричу я, когда главный сервер выходит из строя или клиент обращается со срочной, но неразрешимой проблемой.

Я бы все отдал за скучный месяц!

Улучшить ситуацию позволяют технические средства. Мы можем сделать свою жизнь скучнее (в хорошем смысле!) с помощью долгосрочного планирования и подходящей инфраструктуры, обеспечивающей плавный ход событий. Например: автоматизация установки программного обеспечения новых компьютеров, при которой все они устанавливаются идентично; планирование обновлений, чтобы не было компьютеров с морально устаревшими компонентами; поддержание инфраструктуры безопасности, чтобы она стала повсеместной и менее обременительной. На эти темы уже написано много книг. Я предпочитаю «The Practice of System and Network Administration» (Практическое системное администрирование и администрирование сетей), Addison Wesley.

Я не собираюсь сделать системное администрирование скучным на 100 %. Не думаю, что это возможно в принципе. Пока появляются новые программные пакеты, которые необходимо испытать, и новые платформы, которые необходимо исследовать, у системных администраторов будет достаточно развлечений.

Кроме того, всегда будет оставаться определенная степень беспорядка. Системный администратор имеет дело с реальным миром, а реальный мир полон хаоса.

Однако я все-таки хочу исключить тот беспорядок, который не позволяет мне получать удовольствие от работы. Вот что следует накрепко запомнить о процедурах:

Процедуры дают нам способ подумать один раз, а сделать много раз.

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

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