вівторок, 23 травня 2023 р.

Love story

 

Мне часто снится эта кожа,
Рука, скользящая по ней.
Потом скольжение саней
И робкий поцелуй в прихожей.

И, явь со сном перемешав,
Я помню мелкие детали —
Летали, Боже мой, Летали
И опускались не спеша,
Как будто в тополиный пух,
На старенький диван скрипучий,
И нас сливал безумный случай
И плел из наших судеб двух
Судьбу одну. Он ведал нами,
И с нами говорил во сне.
Он рисовал тебя во мне
Такими яркими тонами,
Что до сих пор в моей душе
Они сквозь время проступают,
И первенства не уступают.
И это навсегда уже.

Сергей Мартынюк

Миша увидел Ануш совершенно случайно. Впрочем… вокруг каждой случайности есть своя аура. Та аура была театральной. 

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

Смотреть спектакли, которые привозил театр «Дружба», Миша очень любил. Они всегда были необычными. Порой просто переворачивали его восприятие Театра и Мира. «На задворках» Оскара Лутса и «Бранд» Генрика Ибсена. Или… Не важно. Всё это было невероятно увлекательно. Сама возможность такого переворота возбуждала, и на спектакли юноша приходил уже взбодренный ожиданием перемен. Та «аура», о которой пойдет речь дальше, была навеяна короткой — всего пара вечеров — гастролью тбилисского театра им. Руставели, который привез в Киев уже прогремевшие на весь мир спектакли Роберта Стуруа «Кавказский меловой круг» и «Ричард III».

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

Если бы Мишу спросили: «Чем его заинтересовала девушка в партере, напротив его ложи?» — то вряд ли бы ответ был вразумительным. Ничего определенного, но взгляд парня всё время возвращался в партер. Может быть необычная пластика: девушка сидела с прямой спиной, словно балерина на сцене, и при этом умудрялась непринужденно беседовать со всеми своими спутниками. Может быть — немного необычная для Киева внешность. К концу первого акта Миша осознал, что его гораздо больше увлекает наблюдение за тем, как на спектакль реагирует Незнакомка, чем сам спектакль.

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

Вся компания опять стояла в теперь еще большем кружке вокруг режиссера, и протиснуться туда не было никаких шансов. Да и зачем? Миша вздохнул и сразу после первого звонка пошел обратно, проигрывая в голове, как он будет доказывать, что билет у него действительный. Но доказывать ничего не пришлось. Билеты вообще никто не проверял. После антракта все расходились по своим местам совершенно свободно. Это не просто удивило Мишу, но и… впрочем, не будем забегать вперед.

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

План родился из сегодняшнего открытия. Если компания так много общается с главным героем гастролей, то они придут еще не раз: впереди еще три вечера, когда можно поискать Незнакомку. А опыт с проходом в театр без билета после антракта предлагал отличный шанс найти ее в зале. И три следующих вечера Миша приходил в театральный сквер к концу первого акта, чтобы с первым звонком пробраться в театр и подняться на ярус. Оттуда была возможность рассмотреть весь зал. Три дня он мечтал, как подойдет к девушке и скажет что-то вроде: «Вы тоже смотрите все спектакли?» И, конечно же, сможет на этой почве познакомиться. Он прокручивал в голове самые разные варианты диалогов и, казалось, был готов к самым невероятным продолжениям. Увы: Незнакомка в театре больше не появилась. Еще раз он видел одну из ее спутниц, но набраться наглости и попробовать познакомиться с женщиной намного старше его, чтобы разведать хоть что-то о приворожившей его девушке, не решился.

Пару недель после окончания гастролей Миша прожил как в тумане. Никаких идей как найти необычную девушку не было, а выбросить ее из головы – не получалось. Закончился учебный год, начались экзамены. А все мысли были только о том, как же её найти…

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

Ануш он узнал издалека — по осанке. Сначала замер, а потом пошел следом, даже не задумываясь зачем. На консультацию он, конечно, опоздал. Хорошо, что вообще успел появиться на ней. Но консультация сейчас волновала мало. Химию Миша знал неплохо и экзамен не пугал неизвестностью. То ли дело удача: в огромном городе второй раз встретить Её и совсем случайно! Плана не было, всё что удалось — пройти за девушкой до подъезда в высотной новостройке заселенной только в прошлом году.

После консультации Миша вернулся к высотке, нашел лавочку, с которой просматривался вход в парадное, и стал наблюдать. Теперь, когда возбуждение от случайной встречи прошло, Миша испугался. Он никогда не знакомился на улице. Правда в театре он тоже никогда не знакомился, но казалось, что в театре всё-таки есть какая-то общность и познакомиться можно. Подойти на улице просто так? Невозможно! Хотя дом не так уж далеко от школы, но кажется никто из соучеников не жил в этом доме. Это, кстати, был один из планов: узнать кого-то хоть чуть-чуть знакомого из этого же парадного и… Увы..

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

Миша нашел программку спектакля и теперь носил её с собой, решив про себя, что это может помочь познакомиться. Как знакомиться придумать не получалось и от одной мысли о том, что придется подойти и первым заговорить, лоб покрывался испариной. Но отказаться от попытки было еще хуже. И Миша изводил себя сценариями предстоящего знакомства, ерзая на лавочке и покидая свой пост только поздним вечером. Пошла вторая неделя с того дня, когда Незнакомка у него на глазах зашла в подъезд, и страх, что она не живет здесь, а приходила к кому-то, становился всё более обоснованным.

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

— Привет,— сказал Миша и замолчал. Даже не замолчал, а онемел. Что говорить? О чем? От напряжение в воздухе, казалось, искрило. Парня трясло. Ситуацию спасла программка, которую терзал в руках подросток.

— Привет,— ответила девушка, — ты тоже был на спектакле?

И тут Мишу прорвало. Он заговорил о театре, о спектакле, о том, что сидел напротив неё,  о том, что всегда ходит на спектакли «Дружбы»… Потом замолчал. И вдруг, без всякой связи с тем, что говорил, спросил:

— Как тебя зовут?

— Ануш,— рассмеялась девушка этой внезапной смене темы, и смех сразу всё изменил. Напряжение исчезло. Сразу стало легко и хорошо. И парень выдохнул на едином дыхании всё, что так долго планировал сидя на лавочке:

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

— Я на музыку, тут недалеко,— сказала девушка.— Ну, пошли.

И они пошли дальше рядом, всерьёз и по-взрослому рассказывая друг другу свои еще совсем детские истории. Оказалось, что Ануш в Киеве живет меньше года, их семья переехала в Киев из Еревана прошлым летом. Мама Ануш выиграла конкурс и стала профессором Киевской консерватории. Папа сумел добиться перевода в Киев, потому что очень хотел, чтобы у мамы всё получилось. И это именно благодаря папиному переводу семья получила квартиру в новостройке. Ну а от девушки ничего особенного не потребовалось — она теперь просто ходит в киевскую школу. Увы, не в мишину, но зато тоже перешла в выпускной класс, что вселяло в Мишу надежду на развитие знакомства.

— А почему ты на других спектаклях не была? Я ходил на все — надеялся тебя встретить.

— Да я вообще не театралка, я больше по музыке. Это тетя Нана нас вытащила, мамина сестра. Она театральный критик, живет в Ленинграде. Мама её давно звала посмотреть, как мы в Киеве обустроились. Вот она и выбрала момент, чтобы сразу двух зайцев убить.

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

— А давай я тебе Киев покажу! Я люблю Город и неплохо его знаю. Я же коренной киевлянин. Прям недалеко отсюда много классных мест. И интересных, и с историей, Киев ведь город очень старый!

— Ну, не старше Еревана, рассмеялась Ануш.

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

— Да, но всё равно постарше Ленинграда или Москвы. Впрочем, это не важно. Так хочешь, покажу киевские классные места?

— Ладно. Куда пойдем для начала? А то я пришла: мне сюда.

Ануш остановилась у крыльца старого трехэтажного дома.

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

— Нет, завтра не получится. А послезавтра?

— Жалко, что не завтра. Но в четверг тоже можно. Договорились?

— Да, приходи,— сказала девушка и потянула дверь парадного.— Пока!

— Пока!

Дверь захлопнулась, но Миша еще некоторое время стоял, будто разглядывая дверь и никак не веря в своё счастье. А в голове уже выстраивался план как они с Ануш пойдут гулять в четверг. И он, наконец-то, решится взять её за руку. Жалко, что не завтра, но еще один-то день он потерпит.

четвер, 10 вересня 2015 р.

Качественный скачок элементной базы: «светодиод» WS2812B

В распоряжении радиолюбителей (воспользуюсь старинным словом) или разработчика-электронщика сегодня есть целый спектр малогабаритных, корпусированных в SMD5050 сверхъярких RGB-светодиодов вместе с трехканальными восьмиразрядными контроллерами, управляющими их яркостью, что качественно изменило возможности построения интересных и разнообразных конструкций подсветки и освещения. На примере пары: хита тренда DIY последних лет — микроконтроллера Arduino (в версии Leonardo) — и сборки WS2812B продемонстрирую как это работает.

Фото: W2812B за работой: зеленый включен на 1/255 максимальной яркости, красный – на 3/255, а синий – на 2/255
Сложность для тех, кто только начал работать с Arduino в том, что для управления модулем WS2812B не подходит стандартная универсальная функция digitalWrite(), принятая в среде этой популярной разработки. А не подходит стандартная функция потому, что длительности импульсов, которые нужны для управления, слишком малы для работы через вызовы функций высокого уровня (нужно формировать импульсы длительностью 400 и 850 нс). Собственно именно универсальность (возможность исполнения на любом контроллере из класса Arduino) и служит причиной того, что digitalWrite(pin, value) исполняется медленно (время, по видимому, уходит на преобразование параметра «pin» в конкретный разряд конкретного порта используемой модификации контроллера — ведь не зря в среде разработки вы настраивали параметр Board в меню Tools). Чтобы сформировать достаточно короткие импульсы приходится манипулировать непосредственно портом ввода/вывода (см. о работе с портами, например, http://arduino.ru/Tutorial/Upravlenie_portami_cherez_registry). И здесь стоит быть внимательным: одни и те же выводы платы в разных модификациях подключены к разным портам, поэтому важно, какую модификацию Arduino вы используете. Например, pin 6 — это шестой разряд порта D Arduino Uno, но в Arduino Leonardo pin6 связан с седьмым разрядом этого порта.  А, скажем, pin7 и вовсе попадет в другой порт. Есть и еще одно не менее существенное отличие в модификациях контроллеров: в Leonardo и Micro поддержкой USB порта занят тот же процессор, который исполняет и ваш скетч, а значит, есть конкуренция за ресурс процессора, которая может помешать корректной работе, если это не учитывать.
Arduino Leonardo и Micro могут быть весьма желанными прежде всего из-за физических размеров контроллера (Arduino Pro Micro, который доступен в arduino-ua.com, имеет размер всего 18х33 мм). Вот и реализуем управление цепочкой WS2812B на модификации Arduino, использующей ATmega32u4 (то есть Leonardo или Micro). Более того, мы даже обойдемся без создания библиотеки.

WS2812B

Прежде, чем описать программу управления несколько слов о том, что такое модуль WS2812B (http://www.world-semi.com/uploads/soft/150522/1-150522091P5.pdf). Те, кто уже знаком с работой этих модулей или лент на основе драйверов WS2811 и RGB-светодиодов, могут смело пропустить этот раздел.
Модуль WS2812B (см. фото) имеет всего четыре контакта, причем два из них — земля и питание (+3,5..5 В). Из двух оставшихся контактов один — вход данных, другой — выход данных (для следующего в цепочке модуля — см. рис. 1).


Рис. 1. Соединение модулей WS2812B в цепочку
Поступающие на вход модуля данные принимаются встроенным в модуль WS2812B чипом контроллера/драйвера светодиодов (между источником данных и входом модуля рекомендуют ставить небольшой резистор (пару сотен ом), чтобы защитить вход микросхемы). Поток данных (о его структуре чуть ниже) должен содержать в последовательном коде управляющие значения для всех микросхем в цепочке. Первый чип принимает весь поток, но использует только три первых байта (по байту для управления зеленым, красным и синим светодиодами), а все, что следует за этими тремя байтами, выдает на выход. Таким образом, каждый чип принимает все данные для себя и всех расположенных за ним в цепочке чипов. Если в цепочке, например, 30 модулей, то на первый модуль поступает 3*30=90 байт, на выходе первого модуля появляются 90-3=87 байт (кроме первых трех из последовательности в 90 байт), на выходе второго — 87-3=84 байта и т.д. До входа последнего модуля дойдет три байта, которые определяют яркость свечения его светодиодов. Данные для управления цветом передаются, начиная со старшего разряда, в порядке зеленый-красный-синий (см. рис. 2). Данные для второго модуля в цепочке передаются сразу же после первого без пауз.

Рис. 2. Структура данных, управляющих цветом одного модуля
В WS2812B не предусмотрена внешняя синхронизация передаваемых данных (вообще-то есть варианты модулей, в которых присутствует отдельная линия синхронизации, но это ведь дополнительный провод  — лучше «помучаться» с управляющей программой, и сэкономить лишний провод). А поскольку нет внешней синхронизации, то передача каждого бита происходит с самосинхронизацией. Каждый бит начинается с формирования нарастающего фронта (переход от низкого уровня к высокому). Чип контроллера, обнаруживая фронт, начинает отсчет времени и опрашивает, примерно через 625 наносекунд уровень данных. Если обнаруживает высокий уровень — оценивает бит как равный "1", если уровень низкий — "0". Следующие 625 нс нужны чипу для сохранения полученного бита и переходу к ожиданию следующего фронта. Разумеется, и при формировании данных, и при их считывании возможны погрешности, поэтому справочный листок на WS2812B задает довольно широкие допуски на формирование передаваемых данных (см. рис. 3). При тактовой частоте 16 МГц используемого в Arduino Leonardo и Arduino Micro процессора ATmega32u4, один цикл процессора занимает 62,5 нс, следовательно, для формирования номинальной длительности «короткого» импульса ("0") — 400 нс — в нашем распоряжении 6 циклов. Этого вполне достаточно, если не использовать сложные высокоуровневые функции (маленький секрет: если интервал до следующего нарастающего фронта будет чуть больше 1250 нс — скорее всего, это никак не скажется на приеме данных. Хотя лучше, конечно, не злоупотреблять «терпением» чипа). 
Рис. 3. Передача бита (временные параметры)
Чтобы не возвращаться к алгоритмам работы WS2812B заметим, что признаком начала передачи управляющей последовательности байтов служит интервал не менее 50 мкс перед нарастающим фронтом на линии входных данных. Вот это условие как раз легко выполняется стандартными средствами среды Arduino.
В завершение описания корпусированного в SMD5050 модуля WS2812B,  отметим, что он, как и следует из названия этого конструктива (surface mounted device — модули для поверхностного монтажа), не предназначен для проводного макетирования (зато отлично монтируются на ленты!) Поэтому на практике часто используют микро-платы, на которых монтируют сам элемент WS2812B и его развязку по питанию. На фото вы видите как раз такую плату, на которой сразу смонтированы конденсатор развязки по питанию и резистор защиты входа — очень удобно. 

Формирование импульсов данных

Для формирования коротких импульсов нам придется работать с портом ATmega32u4 напрямую. И первое, что необходимо сделать, определить каким разрядом какого порта мы будем управлять. Автору заметок было удобно выбрать для передачи данных pin8 в Arduino Leonardo, но, разумеется, для читателя не составит труда выбрать любой другой выход. Открыв схему своей платы (в нашем случае это https://www.arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf) видим, что pin8 соответствует четвертому разряду порта B. Таким образом, команды быстрой установки высокого и низкого уровня на выходе pin8 (и, соответственно, на входе первого в цепочке модуля WS2812B) будут такими:
PORTB |= _BV(PB4);     // установить высокий уровень на pin8
PORTB &= ~_BV(PB4);  // установить низкий уровень на pin8
Используем «пустую» команду (nop\n\t), чтобы сформировать необходимую продолжительность импульса в соответствии со значением передаваемого разряда (полагаем, что это старший разряд байта D_in):
      PORTB |= _BV(PB4);  // включили высокий уровень на D(in)
      __asm__(«nop\n\t»); __asm__(«nop\n\t»); //  2 командных цикла — 125 ns      __asm__(«nop\n\t»);

      if ( D_IN >= 0x80 )
      {      __asm__(«nop\n\t»); __asm__(«nop\n\t»);      __asm__(«nop\n\t»); __asm__(«nop\n\t»);      __asm__(«nop\n\t»); __asm__(«nop\n\t»);   
      };    
      PORTB &= ~_BV(PB4);   // выключили высокий уровень на D(in)
                                               // удерживаем низкий до конца бита
      __asm__(«nop\n\t»); __asm__(«nop\n\t»);
      __asm__(«nop\n\t»);
     
      if ( D_IN < 0x80 )      {      __asm__(«nop\n\t»); __asm__(«nop\n\t»);      __asm__(«nop\n\t»); __asm__(«nop\n\t»);      __asm__(«nop\n\t»); __asm__(«nop\n\t»);   
      };

Хотя в приведенном фрагменте всегда исполняется лишь 12 формирующих задержки команд NOP (их общая длительность только 750), но время расходуют и другие команды: проверки условий и записи в порт. А когда мы организуем циклы, чтобы передавать все биты всех байтов для всех модулей, то в длительность формирования бита добавятся еще и команды управления циклами и выбора значения передаваемого разряда — так и сформируется полная длительность бита.
Поскольку модулей может быть очень много, то память, которую занимают выгружаемые данные, стоит экономить. Поэтому разместим эти данные в массивах байт:
#define defNoDiods  2
volatile byte glG8[defNoDiods], glR8[defNoDiods], glB8[defNoDiods];
Эксперименты я проводил с двумя модулями (поэтому, во избежание переусердствования со стороны оптимизатора среды Arduino, указано volatile), но памяти в Arduino Leonardo достаточно для размещения данных на 500 модулей. Теперь мы готовы сделать подпрограмму, которая будет загружать данные в цепочку светодиодных модулей. Надо только не забыть перед началом генерации сигнала для входа цепочки запретить прерывания, чтобы они не помешали выработке интервалов между переключениями порта, и разрешить их по окончании генерации.

Оператор setup () в нашем случае тривиален: настраиваем выход и устанавливаем его в ноль. Чтобы быть уверенным, что первая же последовательность, которую мы загрузим, будет воспринята правильно делаем задержку заведомо большую, чем требуется для опознавания начала загрузки данных.
Содержимое оператора loop () определяется теми задачами, ради которых используются светодиодные модули. Ну а для  примера (или, например, проверки цепочки) можно при каждом проходе в петле loop наращивать элементы массива.
В примере для двух светодиодов это выглядит так, как на скриншоте (свечение двух источников изменяется, но не совпадает более тысячи часов, так как инкремент компонентов задан простыми числами). Впрочем, для проверки возможны и любые другие комбинации — широкие возможности управления практически не ограничивают полет фантазии.
Первоначальный вариант заметки был подготовлен для http://arduino-ua.com/

середу, 3 липня 2013 р.

Спираль развития: возвращение избранного

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

Вот, например, портрет. Было время, и заказы портретов кормили огромное число художников, так как других способов увековечить себя не знал тогдашний «средний класс». Но пришла фотография и увела к себе массовую клиентуру. Думаю, не я один еще помню то время, когда в фотоателье обязательно приходили молодожены, а счастливые родители приносили новорожденных. Записывались в очередь к модным фотографам. Гордились клеймом известного бренда на обороте фотографии. И это время минуло, не найти больше вывесок «Фотография»,  никто не вспоминает о специально оборудованных залах и деревянных камерах на треногах, когда слышит это слово.

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

Еще один, уж совсем прозаический пример — белошвейка. Вы ведь знаете это слово, правда? Но никогда не встречали представительниц этой «специальности». Естественно. Не зря, значит, изобретали швейную машинку ;)

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

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


Параллельно возникает вопрос защиты «авторских» прав на «машинную продукцию». Вопрос небанальный, потому что, с одной стороны, до сих пор никому из защитников торговых марок не приходило в голову бороться с повторением фасона подштанников или длины шнурков для кроссовок (до тех пор, пока на них не пытались пристрочить лейбочку известного бренда). С другой же стороны, всем известно, как агрессивно защищают двоичный код, генерируемый компиляторами, производители ПО. Как, где и в какой момент должна возникать/пропадать защита в эпоху машинного производства текста и музыки решить непросто. Что ж: поживем — увидим.

четвер, 4 квітня 2013 р.

Величайшее открытие

Невозможно не согласиться с Сьюзен Блэкмор: открытие Чарльзом Дарвином естественного отбора — величайшее открытие, способное объяснить эволюцию во вселенной. Но при попытке посмотреть через призму этого открытия на развитие человечества мы сталкиваемся с кажущимся несоответствием. Еще в младшей школе нам рассказали, что Архимеда убил римский воин, вероятно совершенно неспособный понять, чем занят был ученый муж А меня даже в детстве поражал рассказ о том, что греки-рабы были куда образованнее своих хозяев. Где же тут естественный отбор?

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

Коль скоро есть другой, отличный от генетического, механизм репликации, то и точку зрения на видообразование нужно выбирать, не забывая об этом механизме. Как только мы начнем анализировать культурную репликацию, тотчас же станет понятно, что именно культура, формирующая социальную общность, определяет границы вида+ (буду, следом за Шабановым использовать обозначение «сущность+» для расширения границ сущности; в частности, «вид+» для понятия вида, определяемого не только геномом, но и культурой). Именно среди видов+ и происходит естественный отбор. Это очень точно еще в прошлом веке) было подмечено Фридрихом Хайеком. Процитирую его знаменитое интервью: «я часто привожу в пример «естественный отбор» среди религий: те религии, что проповедовали правильную мораль, не только сохранились, но и обеспечили развитие исповедующих их групп. Наши предки создали для нас более эффективные моральные принципы не благодаря своему интеллекту; иногда, желая эпатировать людей, я говорю, что они были, по сути, «подопытными кроликами» и путем «эксперимента на себе» выработали нужные принципы, которые затем передали нам. Речь идет не о том, что они превосходили других в интеллектуальном плане. Просто получилось так, что они случайно нащупали правильный путь, а дальше их успехи развивались в геометрической прогрессии, что и позволило им вытеснить другие группы, придерживавшиеся иных моральных норм». Сегодня религия не является единственным признаком, определяющим формирование социальной общности. Вероятно, правильнее говорить о некотором более широком наборе этических норм, репликация которых определяет поведение вида+. Редко кто из путешественников не отмечал, что поведение особей, принадлежащих к очевидно различным видам+, вполне дифференцируемо: в Германии, например, никому не придет в голову перебегать дорогу на красный свет, а замечание классика нашей сатиры: «даже в трамваях разговаривают шепотом»,— однозначно характеризовало региональную общность. О том, что это именно культурная репликация, говорит тот факт, что дети, выросшие в соответствующей среде, вне зависимости от их биологического происхождения, как правило, соответствуют ей, а даже взрослые индивидуумы, вырванные из привычной среды, со временем теряют эти особенности. Скорее всего, рассматривая именно с такой позиции конкуренцию видов+, мы сможем объяснить целый ряд успехов или поражений отдельных социумов. Но это предмет, требующий отдельного разговора

суботу, 2 лютого 2013 р.

Утраты в пути

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

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

Потерю знаний продемонстрировал перевод: «Мы находимся внутри прибора, который в американском английском называют вакуумной трубкой, а в британском английском — ламповым диодом… … Гудит БЭСМ. Тут более четырех тысяч вакуумных трубок, все они светятся,…»

Оставим на совести редактора необходимость погружать читателя _русской_ версии книги в особенности английского/американского диалектов (понятно, почему это нужно Спаффорду: книгу будут читать по обе стороны Атлантики. Но зачем эти подробности нам?) Меня поразило в данном случае то, что ни переводчик, ни редакторы не смогли выбрать адекватный _русский_ термин. Нет в русском языке термина «вакуумная трубка». Есть электронно-лучевая трубка, но это совсем из другой оперы. Типичные их представители — кинескопы старых телевизоров. В первых компьютерах использовались потенциалоскопы — тоже из этой категории, но такая ассоциация только запутывает читателя, потому что четыре тысячи ламп, о которых идет речь, никакого отношения к этим трубкам не имеют. В контексте, который есть у Стаффорда, на русском языке нужно использовать или термин радиолампа (возможен вариант электронная лампа), или просто лампа (принято: ламповый приемник, ламповая ЭВМ).

Книга переведена хорошо, тщательно. У издания ЧЕТЫРЕ редактора: главный, ведущий, научный, технический. Нет претензий к организации работы с текстом. Но потери все же произошли. Это говорит, на мой взгляд, о том, как быстро утрачиваются знания. В 80-х в СССР еще не только изучали лампы и ламповую технику, но массово выпускали продукцию на их основе (я сам в конце 70-х еще делал курсовые на лампах, обучаясь на одном из самых прогрессивных факультетов КПИ). То есть знания еще живы :), как же случилось, что они не нашли тех, кому были необходимы? Думаю ответ удивительно прост: инструменты переводчика и редактора _слишком_ современные, слишком быстро обновляются. Бумажный словарь удерживает термины от издания к изданию, различные издания даже одного и того же словаря, задержавшись у разных редакторов, растянули бы жизнь термина на многие десятки лет. А translate.google.com может позволить себе обновляться непрерывно. И, как следствие, дает в качестве перевода термина «vacuum tube» только «вакуумная трубка».

Боюсь, что еще одним фактором, ускоряющих потерю «отработанных» знаний, служит Интернет «в целом» :). Информация, представленная в Сети, короткоживущая, если так можно выразиться. И пользователь к этому привыкает. Для «Хроник развития информационных технологий» я на днях искал первые выпуски украинских компьютерных изданий (чтобы отметить даты их выхода). Это было относительно недавно. В бумажных архивах экземпляры еще наверняка сохранились в большом количестве. Не говоря уж о библиотеках. Но в Сети их нет, хотя веб-страницы, представлявшие некоторые из них, я сам делал. Закрылись сайты, умерли издания — нет и их данных в Интернет. Другой пример: в моем детстве снегоуборочные машины были занятной конструкции: они имитировали работу человека — загребали широкими «лапами» снег на транспортер. Объясняя, как это было устроено, я попытался найти в Сети соответствующие картинки — очень мало таких изображений. Интернет приучает нас к новинкам. Найти последнюю, еще не поступившую в продажу модель в разы легче, чем вышедшую окончательно из употребления (кстати, не это ли причина растущей популярности виртуальных музеев старины? Впрочем, это совсем другая тема).

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

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

середу, 23 січня 2013 р.

ПО как общественное благо


Целый ряд моих fb-друзей и/или либерально ориентированных сообществ, в которых я состою, уже не первую неделю обсуждают: действительно ли существует такое понятие, как «общественное благо» или это вымыслы этатистов (то есть сторонников существования государства, отстаивающих полезность подобного блага в корыстных целях — для оправдания существования чиновников). При этом если противники этого понятия полагают, что ничего полезного государственные институты породить не могут, то сторонники существования «общественных благ» не столь однозначны и готовы видеть как минусы, так и плюсы развития институциональности. С интересом наблюдая за дискуссиями (но не обладая, к сожалению, ни временем, ни достаточной подготовкой, чтобы в эти диспуты включиться), нахожу для себя немало полезного и интересного в аргументах сторон. Вот и сейчас хочу не включиться в дискуссию, а отметить некоторые, возможно неочевидные стороны нашей жизни.

Итак, к общественным благам те, кто считает их действительно существующими, относят блага, отвечающие трем критериям (которые можно найти, скажем, в Википедии):
  • признак неисключения — практически невозможно исключить человека из круга потребителей данного блага; 
  • признак неконкурентности в потреблении — потребление блага одним человеком не уменьшает возможностей потребления его другим; 
  • признак неделимости — благо нельзя разложить на отдельные единицы. 
В каждом конкретном случае наличие этих признаков может оспариваться (что, собственно, и порождает дискуссии), но тем не менее отличия маяка, как блага для судоводителя, от компаса, как блага для того же судоводителя все же более-менее понятны (при этом есть прекрасная работа Р. Коуза «Маяк в экономической теории», которая показывает, что нет принципиальных препятствий в организации частных маяков). Чаще всего о новых общественных благах начинают говорить в связи с обнаружившейся необходимостью как-то регулировать потребление некоторых нерукотворных (или не вполне рукотворных) ресурсов: рыбы в океане, чистого воздуха и т.п. Точнее говоря, речь о том, что было в достатке (рыба в океане, например), но рост потребления (возможности влияния на благо) может составлять в перспективе угрозу благополучию. Куда реже мы задумываемся о том, что некоторое рукотворное благо является по своему типу — общественным.

Эта заметка о возможности подобного подхода к программному обеспечению (можно смотреть и еще шире — к информационным благам вообще, но чтобы не усложнять, пока ограничимся ПО). Итак, если отвлечься от практики копирайта, то без специальных мер защиты (давайте пока о них не говорить) невозможно исключить потребление ПО, потребление ПО на одном компьютере никак не мешает потреблять его на другом, и само ПО конечно же не состоит из частей. Сегодня для придания ПО возможности воспрепятствовать нежелательному потреблению, кроме государственной борьбы с нелегальным использованием, тратится немало сил для усложнения это ПО и придания ему свойств, позволяющих идентифицировать «безбилетника» и помешать ему использовать ПО. Представим себе, что владельцы компьютеров платят сбор, подобный дорожному сбору с автомобилистов. Собранные деньги распределяются между производителями ПО пропорционально активности его использования (как ее измерять мы пока не обсуждаем: принципиально возможны различные подходы: рейтинги, вроде телевизионных передач; косвенные оценки по создаваемым этим ПО продуктам и т.п.). Это, конечно же, не отменяет возможности продажи производителями ПО неких дополнительных услуг (например, регистрации на серверах автоматических обновлений), консультаций или обучения и т.п. действий, которые обладают естественным признаком исключения.

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

Еще одно замечание о свободно распространяемом ПО (по лицензии GNU и не только). Рассматривая ПО как общественное благо в данном случае речь вовсе не идет о некой специальной лицензии. Как раз напротив — речь идет об отказе от принципа лицензирования, подобно тому, как мы не лицензируем обычно использование улиц или дорог. При этом свободно распространяемое ПО, как и лицензируемое ПО, может существовать одновременно с ПО-общественным_благом. Его создатели, как и производители лицензируемого ПО, не будут претендовать на компенсацию из фонда «компьютерного сбора» (и нужно сильно подумать о том, в какой степени помогать бороться с нарушениями лицензионных соглашений должно государство: ведь нет же специализированных подразделений, проверяющих соблюдение, скажем, договоров о перевозке багажа в транспорте — просто в случае конфликта мы обращаемся в суд). Возможно, фонд «компьютерного сбора» пополнили бы и немалые средства, сегодня направляемые на борьбу с нелицензионным ПО (от социальной рекламы до финансирования соответствующих подразделений силовых структур).

Конечно, такой подход непривычен. Но не факт, что неэффективен…

вівторок, 20 листопада 2012 р.

Кризис, как медиана развития ОЭФ


Мы привыкли смотреть на кризисы, как на границы этапов, причинно-следственные агрегаты в процессе развития и смены ОЭФ (общественно-экономических формаций). Но возможен и другой взгляд, по крайней мере, на индустриальную и постиндустриальную ОЭФ. В рамках одной формации развитие идет тоже немонотонно. Присмотримся…
Довольно хорошо известен старшему поколению, тщательно изучавшему марксизм-ленинизм, тезис о переходе капитализма к высшей и последней его стадии — империализму (см. например, «Империализм, как высшая стадия капитализма» где справедливо отмечены «новые» признаки: концентрация производства и изменения, как в значимости, так и в механизмах функционирования финансовой системы). Мы не будем, разумеется, обсуждать «загнивание» капитализма, но заметим, что качественные перемены в развитии были отмечены задолго до главного кризиса этой ОЭФ. Посмотрим на переход к «империалистическому этапу» с сегодняшних позиций, с точки зрения перехода к постиндустриальной ОЭФ.
Что приводит к упомянутой выше «концентрации производства» (термин взят в кавычки, поскольку он был выработан эмпирически)? Приведем цитату из упомянутого выше источника, в котором собрана большая и доказательная статистика: «концентрация производства гораздо сильнее, чем концентрация рабочих, потому что труд в крупных заведениях гораздо производительнее» (довольно большой раздел цитируемой работы посвящен доказательству этого факта. Опустим доказательства, которые читатель легко найдет при необходимости). Причиной упомянутого факта в марксизме принято считать рост производительности труда, связанный с изобретением и использованием новых, индустриальных технологий: двигателей, электроинструмента и т.д.
Упомянутая «причина» — рост производительности труда — на самом деле не следствие изобретения паровой машины и других двигателей (как это принято считать в марксизме), а следствие бизнес-эффективности концентрации производства, позволяющей больше инвестировать в развитие средств производства (очень важна тут и роль изменений в финансовой системе, но ради компактности изложения этот аспект я опущу в данной публикации). Если быть строгим, то пара производительность труда/концентрация производства — диалектическое единство и попытка отделить курицу от яйца непродуктивна. Но для нас такое «отделение» и не важно,— важно, что быстрое развитие этой пары в определенный момент выталкивает ОЭФ в кризис, так как все производство необходимых благ можно осуществить, не привлекая к этому процессу значительную часть трудоспособного населения. Очень важно осознание того, что в индустриальном обществе управление формированием «набора необходимых благ» практически отсутствует (это прерогатива постиндустриального общества). Другими словами, производство «всего необходимого» ДЛЯ ВСЕХ силами ЧАСТИ трудоспособного населения заставляет общество либо допустить неограниченный рост неравенства (когда «поглощение» избыточной рабочей силы происходит неудержимым ростом роскоши немногих), либо содержать оставшуюся, неработающую часть за счет казны (что, кстати, не есть изобретение ХХ века, как принято считать — «закоренелые нищие» на содержании общины известны в Англии XVI века). Обратим также внимание читателя на то, что Великая депрессия это вовсе не точка перехода к индустриальному капитализму. Это, скорее, результат его расцвета!
Решение проблем, породивших Великую депрессию, было, конечно, комплексным. Но для целей этой работы необходимо выделить два важнейших фактора: ограничение продолжительности рабочей недели (что позволило соответственно расширить занятость населения) и развитие постиндустриальных тенденций, связанных с управлением формирования «необходимых благ», то есть переходом от формации, основанной на экономическом принуждении к формации, основанной на информационном принуждении. Этот переход позволяет, во-первых, занять часть трудоспособного населения новыми формами труда (см. «Политэкономию постиндустриального общества»), а во-вторых — сформировать множество новых «потребностей».
Развитие постиндустриального уклада (сосуществующего с доминирующим в тот момент индустриальным укладом) отчетливо проявлялось в росте затрат на маркетинг международных брендов (разумеется, не все затраты, отнесенные к маркетингу, носят постиндустриальный характер, но тенденция видна). К концу прошлого века в ряде развитых стран постиндустриальный уклад становится доминирующим. Но структурный кризис вызывается не этим фактом. Двигателем (но не движителем!) структурного кризиса 2008-201? годов стало взрывное развитие средств коммуникаций (в первую очередь Интернета и социальных сетей). Благодаря коммуникационным технологиям резко повысилась производительность «новых» форм постиндустриального труда, о которых говорилось выше. Мы вновь сталкиваемся с ситуацией, когда в производство благ вовлечено далеко не все трудоспособное население. Поскольку кризис еще не разрешен, то выделять наиболее эффективные меры его преодоления пока было бы преждевременным.
Задачей этой заметки не является анализ «движителей» кризиса, к которым, вне сомнения, относятся некоторые финансовые институты («движителем» Великой депрессии часто называют потребительский кредит, а «движителем» сегодняшнего кризиса — некоторые деривативы). Тем не менее, помнить о существовании институтов-движителей необходимо.
Еще одним вопросом, на который автор не готов дать ответ, служит вопрос о глобальных кризисах феодальной ОЭФ. В этом вопросе автору нужны консультации и дополнительные исследования. Но, пользуясь неофициальным характером этой публикации, рискну высказать гипотезу: не все феодальные ОЭФ пережили такой кризис, для некоторых он мог стать финальной точкой, после которой произошел откат «в начало формации». В частности, причиной такого «нерешения» может быть выбор в точке бифуркации, о которой говорилось выше, неограниченного неравенства. Но это, всего лишь, непроверенная гипотеза, нуждающаяся в подтверждении/опровержении историческими примерами (в качестве первого примера приведу цитату из Дж. М. Тревельяна («История Англии от Чосера до королевы Виктории»): «В царствование Генриха VIII некоторые большие города, такие, как Лондон и Ипсвич, организовали в административном порядке помощь своей бедноте. В конце царствования Елизаветы и при первых Стюартах это сделалось обязанностью, предписанной государственным законодательством и возложенной бдительным Тайным советом на членов местного городского самоуправления; расходы оплачивались обязательным налогом в пользу бедных»).