Как стать автором
Обновить
8
0

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

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

15 малоизвестных команд Linux

Время на прочтение3 мин
Количество просмотров317K
Каждому разработчику в определенной степени следует овладеть навыками работы в терминале. Физически находиться у компьютера не всегда возможно, поэтому приходится подключаться удаленно. И действительно, GUI-программы вполне могут с этим с правиться, но зачастую они работают медленнее, чем получение доступа через тот же терминал (в конце концов, это лишь обмен текстом).
Читать дальше →
Всего голосов 333: ↑274 и ↓59+215
Комментарии224

UNET — новая сетевая технология в Unity 3D

Время на прочтение15 мин
Количество просмотров51K
Некоторое время назад, на конференции Unite Asia, мы сообщили о разработке новых мультиплейерных инструментов, технологий и служб для разработчиков Unity. Внутреннее название этого проекта — UNET, что означает просто Unity Networking. Но наши планы простираются далеко за пределы простой работы с сетью. Как вы все знаете, основной целью Unity является демократизация процесса разработки игр. Команда Unity Networking хочет демократизировать разработку многопользовательских игр. Мы хотим, что бы все разработчики игр могли разрабатывать многопользовательские игры любого типа с любым количеством игроков. Само собой это не самая простая задача, но мы все уже решали ее в прошлом и очень хотим сделать это снова (потому что это действительно классно!). Мы решили разделить нашу общую цель на несколько фаз, что должны быть хорошо знакомо Unity-разработчикам. Согласно этому подходу мы выпустим фазу 1, получим отзывы пользователей, учтем их в нашей работе, что бы сделать следующую фазу еще лучше и повторим этот цикл. Для UNET фазой 1 будет то, что мы называем — Multiplayer Foundation — о ней мы расскажем чуть ниже. Фаза 2 будет построена на основе фазы 1 и предоставит технологию создания игр с авторизацией на сервере, которую мы называем Simulation Server, о ней в следующих статьях. В фазе 3 мы добавим возможность координировать множество Simulation Servers с помощью системы Master Simulation Server. Как всегда, точную дату выпуска назвать невозможно, особенно с учетом сбора отзывов от наших пользователей. Но мы можем сказать, что фаза 1 будет частью цикла релизов 5.х, а фаза 2 сейчас находится на этапе исследований.


Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии10

9 вещей, которые я узнал, будучи программистом, и которые я хотел бы знать, поступая в магистратуру

Время на прочтение9 мин
Количество просмотров69K
Три года тому назад я работал в лаборатории нейробиологии в Барселоне, занимаясь тем, что ставил на людей различные электроды и вел курсы по когнитивным системам. А сегодня я проектирую и пишу программное обеспечение для жизни.

В рамках науки я много писал о программном обеспечении, что-то вроде — если вы хотите разобраться в 40 гигабайтах данных, полученных при сканировании мозга, вы должны закатать рукава и написать парочку сортировочных скриптов. И я всегда был действительно неплохим программистом, хотя и не осознавал этого, пока не выпустился из академии и не начал работать над одним небольшим и очень амбициозным стартапом, — именно тогда я узнал всю правду о разработчиках программного обеспечения и — что еще более важно — о том, что значит, быть в этом бизнесе. Разработка программного обеспечения — это не просто знание языков, библиотек, алгоритмов и проектировочных шаблонов. Это — особый образ мышления.
Читать дальше →
Всего голосов 108: ↑82 и ↓26+56
Комментарии33

Немного тестов производительности сетевых фреймворков

Время на прочтение6 мин
Количество просмотров23K
Привет Хабр! Пару месяцев назад я захотел провести тестирование производительности некоторых сетевых фреймворков, c целью понять насколько большая разбежка между ними. Надо ли использовать Node.js там, где хотелось бы Python с Gevent или нужен Ruby с его EventMachine.

image

Я хочу обратить ваше внимание на то, что эти материалы не являются руководством к выбору фреймворка и могут содержать спорные моменты. Я вообще не собирался публиковать результаты этого исследования, но когда они попадались мне на глаза я ловил себя на мысли, что это может быть кому-нибудь полезно. Теперь я начну забрасывать вас графиками.
Читать дальше →
Всего голосов 62: ↑57 и ↓5+52
Комментарии59

Индексирование контента приложений Android теперь доступно для всех разработчиков

Время на прочтение2 мин
Количество просмотров11K
Уровень подготовки веб-мастера: любой

У вас есть не только сайт, но и приложение Android? Теперь вы можете подключить одно к другому, чтобы пользователи смартфонов и планшетов могли легко находить контент приложения прямо в результатах поиска Google.

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



Сотни разработчиков приложений уже пользуются индексированием приложений. Среди них уже и первые разработчики из России, как, например, Афиша. На конференции Google I/O мы представили множество новых функций, упрощающих размещение ссылок на сайт в приложении, связь страниц сайта с приложением настройки, отслеживание эффективности и возможных ошибок.
Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии0

Моя реализация «умного дома»

Время на прочтение7 мин
Количество просмотров277K
Полтора года назад я писал статью о разработке своей собственной шины «CLUNET» для соединения устройств в «умном доме». Многие просят рассказать о том, что же у меня получилось в итоге, что я сейчас и попытаюсь сделать.

Попытался начертить схему моей комнаты со всеми устройствами объединёнными в сеть, картинка кликабельна:



Вся идея держится на трёх китах:

  • Децентрализация — вся система функционирует без какого-либо главного модуля;
  • Простота — минимум компонентов и лёгкость подключения;
  • Дешевизна — себестоимость устройства легко уложить в 100 рублей.

Читать дальше →
Всего голосов 212: ↑207 и ↓5+202
Комментарии95

Эти чертовы инкрементальные айдишники

Время на прочтение2 мин
Количество просмотров58K
Как программисту, принимавшему участие в разработке платежных систем, мне неоднократно приходилось анализировать на наличие уязвимостей различные платежные сервисы, хранящие персональные данные клиентов и я постоянно сталкиваюсь с одной очень распространенной проблемой. Имя этой проблеме — инкрементальные айдишники.

Пример №1.
Сайт крупнейшего агрегатора платежных методов в России, обслуживает лидера онлайн-игр. После оплаты заказа переадресовывает клиента на урл вида aggregator-domain/ok.php?payment_id=123456, который в свою очередь переадресовывает на сайт онлайн-игры с адресом вида (декодировал для читабельности) online-game-domain/shop/?...amount=32.86...&currency=RUB...&user=user_email@gmail.com...&item_name=1 день премиум аккаунта...
Перебирая значения параметра payment_id, мы можем видеть логины юзеров в онлайн-игре, покупки, которые они совершали, их сумму.


Читать дальше...
Всего голосов 175: ↑139 и ↓36+103
Комментарии93

Определитель типа блокировки сайтов у провайдера

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

Написал тут маленькую программку, которая позволяет определить тип блокировки сайтов из реестра, применяемый провайдером. Она умеет определять подмену DNS, перенаправление DNS, IP/Port restricted DPI, Full DPI, ну и блокировку по IP, конечно же.
Программа отправляет применяемый тип блокировки на сервер, в дальнейшем можно будет составить таблицу по провайдерам.

Написано на Python 3.
Репозиторий на Github
Бинарники для Windows
Всего голосов 124: ↑121 и ↓3+118
Комментарии118

Особенности использования SailsJS для начинающих (Часть 1)

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


Синопсис


Эта статья содержит полезные для новичков методы и способы разработки на SailsJS, которые могут быть неизвестны или непонятны тем кто только ступил на путь разработки в этом удобном и многофункциональном фреймворке. Это может быть все — начиная от обычных команд, генераторов или сервисов, и заканчивая встроенными методами запросов. Здесь собраны полезные мелочи платформы которые смогут защитить вас от написания костылей или велосипедов. Заинтересовало?
Добро пожаловать под кат
Всего голосов 16: ↑13 и ↓3+10
Комментарии9

Смартфон может считать пароль с экрана из отражения в Ваших глазах, а так же отпечатки пальцев

Время на прочтение1 мин
Количество просмотров50K
Неожиданная новость пришла из Германии. Проведенные исследования в Техническом Университете Берлина (далее TU Berlin) показали как легко смартфон может считать пароли с экрана телефона по отражение как в очках, так и в зрачках пользователя.
Перевод с Heise.de, оригинальные картинки можно посмотреть тут же.


Читать дальше →
Всего голосов 71: ↑63 и ↓8+55
Комментарии43

Gmail API

Время на прочтение2 мин
Количество просмотров57K
Компания Google решила открыть для сторонних приложений доступ к содержимому почтовых ящиков Gmail и представила программные интерфейсы Gmail API. По мнению Google, они удобнее и безопаснее, чем протокол IMAP.

Gmail API дают доступ к отдельным ресурсам, таким как Threads, Messages, Labels, Drafts или History. Например, стороннее приложение может запросить доступ только на отправку писем (но не чтение), или только на чтение (но не отправку), или только на изменение меток для писем и цепочек, или только на поиск конкретных писем и цепочек.
Читать дальше →
Всего голосов 70: ↑64 и ↓6+58
Комментарии26

Как мы написали helpdesk

Время на прочтение6 мин
Количество просмотров123K
Есть продукты, которые можно взять и использовать, но с небольшой модификацией «под себя». Так вот система заявок или helpdesk как раз к таким вещам не относится. Точнее, мы для себя не нашли подходящий продукт и решили сделать сами.


Читать дальше →
Всего голосов 61: ↑53 и ↓8+45
Комментарии86

Интерактивная сетевая игра на HTML, CSS и JavaScript

Время на прочтение10 мин
Количество просмотров97K
Как-то поиграв в оффисе в hexbug, зародилась идея написать игрушку по схожим мотивам.
По текущему роду деятельности я веб разработчик и поэтому захотелось чтобы в игре использовался только HTML, JavaScript и CSS — средства знакомые каждому вебразработчику. Никакого вам flash или даже canvas. Звучит хардкорно, но на самом деле сейчас HTML + CSS3 это очень мощные и гибкие средства визуализации, а писать игровой код на JavaScript — одно удовольствие. Вдобавок захотелось чтобы игра была с сетевым мультиплеером, притом интерактивной — никаких там шашек, карточных игр, пошаговых стратегий, все должно быть в действии и движении.

Вот что получилось в итоге:



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

Читать дальше →
Всего голосов 45: ↑42 и ↓3+39
Комментарии23

Что хабровчане носят с собой, или хвастаемся EDC (+ обзор рюкзака Thule TCBP-217)

Время на прочтение8 мин
Количество просмотров116K
С каждым днем количество электроники которую человек берет с собой за пределы дома растет, и несмотря на ее тотальное уменьшение и облегчение, количество гаджетов у отдельных особей может составлять весьма длинный список. Встает вопрос: в чем носить? Да так, чтобы удобно и безопасно для электроники? Сегодня расскажу о годном гик-рюкзаке на 32 литра Thule TCBP217 ну, и конечно же, всех приглашаю в EDC тред.


Осторожно: много картинок!
Читать дальше →
Всего голосов 74: ↑57 и ↓17+40
Комментарии361

Учимся разбираться в искусстве программирования

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

Классика


Самый обычный код.

    $size = sizeof($arr)-1;
    for ($i = $size; $i>=0; $i--) {
        for ($j = 0; $j<=($i-1); $j++)
            if ($arr[$j]>$arr[$j+1]) {
                $k = $arr[$j];
                $arr[$j] = $arr[$j+1];
                $arr[$j+1] = $k;
            }
    }


Барокко


Барокко (итал. barocco — «причудливый», «странный», «склонный к излишествам»)
Барокко свойственны контрастность, напряженность, стремление к величию и пышности как в именовании, так и в комментариях, к слиянию разных стилей кодирования. Обычно уже на продакшене обнаруживаются скрытые «детонаторы».

Чаще всего используется в: JavaScript, C++, Java.

    $SIZE = SIZEof($A_R__R)-1;
    for ($i = $SIZE; $i>=0; $i--) {
        for ($j = 0; $j<=($i-1); $j++)
            if ($A_R__R[$j]>$A_R__R[$j+1]) {
                //используем хитрый манёвр
                $A_R__R[$j+1]  = $A_R__R[$j];  + $A_R__R[$j+1];
                $A_R__R[$j]    = $A_R__R[$j+1] - $A_R__R[$j];
                $A_R__R[$j+1]  = $A_R__R[$j+1] - $A_R__R[$j];

            }
    }

Читать дальше →
Всего голосов 110: ↑63 и ↓47+16
Комментарии58

Wi-Fi сети: проникновение и защита. 1) Матчасть

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


Синоптики предсказывают, что к 2016 году наступит второй ледниковый период трафик в беспроводных сетях на 10% превзойдёт трафик в проводном Ethernet. При этом от года в год частных точек доступа становится примерно на 20% больше.

При таком тренде не может не радовать то, что 80% владельцев сетей не меняют пароли доступа по умолчанию. В их число входят и сети компаний.

Этим циклом статей я хочу собрать воедино описания существующих технологии защит, их проблемы и способы обхода, таким образом, что в конце читатель сам сможет сказать, как сделать свою сеть непробиваемой, и даже наглядно продемонстрировать проблемы на примере незадачливого соседа (do not try this at home, kids). Практическая сторона взлома будет освещена с помощью Kali Linux (бывший Backtrack 5) в следующих частях.

Статья по мере написания выросла с 5 страниц до 40, поэтому я решил разбить её на части. Этот цикл — не просто инструкция, как нужно и не нужно делать, а подробное объяснение причин для этого. Ну, а кто хочет инструкций — они такие:
Используйте WPA2-PSK-CCMP с паролем от 12 символов a-z (2000+ лет перебора на ATI-кластере). Измените имя сети по умолчанию на нечто уникальное (защита от rainbow-таблиц). Отключите WPS (достаточно перебрать 10000 комбинаций PIN). Не полагайтесь на MAC-фильтрацию и скрытие SSID.

Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
Как работают WEP, WPA и WPS
Всего голосов 185: ↑176 и ↓9+167
Комментарии76

Google выпустил 64-битную версию Chrome для Windows

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


Вчера Google анонсировал 64-битную версию своего браузера Chrome. Для того, чтобы получить эту версию, необходимо выбрать либо Dev Channel либо Canary channel, для пользователей Windows 7 и 8.

Читать дальше →
Всего голосов 80: ↑69 и ↓11+58
Комментарии104

Работаем с jQuery Templates

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

Введение


Плагин jQuery Templates – это «движок шаблонов», работающий на стороне клиента как расширение jQuery.

Этот плагин помогает показать в браузере данные, которые находятся в объектах и массивах JavaScript, избавляя вас от рутинных операций по созданию HTML-кода, экранированию специальных символов и т.п. Кроме того, он обладает очень интересными возможностями – например, позволяет обновлять созданный с его помощью HTML-код при изменении исходных данных.

Разумеется, jQuery Templates – не единственный и не первый «движок шаблонов», но у него есть большое преимущество перед альтернативными вариантами – поддержка со стороны jQuery Team. Это позволяет нам не бояться того, что этот плагин окажется заброшенным, и различные проблемы, возникающие при выходе новых версий браузеров, придется решать своими силами.

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

Читать дальше →
Всего голосов 201: ↑197 и ↓4+193
Комментарии67

Nimbus Note — теперь и на Android

Время на прочтение3 мин
Количество просмотров12K
Всем привет!

Мы рады сообщить, что Nimbus Note теперь доступен пользователям девайсов на Android (напомню, что не так давно был релиз для iPhone, а также для Windows Phone). В этом топике я расскажу об основных возможностях приложения, таких как: быстрое создание и редактирование заметок, списки задач, оффлайн доступ и визуальный редактор с поддержкой форматирования и т.д

Скачать Nimbus Note — play.google.com/store/apps/details?id=com.bvblogic.nimbusnote

Прямая ссылка на APK — nimbus.everhelper.me/NimbusNote.apk (если пишет, что не поддерживается устройство)

image
Читать дальше →
Всего голосов 14: ↑10 и ↓4+6
Комментарии40

Атаки HTML5: что нужно знать

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


Все последние версии браузеров поддерживают HTML5, следовательно, индустрия находится на пике готовности принять технологию и адаптироваться к ней. Сама технология создана такой, чтобы сделать простым процесс включения и обработки графического и мультимедиа-контента в вебе, без использования третьих плагинов или API. Эта статья расскажет о новых типах атак, которые HTML5 «подарил» миру.
Читать дальше →
Всего голосов 73: ↑53 и ↓20+33
Комментарии10

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность