Когти
   Попробуйте для начала купить в магазине розыгрышей пластмассовые когти и походить с ними, не отклеивая, несколько дней. Включая, извините, посещение туалета. Уверен, что очень скоро вы откажетесь от мечты о красивых блестящих когтях.
   А вообще, мечтать не вредно. Помечтайте, например, о том, что неплохо бы с помощью генной инженерии сделать летающих людей. Или фотосинтезирующих и избавленных от забот о хлебе насущном. Или о дышащих жабрами ихтиандрах. А я разберу ваши мечты по косточкам и камня на камне от них не оставлю.
 
От редакции
   Идеи реконфигурации человеческого организма прошу направлять в виде кратких предложений автору (главреду интернет-журнала «Коммерческая биотехнология») с копией на levkovl@computerra.ru. Глядишь, и тему номера соберем. – Л.Л. – М.
 
 
 

АНАЛИЗЫ: И пусть никто не уйдет обиженный

   Автор: Илья Щуров Voyager
   Необычный ноутбук XO-1, разрабатываемый в рамках проекта OLPC (laptop.org) для борьбы с проблемой «цифрового разрыва», скептики могут высокомерно окрестить «компьютером для бедных». Формально они правы: целевая аудитория «стодолларового лэптопа» – дети из стран третьего мира, не имеющие доступа не только к высокоскоростному Интернету, блогам MySpace или вселенной Second Life, но и к обычным книжкам и учебникам. Однако, если сбудется хотя бы часть объявленных планов, я не удивлюсь, когда через десять-пятнадцать лет нынешние «бедные» пользователи по уровню владения информационными технологиями (и не только ими) окажутся на голову выше своих «богатеньких» сверстников. На то есть множество причин.
Своими глазами
 
   Я давно присматривался к этой инициативе, однако до недавнего времени знакомство с нею не выходило за рамки внимательного прочтения новостей по теме, попадающих на страницы "КТ". Поводом к более серьезным отношениям послужил выход LiveCD с промежуточной версией операционной системы (конечно, это Linux), лежащей в основе XO. (Образ размером в 200 мегабайт доступен с сервера olpc.download.redhat.com.) На самом деле, складывается впечатление, что это не первый подобный релиз, однако на глаза он попался впервые, и, не имея надежды получить доступ к тестовым устройствам (уже существующим в реальности в очень ограниченном количестве), я не смог пройти мимо возможности своими руками пощупать заманчивую игрушку.
   Памятуя заветы главного редактора, не буду рассказывать душераздирающие истории о том, как LiveCD не загрузился на моем (отнюдь не стодолларовом) ноутбуке из-за внешнего FireWire-привода, как он ругался на отсутствие каких-то устройств хранения уже на десктопе, как жутковато хрустел жесткими дисками при загрузке и как в конце концов счастливо загрузился. Вы не узнаете и о том, как я пытался найти в нем эмулятор терминала, меню «Пуск» или на худой конец иконку "Мой компьютер". Собственно, про LiveCD вы не узнаете больше вообще ничего: он представляет собой скорее SDK (набор для разработчика), чем «демонстрашку» возможностей и идей системы, о которых, собственно, мне и хочется рассказать.
Постановка задачи
 
   Кстати
   Название «XO» – это не загадочная аббревиатура, а просто символьное представление для иконки проекта.
 
   Проблема создания максимально экономичного (в смысле цены и энергопотребления) компьютера, обладающего уникальными свойствами и ориентированного в первую очередь на детей, вернула разработчиков на несколько десятков лет назад. В те славные времена, когда каждый байт оперативной памяти был на счету, программы приходилось писать, все еще задумываясь о производительности, когда не было устоявшихся интерфейсных стереотипов и парадигм современных операционных систем. Конечно, разработка ведется далеко не с нуля – без ядра Linux, языка Python и множества других разработок OLPC вряд ли был бы возможен. Однако, участники проекта обладают огромной свободой в способах достижения заявленных целей, неведомой индустриальным программистам. Более того: благодаря этой свободе проект может ставить перед собой фундаментальные вопросы о роли информационных технологий в образовании – и давать на них нестандартные ответы.
   Что именно нужно детям для обучения и как им могут помочь в этом ИТ? Очевидно, им не нужно уметь работать в Excel, в совершенстве владеть Photoshop или знать язык запросов SQL. Даже не нужно знать, что файл – это "поименованная область на жестком диске". Равно как и множество других вещей, которыми богаты курсы информатики в школе.
   Что же все-таки требуется в первую очередь? Ответ очень простой: иметь возможность экспериментировать, творчески выражать себя, общаться с другими людьми (в первую очередь – своими сверстниками), обмениваться с ними приобретенным опытом – и тем самым активно познавать окружающий мир, учиться и учить других. Эти идеи, объединяемые в концепцию конструктивистского (constructivism) обучения, активно продвигаются создателем языка Logo Сеймуром Пэйпертом (Seymour Papert), создателем Smalltalk Аланом Кеем (Alan Kay) и другими известными участниками проекта OLPC, и лежат в основе операционной системы XO.
Детский мир
   Взрослые живут в мире документов, таблиц, формул, писем, поручений, совещаний. Дети живут в совершенно другом мире. В нем можно сказать "давай поиграем?" или "я с тобой не дружу" (а не "ты добавлен в игнор-лист"), можно придумывать бесконечные истории (а не обсуждать бесконечные отчеты), фантазируя на ходу и подыгрывая фантазиям друг друга, можно рисовать смешные или серьезные картины (а не диаграммы и графики), делая штрихи по очереди. К счастью, разработчики OLPC не забыли обо всем этом.
 
 
 
 
 
 
 
 
   Одно из основных направлений OLPC – совместная работа и общение между детьми. Технически оно обеспечивается автоматическим созданием беспроводных ad-hoc-сетей (ячеек, mesh), однако одной лишь возможности связи между несколькими компьютерами мало. Чтобы ей могли воспользоваться маленькие юзеры (причем естественным образом), нужно существенно перестроить всю модель системы. И это чувствуется практически в каждом ее элементе.
   Например, в метафоре "рабочего стола". Собственно, как такового «стола» нет. (И правда, причем здесь стол, да еще и рабочий, когда мы говорим о детях?) Есть несколько режимов отображения виртуального пространства ноутбука и его окрестностей, различающихся масштабом [Эта идея удивительным образом перекликается с разработками Джефа Раскина о "зуммируемом интерфейсе" (см. статью Владимира Гуриева "Борец с системой" в «КТ» #582) – странно, что этой связи практически никто не замечает]. Наиболее близкий к привычному нам режим – "Дом", соответствующий собственно данному компьютеру. Более широкий взгляд покажет пользователей в группах, к которым принадлежит владелец ноутбука – например, его одноклассников, друзей и т. д. Участники представляются двухцветными иконками, причем этот цветовой идентификатор является важным элементом интерфейса системы – он сопровождает каждого пользователя почти постоянно (например, заменяет картинки-аватары в сообщениях). Поднимаясь на ступеньку вверх, можно осмотреть всю «окрестность» (neighborhood) – на экране отображаются все пользователи ячейки, объединенные в кластеры по текущей активности.
   Кстати, об «активностях» (activity) – они заменяют привычные нам "приложения". Этим словом обозначается одновременно и программа, и документ, и группа участников, которые над ним работают, и пространство для общения между ними. Можно воспринимать activity как своеобразную многопользовательскую игру, которая может быть надстроена над любым привычным нам приложением (собственно игрушкам в XO уделяется совсем немного внимания). Конечно, если ребенок просто загрузит веб-страницу или станет рисовать картинку в графическом редакторе, разница между двумя понятиями будет практически несущественной, но как только ему захочется пригласить к участию других пользователей XO, он должен иметь возможность это сделать буквально одной кнопкой. Например, если на лэптопе приглашенного участника нет необходимого кода, он скопируется и установится автоматически.
 
 
 
 
   Еще одна привычная концепция, которой нет в OLPC – иерархическая файловая система. Роль файлов играют "объекты", а вместо файловой системы имеется "журнал", в котором записываются основные их изменения. Сохранение и восстановление состояний в идеале происходит автоматически при запуске и завершении «активности» [И снова что-то подобное мы уже видели у Раскина]. Если же нужно запомнить текущую версию объекта, но при этом продолжить его изменение (аналог функции "сохранить как"), на помощь приходит встроенная система управления версиями, знакомая программистам и участникам вики-проектов.
Модель для разборки
   Дети любят разбирать игрушки. (Это предложение я припас еще несколько лет назад как раз для статьи об использовании свободного софта в образовании. Думаю, сейчас самый подходящий момент.) Посмотреть, что находится внутри, и попытаться понять, как она устроена и почему работает так, а не иначе. То же желание движет хакером, изучающим код неизвестной системы, ученым, пытающимся понять окружающий мир, или писателем, рассказывающим о переживаниях людей. Наверное, это один из основных инстинктов мыслящего существа.
 
   Один из девизов OLPC – "низкие полы и никаких потолков". С одной стороны, система должна быть максимально простой, чтобы быть доступной для полностью самостоятельного освоения ребенком с нуля, а с другой – эта простота не должна служить препятствием для раскрытия возможностей устройства и талантов ее владельца. Пятилетнему пользователю вряд ли захочется учить три тысячи команд Unix и читать многие страницы документации, но уже десятилетнему, возможно, захочется разобраться в том, как работает эта система и чего он может достичь с ее помощью.
   "Прозрачность" системы – еще один ключевой пункт философии всего проекта. Конечно, открытые исходные коды – необходимое условие, однако одного лишь open source здесь мало. Требуется создать инфраструктуру, максимально упрощающую изучение и модификацию кода.
   Такую инфраструктуру обеспечивает специальная Developer-activity, представляющая собой полноценную среду разработки новых видов деятельности. Большинство компонентов XO написаны на языке Python, по мнению многих экспертов являющемся одним из лучших кандидатов на роль первого «серьезного» языка программирования. Юный хакер может модифицировать любую готовую «активность» или даже организовать совместную разработку по всем правилам open source (с патчами, контролем версий и т. д.), а также использовать приемы экстремального программирования благодаря функциям совместного редактирования кода в реальном времени (эта возможность присутствует и в обычном текстовом редакторе, основанном на AbiWord).
 
   Впрочем, вся эта деятельность доступна скорее достаточно продвинутым пользователям, нежели начинающим – разбираться в реальном коде реальных приложений – нетривиальная задача даже для людей, уже владеющих базовыми навыками программирования.
   Получить же их можно с помощью «активности» eToys – визуальной среды разработки мультимедийных приложений. Основанная на языке Squeak (вариации легендарного Smalltalk) и созданная специально для обучения программированию, эта система позволяет максимально интуитивным способом создавать и модифицировать интерактивные "книги", объединяя и настраивая различные объекты, управляемые скриптами.
Вперед в будущее?
   Многие вещи, о которых я рассказал выше (и те, которые не поместились в формат этого краткого обзора), пока не реализованы в коде и остаются скорее концепциями, либо реализованы не до конца (трехсоткилобайтный документ, описывающий пользовательский интерфейс системы, доступен на wiki.laptop.org). Посмотреть «вживую» мне удалось только на eToys и, отчасти, на зуммируемый рабочий стол (не слишком функциональный на одиночном компьютере, не включенном в беспроводную сеть с другими подобными устройствами). Однако это не самое главное. Как писал Джереми Эллисон (Jeremy Allison) в статье для ZDnet, "даже если OLPC потерпит неудачу, он существенно повлияет на компьютерный ландшафт". Идеи, заложенные в его основу, стоят того, чтобы их реализовали. И они будут реализованы. В рамках этого проекта или другого, через полгода или десять лет – уже не столь важно.

ГОСТИНАЯ: Парадоксы систематики

   Автор: Дмитрий Шабанов
   Первое дело первого человека до сих пор не доделано. Адам, по свидетельству Библии, до грехопадения (определившего необходимость добывать хлеб насущный в поте лица своего) придумывал имена для животных. Ныне поименовано более миллиона видов, а очередь безымянных все еще скрывается за горизонтом. Классифицирование названных видов позволяет разобраться в миллионе имен и сделать информацию об их сходстве и различии более компактной.
   Систематики до сих пор спорят, существует ли единая, правильная классификация. Оптимисты верят, что это та классификация, которая точно отражает филогению – эволюционную историю. Вот узнаем с помощью молекулярных методов, как шла эволюция, и поставим все на свои места… Увы, эволюционные изменения многомерны, и, проецируя их на иерархическую систему, мы неизбежно теряем значительную часть информации. Какую? Ту, которую сочтем менее важной. Считаете, что «объективными» методами можно определить, какая часть информации наиболее важна? Оставьте эти иллюзии!
   Интерпретируйте, к примеру, такой факт. С тех пор как разошлись эволюционные пути человека и шимпанзе, человек приобрел 154 новых гена, а наши «отсталые» родственники шимпанзе – 233! Как измерить и сравнить эти изменения? По числу генов? По длине последовательностей ДНК? По изменению образа жизни? Одна из влиятельных школ систематики говорит: если изменение видов нельзя оценить "объективно", то его не следует учитывать вообще и реконструировать надо лишь порядок ветвления эволюционного древа. Страусово решение: зачем нужна классификация, которая не учитывает основной результат эволюции – изменение видов?
   С другой стороны, сложности в трактовке каких-то результатов не означают, что эти результаты бесполезны. Зачастую родство (или его отсутствие) разных групп организмов, устанавливаемое молекулярными методами, оказывается столь явным, что приходится менять устоявшуюся классификацию.
   Орнитологи давно выделили две группы грифов: Старого Света (собственно грифов) и Нового Света (катартид). Хотя было ясно, что эти группы не находятся в тесном родстве, результаты анализа ДНК оказались неожиданными. Американские грифы – это на самом деле аистообразные. К их числу относятся и современные кондоры, и самые крупные из когда-либо летавших птиц. Речь идет о тераторнисах ("ужасных птицах"), "грифах", которые в неогеновом периоде питались останками гигантских млекопитающих. У одного из них, аргентависа, размах крыльев достигал 7 м, а вес 120 кг! Помните, в "Детях капитана Гранта" Жюля Верна кондор похитил и утащил по воздуху мальчика? Реальные кондоры на такие подвиги не способны. Но в нашем фольклоре европейские аисты носят детей в клювах (держа за пеленочку), а американские – в когтях!
   Новейшие молекулярные данные касаются примитивных групп крылатых насекомых. Выяснилось, что термитов надо не выделять в особый отряд, а рассматривать как семейство отряда тараканов. Неважно, что по сложности социальной организации термиты обогнали всех животных, кроме людей. Социальное совершенство термитов – следствие их способности расщеплять целлюлозу, основу древесины. В кишечниках термитов живет сложный эндосимбиотический комплекс. Его основу составляют высокоспециализированные жгутиконосцы (которых долго считали инфузориями, так как под микроскопом кажется, что они покрыты множеством подвижных ресничек, как инфузории). То, что считалось ресничками, оказалось спирохетами – удлиненными бактериями, способными извиваться. Населяющие кишечник термита спирохеты выстраиваются на поверхности жгутиконосца, синхронизируют свои движения и перемещаются вместе с ним, как единое целое. Жгутиконосцы сами по себе не могут расщеплять целлюлозу, но внутри них обитают симбиотические бактерии, овладевшие этой реакцией. Заглатывая маленькие щепочки, жгутиконосцы скармливают их своим внутренним бактериям, а продуктами переработки делятся с обеспечивающими их подвижность спирохетами. Ну а термиты питаются как продуктами активности своего внутреннего зоопарка, так и его питомцами.
   Несмотря на все чудеса эндосимбиоза, переваривание целлюлозы для термитов – непростой процесс, в кишечнике одного насекомого ему не пройти. Поэтому одна и та же порция пищи проходит через пищеварительные тракты многих насекомых, поедающих фекалии друг у друга. В конечном счете комочки из продуктов переработки пищи будут использованы для возведения термитников. Эти сооружения, иногда достигающие величественных размеров, обеспечивают защиту и благоприятный климат для совместного расщепления древесины. И теперь получается, что все это делают тараканы?! Представляете, какой победой генной инженерии и прочих биотехнологий стало бы создание прусаков, содержащих в кишечнике симбиогенетический комплекс, способный расщеплять целлюлозу? Такие тараканы поедали бы не только пищевые остатки, но и мебель с книгами.
   Сфера приложения данных молекулярной систематики растет. Последняя новость: из остатков мягких тканей тираннозавра, найденных пару лет назад в Монтане, извлекли фрагменты молекул белка (коллагена, основы соединительной ткани). Анализ этих фрагментов пока принес лишь тривиальный результат: тираннозавр состоял в более близком родстве с курицей, чем с лягушками и тритонами. Стоило ли ради этого тревожить останки, ожидавшие своей судьбы 68 миллионов лет? Стоило! Ведь лиха беда – начало. Поймем, в каких породах макромолекулы сохраняются лучше, – научимся их эффективнее искать и толковее анализировать, и со временем узнаем что-то новое. Поживем – увидим…

КАФЕДРА ВАННАХА: Относительность и электрические машины

   Автор: Ваннах Михаил
   В заметке «И вычисления относительны» («КТ» #682, с. 16) рассказано о влиянии выбора системы отсчета на эффективность вычислений. Но там речь шла о релятивистских системах, вроде пучков элементарных частиц, движения в которых заставляют учитывать эффекты специальной теории относительности (СТО). Но многие ли знают о существовании достаточно широко используемой электрической машины, функционирующей на основе релятивистских эффектов?
   Воснове этого устройтва, называющегося униполярным генератором, лежит явление униполярной индукции, суть которого заключается в том, что при движении намагниченного тела под некоторым углом к оси намагничивания происходит его поляризация. В одном месте на поверхности тела собираются положительные заряды, а в другом отрицательные. Приложив к этим точкам проводник, мы получим ток.
   Представим себе обычный круглый постоянный магнит, вроде используемого в динамиках. Верхний торец – северный полюс, нижний – южный. Пусть магнит вращается вокруг оси, и к нему присоединены два скользящих контакта – один на оси вращения, другой на боковой поверхности. Ввиду того, что магнит проводящий, преимущественно железный, по цепи потечет ток.
   Очень просто! Куда проще, чем в самых первых динамо-машинах. Но за счет чего же образуется ток?
   Дело в силе Лоренца. Она действует на свободные электроны внутри проводника, движущегося в магнитном поле, вызывая их перераспределение, то есть поляризацию. И если проводник замкнут, то электрические заряды будут двигаться непрерывно, порождая ток. Это в первом приближении.
   Но последовательное описание явления униполярной индукции дается лишь теорией относительности. Рассмотрим, как это делается.
   Поставим мысленный эксперимент: пусть мы имеем две системы отсчета. Одна лабораторная (сидим за столом и глядим на вращающийся магнит), другая – связанная с магнитом (собственная система отсчета). Вообразим себя сидящими на магните и вращающимися вместе с ним.
   После того, как мы ввели две системы отсчета, и начинается самое интересное. В связанной с магнитом системе отсчета присутствует только постоянное магнитное поле. Магнит в этой системе неподвижен, и на его свободные электроны никакие силы не действуют. В магнитном поле движется только проводник, и Лоренцева сила действует только на его электроны. Именно она и создает электродвижущую силу (ЭДС), вызывающую электрический ток. Запомним это.
   Теперь перейдем к лабораторной системе отсчета. Здесь внутри вращающегося магнита существует два поля – и магнитное, и электрическое. Электрическое компенсирует силу Лоренца, и полная сила, воздействующая на электроны, равна нулю. В неподвижном (в лабораторной системе отсчета) внешнем проводнике силы Лоренца нет, зато есть электрическое поле, создающее между полярной осью магнита и боковой поверхностью разность потенциалов, равную электродвижущей силе, о которой мы говорили, рассматривая собственную систему отсчета. Запомним и это!
   А теперь зададим себе очень простой вопрос: как все обстоит на самом деле? Какие заряды создают электрическое поле, которое, как Афина из головы Зевса, вдруг является во всеоружии, но из ничего, из перехода от одной системы координат к другой.
   Это ведь не квантовый мир с его эффектами Наблюдателя. Это самый что ни на есть макромир. Обыденный, повседневный. И в нем поле, порождающее токи весьма большой величины, берется ниоткуда. Из того, что присутствует в одной системе отсчета и отсутствует в другой.
   Ответ на этот вопрос дает релятивистская теория. Дело в относительном характере деления единого электромагнитного поля на поле электрическое и магнитное. Которые зависят от той системы координат, в которой ведется наблюдение. И о чем, несмотря на сданные курсы электродинамики, обычно неосведомлено большинство обладателей инженерных дипломов постсоветских вузов.
   Подробно и строго с явлением униполярной индукции можно познакомиться в [ Тамм И. Е., Основы теории электричества. М., 1966…]
   Мало кто знает и о существовании самих униполярных генераторов, в промышленном исполнении использующих, конечно, не постоянные магниты, а тороидальные катушки возбуждения. Для съема тока с подвижных частей часто используются устройства на основе жидкого металла.
   Униполярные генераторы дают рекордные токи, в экспериментальных образцах до миллионов ампер, как правило, при невысоких напряжениях. Отсутствие пульсаций тока делает их весьма эффективными для питания электролизных установок, дуговых печей…
   Узнать о последних достижениях в области униполярных генераторов по открытым зарубежным источникам автору не удалось. Дело в том, что униполярные генераторы весьма хороши для питания перспективных электромагнитных орудий сверхвысокой кинетической энергии (в опытных образцах, традиционно запитываемых от конденсаторных батарей большой мощности). А о роли, которая отводится таким орудиям как в перспективной космической ПРО, так и в системах более обычных вооружений бронетанковых, авиационных, хорошо известно.
   Но это частности. Куда интереснее сам факт существования сугубо инженерного устройства, для описания которого необходима СТО.

ТЕМА НОМЕРА: Дефицит внимания

   Автор: Родион Насакин
   Кажется, ситуация с проектами Web 2.0 начинает стабилизироваться. На интернет-революцию социальные сети, сервисы для коллективной работы, хранилища фото– и, разумеется, видеоконтента не потянули, однако и пессимистическим предсказаниям по поводу нового пузыря доткомов не суждено было сбыться. Впечатляющее количество таких проектов позволило им вместе сформировать ни больше ни меньше, как новую медиа-среду, которая, несмотря на свою сырость, уже успела стать пугалом для телекомпаний.
 
   HD от Apple
 
   На днях было ликвидировано досадное недоразумение с нашумевшей «яблочной» телеприставкой Apple TV. Она поддерживает воспроизведение HD-видео, но поначалу такой контент неоткуда было скачать. И вот наконец в iTunes появились первые видеоподкасты от Washington Post с разрешением 720p. В Apple обещают, что теперь залежи HD-контента будут нарастать стремительными темпами.
 
   Видеоресурсы показались "властителям умов" враждебными не только из-за копирайтной угрозы, но и в силу оттока в онлайн самой перспективной части потребительской аудитории. Той самой, описывая которую маркетологи неизбежно жонглируют эпитетами "молодая", "успешная", «прогрессивная» и т. п. Представители этой целевой группы в новых условиях начали в массовом порядке игнорировать навязываемый контент, предпочитая самостоятельно решать, что и когда они хотят посмотреть.