Pull to refresh
7
0
Александр Толмач @sobach

User

Send message

АЗ Сутра. Гибрид форума и блога. Попытка раз

Reading time4 min
Views6.2K
Идея совместить демократичность форума, персональность и иерархичность блога, и качественность определения и извлечения ценного контента с помощью коллаборации, наконец-то начинает приобретать реальные очертания.

Мы назвали систему АЗ Сутра. Сутра – это на санскрите «нить», а так же ценное высказывание. Сутра – любая целостная ветвь общения, мне это нравится больше чем thread (тоже «нить», кстати). АЗ – активность и значимость.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments18

Разработка статического сайта на Meteor

Reading time3 min
Views15K
Всем привет! Встретил статью о том, как на сайте meteor.com обеспечена работа для высоких нагрузок. Звучит это довольно интересно. (пер.)

Во-первых, зайдите на meteor.com и посмотрите, как это работает.

Мы все знаем, что meteor.com сделан на Meteor. Вы можете заметить, что загружается он очень быстро. Также, у него нет процесса загрузки — после того, как HTML построен, страница сразу отображается на экране.

Но как это возможно? Обычно, это занимает какое-то время — подключение к серверу, получение данных и отображение информации на экране. Может, Meteor использует какую-то магию с Galaxy?
Читать дальше →
Total votes 24: ↑16 and ↓8+8
Comments6

Не все комментарии одинаково полезны

Reading time7 min
Views34K
Все животные равны, но некоторые животные равнее других. Скотный Двор, Джордж Оруэлл (оригинал).

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

(картинка сделана на основе хабра-статьи «Список скептика»).

Под катом рассказ, какие бывают сортировки комментариев, где они применяются и краткое рассуждение о том, как вообще можно сортировать комментарии (и зачем).
Читать дальше →
Total votes 122: ↑109 and ↓13+96
Comments57

Обзор бесплатных сервисов для веб-разработки

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

Всем нам иногда хочется попробовать новую идею, запилить какой-нибудь сайтик про манулов, но чтоб обязательно на node.js, хайлоад реди, с мемкешем, монго, фейловером и с претензией на мировое господство. У меня для Вас хорошие новости: благодаря щедрости проклятых западных капиталистов всё это можно получить совершенно бесплатно.
Читать дальше →
Total votes 157: ↑136 and ↓21+115
Comments113

Один день из жизни Москвы в геометках Вконтакте

Reading time6 min
Views18K
Сегодняшние социальные сети предоставляют практически неисчерпаемый источник информации. Эта информация может носить разный характер, но ни для кого не секрет, что основной частью этой самой информации являются данные о пользователях. Помимо злободневного вопроса анонимности (а точнее прозрачности) пользователя, коварных спецслужб и маркетологов, эти данные вполне могут быть использованы и в “мирных” целях.

Нам стало интересно, насколько с помощью социальных сетей можно оценить привлекательность городской среды, узнать какие места популярны, где горожане активны утром, а где вечером, куда ходят по выходным и что влияет на их поведение.
Для выяснения этого вопроса, мы запустили небольшой проект по анализу геометок (“ckeck-in”-ы), публикуемых в Москве. Данные собираются за последние 24 часа и отображаются в наглядной форме на карте в режиме реального времени. Кому интересно, что же у нас получилось из этой затеи — добро пожаловать под кат.


Читать дальше →
Total votes 22: ↑18 and ↓4+14
Comments27

Автоматическая проверка орфографии, модель Noisy Channel

Reading time11 min
Views10K
Доброго времени суток. На днях у меня возникла задача по реализации алгоритма пост-обработки результатов оптического распознавания текста. Для решения этой проблемы не плохо подошла одна из моделей для проверки орфографии в тексте, хотя конечно слегка модифицированная под контекст задачи. Этот пост будет посвящен модели Noisy Channel, которая позволяет осуществлять автоматическую проверку орфографии, мы изучим математическую модель, напишем на c# немного кода, обучим модель на базе Питера Норвига, и под конец протестируем то что у нас получится.

Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments0

Кто живет в соцсетях?

Reading time8 min
Views75K

Как бы ни гремели скандалы про PRISM, про персональные данные и их утечки, социальные сети так и манят поведать о себе всё: какие котята нравятся, с кем ты дружишь и почему с утра такой не выспавшийся.
Целая энциклопедия о поведении большинства интернет-активной публики лежит совсем рядом, и мне всегда хотелось её пощупать. С одной стороны, эти данные лежат вроде бы в открытом доступе, но просто взять и проанализировать их не так легко — всё слишком неструктурировано и разрозненно. К тому же, насколько я знаю, пригодных для машинного анализа наборов данных о соцсетях практически не существует. А для России — так и подавно.
Выбора не оставалось, и пришлось, зловеще хохоча по ночам, писать простеньких пауков для соцсетей ВКонтакте, Одноклассники, МойМир и русского сегмента Фейсбук, которые за несколько месяцев неспешно собрали более или менее статистически-корректный семпл данных. Собиралась только та информация, которую люди сами о себе рассказали. А рассказали они много.

О том, что удалось выудить из таких данных, и пойдет рассказ.
Читать дальше →
Total votes 131: ↑124 and ↓7+117
Comments115

Базы знаний. Часть 1 — введение

Reading time5 min
Views67K
Одной из причин слабого использования Linked Data-баз знаний в обычных, ненаучных приложениях является то, что мы не привыкли придумывать юзкейсы, видя перед собой только данные. Трудно спорить с тем, что сейчас в России производится крайне мало взаимосвязанных данных. Однако это не значит, что разработчик, создающий приложение для русскоязычной аудитории совсем уж отрезан от мира семантического веба: кое-что всё-таки у нас есть.
image
Основными источниками данных для нас являются международные базы знаний, включающие русскоязычный контент: DBpedia, Freebase и Wikidata. В первую очередь это справочные, лингвистические и энциклопедические данные. Каждый раз когда вам в голову приходит мысль распарсить кусочек википедии или викисловаря — ущипните себя как следует и вспомните о том, что всё, что хранится в категориях, инфобоксах или таблицах, уже распарсено и доступно через API с помощью SPARQL или MQL-интерфейса.

Я попробую привести несколько примеров полезных энциклопедических данных, которые вы не найдете нигде, кроме Linked Data.

Эта статья — первая из цикла Базы знаний. Следите за обновлениями.


Читать дальше →
Total votes 69: ↑66 and ↓3+63
Comments29

Закрывается проект WebHostingHub Glyphs

Reading time1 min
Views5.2K
image

На хабре уже писали о выпуске шрифта иконок WebHostingHub Glyphs. За последний год сет разросся до более чем 2000 иконок на самые различные темы и у нас просто не осталось идей чтобы регулярно пополнять набор.
В этом посте я хотел бы поблагодарить компанию WebHostingHub.com за то, что они спонсировали этот проект, и выразить надежду на то, что он еще долго будет приносить пользу дизайнерам и разработчикам сайтов и мобильных приложений. Так же хочу поблагодарить пользователей хабра за живой отклик. Благодаря вашим комментариям в своё время в сете появилось много новых иконок.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments24

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Reading time6 min
Views572K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие
Total votes 63: ↑60 and ↓3+57
Comments31

Кэширование фронтэнда: Flask, Nginx+Memcached+SSI

Reading time7 min
Views17K
Достаточно давно мне на глаза попались следующие статьи по этой тематике:

С PHP я дружу, поэтому попробовал примеры и убедился, что это работает. Но всё это имело «фатальные недостатки» :) — PHP, а я фанат Python и по работе занимаюсь в основном бэкендом. Серьёзно говоря, применить на практике это не представлялось возможным.

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

В первую очередь было реализовано черновое решение для моего любимого фрэймворка Flask использующее для кэширования стек Varnish+ESI. Это заработало и даже показало неплохие результаты. Позже пришло понимание, что возможно Varnish «лишний игрок» и всё тоже и даже гибче можно получить на связке Nginx+Memcached+SSI. Был сделан и этот вариант, по производительности особых отличий замечено не было, но последний показался более гибким и управляемым.

Тот проект не вырулил даже на взлетную полосу, или вырулил но без меня. Подумав, я решил «причесать код» и выложить его в OpenSource и на суд общественности.
Читать дальше →
Total votes 31: ↑28 and ↓3+25
Comments30

Правильная адаптивная типографика с FlowType.JS

Reading time1 min
Views16K
image


Согласно правилам типографики, контент страницы хорошо читается, если в строке от 45 до 75 символов. При разработке адаптивного дизайна это сложно реализовать только лишь с помощью Media Queries. Появился jQuery плагин FlowType, который помогает добиться такого соотношения при любом размере экрана и ширине окна.

FlowType меняет размер шрифта и междустрочный интервал в соответствии с шириной блока контента. Кроме того можно задавать параметры плагина, например максимальную и минимальную ширину окна, при которой FlowType будет работать.
Читать дальше →
Total votes 34: ↑27 and ↓7+20
Comments7

Скрытые цепи Маркова, алгоритм Баума-Велша

Reading time4 min
Views24K
Скрытые модели/цепи Маркова одни из подходов к представлению данных. Мне очень понравилось как обобщается множество таких подходов в этой статье.

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

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

Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments4

ConceptNet 5 — настоящий ИИ не за горами

Reading time3 min
Views33K
ConceptNet

ConceptNet — семантическая нейро-сеть, содержащая много вещей, которые компьютеры должны знать о мире, особенно при понимании текста написанного людьми.
Сеть построена из узлов, представляющих определенные слои и концепции, в виде слов или коротких фраз естественного языка и знаков отношений между ними. Это могут быть любые вещи, которые компьютерам нужно знать, чтобы искать информацию лучше, отвечать на вопросы и понимать цели людей. Если вы хотите построить свой собственный Watson вместе с ConceptNet, то это должно быть отличной целью для начала!
Подробности об ConceptNet под катом
Total votes 55: ↑50 and ↓5+45
Comments46

РИА Новости запустило портал открытых данных

Reading time1 min
Views10K
РИА Новости запустило бета-версию портала открытых данных, которые содержатся в информационных системах агентства.

image

Открытые данные были выложены на портал opendata.ria.ru. Они структурированы, машиночитаемы и связаны с другими открытыми базами данных. На настоящий момент на портале представлена информация о крупных компаниях, международных организациях, главах государств и бизнесменах, политических партиях, спортивных командах, самых обсуждаемых событиях и продуктах на рынке.
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments11

Centrifuge — брокер реал-тайм сообщений

Reading time6 min
Views18K
Привет, Хабр!

В статье я опишу свой небольшой open-source проект — Centrifuge (далее Центрифуга). Это сервер на Python, задача которого — рассылка (broadcast) сообщений в реальном времени подключенным (в основном из браузера) клиентам.

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

Для начала, посмотрите, пожалуйста, скринкаст (не забудьте включить субтитры), если после просмотра интерес не пропадет, смело читайте дальше!


Читать дальше →
Total votes 44: ↑41 and ↓3+38
Comments22

Грядут серьезные изменения в API Facebook — февраль, март, апрель 2013

Reading time4 min
Views26K


Вам тоже недавно приходили оповещения от Facebook-приложений? Со смыслом «мы тут кое-что поменяли в API, поэтому, возможно, приложение такое-то скоро начнет работать некорректно».

Дело в том, что не так давно Facebook внедрил новую практику Breaking Change Policy (если по-русски, то что-то вроде «Политика критических изменений»). Социальная сеть уведомляет разработчиков о грядущих «перестройках» в API, что, соответственно, требует изменений в коде уже существующих приложений. И которые надо будет учесть при разработке новых, естественно. Facebook призывает разработчиков подписаться на блог, дабы не пропустить ничего важного.

А пока о самых актуальных изменениях, которые уже начали внедряться или будут внедрены в совсем скоро (завтра, 6-го февраля — начало первого этапа изменений).
Читать дальше →
Total votes 44: ↑40 and ↓4+36
Comments10

Chatter — основанный на python 2.7 websocket-framework с использованием tornado

Reading time3 min
Views8.1K
Хочу представить сообществу своё небольшое творение — Chatter.

Chatter основан на python 2.7, использует tornado.

Имеется готовое API для python (бэкэнд) и для js (фронтэнд)

Примеры и исходный код на github.

Для чего же собственно он был создан?



Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments7

Боевой сервер для Django-приложения: Ubuntu Server 10.04 LTS + django 1.4 + nginx + gunicorn

Reading time11 min
Views121K
Многие учебные пособия по разработке на Django раскрывают как быстро получить работающий отладочный сервер (python manage.py runserver), а вопрос развертывания в боевом режиме часто остается нераскрытым или освещаются далеко не самые простые и эффективные методы.
Ниже я расскажу о об одном из способов развернуть сайт на Django в боевом режиме, начиная от выбора хостинга, заканчивая развертыванием веб-сервера. Таким образом статья может быть полезна тем, кто освоил разработку на базе Django, но не имеет опыта развертывания серверов. Мой способ один из многих, но он достаточно прост, эффективен в работе и легок в поддержке. Используем VPS-хостинг, Ubuntu 10.04, nginx, gunicorn.

Читать дальше →
Total votes 34: ↑29 and ↓5+24
Comments41

Интерактивная SVG картограмма с помощью d3.js

Reading time7 min
Views90K
Приветствую вас, хаброжители! Сегодня я расскажу вам как сделать интерактивную SVG картограмму при помощи d3js.org, о возможностях этой JavaScript библиотеки в общем, а также придётся немного разобраться в том как и где лучше хранить геоинформацию для веба. В финале мы получим следующее:

Картограмма
Начать сие увлекательное путешествие можно под катом.
Читать дальше →
Total votes 75: ↑73 and ↓2+71
Comments40
1

Information

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