Как стать автором
Обновить
21
Alexey Stolyar @liqread⁠-⁠only

Пользователь

Отправить сообщение

Как информация меняет нашу жизнь, 10 примеров

Время на прочтение6 мин
Количество просмотров4.2K
image
Социальный Лондон, проект Anil Bawa-Cavia, из University College London.

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

Торговля

Супермаркеты всегда следили за тем как покупатели совершают покупки, но в последние несколько лет количество и виды собираемой информации резко возросли. Tesco обладает большей частью акций в компании Dunnhumby Ltd, которая занимается дата майнингом и анализом информации, для большого количества компаний, занимающихся торговлей, включая: Coca-Cola, BT, Mars, Vodafone, и другие лидирующие бренды. Dunnhumby использует в своей работе информацию собранную с помощью клубных карт Tesco Clubcard, благодаря ей Tesco может прогнозировать когда люди пойдут за покупками, как они буду оплачивать свои покупки и даже количество калорий которое собираются потребить.
Dunnhumby недавно сообщил о 32 процентном росте операционной прибыли до £53.4 миллионов. Количество сотрудников компании выросло с 300, когда компания начинала в 2007, до 1250 в этом году. Информация собираемая Dunnhumby изменила то, как мы совершаем покупки.
Читать дальше →
Всего голосов 84: ↑77 и ↓7+70
Комментарии12

Вы разработчик? Так почему вы до сих пор на кого-то работаете?

Время на прочтение8 мин
Количество просмотров11K
Как разработчик, вы сидите на золотой жиле. Вы осознаете это?

Нет, серьезно, на @#$% золотой жиле! Никогда в истории не существовало возможностей так легко создать что-то с нуля, с маленьким или отсутствующим начальным капиталом и маркетинговой моделью, ограниченной только вашим воображением.

Подумайте о крупнейших сайтах, которые вы постоянно посещаете: Facebook, Twitter, Flickr, Foursquare, или даже Google — все они были созданы разработчиками, у которых была лишь идея. Было ли это легко? Черт, нет. Но это могло быть сделано только в наше время. Так, черт побери, почему вы просиживаете день за днем, работая на кого-то?
Читать дальше →
Всего голосов 306: ↑232 и ↓74+158
Комментарии214

Декартово дерево: Часть 1. Описание, операции, применения

Время на прочтение15 мин
Количество просмотров153K

Оглавление (на данный момент)


Часть 1. Описание, операции, применения.
Часть 2. Ценная информация в дереве и множественные операции с ней.
Часть 3. Декартово дерево по неявному ключу.
To be continued...

Декартово дерево (cartesian tree, treap) — красивая и легко реализующаяся структура данных, которая с минимальными усилиями позволит вам производить многие скоростные операции над массивами ваших данных. Что характерно, на Хабрахабре единственное его упоминание я нашел в обзорном посте многоуважаемого winger, но тогда продолжение тому циклу так и не последовало. Обидно, кстати.

Я постараюсь покрыть все, что мне известно по теме — несмотря на то, что известно мне сравнительно не так уж много, материала вполне хватит поста на два, а то и на три. Все алгоритмы иллюстрируются исходниками на C# (а так как я любитель функционального программирования, то где-нибудь в послесловии речь зайдет и о F# — но это читать не обязательно :). Итак, приступим.

Введение


В качестве введения рекомендую прочесть пост про двоичные деревья поиска того же winger, поскольку без понимания того, что такое дерево, дерево поиска, а так же без знания оценок сложности алгоритма многое из материала данной статьи останется для вас китайской грамотой. Обидно, правда?

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


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

Сейчас за кадром остается вопрос, каким образом в кучу можно добавлять и удалять из нее элементы. Во-первых, эти алгоритмы требуют отдельного места на осмотр, а во-вторых, нам они все равно не понадобятся.
А теперь собственно про декартово дерево
Всего голосов 166: ↑161 и ↓5+156
Комментарии30

Понимание конфликтов банков разделяемой (shared) памяти в NVIDIA CUDA

Время на прочтение3 мин
Количество просмотров11K
Разделяемая (shared) память является очень эффективным средством оптимизации за счет очень быстрого доступа (в 100 раз быстрее чем глобальная память). Однако, при неправильном использовании ее возможны конфликты банков, которые существенно замедляют быстродействие. В данной статье пойдет речь о том, как эти конфликты возникают, и как их избежать.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии6

Улучшаем админку

Время на прочтение6 мин
Количество просмотров80K
Одно из слабых мест джанго-админки — главная страница. Идея авто-группировки моделей по приложениям и вывод столбиком в одну колонку работает только на начальных этапах, дальше это становится просто неудобно — куча лишней информации и довольно сложные пути для того, чтобы добавить полезную. Ну, например, чтобы названия приложений писались русскими буквами — полностью перекрывать шаблон.

И тут на помощь приходит django-admin-tools. С этим приложением минут за 20 можно получить «приборную панель» с произвольной группировкой приложений/моделей, вкладками, любым числом колонок, различными блоками, которые каждый пользователь сможет расставить, как ему удобнее, скрывать и сворачивать по желанию, закладками, настраиваемым меню и удобным способом добавления во все это хозяйство всего, чего только можно придумать.

Вот так, например, сейчас выглядит админка к сайту НадоВместе:

image
(это только часть, вот скриншот целиком)

Разберемся поподробнее.
Читать дальше →
Всего голосов 105: ↑100 и ↓5+95
Комментарии45

Генерация web-шрифтов

Время на прочтение1 мин
Количество просмотров5.3K
Ради интереса, прошелся поиском по хабру, и обнаружил, что тут не освещен один очень полезный сервис: http://www.fontsquirrel.com
Пожалуй, это самый удобный сервис такого рода, создающий на выходе html-страницу с подключенными шрифтами в разных форматах, готовыми font-face в css и демо-текстом.
При этом есть масса настроек по кастомизации шрифтов во время конвертирования.
В частности, можно уменьшить их вес, убрав часть символов или оптимизировав кривые. Так же он умеет хинтовать шрифты и кодировать их в base64. В общем, есть всевозможные плюшки.
Всего голосов 53: ↑46 и ↓7+39
Комментарии14

Kwiki — управляй руками!

Время на прочтение5 мин
Количество просмотров1.1K
http://kwikithebird.com augmented reality game

Добрый день, Хабрасообщество

Эта публикация заинтересует тех, кто не равнодушен к инновациям в пользовательских интерфейсах, а также увлеченных Дополненной Реальностью (Augmented Reality).
Читать дальше →
Всего голосов 75: ↑65 и ↓10+55
Комментарии42

Nginx + IPv6

Время на прочтение2 мин
Количество просмотров24K
Недавно написал топик про поддержку IPv6 в Windows 7/Vista/XP (это тут). Захотелось сделать поддержку IPv6 на своём сервере, где хостируются сайты, в итоге вот что получилось.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии21

$25 000 на стартап

Время на прочтение1 мин
Количество просмотров442
Intel Atom Developer Program Accelerator 2010
Не так давно компания Intel запустила новую программу стимулирования разработчиков — Intel Atom Developer Program Accelerator 2010. Если у Вас есть идея приложения «заточенного» под устройство на базе платформы Atom, или есть готовая программа, которую Вы готовы адаптировать под Atom-ный нетбук — компания готова профинансировать Ваш проект, сумма финансирования колеблется от $10 000 до $25 000. Оригинал анонса на английском, на русском.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии6

Google Analytics: Определение позиции сайта по ключевому слову в поисковой системе Google

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

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

image
Читать дальше →
Всего голосов 92: ↑77 и ↓15+62
Комментарии43

Пишем функциональные/интеграционные тесты для проекта на django

Время на прочтение8 мин
Количество просмотров17K
В этой захватывающей статье я расскажу про инструменты, с помощью которых можно писать функциональные тесты для django-проекта. Есть куча разных других способов это делать, но я опишу один — тот, который, на мой взгляд, самый простой. Между делом создадим красивый отчет по code coverage (субъективно — приятнее тех, что делает coverage.py). И еще, в качестве приправы, будет немного болтовни про тестирование.

Читать дальше →
Всего голосов 52: ↑48 и ↓4+44
Комментарии19

Визуализация активности сайта с помощью codeswarm

Время на прочтение1 мин
Количество просмотров1.1K

Codeswarm


эта утилита визуализирует историю комитов репозитория. Она умеет сохранять кадры в отдельные файлы, которые потом можно объединить в видео с помощью, например mencoder. Для этого codeswarm нужен файл в формате xml с активностью в репозитории. Вместе с codeswarm идет скрипт, который конвертирует логи из svn, cvs и др. в собственный.

Access log


Получается, codeswarm без разницы что визуализировать, программе нужен лишь правильный xml. Поэтому я подумал, что можно применить эту утилиту для генерации видео активности на сайте. Для этого был написан конвертор access лога апача или nginx в event log. За основу был взят родной конвертор.
Читать дальше →
Всего голосов 40: ↑31 и ↓9+22
Комментарии8

Перехват вызовов API-функций

Время на прочтение11 мин
Количество просмотров74K
— Папа, я бежал за троллейбусом и сэкономил пять копеек!
— Сынок, бежал бы за такси — сэкономил бы пять рублей!


Сегодня я хочу рассказать вам, как сэкономить 10 тысяч долларов. А заодно, что гораздо менее интересно – научить перехватывать вызовы Win32 API функций, и не только. Хотя, в первую очередь – конечно, именно их.
Читать дальше →
Всего голосов 92: ↑88 и ↓4+84
Комментарии72

Автоматическая отсылка анонсов в твиттер

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

Как оказалось, делается это совсем несложно.

Читать дальше →
Всего голосов 41: ↑30 и ↓11+19
Комментарии32

Пошаговое руководство по установке Debian 5.0 Lenny + XEN + LVM + Routing на Hetzner DS3000

Время на прочтение7 мин
Количество просмотров15K

Вступление


Недавно мне потребовалось перенести несколько сайтов различных клиентов на нормальный выделенный сервер (не виртуальный). Я давно выбирал, где лучше арендовать сервер и выбором стала немецкая компания Hetzner Online и ее тарифный план DS 3000 (AMD Athlon 64 X2 4200+/2Gb DDR/2x160Gb HDD — как выяснилось потом — на сервере оказалось два винчестера по 320Гб).

Но мне не хотелось всех размещать на одном сервере. Поэтому было решено сделать виртуальные машины на базе технологии XEN (к тому же в придачу к серверу на ТП DS 3000 Hetzner Online бесплатно выдает 6 IP-адресов, которые очень удобно будут смотреться для отдельных проектов). В Сети можно найти много информации по теме настройки и самого XEN'а на Debian'e и настройки роутинга на нем, поднятии виртуалок на LVM (lvm дает большее быстродействие, чем виртуалки на базе image-файлов), даже в вики самой фирмы была информация об этом (но на немецком — Google Translate нам в помощь). Но. Было одно «Но». Она вся была разрозненная и кусками. Я нигде не смог найти толкового пошагового руководства для настройки «от» и «до».

Поэтому, всем кому интересна эта тема,
добро пожаловать под кат...
Всего голосов 71: ↑62 и ↓9+53
Комментарии36

Развертывание сайта на Джанго, используя FastCGI

Время на прочтение9 мин
Количество просмотров16K

От переводчика


Данную статью я прочитал на Django Advent приуроченному к уже скорому выходу Django 1.2 и она показалось мне настолько интересной, что я решил ее перевести. Далее текст статьи.

Когда разрабатываешь сайт на Джанго, так легко просто открыть консоль и напечатать:

python manage.py runserver

С этой простой командой управления ваши медиа файлы админки сайта поддерживаются правильным образом, PYTHONPATH правильно настроен и включает корневую папку нашего проекта, а так же запущен автоматически перегружающийся веб-сервер на указанном нами порту (от переводчика: по умолчанию порт 8000). Так просто!

Не удивительно, что люди так разочаровываются, когда приходит время положить их сайт на боевой сервер: существует так много шагов в этом процессе и поэтому сложно все их выучить и сделать все правильно. Неудивительно, что вся эта сложность приводит к тому, что написано много статей о развертывании веб-сайта на Джанго. Но почти все из этих статей фокусируются на развертывании сайта используя Apache и mod_wsgi или mod_python.

Однако иногда Apache не идеальное решение. Может быть ваш VPS имеет только 256 МБ памяти, а может быть вы хотите избежать сложности настройки Apache при установке. Или может быть вам просто не нравиться Apache. По любой из этих причин мы можем обратить свое внимание на FastCGI.
Читать дальше →
Всего голосов 63: ↑51 и ↓12+39
Комментарии35

Визы для стартапщиков

Время на прочтение1 мин
Количество просмотров903
Сенаторы Джон Керри и Ричард Лугар официально представили в Вашингтоне The Startup Visa Act. Это проект изменений в иммиграционное законодательство Америки, который позволит любому предпринимателю, который открыл новый стартап, легко получить визу EB-5 и без особых проволочек иммигрировать в США. Как известно, именно иммигранты основали многие успешные американские стартапы, в том числе Google, Intel, Yahoo и eBay.



Единственное условие получения визы — наличие инвестора, готового вложить в стартап не менее $250 000.

Полный текст законопроекта здесь. В его поддержку уже выступили более 100 венчурных фондов и частных инвесторов.
Всего голосов 70: ↑62 и ↓8+54
Комментарии70

Материалы продвинутого уровня по Питону

Время на прочтение5 мин
Количество просмотров45K
PythonВ мире все примерно распределяется в соответствии с принципом Паретто. Меньшая часть — богатые, большая часть — бедные (читающий, ты входишь в золотой миллиард). Тоже касается и материалов о программировании. Порой очень сложно найти хоть что-нибудь не начального уровня.

После прочтения Dive into Python или подобной ей и ознакомления с документацией возникает вопрос, а что читать дальше? Можно обратиться к списку книг на python.org. Там есть раздел Advanced Books, но в нем всего лишь 6 книг (седьмая не выходила), и только одну я бы назвал по-настоящему стоящей.

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

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

Подробнее
Всего голосов 136: ↑133 и ↓3+130
Комментарии23

Lookalike.me — сервис для людей, похожих на тебя или твоих друзей

Время на прочтение2 мин
Количество просмотров102K
Пост написан по просьбе друга, который вместе со скромным коллективом разработчиков сделал отличный сервис — не жалко и попиарить.

Привет, Хабр!

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

Год назад я решился на перемены. Собрав в голове весь свой умысел, я сел рисовать интерфейс сайта для знакомств по фотографиям с уникальной системой распознавания и нахождения похожих лиц. К вечеру мне было, с кем обсудить мой скетч, и сегодня мы даем релиз тестовой версии сайта lookalike.me — сервиса для поиска людей, внешне похожих на тебя или твоих друзей.



Читать дальше →
Всего голосов 90: ↑65 и ↓25+40
Комментарии134

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность