MDS-800

Нужно прочитать

Andrey Koleshko. Rake Task Management Essentials.
Bala Paranj. Test Driven Development in Ruby.
Travis Swicegood. Pragmatic Version Control Using Git.
Paul Baker et al. Model Driven Testing Using the UML Testing Profile.
Emily Bache. The Coding Dojo Handbook.
Steve Freeman, Nat Pryce. Growing Object-Oriented Software, Guided by Tests.
Jeff Langr and Tim Ottinger. Agile in a Flash: Speed-Learning Agile Software Development.
Ben Klemens. 21st Century C.
Brent Laster. Professional Git.
Ian Dees, Matt Wynne, Aslak Hellesoy. Cucumber Recipes. Automate Anything with BDD Tools and Techniques.
Shankar Garg. Cucumber Cookbook.
Dr. Mark Fisher. ARM Cortex M4 Cookbook.
Howard Johnson. High-Speed Digital Design: A Handbook of Black Magic.
Marty Cagan. Inspired: How To Create Products Customers Love.
Ли Атчисон. Масштабирование приложений. Выращивание сложных систем.
Роберт Мартин. Чистая архитектура. Искусство разработки программного обеспечения.
Яцек Галовиц. С++17 STL. Стандартная библиотека шаблонов.
Ivor Horton, Peter Van Weert. Beginning C++17.
Scott Meyers. Effective Modern C++. 42 Specific Ways to Improve Your Use of C++11 and C++14.
Tags:
MDS-800

Прощай, МТС.

В пятницу попрощался с сотрудниками из ростовского филиала МТС.

Проработал в этом коллективе шестнадцать с половиной лет. Начинал в составе фирмы ЦТС, затем вместе с прочим движимым имуществом был продан в МТС (в период распухания последней во всероссийском масштабе).

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

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

А в понедельник подписываю обходной, получаю документы и иду оформляться на новую работу.
MDS-800

Инструмент системного моделирования

В течение многих лет до недавнего времени занимался исключительно разработкой программного обеспечения (даже в проектах, под которые разрабатывалось специальное оборудование, довольствовался исключительно высокоуровневым кодом). И много лет помогал в этом деле универсальный язык моделирования UML.

Многие определения UML (например, приведенное в Википедии) гласят:

UML (англ. Unified Modeling Language — унифицированный язык моделирования) — язык графического описания для объектного моделирования в области разработки программного обеспечения, моделирования бизнес-процессов, системного проектирования и отображения организационных структур.
Я настолько привык к этому определению, что до поры нимало не сомневался в его справедливости. Поэтому, когда недавно перешел к разработке встроенных систем, с энтузиазмом попытался использовать UML для построения моделей как аппаратной части, так и системы в целом. Весьма неприятным открытием было то, что реально попытки системного проектирования заходили в тупик. Поиски методологии в литературе и Сети также ничем не увенчались. В то же время иметь на системном уровне такую же мощную и выразительную нотацию, какую UML предоставляет для программной части проекта, было бы весьма заманчиво.

В процессе поиска обнаружил, что каким-то образом мимо меня проскочил близкий родственник UML - SysML (Systems Modeling Language). Первое шапочное знакомство с новым (для меня) языком показалось многообещающим. Кстати, сам факт его наличия как бы намекает, что с обещанным системным проектированием у UML дело обстоит не так уж гладко, иначе зачем бы пришлось плодить сущности без необходимости.

На повестке 1) изучение SysML, 2) поиск подходящего инструмента моделирования (весьма желательно open source), 3) внедрение практики системного моделирования в процессы лаборатории, где начну трудиться буквально через считанные дни.
MDS-800

Вести Мордора

Совершенно случайно наткнулся на заметку:

Ученики СУНЦ НГУ выиграли медали Международной математической олимпиады в Индии

В Международной математической олимпиаде в г. Лакхнау (Индия) IYMC - Mathematica - 2018 команда СУНЦ НГУ была единственным представителем России. В составе команды были Ханина М (11-8 кл), Оглоблин И (11-2 кл), Степанов И (11-1 кл). Руководитель команды - преподаватель кафедры математических наук ММФ и СУНЦ НГУ Львов Антон Павлович. По результатам олимпиады в индивидуальном зачете золотую медаль получил Иван Оглоблин и серебряную - Мария Ханина.

Поздравляем ребят с победой! Выражаем благодарность руководителю Антону Павловичу Львову за подготовку команды!


Вот так скромненько. Участвовало 78 команд со всего мира. Наши ребята сделали всех, но в новостях я об этом почему-то не услышал. Видимо, трудная судьба Кокорина для страны важнее.
MDS-800

Мы все учились. Понемногу.

Попалась на глаза любопытная заметка: Об ахиллесовой пяте одной сверхдержавы. Речь в ней идет об образовании в целом и высшем образовании в частности.

Не то чтобы содержание меня поразило. Напротив, как бы подвело итог личным наблюдениям за последние несколько лет.

Во время работы в МТС регулярно проводил собеседования с кандидатами в разработчики программного обеспечения (в основном C# и Java). Побеседовал с несколькими десятками кандидатов с различным опытом - от вчерашних выпускников вузов (а порой и старшекурсников, ищущих подработку по специальности) до ветеранов пенсионного возраста. В целом, конечно, картина удручающая. Лишь единицы обладают минимально необходимой квалификацией. Был даже кандидат физ-мат наук, не имевший понятия об объектной парадигме, но уверявший, что он сугубый практик и изучает все по ходу, как только оно понадобится в текущем проекте. Ну-ну...

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

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

Дальше интереснее. Без ответа остаются вопросы о том, что такое напряжение и ток. Круглые от изумления глаза в ответ на непристойное предложение написать и решить дифференциальные уравнения, описывающие процессы в RC-цепях. Кое-кто способен нарисовать вольт-амперную характеристику P-N перехода, пусть и не с первого раза, но объяснить механизм его работы и рассказать ту же модель Эберса-Молла - увольте. Претендент на разработку FPGA не может нарисовать синхронный двоичный счетчик. Апофеоз наступил, когда выпускник, недавно стажировавшийся на полупроводниковом производстве, заявил, что не проходил квантовую механику (речь зашла о механизме туннельного пробоя в P-N переходе, который классическими представлениями вряд ли можно объяснить). На физфаке университета, Карл!!!

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

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

Tags:
MDS-800

Книга "The Haystack Syndrome".

Автор: Eliyahu M. Goldratt.
Название: The Haystack Syndrome.
Издательство: North River Press, 2006.
ISBN: 978-0884271840



Книга гораздо компактнее, чем ее предшественники из серии "Цель", и не содержит лирики, только логичные рассуждения автора.

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

Голдратт - физик, и кому, как не ему, знать, что для решения системы уравнений нужно определенное число независимых параметров; можно сколько угодно добавлять новые, но это ни на шаг не приблизит к решению, если эти "новые" параметры - лишь комбинация старых. Также ему прекрасно известно, что всего лишь изменение точки зрения на проблему может кардинально упростить решение (подобно тому как в технике, например, переход от декартовых координат к полярным или смена системы отсчета может порой сделать запутанное решение очевидным).

Вместо нагромождения заумных величин, которые непросто получить и еще сложнее использовать в дальнейшем, Голдратт предлагает три простых показателя:

  1. Скорость генерации дохода.

  2. Связанный капитал.

  3. Операционные расходы.


На этом простом базисе строится весь механизм контроля достижения Цели.

Голдратт показывает также слабости общепринятых методик (например, основанных на издержках), столь любимых эффективными менеджерами; впрочем, эти слабости настолько очевидны, что вряд ли кому-то из читателей не довелось испытать их на собственной шкуре.

Следует заметить, что существует неофициальный перевод книги на русский язык, в изобилии рассыпанный на просторах интернета. Этот перевод выполнил в 2003 г. некто Андрей Степенко. Рекомендую воспользоваться им в том случае, если у вас с английским дело уж совсем из рук вон плохо и это единственный доступный способ ознакомиться с книгой. Перевод, как это обычно водится в бескорыстных самодеятельных переводах, выполнен некачественно (сказать "небрежно" не слишком корректно, поскольку не исключено, что человек действительно старался), и многие конструкции не то чтобы ставят в тупик, но при чтении о них "запинаешься" и задумываешься, что бы это значило. Если можете себе позволить, читайте оригинал (впрочем, это универсальная рекомендация).

Рекомендую тем, кого заинтересовала серия "Цель" и кто хочет разобраться, как подходит к задачам экономики человек со здоровой головой.
MDS-800

Навеяло...

Серия книг Голдратта "Цель" напомнила о другом, давно прочитанном, но вечно актуальном "бизнес-романе" Григория Шикунова "Про кактусы и розы". Если вы его еще не читали, искренне завидую - есть шанс получить немалое удовольствие.

Если же вам стало немного грустно, как и мне в свое время, примите мои искренние сочувствия: видимо, вам тоже довелось испытать это лично.

Я, правда, трудился в этот момент не на кактусовых плантациях, а в сфере телекоммуникаций... И фамилии у консультантов-аудиторов отличались... На этом, пожалуй, существенные отличия заканчиваются.

Ко мне явился не менее компетентный, чем герои романа про кактусы, юный эксперт (да-да, тот самый "Туалет и Душ", все из жизни), подсел рядом, развернул на уголке стола модный ноутбук и начал дотошно выспрашивать, чем именно я занимаюсь на рабочем месте. Все ответы досконально стенографировались, неясные моменты юноша не стеснялся переспрашивать (а поскольку, как оказалось, юноша никогда не работал в сфере связи, абсолютно все моменты оказались неясными). В праведных трудах мы провели примерно неделю, после чего юноша сделал перерыв на переваривание и усвоение полученной информации. Процесс прошел успешно, судя по солидной пачке диаграмм IDEF, протяженных таблиц о многих столбцах и прочих многомудрых артефактов. Получив от меня заверения, что все записано верно, подкрепленное подписью, юноша отбыл обратно в штаб-квартиру в столице (не исключено, что даже не России). Типа бизнес-процессы надежно зафиксированы и задокументированы...

Прошло, наверное, с полгода. Пронесся слух о втором этапе аудита. Ко мне привели другого эксперта (впрочем, с тем же лоском, уверенностью и, главное, с таким же, если не с тем же самым, ноутбуком). С тем же задором юноша-2 принялся задавать примерно те же вопросы. Услышав, что его коллега уже проделал этот путь, юноша-2 очень удивился; впрочем, он оказался не знаком со своим предшественником и никаких артефактов у него не унаследовал. Ну что же, надо так надо... Юноша-2 оказался не менее старателен и так же тщательно разрисовал те же диаграммы. Дрессируют их в инкубаторе на славу, взаимозаменяемость полная.

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

Видимо, бог действительно любит троицу, поскольку на этом наступил хэппи-энд. Меня оставили в покое, контора вроде бы получила заветные сертификаты, аккредитации (или за что она там боролась) и была благополучно продана (вместе с сотрудниками и прочим движимым и не очень имуществом); девушка, надеюсь, получила повышение; насчет поюзанных лексусов не в курсе, но, зная аппетиты подобных "консультантов", вполне логично их появление на сцене в последних актах.

А мне почему-то жалко людей, которые вынуждены контролировать/консультировать по вопросам, в которых они ни бельмеса не смыслят, людей, которые не один год работают в этой области. Понимаю, что никто их силком на этот позор не тянул, но все равно жалко. Хотя не исключаю, что с их точки зрения жалок скорее я...
Tags:
MDS-800

Книга "Цель-3. Необходимо, но не достаточно".

Автор: Элияху Голдратт.
Название: Цель-3. Необходимо, но не достаточно.
Издательство: Необхiдно и достатньо, 2009.
ISBN: 978-966-1503-00-6



Продолжение серии "Цель" (полухудожественные бизнес-романы, в доступной форме излагающие суть теории ограничений Голдратта).

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

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

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

Собственно, поиску ответа на этот вопрос в основном и посвящена книга: отделить очковтирательство, которым в основном занимаются всевозможные титулованные эффективные менеджеры, от немногих реально полезных показателей и дать практичные инструменты для оценки этих показателей. Попутно затронуты реально полезные методологии, которые в последнее время начинают притягивать пристальное внимание: вы найдете отсылки на Kanban, Lean etc.

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

Книга "Цель-2. Дело не в везении".

Автор: Элияху Голдратт.
Название: Цель-2. Дело не в везении.
Издательство: Манн, Иванов и Фербер, 2011.
ISBN: 978-5-91657-215-5



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

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

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

Те, кому понравилась первая часть, получат не меньшее удовольствие и от второй.
MDS-800

Книга "Configuration Management Best Practices: Practical Methods that Work in the Real World".

Авторы: Robert Aiello, Leslie Sachs.
Название: Configuration Management Best Practices: Practical Methods that Work in the Real World.
Издательство: Addison-Wesley Professional, 2010.
ISBN: 978-0-321-68586-5



Хотя даже в Википедии есть ссылка на эту книгу, почему-то до сих пор ее не читал. Сейчас исправляю эту оплошность.