KolibriOS: Интервью с Сергеем Кузьминым (Wildwest)

от автора

Встречайте корпоративного юзера блога KolibriOS. От имени этого юзера будут публиковаться статьи, написанные авторами-фрилансерами в рамках «Блог KolibriOS ищет авторов», а также участниками проекта, не имеющими пользователя на Хабре, либо не желающими по какой-либо причине публиковать статьи от своего имени.

В качестве первой публикации, предлагаем Вашему вниманию интервью с Сергеем Кузьминым (ник Wildwest), одним из «старожилов» в проекте KolibriOS (на Хабре W__W).

1. Расскажите о себе, кто Вы и откуда? Чем занимаетесь?

Я преподаю в одном из вузов Санкт-Петербурга — веду лабораторные и практикумы, читаю лекции. В науке занимаюсь алгоритмами автоматического анализа видеоинформации для систем компьютерного зрения и прикладного телевидения. Написал больше 40 статей, в прошлом году стал соавтором монографии. С открытия Coursera (весна 2012) слежу за курсами по технике и ИТ: некоторые просто скачиваю в надежде когда-нибудь посмотреть, а на других учусь — получил сертификаты от трех профессоров в области компьютерного зрения — Jitendra Malik, Guillermo Sapiro, Irfan Essa.

2. Как долго Вы в этом проекте?

Я узнал о ней (MenuetOS — прим. редактора) из печатной версии статьи www.comprice.ru/articles/detail.php?ID=43137 во второй половине июля 2003 года.

Через несколько недель я вышел в интернет, зашел на menuet.narod.ru, скачал разные дистрибутивы. Первым я решил запустить немецкий дистрибутив Gerschi (menuet.narod.ru/arch2003_3.htm). Выглядел он очень красочно.

Когда через некоторое время я запустил официальный дистрибутив, то был неприятно удивлен – он выглядел менее ухоженным. Тогда у меня не было стабильного доступа в интернет, так что я мог лишь раз в несколько недель заходить на сайты проекта. В 2004 году с наступлением лета я начал участвовать в обсуждениях на русскоязычном форуме, с осени в обсуждениях на англоязычных форумах. Потом стал заниматься CPUID и прочими вещами, которые описаны далее.

3. Чем занимаетесь в проекте КолибриОС?

В проектах MenuetOS и KolibriOS я занимался теми программами, которые были на тот момент не доделаны, а также журналистской, рекламной, правозащитной деятельностью. Расскажу по порядку:

В MenuetOS была программа для показа частоты процессора. Я решил её развить и постепенно появился CPUID — программа показа характеристик процессора. Вначале интерфейс программы постоянно менялся, но потом стабилизировался.

В ходе разработки была обнаружена неточность в ядре ОС, и я попал в список разработчиков MenuetOS. Потом в дистрибутив вошла и программа (CPUID — прим. редактора). В 2006-2007 году это была уже очень солидная программа, сравнимая с CPU-Z. Судя по всему, это была первая программа для MenuetOS/KolibriOS, в которой интерфейс программы менялся в зависимости от детектированного железа. Для процессоров Intel был обычный интерфейс, а для AMD появлялись дополнительные элементы — кнопка для выбора частоты шины (еще не был сделан детект частоты системной шины) и надпись с рассчитанным рейтингом производительности (справа вверху на рисунке). Надо отметить, что много людей помогали тестировать эту программу и писали для нее код, помогали с дизайном (Heavyiron, Leency, Mario_Z, Ghost_nsk, halyavin, grechnik). Интересный приём был связан с красивой кнопкой вызова второго окна – поверх кнопки нарисовано изображение, и если пользователь нажмёт на изображение, то получится клик по кнопке. Внешне это выглядело как кнопка со скином, но на самом деле это было два разных компонента.

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

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

Еще был незавершённый проект SuperMP3 — заготовка для музыкального плеера mp3 файлов. В нём тоже участвовали другие разработчики, но в итоге всё остановилось, т.к. была еще плохая поддержка звуковых карт.

Моя журналистская деятельность началась с того, что я вёл новости альтернативных операционных систем на своём сайте, и в них много внимания уделял KolibriOS. Также я комментировал эти новости, так что новостная страница в некотором роде была блогом. Я брал интервью у лидеров проекта: немного общался с финном Вилле Турьянмаа (основателем MenuetOS), англичанином Майком Хиббетом, поляком Ярославом Пельцаром, белорусом Михаилом Семеняко (aka mike.dld) и Маратом Закияновым (aka Mario79, aka Mario_Z, aka Mario_r4). Марат потом попросил удалить интервью с ним с моего сайта. Много внимания уделял переводам различных статей и истории Menuet/KolibriOS (самая большая статья).

В рамках рекламы ОС опубликовал две статьи в печатном виде ( www.comprice.ru/articles/detail.php?ID=42992, samag.ru/archive/article/1742 ) и ещё одну в электронном. Когда был релиз ОС, то многие из нашей команды шли на компьютерные форумы и сайты, чтобы написать об этом.

(Небольшое лирическое отступление упрятано под спойлер — прим. редактора)

Краткая история отделения KolibriOS от MenuetOS

Летом 2004 года Вилле готовился к переезду в Париж, и назначил руководителем проекта Хиббета. Хиббет через некоторое время пропал, и появилась необходимость сменить руководителя проекта. Надо отметить, что в 2003-2005 годах на нашем форуме регулярно выкладывались новые фиксы, драйверы и программы, в том время как на официальном форуме большинство разработок касалось интерфейса, перевода и прочего моддинга ОС. Часть из наших разработок анонсировалась на официальном форуме и форуме компилятора FASM, но в дистрибутив не попадали, т.к. сами дистрибутивы собирались довольно редко и, видимо, из того, что присылали руководителям проекта на почту.

В это непростое время я, вместе с другими членами нашей команды (Sniper, Mario79), пытался донести до Вилле и англоязычного сообщества мысль, что большинство реальных разработчиков MenuetOS находятся в странах бывшего СССР, и надо назначить руководителем проекта человека, который хорошо знает английский и русский языки. В общем, защищал права «советских» разработчиков. Наша команда видела в этой роли mike.dld, у которого были хорошие отношения с Вилле, и он также был в нашей команде. Это так и не удалось сделать: руководителем был назначен Пельцар, потом голосованием на официальном форуме его кандидатуру многие поддержали. Потом Пельцар ушёл, и проект остался без руководителя вообще.

Самого Вилле ситуация с Menuet32 в этот момент уже мало интересовала, т.к. он занимался Menuet64 и регулярно выкладывал новые скриншоты. Отсутствие руководителя и регулярных официальных релизов дало новый импульс развитию дистрибутивов, одним из которых и был Kolibri. (Были также другие русскоязычные дистрибутивы, из которых Menuet RE долгое время считался основным, но потом его разработчик Иван Поддубный исчез.)

Когда, через некоторое время, Вилле снова объявился и сказал, что 32-х битная ветка закрывается, и всем надо писать программы для Menuet64, то большинство разработчиков его не поддержало. Наша команда несколько дней с ним спорила на форуме, а потом просто объявила о своей независимости и переименовании дистрибутива Kolibri в операционную систему KolibriOS. Вилле это не понравилось, и потом он ещё много раз писал, что мы украли его код, а также удалял темы о KolibriOS на контролируемых им форумах. В итоге было добавлено упоминание MenuetOS в загрузочный экран, и проставлены копирайты в файлах ядра. (Упоминание на загрузочном экране было убрано CleverMouse в ревизии #3759 4 июля 2013 г., спустя почти 10 лет после того, как оно было добавлено, так как, по её словам, "в Колибри осталось менее 20% функциональности Менуэта" — прим. редактора.)

В мае 2006 года я начал заниматься своей программой анализа видеоинформации, активно писал статьи по компьютерному зрению. Постепенно времени на Kolibri оставалось всё меньше и меньше. В итоге, осенью 2007 года я прекратил для неё разрабатывать, но продолжал время от времени заходить на форум и вики проекта. Недавно меня попросили добавить в программу CPUID поддержку современных процессоров. Также попробую порыться на винчестерах: судя по всему, многие программы просто забыты, и в их числе скринсейвер с геометрическими фигурами – шедевр демосцены.

4. Что Вас привлекает в нём? Почему?

Когда я её увидел, то ощутил большой контраст с тогдашними дистрибутивами Линукса. Тот помещался на несколько компакт-дисков, требовал переразбиения жёсткого диска, программы зависели от кучи библиотек… MenuetOS в этом плане был компактен и неприхотлив. Потом очень понравилось сообщество. Я много Осей перепробовал, участвовал в некоторых сообществах (русская раскладка клавиатуры в Syllable появилась по моей просьбе) и могу сказать, что, по сравнению с ними, команды MenuetOS/KolibriOS были гораздо более активны, интернациональны и отзывчивы.

Выпускалось много статей, FAQов, проводились конкурсы на создание логотипов и программ, потом стали выпускать электронные журналы. Программирование под эту ОС изначально было не очень привлекательным, но постепенно появились макросы и библиотеки виджетов. Они в несколько раз ускоряют разработку приложений. API всё ещё развивается — недавно появилась поддержка работы с USB-устройствами. Было разработано несколько эмуляторов API KolibriOS для запуска программ в других операционных системах. Относительно легко изменить любую часть операционной системы.

5. Какое будущее Вы видите у этой ОСи?

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

С лидером проекта у нас в последние годы проблема. После ухода diamond’a (grechnik) так и не вышло ни одного дистрибутива. Есть только регулярно обновляемые ночные сборки. Но мне кажется, что он выйдет в ближайшие месяцы, т.к. скоро 1 миллион строк (не считая библиотек на C, из-за которых неверно отображается общее количество строк — прим. редактора), и завершается Kolibri Summer Of Code.

Сообщество постоянно растёт, особенно после создания группы в социальных сетях (для англоязычных юзеров была создана группа в Facebook — прим. редактора). В проекте есть первоклассные программисты — два наших разработчика (hidnplayr, Mario79) практически догнали Линуса Торвальдса. По этой же ссылке видно, что проектов на ассемблере довольно много, и можно надеяться на приход новых людей.

Касательно промышленного назначения ОС – я назову пять примеров (остальные описаны на нашем форуме):

  1. MenuetOS/KolibriOS ставили в банкомат, и, в принципе, вполне реально написать соответствующий банковский софт;
    Под спойлером — фото MenuetOS, работающего в банкомате

  2. использовали на заводе для SCADA-системы;
  3. проводили численное моделирование спектров для задач радиофизики (Мессбауэровская спектроскопия) и даже защищали диссертацию — vak2.ed.gov.ru/idcUploadAutoref/renderFile/80179 (программа CMspectra сперва была написана для KolibriOS, затем портирована в другие операционные системы — соавтор Андрей Игнатьев, aka andrew_programmer);
  4. использовали на сервере для картографического (ГИС) сервера;
  5. на железнодорожном транспорте для автоматического контроля состояния рельсов на основании анализа видеоинформации с проезжающего поезда.

(На фото ниже — использование на заводе для SCADA-системы)

Достаточно долго обсуждается вопрос встраивания KolibriOS в BIOS, что даст определенные возможности как программистам, так и пользователям. (Хотя уже даже есть один рабочий пример — прим. редактора.)

Таким образом, при наличии рук и знаний, KolibriOS можно приспособить под любые задачи.

Напоследок — атмосферные картинки фанатов: моя и южноамериканца.


ссылка на оригинал статьи http://habrahabr.ru/company/kolibrios/blog/197360/


Комментарии

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *