Pull to refresh
18
0
Кирилл @bootch

User

Send message

Анонимизация и деанонимизация в сети Интернет

Reading time8 min
Views41K
Топик адресован в первую очередь не айтишникам, но их жёнам, девушкам, тёщам, родителям, а также дедушкам и бабушкам, которые, вкусив прелести Интернета, скорее всего не задумываются, насколько глубоко Всемирная сеть встроена в общество, и что, помимо всего полезного, Интернет несёт объективные риски для их собственной безопасности.

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

image
Читать дальше →
Total votes 52: ↑36 and ↓16+20
Comments77

AI Challenge 2011 Ants. Глазами участника Murashka (15-е место)

Reading time5 min
Views1.5K
Турнир привлекал своей простотой и собрал широкую аудиторию. Идея пришлась по вкусу и старшеклассникам и умудренным опытом гуру, помнящим еще чемпионат мира по компьютерным шахматам 1972-го года.

Используемые лидерами алгоритмы были примерно одинаковые, базовых было два — поиск в ширину (BFS), для определения ближайшего пути к дальним целям и минимакс в ближнем бою. Дьявол скрывался в правильной методике выбора целей и тонкой настройке деталей.
Читать дальше →
Total votes 52: ↑50 and ↓2+48
Comments19

Снова о раскрытии IP-адреса собеседника в Skype

Reading time2 min
Views63K
Подготовил видео демонстрацию возможности раскрытия IP-адреса собеседника через Skype.


UPD: много вопросов на тему чем отличается данная статья от этой или вот этой.

Отвечаю:
1. Там речь шла только о звонке. Я показал, что в определённой ситуации можно раскрыть и без звонка, через чат.
2. Там была только теория. А здесь видео демонстрация.

Предыстория



А началось всё с прочтения вот этой статьи.

Цитата из статьи:

«Skype, оказывается, в большинстве случаев напрямую соединяется с собеседником.»

Но никаких доказательств этого приведено не было. Меня это сильно заинтересовало. И я провёл первые предварительные тестирования.

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

Поэтому я решил внести ясность в ситуацию.

Читать дальше →
Total votes 119: ↑86 and ↓33+53
Comments76

7 способов увеличения лояльной аудитории

Reading time2 min
Views1.4K
Несколько раз натыкался за последнее время на публикацию данной инфографики, и всякий раз ссылка шла за бугор. Почти всегда (в таких случаях) народ незнающий английского и «не могущий» использовать словарь в коментах задают вопросы: а что? а как? Ответов на них хватило бы, что бы все перевести. Только не понятно почему не переводят )))

Итак, источник инфографики: www.blog.kissmetrics.com/fan-base/

Далее самое интересное:

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

Инфографик сервиса KISS Metrics затронул не только лучших субъектов с точки зрения подписчиков Twitter и пользователей Facebook (в топ-рейтинг которых вошли: Lady Gaga, Facebook, Rihanna, Eminem и YouTube), и ведущих мировых брендов на Facebook (в топ-рейтинг которых вошли: Coca-Cola, Starbucks и Oreo), но и показал, как поклонники в социальных сетях могут быть использованы для развития бренда, в том числе тот факт, что 64% пользователей Twitter чаще всего отдают предпочтение брендам, подписчиками которых они являются.

Читать дальше →
Total votes 32: ↑22 and ↓10+12
Comments9

Фреймворк для парсинга Grab:Spider

Reading time4 min
Views30K
Я автор python библиотеки Grab, которая упрощает написание парсеров веб-сайтов. Я о ней писал вводную статью некоторое время назад на хабре. Недавно я решил вплотную занять парсингом, стал искать free-lance заказы по парсингу и мне понадобился инструмент для парсинга сайтов с большим количеством страниц.

Раньше я реализовывал мультипоточные парсеры с помощью python-тредов с помощью такой вот библиотечки. У threading-подхода есть плюсы и минусы. Плюс в том, что мы запускаем отдельный поток(thread) и делаем в нём, что хотим: можем делать последовательно несколько сетевых вызовов и всё это в пределах одного контекста — никуда не надо переключаться, что-то запоминать и вспоминать. Минус в том, что треды тормозят и жрут память.

Какие альтернативы?
Читать дальше →
Total votes 48: ↑43 and ↓5+38
Comments55

Создание 1k/4k intro для Linux, часть 1

Reading time10 min
Views9.4K
«на русской сцене мы удивляем друг друга тем, что вообще что-то делаем», © manwe
(из статуса SCRIMERS на demoscene.ru/forum)

Пятиминутка мета: в этом тексте вам, котятки, предстоит прочитать о том, как потратить свое время совершенно неэффективно с точки зрения отношения размера полученного продукта к потраченным времени и усилиям.
Предположим, что мы хотим сделать что-нибудь эдакое, например, интру размером до 4кб, но мы нищеброды, и у нас нет денег на виндовс и видеокарту с шейдерами, поддерживающими ветвления. Или мы просто не хотим брать стандартный набор из apack/crinkler/sonant/4klang/боже-что-там-еще-есть, делать очередную «смотрите все! я тоже умею рэймарчинг дистанс филдс!» и теряться среди десятков-сотен таких же. Ну или же мы просто любим выпендриваться как попало в надежде, что девочки на нас наконец-то обратят внимание.

В общем, не важно. Пусть у нас просто есть какой-нибудь линукс со слабой видеокартой и вся юность впереди. Попробуем со всем этим теперь создать запускаемый файл размером не более, скажем, 1024 байт, который при запуске умудрялся бы каким-нибудь образом создавать и показывать пользователю что-нибудь (эдакое).



омг сколько текста
Total votes 192: ↑183 and ↓9+174
Comments54

Не DropBox единым жив человек – 10 альтернатив популярному сервису

Reading time5 min
Views83K
Dropbox — чрезвычайно популярный облачный сервис. Если вы давно им пользуетесь, то скорее всего, не искали альтернативы. Это не удивительно — Dropbox настолько удобен в пользовании, что стимула для поиска другого сервиса просто нет. Однако, если задуматься, сервис имеет ряд весомых недостатков:
• Нельзя разместить свой собственный сервер;
• Бесплатно доступно всего лишь 2 Гб;
• Нет удаленного доступа к компьютерам;
• Нет открытого исходного кода.

А ведь сервису DropBox существует множество альтернатив — как новых, так и не очень.
Читать дальше →
Total votes 56: ↑50 and ↓6+44
Comments117

Кроссплатформенность — это круто

Reading time8 min
Views30K
Этот пост участвует в конкурсе „Умные телефоны за умные посты“.

Ни для кого не секрет, что сегодня мобильные игры очень популярны. Возможность написать одну из таких игр есть у каждого разработчика, даже начинающего. Часто возникает вопрос с выбором платформы. Конечно, хочется, чтобы игра была сразу везде: на iOS и Android, на WP7 и MeeGo, на десктопе и в браузере. И чтобы все это можно было лекго реализовать с помощью бесплатных инструментов.



В этой статье я расскажу вам, как сделать основную часть кода платформонезависимой, а для остального использовать удобные средства разработки для каждой конкретной платформы.
Читать дальше →
Total votes 179: ↑168 and ↓11+157
Comments69

Алгоритм детектирования теней на видеоизображении

Reading time3 min
Views8.2K

Введение


В данной статье мне хотелось рассказать об алгоритме, который позволяет разделять на видеоизображении реальные объекты и тени.



Данный алгоритм был впервые реализован мной во время разработки алгоритмов видеоаналитики для IP-видеосервера MagicBox, которое разрабатывает компания Синезис, в которой я работаю в настоящее время. Как известно, при детектировании движения на видеопоследовательности, условия освещенности не всегда идеальны. И простейший детектор движения, основанный на разности текущего кадра и некого усредненного фона будет реагировать не только на реальные объекты, но также и на виртуальные: подвижные тени и световые зайчики. Что является нежелательным, так как может приводить искажению формы детектируемых предметов а также к ложным срабатываниям детектора движения. Это актуально в солнечную погоду, а особенно в случае переменной облачности. Потому наличие алгоритма по выделению теней, может весьма положительно сказаться на точности всего детектора. Но давайте рассмотрим все по порядку.
Читать дальше →
Total votes 99: ↑99 and ↓0+99
Comments17

Эвристический решатель судоку

Reading time3 min
Views32K
В статье "Решение судоку с помощью веб-камеры" большинство решений реализовано очень красиво, за исключением самого решателя. В одном из моих старых проектов «Решатель судоку» была попытка подобрать алгоритм с комплектом эвристик для решения стандартной задачи судоку (поле 9х9). Вариант прямого полного перебора не рассматривался.

Читать дальше →
Total votes 35: ↑26 and ↓9+17
Comments30

Решение судоку с помощью веб-камеры в реальном времени

Reading time12 min
Views60K

Предисловие




Это приложение может и не имело практической ценности, но опыта прибавило действительно много. Я бы хотел немного поразмышлять на тему компьютерного зрения. Эта область является одной из самых захватывающих в современных компьютерных вычислениях, и она очень сложна. Что легко и просто для человеческого мозга, то очень сложно для компьютера. Многие вещи до сих пор остаются невозможными с сегодняшним уровнем развития IT.

Программа написана с помощью низкоуровневого языка C++, потому что я действительно хотел понять, как же это все работает изнутри. Если вы тоже хотите начать изучение компьютерного зрения, то для этого пригодиться библиотека OpenCV. На CodeProject вы сможете найти несколько уроков по ней. Изображение с веб-камеры получается с помощью исходного кода Вадима Горбатенко (AviCap CodeProject).
Читать дальше →
Total votes 363: ↑360 and ↓3+357
Comments67

Скрипт поиска проектов на odesk.com

Reading time2 min
Views7.1K
Хочу поделиться полезным скриптом для поиска проектов на odesk.com Честно говоря, я не понял, как на odesk.com задать вопрос с OR оператором, чтобы за один присест найти все интерсующие меня проекты, поэтому я искал в несколько подходов, что не очень удобно. Этот скрипт решает проблему. Я поставил его на крон, добавил закладку на локальный файл в браузер и просто смотрю её периодически.

Код скрипта под катом:
Читать дальше →
Total votes 44: ↑29 and ↓15+14
Comments26

zsh :: настраиваем «правое» приглашение командной строки

Reading time2 min
Views8.3K
Ковыряясь с настройками zsh, наткнулся на весьма интересное решение для приглашения командной строки, которое размещается в этом шелле справа. Обычно туда принято помещать часы, но мне весьма приглянулась идея разместить там также нотификатор заряда батареи. В зависимости от уровня заряда, нотификатор показывается зеленым, желтым или красным цветом. Автор идеи зачем-то приплел к решению python, я все переписал на родном шелле.
Выглядит это как-то вот так:
Command line prompt, zsh
Читать дальше →
Total votes 51: ↑48 and ↓3+45
Comments25

Список ресурсов для изучения Ассемблера

Reading time4 min
Views438K
Доброго времени суток!
Некоторым программистам иногда приходит в голову мысль «а не изучить ли мне ассемблер?». Ведь на нем пишут самые (с некоторыми оговорками) маленькие и быстрые программы, да и охота ощутить вкус низкоуровневого программирования берет свое. Ну и для общего развития не повредит.
Мысль эта не обошла стороной и меня. Вдохновившись историей одного байта, я ринулся в бой…

… но оказалось, что найти материал по интересующей теме не так просто, как хотелось бы. Посему решено было создать на хабре пополняющийся пост-индекс статей/книг/мануалов/etc. об этом, несомненно, великом языке.
Под катом находится, собственно, список с краткими комментариями, разбитый по категориям.

UPD
В список начали добавляться ресурсы по программингу микроконтроллеров.
Читать дальше →
Total votes 135: ↑130 and ↓5+125
Comments46

Простой сервер на Qt/C++

Reading time3 min
Views128K
В последнее время очень часто приходится слушать определенный порт, получать данные от клиента и отправлять соответствующий ответ. Решил поделиться с новичками, как же создать такой сервер и решить некоторые поставленные вопросы.
В этой статье мы рассмотрим:
— Создание tcp сервера.
— Подключение нескольких клиентов к серверу параллельно.
— Отключение клиентов (отключение сокетов).
— Получение и отправку данных.

Исходники: https://github.com/valualit/QTcpServer01

image

Читать дальше →
Total votes 67: ↑45 and ↓22+23
Comments27

Nmap — руководство для начинающих

Reading time3 min
Views513K
Многие слышали и пользовались замечательной утилитой nmap. Ее любят и системные администраторы, и взломщики. Даже Голливуд знает про нее — в фильме «Матрица» при взломе используется nmap.
Читать дальше →
Total votes 120: ↑96 and ↓24+72
Comments27

История Лошарика

Reading time6 min
Views2.8K

Предисловие


imageБыл вечер четверга, когда нам с коллегой spiff пришла в голову идея написать OpenSource игру на прогрессирующем в наше время HTML5, как говорится, from scratch и just for fun.

Так как мы работаем в области системного программирования и опыта разработки web-приложений у нас было совсем немного, было решено реализовать достаточно простой клон, всемирно известной и популярной игры для первых телефонов Nokia — RapidRoll.

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

Читать дальше →
Total votes 102: ↑98 and ↓4+94
Comments64

Охота на баги: Понимание архитектуры ИИ через эпические фейлы

Reading time3 min
Views2K

Введение


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

В этой статье вы откроете для себя основы архитектуры игрового ИИ через серию забавных игровых багов, заснятых в видеоролики. Эксперты из AiGameDev.com Philip Dunstan и Alex Champandard проведут вскрытие и анализ багов, чтобы вы смогли увидеть общую картину этой технологии. После этого урока, вы сможете попробовать ответить на вопрос, почему NPC в вашей любимой игре ведут себя именно так и какие могут быть решения проблемы.

Об экспертах


До того как присоединиться к AiGameDev.com Philip Dunstan работал более пяти лет в Electronic Arts. Как участник центральной технологической группы он работал над некоторыми известными играми от EA в студиях по всему миру. Последние пару лет Филип специализировался на симуляции физики, в том числе помогая создать движок Impact для FIFA 12.

Alex Champandard работал над совместной технологией в движке R.A.G.E от Rockstar Games, в частности в TABLE TENNIS и MAX PAYNE 3. Недавно Алекс подписал контракт на создание ботов для мультиплеерной игры в KILLZONE 2 и 3, а также он регулярно консультирует студии с играми уровня AAA, в основном в Европе.

айда ловить жуков
Total votes 57: ↑42 and ↓15+27
Comments12

Правила Google AI Challenge Осень 2011

Reading time10 min
Views2.1K
Правила турнира
  • Результаты турнира определяются с помощью ПО написанного организаторами. Опубликованные результаты являются окончательными. Текущий рейтинг игроков не является официальным и может отличаться от опубликованных окончательных результатов.
  • Каждый участник турнира может иметь единственную учетную запись. При выявлении участника управляющего несколькими учетными записями, и несмотря на то, что эти учетные записи зарегистрированы на других людей, нарушитель будет дисквалифицирован.
  • Участники (или их программы), которые нарушают дух правил и спорта (вероятно не нарушая официального текста правил), отстраняются от участия в турнире, без возможности обжалования. В частности: сканирование памяти, умышленный проигрыш и изменение поведения в зависимости от имени оппонента — запрещены.
  • Производить запись в файлы запрещено. Разрешено производить чтение из файлов которые вы высылаете для участия. Файлы располагаются в текущей директории.
  • Использование нескольких процессов или потоков запрещено.
  • Любая попытка нарушить нормальную работу программного обеспечения турнира или серверов приведет к немедленному привлечению сотрудников правоохранительных органов. Наш принцип — всегда преследовать нарушителей в судебном порядке.
  • Организатор оставляет за собой право, изменить эти правила в любой момент, без предварительного уведомления участников турнира.

Читать дальше →
Total votes 61: ↑52 and ↓9+43
Comments15

Information

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