Search
Write a publication
Pull to refresh
-1
0
NULL_byte @NULL_byte

Web

Send message

Расширение Opera: Радио

Reading time1 min
Views2.2K
Еще пол года назад, когда появились расширения для браузера Opera думал сделать расширение, которое позволит слушать радио во время серфинга по интернету.



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

Представляю Вашему вниманию расширение Радио: в нем нет никакой рекламы, есть лишь одна кнопка, которая включает и выключает радио.
Читать дальше →

Система учета на базе OCR системы

Reading time5 min
Views7.6K

Пролог


По ходу своей трудовой деятельности получил задачу придумать и реализовать систему учета рекламной информации. Учет заключался в проверке наличия нужной информации на нужном рекламном щите. Щит и полиграфия пронумерованы.
В качестве исходной информации для системы предлагалось использовать фото. После торговли согласования с дизайнерами было оговорено, что оба номера будут располагаться внутри одной рамки. Единственное, что рамка могла быть в любом месте щита.
Собственно на этом постановка задачи заканчивается и начинается повествование о реализации.
Задача решается в три действия:
  1. Нахождение нужного прямоугольника на изображении.
  2. Распознавание текста.
  3. Проверка правильности распознавания.

Читать дальше →

SMS и SIP шлюз — Мультифон, Asterisk, Kannel

Reading time5 min
Views85K
В данной статье дается описание того, каким образом можно объединить достоинства Asterisk как PBX или IVR, Kannel как SMS-шлюза используя один телефонный номер.

Для этого я использовал Freebsd 8.2 на сервере, модем Huawei E171, но можно использовать любой модем МТС или Мегафон производства huawei (так же было проверено на модеме E1551), сим-карту Мегафона. В качестве софтфонов использовались Telephone и SJphone.
Читать дальше →

SNORT как сервисная IPS

Reading time6 min
Views93K
Введение.

Про SNORT было сказано много, но в большинстве статей речь идёт о SNORT, как о средстве тотального наблюдения за сетью, которое собирает все данные с сетевого интерфейса. В этой статье я расскажу как собрать конструкцию, в которой SNORT будет в режиме IPS следить не за всем трафиком на интерфейсе, а только за трафиком, который можно описать с помощью правил для iptables. Я не буду касаться настройки правил, речь будет исключительно о том, как на голой системе собрать SNORT для работы в режиме IPS и как подойти к защите им абстрактного сервиса. Так же будет описана сборка и запуск SNORT.

Читать дальше →

«Рамблер» объединяет контакты пользователей

Reading time2 min
Views23K
Друзья!

Сегодня объединенная компания «Афиши» и «Рамблера» запустила в публичное beta-тестирование коммуникатор «Рамблер-Контакты». Новый продукт объединяет контакты из различных интернет-сервисов и предоставляет все возможности для общения — в одном приложении.

«Рамблер-Контакты» позволяют пользователю общаться через единый интерфейс с друзьями из различных социальных сетей и мессенджеров. Сегодня это «ВКонтакте», Facebook, ICQ, Mail.ru «Агент», Google Talk, «Я.Онлайн», QIP, Jabber. Не важно, на какой аккаунт или сервис было отправлено сообщение. Если пользователь подключил свои учетные записи к «Рамблер-Контактам», то сможет всегда оставаться на связи.

image
Читать дальше →

Новый Javascript фреймворк основаный на Scriptographer

Reading time2 min
Views2.6K

Создан Юргом Лени и Джонатаном Пакей, Paper.js является фреймворком сценариев векторной графики с открытым исходным кодом, который работает поверх HTML5 Canvas. Он предлагает чистый Scenegraph / DOM и много ярких функций, для создания и работы с векторной графикой и кривыми Безье.

Paper.js основана на и в значительной степени совместимы с Scriptographer, средой сценариев для Adobe Illustrator, первоначально разрабатывающаяся Юргом и Джонатананом более чем 10 лет.
Читать дальше →

Three.js — 3D в браузере своими руками или WebGL становится ближе

Reading time7 min
Views32K
Тема про three.js от mrdoob в свое время проскакивала на хабре, но детально еще не рассматривалась. В этой и(возможно) последующих статьях я постараюсь исправить это упущение. К сожалению, three.js не предоставляет никакой внятной документации, поэтому все знания по нему получены экспериментальным путем и ковырянием спеки WebGL, т.е. любые дополнения автору топика только приветствуются.

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

12 законов и правил, которые помогут в создании успешного дизайна

Reading time8 min
Views75K
Люди в течение многих веков упорядочивали важные знания, которые теперь составляют основу правил дизайна. Это знания об общей природе положительных реакций человека. Дэвид Хьюм назвал такую природу «постоянными и универсальными принципами человеческого естества». Правила универсального дизайна не всегда могут быть мерилом всех вещей, но они могут помочь добиться успеха в различных сферах деятельности, включая коммуникации, производство, услуги, технику, искусство и природоохранное проектирование.

Читать дальше →

Реализация нечеткого поиска

Reading time6 min
Views43K


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

В данной статье описывается возможная реализация нечеткого поиска, которая была применена для поиска на сайте edatuda.ru.
Читать дальше →

Node.js для начинающих

Reading time1 min
Views41K
NodeBeginner.ru — перевод на русский язык учебника по Node.js для начинающих «The Node Beginner Book» автора Manuel Kiessling.

Учебник предназначен для разработчиков с опытом работы с каким-либо объектно-ориентированным языком, немного знакомых с JavaScript и полных новичков в Node.js. Оригинал ещё находится в процессе написания, законченно около 90%. Перевод будет соответственно обновляться.

Кейс-стади: аудит юзабилити Хабрахабра

Reading time1 min
Views14K
Здравствуй, хабрачеловек!

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



Сразу небольшой дисклеймер. Аудит Хабрахабра — это конечно вызов. Что можно сказать по поводу юзабилити идеала социального СМИ? В общем-то мы сами удивились, но рекомендаций получилось много. Фактически мы придумали, как собрать этот конструктор заново и по-другому. Получилось у нас или нет — решать вам.

При этом есть два фактора. Первый: Хабр — это все таки элитарный ресурс, и аудитория на нем отличается от среднестатистического пользователя интернета, которому нужно все разжевывать и подавать в максимально простой форме. Второй: есть сайты, которые в меру своих сил следуют стандартам, а есть — которые стандарты задают (Google, Facebook, Twitter, Wikipedia). И Хабр относится ко вторым. В силу двух этих нюансов большая часть наших рекомендаций неминуемо будет спорной.

В свою защиту можем заявить только одно: Мы Habrahabr.

Пожалуй, хватит лирики. Перейдем к делу.

Аудит юзабилити Хабрахабра, PDF (3,23 Мб).

P.S. Проводить аудиты популярных сайтов мы планируем на регулярной основе. Следующий на очереди — известный интернет-магазин.

Как я разработал устройство, от идеи до производства. Часть 3

Reading time3 min
Views20K


Итак техническая часть проекта MT9000, заключительная. Если вы не читали первую и вторую части, рекомендую ознакомиться. Что же, приступим!

Как мама учит мыть руки перед едой, так и планирование – обязательная стадия разработки любого проекта. Иначе проект может перерасти в процесс, а мне это совершенно не нужно. Без плана и определения методики разработки не делаю ничего!

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

Читать дальше →

Мини-обзор Arduino-совместимых плат различных архитектур

Reading time5 min
Views98K
В тематическом блоге «Программинг микроконтроллеров» уже было несколько статей по поводу выбора первого микроконтроллера и начала работы с ним. Не менее интересны были и комментарии к таким статьям. Одна из мыслей, которая несколько раз поднималась там — это что не все, кто имеют интерес к МК, приходят к ним от транзисторов. Некоторые (дай бог, чтобы побольше), приходят к ним со стороны (прикладного) программирования. Рекомендовать таким людям брать в руки паяльник — не разумно, у них и так есть вещи, которые они могут «попаять». Так мы приходим к слову «Arduino», которое уже многие слышали. Среди бывалых с паяльниками существует стереотип — Arduino это платка на AVR для ленивых. Так ли это? Эта статья — попытка наглядно показать, что Arduino — это не про AVR и не про лень, Arduino — это архитектурно-независимая электронно-механическая платформа совместимых компонентов, по (относительной) значимости не менее важная, чем (в свое время) IBM S/360, IBM PC или USB.



Читать дальше →

Обыск в офисе fermer.mobi

Reading time3 min
Views3.7K
Вчера к нам в офис, а затем и в мою квартиру явились сотрудники Отдела «К», изъяли суммарно 3 системных блока, 2 ноутбука, 1 нетбук (всего 6 компьютеров), предъявив все необходимые бумаги для обыска: постановление на обыск по решению суда, и поручение, дающее право на обыск, обыск проводился с понятыми.

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

Вечером того же дня мне принесли повестку, явиться на допрос в качестве свидетеля.
Читать дальше →

Троян, использующий вычислительные мощности ПК для генерации Bitcoin

Reading time2 min
Views176K
Случилось мне вчера привезти из командировки один троянчик, Trojan.Win32.Powp.rdf (по классификации ЛК). Там я его победил, но флэшки он мне успел позаражать. Чтоб добро зря не проподало, решил поковырять его на досуге.
С наименованием зловредов у ЛК, как всегда, оказалось не все хорошо, он относится скорее к классу Trojan-Downloader, т.к. основная задача — скачка файлов с fileave.com. Поставил на виртуалку поиграться, среди кучи заурядного вредоносного хлама, закачиваемого им на машину, я обратил внимание на один sfx-архив и как оказалось не зря…
Читать дальше →

История противостояния OpenGL и Direct3D

Reading time11 min
Views26K
Перед тем как мы начнём, скажу: я знаю об OpenGL гораздо больше чем о Direct3D. Я в жизни не написал ни одной строки кода для D3D, и я писал руководства по OpenGL. Так что то что я тут расскажу, не вопрос предвзятости. Теперь это просто история.

Зарождение конфликта

SkypeKit вышел из беты

Reading time2 min
Views1.2K
imageВ конце прошлого года количество подключенных к интернету устройств перевалило за 5-миллиардную отметку по данным IMS Research. Примерно тогда же аналитическая фирма предсказала, что к 2020 г. мы можем обзавестись 22 млрд. подключенных устройств. Итак, что же будет особенного в следующих 17 миллиардов устройств? Видео. Когда вы говорите о подключении устройств к Интернету, мы хотим, чтобы вы думали о большем. Думайте о том, как соединяются между собой люди — такие как мы с вами, а устройства — это в конечном счете просто «проводящая среда».

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

Когда мы впервые представили бета-версию SkypeKit в 2010 году, мы занялись ускорением проникновения Skype в сферу бытовой электроники на разных платформах. Теперь, когда SkypeKit выходит из бета-тестирования, практически любой разработчик сможет использовать всю мощь голосового и видео общения по Skype в своих новых, захватывающих и необычных устройствах. Вы можете создать все, что вы можете представить.

Со SkypeKit, мы хотим помочь вам создавать продукты, которые выделяются среди остальных. Мы понимаем, что просто подключения к Интернету уже недостаточно, чтобы выделиться, и считаем, что Интернет+голос+видео становится своего рода формулой успеха для современных устройств.
 
Читать дальше →

Пишем одностраничный клиент на javascript

Reading time5 min
Views48K
Данная статья является вольным переводом. Оригинал тут.

Введение


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

Предлагаю ознакомиться с решением на базе backbone.js, underscore.js и jQuery, которое поможет решить эту проблему.

Постановка задачи


Каким бы мы хотели видеть наше приложение? Вот основные моменты, которые мне кажутся важными:
  1. Должен быть удобный способ описать модели нашей предметной области.
  2. Любые изменения в модели должны немедленно отражаться в пользовательском интерфейсе, если модель в нем представлена каким-либо образом.
  3. Понятная и легко-поддерживаемая структуризация кода в стиле MVC.


Попробуем решить эти задачи на примере простого приложения «Каталог фильмов».
Поехали!

Как сеть bitcoin будет уничтожена (практические советы с примерами)

Reading time3 min
Views25K
Многие уже на хабре знают про криптовалюту — bitcoin, про ее основные особенности и типичные заблуждения. Кому то топики на эту тему покажутся надоедливыми и скучными, попробую обмануть ожидания последних.


Одна из основных и самых интересных особенностей сети bitcoin является ее защищенность от 'взлома' и, в какой то мере 'DoS атак'. Невозможно на халяву настрогать монеток (их скорость строго контролируется через difficulty на основе скорости нахождения последних блоков), худшее, что может сделать владелец большей половины мощности сети — отменять свои транзакции, а полный контроль над средой распространения (интернетом) — замедление прохождения транзакций и, если разделить физически сеть на несвязанные подсети, откат всех транзакций во всех этих отдельных подсетях послед объединения кроме одной, самой крупной (отдельный и сложный разговор, какие именно транзакции будут откинуты, и это непринципиально).

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

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

Но самая интересная атака поджидает практически в главной защитной функции сети — расчете сложности.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity