Pull to refresh
5
0

User

Send message

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

Reading time 13 min
Views 53K
Представьте себе высокоуровневый язык, в котором не нужно указывать КАК получить результат, вместо этого нужно просто указать ЧТО вы хотите получить. При этом область применения языка не ограничена и язык способен решать те же задачи, что и любой другой высокоуровневый язык, наподобие JAVA. Кажется фантастикой, не правда ли? Однако такой язык есть и называется он PROLOG. Посмотрим как PROLOG справляется с этой задачей на примере загадывания прологу некоторых загадок и попросим PROLOG выдать доказательство теоремы.

image

Читать дальше →
Total votes 59: ↑49 and ↓10 +39
Comments 105

10 вещей, которых вы не знали о Java

Reading time 8 min
Views 105K
Итак, вы работаете на Java с самого её появления? Вы помните те дни, когда она называлась «Oak», когда про ООП говорили на каждом углу, когда сиплюсплюсники думали, что у Java нет шансов, а апплеты считались крутой штукой?

Держу пари, что вы не знали как минимум половину из того, что я собираюсь вам рассказать. Давайте откроем для себя несколько удивительных фактов о внутренних особенностях Java.
Читать дальше →
Total votes 93: ↑91 and ↓2 +89
Comments 55

Динамическая компиляция Java-кода своими руками

Reading time 14 min
Views 30K
В этой статье я расскажу о нашей реализации hot deploy — быстрой доставки изменений Java-кода в работающее приложение.

Для начала немного истории. Мы уже несколько лет делаем корпоративные приложения на платформе CUBA. Они очень разные по размеру и функциональности, но все они похожи в одном — в них много пользовательского интерфейса.

В какой-то момент мы поняли, что разрабатывать пользовательский интерфейс, постоянно перезагружая сервер — крайне утомительно. Использование Hot Swap сильно ограничивает (нельзя добавлять и переименовывать поля, методы класса). Каждая перезагрузка сервера отнимала минимум 10 секунд времени, плюс необходимость повторного логина и перехода на тот экран, который ты разрабатываешь.

Пришлось задуматься о полноценном hot deploy. Под катом — наше решение проблемы с кодом и демо-приложением.
Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 58

Принстон будет бороться с платной подпиской на научные статьи

Reading time 2 min
Views 3.4K
Принстонский университет, один из старейших и престижных университетов США, предпринимает меры для обеспечения открытого доступа к научным публикациям. Для этого создан специальный комитет по наблюдению за Open-Access Policy, а 19 сентября 2011 года на заседании комитета утверждены новые правила, действующие для всех сотрудников университета, которые ведут научные разработки и публикуют научные статьи.

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

Принстон будет стимулировать своих сотрудников к публикации статей в открытых и бесплатных научных архивах, таких как Arxiv или университетская база данных.
Читать дальше →
Total votes 93: ↑85 and ↓8 +77
Comments 20

Исследование факторов ранжирования в Яндексе

Reading time 1 min
Views 3.6K
Несколько десятков специалистов по поисковой оптимизации поучаствовали (своими ответами) в исследовании факторов ранжирования в Яндексе. Результаты вы можете лицезреть ниже на скриншотах или же на сайте топэксперт.рф вместе с комментариями и пояснениями. Думаю, что шпаргалка пригодится не только оптимизаторам, но и всем вебмастерам.

Начнем с внешних факторов. Критерии выбора внешних ссылок:



Читать дальше →
Total votes 167: ↑137 and ↓30 +107
Comments 67

Как устроен видео-хостинг

Reading time 2 min
Views 6K
Жизнь устроена так, что показывать и обрабатывать цифровое видео всегда сложнее, чем цифровые фото:
  • Видео-контент занимает гораздо больше места.
  • Все манипуляции с видео (сжатие, масштабирование, перекодировка) требуют неизмеримо больше ресурсов, чем преобразование фото.
  • Из-за большего объема контента суммарный видео-трафик сильно перегоняет трафик всех остальных ресурсов, да еще и требует хорошей пропускной способности.
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Comments 16

Мировые шедевры классической музыки без копирайта

Reading time 1 min
Views 38K
Несмотря на то, что такие признанные классики, как Бетховен, Чайковский, Брамс, Сибелиус жили уже очень и очень давно и их произведения давно не попадают под законы о копирайте, найти их великолепную музыку, распространяемую свободно, практически невозможно. То есть если вы захотите использовать 9 симфонию Бетховена в качестве саундтрека, воспроизвести отрывки из симфоний Чайковского на каком-нибудь мероприятии, вам таки придётся заплатить деньги правообладателям записей, которые вы будете использовать.

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

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

Уже собрано более 41 000 долларов, хотя изначально организаторы рассчитывали только на 11 тысяч.

Пожертвовать немного денег, а так же ознакомиться с акцией можно на официальной странице. Сбор средств закончится 15 сентября в 6 часов утра по московскому времени, то есть осталось чуть более дня и желающим помочь нужно поспешить.
Total votes 179: ↑175 and ↓4 +171
Comments 130

Структура и интерпретация компьютерных программ

Reading time 1 min
Views 12K
image
Перевод второй лекции Джеральда Сассмана
«Процедуры и процессы: подстановочная модель.»

Эти лекции были прочитаны 25 лет назад сотрудникам HP, но на самом деле это тот легендарный вводный курс 6.001, который читался в MIT в 1980 году. С тех пор эти лекции sine qua none во всем мире программирования. Хотелось бы чтобы каждый программист посмотрел этот курс, ничего не учит абстрактному мышлению лучше, чем SICP.
Приятного просмотра на ночь глядя.
Читать дальше →
Total votes 75: ↑75 and ↓0 +75
Comments 37

Как не стать спамером со своей уютной рассылочкой

Reading time 1 min
Views 67K
image
Пользователь когда-то подписался на рассылку, но уже забыл когда, и главное зачем. Теперь ежедневно к нему падает спам, а по собственному опыту он знает, для того чтобы отписаться нужно зайти по ссылке свой профиль, найти и снять там какую-то галку а главное, помнить свой логин и пароль на давно забытом им сайте.
Его действия? «В спам!»

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

И вот, с десяток таких «отписок» и гугл будет удобно отсортировывать ваши рассылки в папочку Спам (584), у ВСЕХ ваших подписчиков.

Однако многие из нас уже успели заметить: некоторые письма в Gmail при попытке отметить их «В спам!» САМИ предлагают отписаться от рассылки в один клик.

Эта фича была введена google более года назад, но лишь единицы рассылок научились ей пользоваться. И не удивительно. В рекомендациях по осуществлению массовых рассылок, лишь косвенно упоминается о том, что Вам нужно сделать.
А сделать нужно не многое.
Читать дальше →
Total votes 238: ↑230 and ↓8 +222
Comments 60

Роб Пайк подверг критике C++ и Java

Reading time 2 min
Views 10K
На конференции OSCON Роб Пайк заявил, что промышленные языки программирования, в частности С++ и Java, слишком сложны и не соответствуют современным вычислительным стандартам.
— Они слишком многословны и их запутанность, сложность и многословность только растет со временем.
В качестве иллюстрации запутанности этих языков, Пайк показал нексолько примеров кода на С++.


Читать дальше →
Total votes 73: ↑63 and ↓10 +53
Comments 297

Хабрафутбол: всё было офигенно

Reading time 3 min
Views 621
Итак, хабрафутбол вчера состоялся. Новости в основном только хорошие: с погодой повезло (сравните с тем, что было в воскресенье или с тем, что творится на улице, например, сегодня) — было прохладно и солнечно. Поле было не занято, а мячи были в достаточном количестве — старик Хоттабыч был бы доволен.

Но самое главное, что пришли люди: всего было около тридцати человек. Всем пришедшим ещё раз спасибо!

338.18 КБ

Отчёт под катом, многафоток.
Читать дальше →
Total votes 101: ↑93 and ↓8 +85
Comments 57

Хабрафутбол: играем завтра

Reading time 1 min
Views 448
Кто не в курсе — мы тут в футбол собрались поиграть. Матч имени дня России, чемпионата мира в ЮАР или просто дополнительного выходного дня — кому что ближе. Все приглашены!

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

Но завтра таких проблем быть не должно — Яндекс обещает погоду нежаркую и без осадков.

Играем на поле для минифутбола рядом с метро Академическая. Делайте ваши ставки на футбол, господа.

502.67 КБ

UPD Людям с фотоаппаратами особые почёт и уважение!
Читать дальше →
Total votes 127: ↑89 and ↓38 +51
Comments 121

Как я получал загранпаспорт через gosuslugi.ru

Reading time 3 min
Views 6.6K
После открытия портала, решил я проверить как оно работает и заказать себе загранпаспорт через интернет. Получился вполне себе приличный квест.

Читать дальше →
Total votes 196: ↑194 and ↓2 +192
Comments 272

Alan Platform

Reading time 13 min
Views 1.3K
Приветствую уважаемых профессионалов и просто любителей Искусственного Интеллекта. Давненько я не отваживался написать сюда ничего значительнее комментария. Дальнейшее копание в теории и философии выглядело бы бессмысленно без намека на практику. Пришло время сделать этот намек. Но для начала не мешало бы освежить память.

В предыдущих сериях.


.… Дело было в далеком 1956 году (к этому времени уже существовала серия книг Азимова о роботах). В США, в Стэнфордском университете состоялся семинар, на котором и предложили термин Искусственный Интеллект… Сейчас речь идет скорее о «некоторых характеристиках Искусственного Интеллекта», нежели о самом ИИ... [1]

… На основании данных о строении нейронов, клеток нашего мозга, они пытались воссоздать их структуру. Это было за несколько лет, до того самого семинара, где впервые заговорили об ИИ… Скажем прямо, что хотим, чтобы Искусственный Интеллект был максимально приближен к человеческому... [2]

… Создать что-то функционирующее в точности как наш интеллект куда проще, чем изображать из себя бога и с нуля изобретать систему, которая смогла бы с момента запуска автономно (без вмешательства в архитектуру) развиваться… Признаюсь, сначала у меня была идея использовать виртуальный мир, созданный на компьютере в виде трехмерной интерактивной модели... [3]

… Процесс мышления сводится к работе с информацией… Искусственный интеллект – это вопрос умения увидеть нужное и отбросить все лишнее... [4]

… Это я только раньше думал, что возьму толстый справочник по физиологии человека и найду там ответы на все вопросы… На самом деле, на низком уровне между мотивациями и эмоциями существует прямая связь... [5]

… Если мы хотим, чтобы он развивался как человек и думал как человек, то нужно создать для него мир, максимально соответствующий реальному. Иначе мы получим интеллект уровня пришельца с Альфы Центавра… Для этого во время обучения, когда она будет заползать на освещенные области, ее будет «бить током» – это ей очень не понравится... [6]
Читать дальше →
Total votes 44: ↑30 and ↓14 +16
Comments 60

Создание группы взаимопомощи

Reading time 2 min
Views 725
Здравствуйте, уважаемые хабровчане!

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

habrahabr.ru/blogs/my_business/89412
habrahabr.ru/blogs/infosecurity/89235

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

Я бы хотел вынести на обсуждение предложение о создании группы взаимопомощи. У многих из нас есть знакомые популярные блогеры, журналисты, редакторы новостных сайтов. Также некоторые из нас являются популярными блогерами, известными журналистами и имеют свои интернет ресурсы. Ну и большинство имеет аккаунты на различных порталах и сообществах. Если мы объединим усилия, и начнём писать в различные сообщества, как российские так и западные, будем связываться с известными блогерами и журналистами, да и вообще, начнём публиковать новости о подобных происшествиях от местных форумов до западных СМИ, то сможем помочь нашим коллегам попавшим в беду. Для этого нам необходимо создать группу людей, которые возьмут на себя инициативу освещать подобные происшествия на всевозможных ресурсах. Также мы можем создать сайт, на котором выложим все возможные рекомендации по ведению бизнеса в России, а также примеры несоблюдения данных рекомендаций.
Читать дальше →
Total votes 155: ↑142 and ↓13 +129
Comments 54

Обзор методов эволюции нейронных сетей

Reading time 15 min
Views 51K


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

Построение искусственной нейронной сети по традиционной методике выполняется, фактически, методом проб и ошибок. Исследователь задает количество слоев, нейронов, а также структуру связей между ними (наличие/отсутствие рекуррентных связей), а затем смотрит, что же у него получилось — сеть обучается с помощью какого-либо метода, а затем тестируется на тестовой выборке. Если полученные результаты работы удовлетворяют заданным критериям, то задача построения ИНС считается выполненной успешно; в противном случае — процесс повторяется с другими значениями исходных параметров.

Естественно, бурное развитие теории и практики использования генетических алгоритмов, заставило исследователей (лень — двигатель прогресса) искать способы применить их к задаче поиска оптимальной структуры ИНС (эволюция нейронных сетей или нейроэволюция), тем более, что, так сказать, proof-of-concept был налицо, или, точнее, в голове — природа наглядно демонстрировала решаемость подобной задачи на примере эволюции нервной системы с последующим образованием и развитием головного мозга.

Обзор и сравнение методов нейроэволюции под катом
Total votes 65: ↑60 and ↓5 +55
Comments 32

GuruPlug Server — новая версия ультракомпактного Linux сервера размером с зарядное устройство

Reading time 1 min
Views 8K
image

Ранее на Хабре уже упоминались предшественники этого компактного компьютера (ссылка #1 и ссылка #2)
Более ранняя модель в линейке называется SheevaPlug и продаётся по цене 99$.
Разработчики из Marvell пошли дальше и на выставке CES2010 были анонсированы новые модели —
GuruPlug Server и GuruPlug Server — PLUS (с расширенным функционалом).
Модель GuruPlug Server дополнительно имеет:

2 x Gb Ethernet
2 x USB 2.0
1x eSATA @ 3Gb/s SATAII
1x MicroSD Slot)

В двух словах, GuruPlug Server – PLUS это ультракомпактный компьютер, размером с зарядное устройство для AAA аккумуляторов, однако внутри установлен 1,2 GHz процессор, 512 RAM, адаптер Wi-Fi 802.11b/g,
Bluetooth: 2.1 / EDR, также имеются два порта USB 2.0 и два Ethernet-разъема, кроме этого имеется возможность подключения устройств по интерфейсам eSATA и SATAII, а также встроенный слот для карт памяти microSD.
Читать дальше →
Total votes 101: ↑97 and ↓4 +93
Comments 171

Краткий обзор популярных нейронных сетей

Reading time 6 min
Views 51K
К написанию этой статьи меня побудила большая распространенность некоторых заблуждений на тему искусственных нейронных сетей (ИНС), особенно в области представлений о том, что они могут и чего не могут, ну и хотелось бы знать, насколько вопросы ИНС вообще актуальны здесь, стоит ли что-либо обсудить подробнее.

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

Начну с классики.

Читать дальше →
Total votes 83: ↑78 and ↓5 +73
Comments 45

Электронная Россия силами самих жителей — Думаноид

Reading time 1 min
Views 595
В течении дня, мы неоднократно видим что-то вокруг нас, что мы хотели бы изменить, или по крайне мере сообщить об этом тем, кто за это отвечает.

Будь-то укладка асфальта в -15, или ямы у детского сада, которые не могут заделать уже лет 20, при этом асфальт около администрации района меняется 3й раз за год. Или часами не дозвониться в милицию, по 02.

Зачастую максимум, что получается, обсудить это в своем бложике или на каком-нибудь районном сайтике. Кто за это отвечает не понятно, как оформить данный документ неизвестно.
Читать дальше →
Total votes 82: ↑70 and ↓12 +58
Comments 42

Hadoop: решение реальных задач

Reading time 2 min
Views 6K
Привет вам, дорогие хабралюди (и просто люди, ибо различий я делать не стремлюсь). Возникла у меня тут мысль написать большую статью про Hadoop. Причем не просто статью, а статью, которая будет описывать реальную (ну или практически реальную) задачу, которая вполне может оказаться нужной и интересной уважаемым хабрапользователям — если быть точнее, статистический анализ очень большого объема данных, например, английской Википедии (дамп весит 24 Гб или около того).

Тут сразу несколько проблем. Во-первых, дамп Википедии — это XML. Работать с XML на Hadoop — это то еще удовольствие, однако если разобраться, то все не так плохо. Во-вторых, это еще не большой, но уже существенный объем данных — надо начинать думать о размере сплита, количестве map-тасков, и т.д. Третья проблема — скорее всего, я буду описывать разработку системы для «облачного» кластера, который где-то находится, но ни настраивать, ни администрировать ничего не надо — к сожалению, не у всех есть доступ к таким системам, поэтому неплохо было бы написать для начала как можно сконфигурировать простенький, но настоящий кластер.

Есть такой интерес у пользователей? Тема интересная, и я искренне верю, что в задачах, где требуется обработка очень больших объемов информации, грид-вычисления это вообще чуть ли не единственный разумный выход сразу по нескольким причинам. В свой блог я периодически кидаю всяческие гиковские наблюдения и мысли на тему Hadoop, но писать в личный блог и писать в Хабр — это, согласитесь, две большие разницы.

Ну так вот. Если интересно — отпишитесь, и я постепенно начну.

Update: в качестве задачи предлагается вычисление tf-idf — по-моему вполне нормальный пример (к тому же имеющий массу практических применений).

Update2: а статья уже готова :-) завтра отчитаю ее еще разок и выложу.

Update3: sigizmund.habrahabr.ru/blog/74792
Total votes 22: ↑19 and ↓3 +16
Comments 10

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity