Инженерный менеджмент: MBA в стиле DevOps::Журнал СА 12.2017
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Дата-центры  

Дата-центры: есть ли опасность утечки данных?

Российские компании уже несколько лет испытывают дефицит вычислительных мощностей. Рост числа проектов,

 Читать далее...

Книжная полка  

Защиты много не бывает

Среди книжных новинок издательства «БХВ» есть несколько изданий, посвященных методам социальной инженерии

 Читать далее...

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

Обычно соответствие программного продукта требованиям мы проверяем через скоуп вполне себе понятных

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6449
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7145
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4425
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3095
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3892
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3910
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6396
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3242
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3539
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7378
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10735
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12454
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14122
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9205
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7150
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5456
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4689
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3506
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3218
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3457
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3101
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Инженерный менеджмент: MBA в стиле DevOps

Архив номеров / 2017 / Выпуск №12 (181) / Инженерный менеджмент: MBA в стиле DevOps

Рубрика: Безопасность /  Особое мнение

Антон Карев АНТОН КАРЕВ, ведущий эксперт Алтайского края по кибербезопасности, с 20-летним стажем. Окончил физтех АлтГУ. Занимается технологической разведкой и подготовкой аналитических обзоров для красной команды правительственных хакеров, anton.barnaul.1984@mail.ru

Инженерный менеджмент:
MBA в стиле DevOps

Инженерный менеджмент: MBA в стиле DevOpsАвторские размышления на тему того, кто такие DevOps, как ими становятся и почему DevOps добиваются успеха не только в инженерном деле, но также и в менеджменте

Как становятся DevOps: рыбацкие байки автобиографического характера

«Да здравствуют отечественные микросхемы!
С четырнадцатью ножками и четырьмя ручками!»

Мои дядя и отец были рыбаками, а потом также и меня к рыбалке приобщили. Мой дядя – виртуозный рыбак со стажем, окончивший ТУСУР. Он начинал рыбачить на военном приборостроительном заводе РОТОР (Алтайский край, Барнаул), участвуя в разработке подводных ракет спирального наведения на «объекты-невидимки» (не помню, как это по-умному называется). А желание пойти в ТУСУР у дяди возникло, когда он, в очередной раз отправляясь копать червей в специально приготовленную для этого консервную банку, наткнулся на своего гения-знакомого, который не долго думая сделал из этой консервной банки радио. Это так впечатлило дядю, что он захотел стать электронщиком.

После рыбалки на РОТОРе мой дядя что-то околоЭВМное инженерил, у него был доступ к соответствующей технике: к тем самым многокомнатным ЭВМ прошлого тысячелетия. У меня до сих пор на веранде еще какие-то запчасти этих динозавров остались, хотя я и прореживаю регулярно эти завалы. В прошлом году наконец-то выкинул ведро давно протухшего винегрета из микросхем (ЛА3, триггеры, мультиплексоры, таймеры, буфера и т.д.).

После работы с ЭВМ мой дядя переквалифицировался в обычного рыбака. Просто стал ходить на рыбалку. Вот на этих рыбалках он меня и начал приобщать к полезным делам за компьютером. Потому как на тот момент (то были 90-е годы прошлого тысячелетия), я к нему на работу ходил «как на работу», но не работать,– DOOMать, и т.п.: «Башня», «Dune II», «Wolfenstein 3D», «WarCraft». Этими игрушками я убивали все свое свободное время. В свое время мой дядя даже компьютер ZX Spectrum спаял «на коленках». Его обломки до сих пор иногда попадаются мне на глаза.

А сейчас мой дядя – самым крутой специалист в Казахстане по ремонту торгового оборудования. Один из магических трюков в его арсенале – перепрошивка PROM-микросхем, которые по определению не перепрошиваемые. В числе прочего занимается исследованием уязвимостей защиты торгового оборудования. Для этих исследований дядя меня в свое время как-то даже попросил написать подпрограммы для быстрой работы со сверхбольшими числами (400 000шестнадцатеричных знаков и больше). Под впечатлением от разговоров об этих исследованиях, – уже в контексте нейросетей, – я выступал на одной из научно-практических конференций с докладом о своем «Хэш-анализаторе намногослойном персептроне» (ломалка пин-кодов, по-русски говоря). За этот доклад меня чуть не выгнали с университета.

Мой папа – электронщик-самоучка, который одно время работал на Радиозаводе (Алтайский край, Барнаул), и, будучи самоучкой, воспитал другого такого же, который под его началом изучил Хорвица Хилла и ряд другой схожей литературы. В результате этот его «студент» собрал торсионный генератор, после включения которого у него вся электроника дома сгорела, даже та, которая не была к сети подключена. Но, так или иначе, генератор заработал, и он иногда сним игрался. «Например, – он сам мне по секрету от отца рассказывал, – захочу, чтобы твой отец в гости приехал, завожу свою шарманку. Он приезжает и говорит: что-то вот я ни с того ни с сего к тебе приехать захотел». Вот так ученик моего отца рыбачил на самого же отца. Нетрудно догадаться, что при такой родословной я образование получал в сфере DevOps (причем не только в софтовом смысле этого слова, но также и в железном) и в профессиональном плане нашел себя в этой же сфере.

Пометки на полях

Одна из самых запоминающихся рыбалок для меня – это разработка программно-аппаратного комплекса для невидимой рыбалки в онлайн-покер-румах (бот для покера, в простонародий). А в покер-румах, как известно, самый чуткий рыбнадзор, поэтому просто программная эмуляция, даже на уровне драйверов, может быть отслежена – со всеми вытекающими. Поэтому невидимый покер-бот – это довольно-таки дорогая игрушка, но с помощью неё в покер-румах очень много рыбы наловить можно. Наиболее интересная часть этого комплекса заключается в обеспечении невидимости: 1) принтскрина экрана и 2) эмуляции мыши и клавиатуры. Невидимость первого пункта достигается путём снятия изображения через аналоговый TV-выход видеокарты (посредством TV-тюнера другой машины).

А невидимость второго – путём подключения к разъёмам мыши и клавиатуры программно-аппаратной примочки, которая на входе получает эмулируемые команды клавиатуры и мыши, а на выходе – выдаёт соответствующий этим данным поток сигналов. Чуть ранее этого покерного монстра, я рыбачил на живца в шахматных просторах Маил.ру, запустив туда «Немецкую Рыбку» посредством программы XChessBot – широко известного в узких кругах моего творения. С этой программой-ботом можно легко всплыть в ТОП100 звёздно-шахматного рейтинга «маил.ру». И хотя практической пользы от этого конечно никакой, но когда тебя считают гроссмейстером – это приятно.

В чем секрет лаконичных решений и виртуозного программирования

«Любая достаточно развитая технология – неотличима от магии»

Артур Кларк

В чем секрет виртуозного программирования? Почему одни решения не теряют своей актуальности и остаются непревзойденными даже спустя много лет (gif-формат кодирования рисунков, например), а другие отправляются в корзину, неуспев родиться? И если есть четкие критерии отличия одного от другого, то как научиться находить именно такие решения, лаконичность которых будет неподвластна времени? Это очень интересные вопросы, ответы на которые не такочевидны, как хотелось бы. Обосновать эффективность уже готового решения довольно-таки просто – математический анализ далеко продвинулся в этом направлении. С другой стороны, универсальной методологии поиска виртуозных решений, увы, нет. Это задача синтеза, в котором наука продвинулась не так далеко, как хотелось бы. Да, есть разные отрасли научного знания, помогающие писать программы лучше, но действительно выдающиеся решения, как правило, приходят в качестве озарения, а не в качестве последовательных шагов. Мне, автору этой статьи, данный вопрос знаком не понаслышке, т.к. я отдал глубокому изучению различных аспектов программирования восемь лет своей жизни (находясь под руководством опытных преподавателей лицея и университета).

По сути дела, гениальные изобретения и лаконичные решения приходят откуда-то извне нас. Это не наше достижение – нам их попросту дарят. Например, возьмем следующую задачу: «Пусть имеется 12 шаров (пронумерованных от 1 до 12), среди которых 11 шаров имеют одинаковые веса, а один шар – легче или тяжелее остальных. Определите этот отличающийся по весу шар, применяя не более трех взвешиваний на коромысловых весах». У меня на решение этой задачи ушло 5 часов, у моего учителя, который на много голов выше меня в программировании, – 24 часа. Кто-то не справился с этой задачей и за месяц. Почему? Просто везение: кому-то повезло быстро, кому-то повезло медленно, а кому-товообще не повезло. Это именно везение и ничего больше, потому что все мы, даже имея на руках решение этой задачи, не можем сформулировать универсальный алгоритм поиска решения подобных задач. Мне даже кажется, что такого алгоритма попросту не существует.

Конечно, можно сказать, что все задачи программирования, которые только можно придумать, уже решены, и поэтому, воспользовавшись услугами святой троицы (интернет, интернет-браузер, поисковая машина), можно найти необходимое решение. Например, сейчас в интернете можно легко найти решение этой задачи про 12 шаров, но ведь есть много подобных задач, решение которых пока не найдено; и намного больше красивых задач, которые еще не сформулированы. Асколько недоказанных теорем сейчас существует?! Кроме того, предела совершенству нет, и более лаконичные решения старых задач однозначно существуют, вопрос только, как их найти. Сколь бы ни была лаконична программа, ее можно сделать еще оптимальней. Это как игра в шахматы: сколь бы ни была красивой партия, всегда можно сыграть еще лучше.

Практический пример. Есть простая задача инвертирования строки. С этой задачей справится любой школьник. Чье-то решение будет занимать два экрана кода, чье-то – три строки. Учась в университете, я нашел решение, которое на тот момент мне казалось оптимальным (см. рис. 1). Впоследствии мне захотелось оптимизировать алгоритм. Так получился еще более оптимальный код (см. рис. 2), на фоне которого предыдущее решение просто ужасно. Опять же, я не могу представить универсального алгоритма такой оптимизации. Мысль избавиться от промежуточных переменных и воспользоваться XOR’ом возникла спонтанно. Уже намного позже я вспомнил, что когда-то давным-давно читал, как спомощью операции вычитания можно менять значения переменных без использования дополнительной. То есть решение всплыло из подсознания. Из этого следует, что один из способов находить лаконичные решения – это уделять много времени анализу успешных алгоритмов, которые уже придуманы до нас; и также, поступив в университет, осваивать широкий спектр инженерных дисциплин.

Рисунок 1. Первый вариант решения задачи инвертирования строки

Рисунок 1. Первый вариант решения задачи инвертирования строки

Рисунок 2. Второй вариант решения задачи инвертирования строки

Рисунок 2. Второй вариант решения задачи инвертирования строки

Статью целиком читайте в журнале «Системный администратор», №12 за 2017 г. на страницах 40-45.

PDF-версию данного номера можно приобрести в нашем магазине.


  1. Michael Mankins, Chris Brahm, Greg Caimi. Your Scarcest Resource // Harvard Business Review. 92(4), 2014. pp. 74-80.
  2. Scott Donaldson. CTOs at Work. Apress. 2012. 330 p.

Ключевые слова: инженерный менеджмент, MBA, DevOps.


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru