Яндекс.Метрика

    Программирование

    Скрипт для PlanetLab. Удаление и добаление Nodes

    Так как недавно пришлось вникать в тонкости пользования PlanetLab, я решила поделиться примером скрипта на автоматическое добавление-удаление нодов. Возможно, это в будущем сократит кому-нибудь время.

    image

    Опишу вкратце, о чем идет речь. PlanetLab – это сеть, широко используемая для тестирования новых сетевых сервисов или модификации уже существующих. Узлы PlanetLab (их около 1024-х) распределены в различных странах и доступ к ним получают только сотрудники тех учреждений, которые содержат у себя узлы PlanetLab. Более подробная статья о PlanetLab есть здесь.

    Если вы занимаетесь разработкой распределенных приложений, без PlanetLab обойтись будет сложно. При тестировании распределенного приложения, Вам скорее всего придется иметь дело с большим количеством узлов (Nodes). Проблема состоит в том, что в PlanetLab ноды часто уходят в оффлайн. Соответственно, эти ноды нужно удалить из своего аккаунта (slice) и подключить взамен них новые. Это, безусловно, возможно сделать и через веб-интерфейс руками. Однако, процесс это муторный, поэтому луче всего использовать скрипт. Таким скриптом я и хочу в Вами поделиться. Написан он на питоне.

    Описение всех методов API PlanetLab можно найти по адресу www.planet-lab.eu/doc/api. Сам скрипт постаралась снабдить достаточным колчеством комментариев, чтобы было понятно что происходит.

    #!/usr/bin/env python

    import xmlrpclib
    import sys
    plc_host = 'www.planet-lab.eu'
    auth =
    { 'AuthMethod': 'gpg',
    'name': 'your user name',
    'signature': 'GnuPG signature',


    slice_name = 'tudresdenple_backup'

    api_url = «%s:443/PLCAPI/»%plc_host
    #api_url = «%s/PLCAPI/»%plc_host

    plc_api = xmlrpclib.ServerProxy(api_url,allow_none=True)

    #get list of all nodes
    print «Getting list of all attached to your slice nodes:»
    nodes = plc_api.GetNodes(auth, {}, ['node_id', 'hostname', 'boot_state'])

    #get ids of the nodes that already are added to you slice
    attached_nodes_ids = plc_api.GetSlices(auth, [ slice_name ], ['node_ids'])[0]['node_ids']
    #obtain nodes hostnames, which will look like {'hostname': ''}
    attached_nodes = plc_api.GetNodes(auth, attached_nodes_ids, ['hostname', 'boot_state'])

    #extract hostname only
    have_nodes = []

    for node in attached_nodes:
    have_nodes.append(node['hostname'])

    for node in have_nodes:
    print node

    #Filter all your nodes that are not in the boot state and therefor have to be deleted
    print «Searching for non-boot nodes attached to you slice:»
    to_delete = []

    for node_record in attached_nodes:
    if node_record['boot_state'] != 'boot':
    to_delete.append(node_record['hostname'])

    for node_record in to_delete:
    print node_record
    #delete those nodes

    num_of_deleted = len(to_delete)

    if num_of_deleted > 0:
    success = plc_api.DeleteSliceFromNodes(auth, slice_name, to_delete)
    if success == 1:
    print «Successfullly detached non-booted nodes»
    else:
    print «Deleting of the non-booted nodes has failed!»
    sys.exit()
    else:
    print «Nothing to delete or add»
    sys.exit()

    #add exactly the same number of new now, as the number of deleted ones
    print «Adding new booted nodes»
    to_add = []

    for node_record in nodes:
    if num_of_deleted > 0:
    num_of_deleted -= num_of_deleted
    else:
    break
    if (node_record['hostname'] not in have_nodes) and node_record['boot_state'] == 'boot':
    to_add.append( node_record['hostname'] )

    if len(to_add) > 0:
    success = plc_api.AddSliceToNodes(auth, slice_name, to_add)
    if success == 1:
    print «Successfullly attached new nbooted nodes»
    else:
    print «Addint of the booted nodes has failed!»
    sys.exit()

    print «The following nodes were added:»
    for node_record in to_add:
    print node_record

    Биотехнологии

    Практическая биоинформатика ч. 2

        Эта статья расскажет о том, как обработать данные, полученные после pipeline, выходом которого будет sam/bam файл[1], создать несложный bed graph файл (http://genome.ucsc.edu/FAQ/FAQformat.html) и просмотреть его с помощью UCSC genome browser[2]. Очень сложно решиться, на чем писать программы, ибо уже есть огромное количество чужих наработок и совсем не хочется сочинять колесо там, где этот этап уже пройден. Долго мучаясь, я решил остановиться на C++, хотя phyton и R рассматривались на равных. Также сохранилась идея, что может понадобиться графика, да ещё и под Linux, поэтому к С++ прибавилось Qt. Надеюсь, в этой статье я расскажу достаточно подробно о всем выше перечисленном, чтобы ответить на вопрос, заданный мне в начале пути и озвученный в первой части повествования.

    Язолъ

    Нюансы в логике работы 3g оператора PeopleNET

    Волею судеб уже достаточно продолжительное время я вынужден использовать мобильный интернет от peoplenet в качестве основного, стационарного канала. В моей местности долго не было альтернативы, а теперь они есть только в виде других 3g операторов. Особых нареканий на работу этого оператора у меня, как ни странно, нет. Еще при подключении я соорудил здоровенную, пугающую соседей, антенну и всегда имел очень недурный уровень сигнала, а вместе с ним стабильность и скорость. А вот с тарифами — есть некоторые особенности. Так как интернетом я пользуюсь не один, даже самого крупного тарифного плана мне не хватает. Первый сюрприз в том, что тарифный план называется «Безлимитный новый». Но то ли из-за своей новизны, то ли из-за этих самых нюансов в логике работы — лимиты в нем есть и для моих объемов ощутимые. Лимиты заканчиваются и далее трафик стоит уже ощутимо дороже. Об исчерпании трафика, кстати, никто не предупреждает.

    Язолъ

    Easy Pay и налоговая

    Вчера, заезжая в налоговую инспекцию что бы подать декларацию по УСН за прошлый год. Моя инспектор приняв декларацию (и даже толком не посмотрев ее), сказала: «Еще, вам нужно к Павлу Петровичу*».

    Нужно — значит нужно, пойдемте.

    Зайдя в кабинет к Павлу Петровичу и взглянув на его стол сразу было понятно о чем дальше пойдет реч — на столе лежали распечатки всех транзакций по моему электронному кошельку EasyPay с 2006 по 2008 год (кошелек был давно заброшен т.к. система не самая удобная для работы, да и комиссия в 2% не может радовать).

    Павел Петрович* покапался в недрах стола, извлек бланк объяснения:

    — Здравствуйте.
    — Здравствуйте.
    — Электронными деньгами пользуетесь?
    — Да, конечно.
    — Сколько у вас электронных кошельков?
    — Не знаю, не считал.
    — Вот это кошелек номер 00№№№№№№ принадлежит вам?
    — Признаться, номера не помню, но какой-то кошелек у меня там был.
    — Для чего вы он использовался?
    — Личные нужды, платежи за комуналку, телефоны и т.д.
    — Только для себя?
    — Нет, знакомым еще иногда платил.
    — Только знакомым?
    — Да, не припомню что бы отдавал деньги незнакомым людям.
    — А зачем вы им платили за телефон?
    — Так удобнее чем в банке, до него не всегда можно добраться.
    — Просто им эти суммы могут как доход записать.
    — Не думаю, они мне возвращали наличные при встрече.
    — Хорошо, вот например Ба***, это кто? (рядом с транзакцией записан владелец телефона)
    — Сергей Михайлович, друг мой.
    — А За***?
    — Татьяна Генриховна.
    — Ко****.
    — Наверное правильно Ко****, не помню.
    — Ну все знакомые.
    — Да, или знакомые знакомых.
    — А как пополняли кошелек?
    — Через кассу банка или через знакомых.
    — А для чего?
    — Очень удобно собирать деньги.
    — А это для чего?
    — Ну там шашлыки, пиво и т.д.
    — На ** млн?
    — У меня много друзей.
    — Хорошо, а сколько денег выведено на карточку
    — Тут уже не скажу, прошли годы.
    — Хотя бы приблизительно.
    — Даже приблизительно.

    К чему я это все?
    1. Не удивляйтесь если вас вызвают в налоговую дать объяснения по поводу транзакций по вашим кошелькам.
    2. Не отпирайтесь если кошелек ваш и это подтверждается документально.
    3. Отвечайте на вопросы по существу и не забывайте что вы не должны помнить всего
    4. Дохода никакого с помощью/посредствам кошелька не получали.
    3. Все что туда попадало — это ваши деньги (возвраты долгов или наоборот деньги которые вам давали в долг) и все транзакции только перекладывание из одного кошелька в другой.

    Удачи в использовании белорусских платежных систем.

    * — все имена и фамилии вымышлены.

    Песочница

    Управление Arduino с телефона

    Добрый день!

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

    Моё видение системы выглядит так:


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

    Реклама

    Picstag.ru — фототеггинг или сервис создания интерактивных фотографий

    Здравствуйте, уважаемые хабравчане!
    Позвольте вам рассказать о новом сервисе для создания интерактивных картинок Picstag.ru. Он позволяет оставлять на изображении интерактивные метки с текстом или ссылками. Теперь, при наведении на фото, всплывет небольшое окошко с комментарием, который вы указали. Ограничений на количество меток, заливаемых фотографий — нет.



    Будущее сегодня

    Медицина + IT: что можно делать с данными

    Доктор Крафт — человек, который рассказывает про будущее медицины в привязке к IT. В прошлом топике было его интервью для Хабра и пара анонсов, в этом – отчёт по результатам лекции в России.

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



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

    Реклама

    Songsterr — теперь на Android

    C полгода назад songsterr писали об итогах трех лет. А ныне команда рада оповестить Хабрахабр о выходе приложения для Android!

    Основная функциональность


    — Доступ к огромному каталогу табулатур(400 000)
    — Наборы инструментов для каждой песни. Гитары, басс, ударные, голос и прочее
    — Список «Популярные»
    — Возможность поиска песни по имени исполнителя или названию

    В планах добавить проигрывание музыки, избранное и много-многое другое. Следите за новостями тут, в facebook и twitter.

    Скачать с маркета:

    QR:



    Технические моменты

    Песочница

    Как моделировать бизнес-процессы в нотации eEPC?

    В ходе своей работы и преподавания я сталкиваюсь с описанием бизнес-процессов организации в нотации eEPC (Extended event driven process chain), которая принята стандартом де-факто для описания процедур и регламентов после обследования деятельности организации. К сожалению, используя эту нотацию очень просто допустить ошибки моделирования, не зная правил, по которым она составляется. Эти ошибки приводят в последующем к несоответствию логики процесса, и как следствие – непониманию реальной ситуации в организации. Эта статья является некоторым обобщением моего опыта моделирования бизнес-процессов, и надеюсь, послужит некоторым читателям полезным руководством.

    Биотехнологии

    Практическая биоинформатика

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

    Реклама

    Агрегатор фриланс бирж

    [Инфо топик][Реклама]
    Этот топик создан со следующими целями:
    • дать фрилансерам выбор, теперь у них есть выбор из 3х(ссылки внизу) агрегаторов
    • найти дизайнера


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

    Особенности:
    • один из самых быстрых мониторингов
    • мониторинг только публичных проектов (для кого-то это минус, но это позволяет выкачивать проекты)
    • получение информации о проекте и об авторе(потребуется в дальнейшем)
    • охват самых крупных RU бирж
    • поиск через поисковой запрос
    • RSS каналы бирж + полный
    • репост в twitter
    • обновление количества ответов в проекте
    • в тестировании раздел пользователя с возможность создания пользовательских фильтров(фильтры поиска + подписка по почте, iphone, android приложение)


    Список дел:
    • добавить автоматическую подгрузку
    • добавить возможность отвечать на проекты с сайта
    • добавить рейтинг авторов
    • ...


    Примечания:
    • к убийству кармы готов :)
    • топик через N часов перемещу в черновики


    ссылка

    аналог1
    аналог2

    Реклама

    Если денег на маркетинг не осталось, или есть ли жизнь в долине смерти?

    Тем кому лень читать ценный текст. Маньяко теперь делает всякие работы для стартапов в кредит. Подробности лично и немного по ссылке.

    Остальные велкам читать.

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

    И все это в одной фразе, через запятую. (в одно слово, с маленькой буквы — слишком претенциозно было бы, да?)

    Текст про инвесторов поди все помнят, кто не помнит — может сходить перечитать, для прозрачности мировоззрения ;-)

    Смотрю я и вижу следующую картину:

    Ни о чём

    Maven: ответы на вопросы


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

    Вопрос звучал примерно так:Как создать spring mvc проект, и подключить требуемые библиотеки например hibernate, задеплоить его на tomcat, а потом работать с этим проектом в eclipse?
    Что бы не отвечать сумбурно и на все сразу давайте разделим вопрос.
    1. Создание Maven проекта
    2. Подключение библиотек (зависимостей) в Maven
    3. Деплой(установка) проекта на сервер приложений.
    4. Взаимодействие Maven со средой разработки.

    Небольшое введение.


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

    1. Создание проекта.

    Maven создает проекты при помощи Maven Archetype Plugin.Создать проект можно либо полностью нулевой, при помощи команды:
    mvn archetype:create -DgroupId=com.oracle.java -DartifactId=MyProject
    
    groupId — это идентификатор группы проектов (как правило название компании + продукт) например com.oracle.javafx
    artifactId — непосредственный идентификатор проекта в группе
    (Вообще, все проекты в Maven однозначно идентифицируются по трем составляющим Группа, идентификатор, версия.)

    Либо можно создать проект указав архитип(шаблон/болванка) по которому он должен быть создан:
    mvn archetype:generate -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-spring -DarchetypeVersion=2.0 -DgroupId=com.mysite.sample -DartifactId=mySpringMVCProject -DinteractiveMode=false
    
    В этой команде плагину передается набор параметров определяющих как и по какому архитипу создать проект. Каждый параметр начинается с "-D" и заканчивается пробелом. (-D<имяПараметра>=<ЗначениеПараметра>)

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

    2. Подключение библиотек (зависимостей) в Maven

    Для подключения библиотеки к проекту на Maven необходимо что бы библиотека так же была проектом на Maven и лежала в репозитории про который «знает» Ваш Maven. Если у вас в наличии есть только jar файл, который хочется использовать как библиотеку, то и это вопрос решаемый.
    • Репозиторий и его настройки (должны быть у вас в MavenDir/conf/settings.xml).
    • groupId зависимости
    • artifactId зависимости
    • version (необходимая версия) зависимости
    • type (тип) зависимости

    3. Деплой(установка) проекта на сервер приложений.

    Деплоем в tomcat занимается tomcat-maven-plugin (Ваш КЭП).Для того что бы в фазе deploy проект обновлялся на tomcat необходимо найти в xml проекта ветку настроек project.build.plugins и добавить туда следующий код кусок xml.
    <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>tomcat-maven-plugin</artifactId>
            <configuration>
                    <!--здесь должны быть указаны настройки деплоя в tomcat -->
                    <!-- Например:-->
                    <warDirectory>path/to/my/warDir</warDirectory>
            </configuration>
    </plugin>
    
    Почитать о возможных настройках плагина и посмотреть примеры можно здесь.

    4. Взаимодействие Maven со средой разработки.
    Maven уже достаточно известен и многие среды разработки умеют просто открывать его проекты (например NetBeans). Но eclipse все равно требуется проект в своем формате. Получить эклипсовский можно так же при помощи плагина:
    mvn eclipse:eclipse
    
    P.S.
    Топик не претендует на полноту изложения материала, является своеобразным экспериментом и специально помещен в «Персональные блоги», поэтому, если у вас все таки появилось острое желание поставить минус (не важно куда), потратьте пожалуйста пару минут на обоснование.
    Спасибо.

    Программирование

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

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

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

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

    Вычислительная конфигурация: видавший виды HP 550 с Core 2 Duo 1.8 ГГц на борту, под управлением Ubuntu 11.04.

    Компиляторы: gfortran 4.5.2 и Intel Fortran Compiler 12.1.0.

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

    Итак, воды в области нет. Что же хочется написать в начальном условии? Естественно, сразу же было написано 0.0D+00 (программа написана с двойной точностью вещественных чисел). Счёт на первоначальных этапах идёт в непосредственной окрестности машинного нуля. Каковы результаты? Посмотрим на график:

    Ноль

    Здесь изображено распределение насыщенности пор водой вдоль координаты в наиболее интересной части расчётной области по прошествии чуть более суток физического времени модели.

    Нужное отступление о подписях в легенде графика: всего было опробовано 18 различных комбинаций ключей (6 для gfortran и 12 для ifort), однако многие из них давали абсолютно одинаковые результаты, и потому объединены. Квадратные скобки в легенде означают, что могла быть написана любая из заключённых в них опций. Например, «шифровка» -O[1,2,3] [-fp-model [strict] [precise]] говорит о том, что компилятор использовался с оптимизацией всех возможных уровней, и дополнительно могла быть включена одна моделей вычислений с плавающей точкой (а могла быть и не включена). Три варианта (два от -fp-model и один без неё) умножить на три уровня оптимизации — итого девять комбинаций. Все они оказались эквивалентны.

    А теперь результат. Нечто реалистичное и физически возможное удалось получить только на gfortran без включения соответствия стандарту IEEE 754 (ключ -ffloat-store). Весь остальной хаос линий не содержит ни капельки физического смысла, потому что даже математически уравнения этого не допускают. Изначально подозревавшаяся неустойчивость разностной схемы была оправдана, поскольку никакие методы борьбы с ней к успеху не привели.

    Было замечено, что при наличии воды в начальный момент счёт остаётся устойчивым и различия между опциями и компиляторами скрываются в окрестности шестой значащей цифры. И т.к. характерные порядки величины, судя по полученным графикам, должны быть в районе 1.0e-2, то в начальное условие было вписано некоторое ненулевое значение, но очень маленькое. Подбором удалось установить, что для 8-байтового real оно должно быть не менее 1.0e-21. И тогда:

    Почти ноль

    Да, здесь, как и написано в легенде, на самом деле пять графиков. Просто мы получаем то самое различие в пределах шестой значащей цифры.

    Причины? Вполне очевидны. Они лежат в тонкостях одновременной обработки больших и малых чисел. И тот факт, что явление настолько существенно по своим масштабам, был, в общем-то, ожидаемым. Но, прежде всего, интерес вызывает нестабильность работы действительно отличного инструмента от Intel на фоне относительного успеха gfortran 4.5.2. Стоит отметить, что подобные проблемы были также найдены при расчётах на старой версии gfortran 4.1.2 с включённой оптимизацией и без других опций, установленной на доступном кластере (под управлением Slamd64), однако им тогда не было уделено должного внимания.

    Соответствие IEEE 754, как ни странно, сыграло критическую роль для gfortran. Без него счёт достаточно стабильный и точный. Для детища Intel это оказалось не столь существенно, ибо оно и так не работало корректно.

    Итак, выводы и мысли о причинах увиденного.

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


    Тестирование компиляторов на соответствие IEEE 754 проводилось с помощью FORTRAN-версии «Floating point paranoia» Уильяма Кэхэна.

    Реклама

    Oil Rush: официальный релиз


    OilRush — стратегия в реальном времени от российских разработчиков из Томска.
    Сегодня состоялся официальный релиз версий для Linux, Mac OS X и Windows.

    Игра представляет собой смесь стратегии реального времени и жанра Tower Wars: вы управляете развитием морских платформ: нефтедобывающих и производящих, а также их обороной путем создания защитных сооружений, одновременно атакуя с моря и воздуха платформы врага. Дополнительное разнообразие стратегий вносит развитое дерево технологий.

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

    Ни о чём

    Конференция TEL-2012, Казань

    С 25 по 28 января 2012 года в Казани будет проходить XII Казанская школа-семинар TEL'2012 «Корпусы национальных языков: модели и технологии». Организаторами школы-семинара являются Институт прикладной семиотики Академии наук Республики Татарстан и Казанский (Приволжский) федеральный университет, а именно Институт филологии и искусств и Институт вычислительной математики и информационных технологий, а также Татарстанское отделение Российской ассоциации искусственного интеллекта и Татарстанский молодежный общественный фонд «Сэлэт».

    Казанская школа-семинар по компьютерной и когнитивной лингвистике TEL (Theory, Engineering, Language) проводится с 1999 года. Основная тематика школы-семинара TEL'2012 затрагивает круг тем, связанных с разработкой корпусов национальных языков и применением лингвистических моделей и технологий. Корпусно-ориентированный подход приобрел особую актуальность для исследования национальных языков, и в ходе школы-семинара своим опытом в данной области поделятся видные ученые из Московского государственного университета, Московского Государственного Института стали и сплавов, Вычислительного центра РАН, Института русского языка им. В.В. Виноградова РАН и др.

    Программа школы-семинара включает обзорные лекции, доклады, сообщения, тематические дискуссии и демонстрации программных систем. Помимо основной темы, будут обсуждаться такие важные вопросы прикладной лингвистики, как лингвистические базы данных, тезаурусы, онтологии, модели национальных языков, когнитивное моделирование, анализ и синтез речи и национальная локализация компьютерных технологий. Тезисы докладов, включенных в программу школы-семинара, публикуются в сборнике научных Трудов Казанской школы по компьютерной и когнитивной лингвистике.
    Одним из главных организаторов и активных участников школы-семинара TEL был почётный профессор Казанского государственного университета, основатель Казанской кибернетической школы, заслуженный деятель науки РТ, лауреат государственной премии РТ по науке и технике, проф. Раис Гатич Бухараев. Программа TEL'2012 включает специальную Бухараевскую сессию, проведение которой становится хорошей традицией школы-семинара.

    В рамках школы-семинара также планируется проведение секции «Интеллект. Язык. Компьютер» итоговой конференции КФУ за 2011 год и мастер-класс д-ра филол. наук Рахилиной Е.В. (ИРЯ им. В.В. Виноградова РАН, Москва) по использованию национального корпуса русского языка в лингвистических и образовательных приложениях.

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

    Реклама

    Музыкальный плеер Meridian. Прогресс за месяц

    Приветствую вас, дамы и господа!

    Весь месяц музыкальный плеер ВКонтакте «Meridian» рос и активно развивался. Были достигнуту хорошие результаты, которыми мы и хотим сейчас с вами поделиться.


    Реклама

    Сервис частных доставок &mdash; import2me


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

    С другой стороны, каждый год растет поток людей, выезжающих за рубеж на отдых, в командировки или деловые поездки. Некоторые из них ездят заграницу регулярно. В своих поездках они иногда покупают какие-либо вещи с целью последующей перепродажи, но поиск покупателя часто оказывается для них затруднительным, а риск не продать — высоким. Встретиться таким людям с потенциальными заказчиками ещё перед поездкой помогает сервис import2me.com.

    Как это работает

    Ни о чём

    Life3D – в поисках планеров. Часть 2

    В первой части статьи я рассказывал про поиски планеров в 3-мерной игре «Жизнь» (с 26 соседями у клетки). Там было несколько примеров того, что удалось найти. Но оказалось, что правил с планерами несколько больше, чем я ожидал вначале. Хотя и ненамного…
    Программа, которая искала планеры, выдала довольно много «подозрительных» стартовых конфигураций. Но планеры были далеко не во всех. Во многих случаях возмутителями спокойствия оказывались пульсары – периодические конструкции с периодами, не являющимися делителями 60.
    Чаще всего, период таких пульсаров равнялся 8:
    Правило B5/S2,3:

    Ни о чём

    Собственная радиостанция Spreaker.com



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