Search
Write a publication
Pull to refresh
1
0
Виталий Ф. @FuN_ViT

программист, синьор-помидор :)

Send message

Классы и фабрики. Как разобрать и собрать объект с наследованием на прототипах

Reading time6 min
Views21K
Привет, Хабра!
При разработке игр на JavaScript часто возникает необходимость создавать множество объектов. О том, как правильно это сделать и не утонуть в коде, я рассказывал, примерно — месяц назад на Frontend Dev Conf в Минске. Возможно, доклад будет интересен тем, кто не был на конференции и сталкивался с проблемой создания множества объектов, либо является разработчиком HTML5 игр.



Под катом текст с картинками.
Читать дальше →

Маленький сетевой одноплатный компьютер за 20 USD

Reading time2 min
Views42K
Ну вот, наконец-то, у меня в руках первый полноценно работающий экземпляр нашего одноплатного компьютера.

Полгода разработки, два месяца ожидания (пока изготовят первых 20 экземпляров и доставят в Москву), неделя непрерывного секса (чтобы запустить)… И вот оно — наше маленькое чудо!

image

Это не «самый маленький в мире компьютер». И не самый дешевый. И уж конечно не самый мощный. Но он достаточно маленький, довольно дешевый и не такой уж медленный. Чип Qualcom Atheros AR9331, 64 Мб DDR2, 16 Мб NOR flash. WiFi, один гигабитный Ethernet и до пяти 100мбитных, USB, UART, SPI, I2S, 20+ GPIO, OpenWrt на борту — что еще нужно для счастья? Зажечь в первый раз светодиод по команде со смартфона — ни к этому ли мы все стремимся?

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

Первые подробности — под катом.
Читать дальше →

Соцсети — что дальше?

Reading time6 min
Views15K
Эта заметка является полётом безудержной фантазии с претензией на аналитику на тему «куда идём мы с Пятачком».

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

Когда Интернет был ещё младенцем, он представлял собой месиво технологий, часто взаимно несовместимых. С началом стандартизации, TCP/IP и всего последующего, Интернет как ребёнок произнёс своё первое слов, перешагнул через океаны и распространился по миру. Подростком он вырастил WWW и так стал самым массовым источником и хранилищем информации за всю историю человечества. Зрелость Интернета пришла с парадигмой «юзеро-центричности» и Web 2.0, что вывело Интернет на грань становления коллективным разумом.

И сейчас мы стоим на этой грани и наклоняемся вперёд.
Что там впереди?

Настройка работы сервера на CentOS с 2 шлюзами и балансировки между ними

Reading time4 min
Views42K

Вместо вступления


За основу взята более ранняя прочитанная мной статья на Хабре, которой лично мне оказалось достаточно для понимания механизма policy routing в целом — и катастрофически мало для реализации этого типа маршрутизации на сервере компании. Было 2 серьезных подводных камня, над которыми пришлось работать самостоятельно, и которые нельзя оставить без внимания:

  • Сохранение настроек в целом
  • Перебивание настроек утилитой Network Manager


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

Новый Яндекс.Маркет. Что произошло на конференции YaC/M, и почему это может быть важным шагом в развитии Рунета

Reading time4 min
Views40K
Привет! Меня зовут Алексей Авдей, я руководитель Яндекс.Маркета. Сегодня я хочу рассказать вам, о чем была главная презентация на прошедшем YaC/m и почему обновленный Яндекс.Маркет выведет рынок электронной коммерции в нашей стране на новую стадию развития.

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



Когда мы запустили сервис поиска по товарам в 2000 году, у нас было 70 магазинов. Рынок электронной торговли в России получил сильный толчок и активно развивался. Сейчас к Яндекс.Маркету подключено больше 15 000 магазинов, 80% которых — маленькие. По данным TNS Web-Index, на сервис заходит порядка 20 млн покупателей в месяц. Пришло время, когда для продолжения этого роста нужны новые инструменты.

За эти годы произошло многое: мы купили софт Multiship и инвестируем в его развитие, набрали опыт в контроле качества магазинов и создали технологии, которые помогут не только нам, но и пользователям и партнерам. Какой именно путь мы прошли и что благодаря этому будет дальше, читайте под катом.
Читать дальше →

Язык программирования Swift. Русская версия

Reading time17 min
Views382K
imageПривет, Хабр! 2 июня все мы воочию могли наблюдать, как компания Apple начала творить революцию в стане Objective-C разработчиков, представив миру свой новый язык программирования – Swift. Вместе с этим, она выложила в открытый доступ небольшую документацию по языку, которую мы решили перевести, если на то будет спрос. Предлагаем вашему вниманию перевод первой главы. Если тема будет интересна, то мы продолжим публиковать перевод каждую неделю.
Читать дальше →

Wi-Fi сети: проникновение и защита. 2) Kali. Скрытие SSID. MAC-фильтрация. WPS

Reading time20 min
Views654K


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

В этой статье мы поговорим о том, как можно обнаружить «скрытые» сети, обойти MAC-фильтрацию на точке доступа и почему же WPS (QSS в терминологии TP-LINK) — это «бэкдор в каждом доме». А перед этим разберёмся, как работает беспроводной адаптер и антенна и как Kali Linux (ex. Backtrack) поможет нам в тестах на проникновение в беспроводные сети.

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

Перед прочтением настоятельно советую ознакомиться с матчастью — она короткая, но на её основе базируются все наши дальнейшие действия и выводы.

Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
Много текста. Очень.

Что нам стоит пофиксить баг, которого «нет»

Reading time11 min
Views63K
Итак, у нас есть задача: пофиксить баг, производитель от которого открещивается, клиенты не замечают, а жить хочется. Есть камера, поток от неё на UDP просто адово ломается, поток на TCP работает, но постоянно рвутся коннекты (и при каждом обрыве пропадает 3-5 сек видео). Виновны в проблеме все (и камера и софт), но обе стороны утверждают что у них всё зашибись, то есть ситуация обычная: ты баг видишь? нет. А он есть.
Читать дальше →

OpenSSL: новая уязвимость: возможность выполнить MITM атаку (CVE-2014-0224)

Reading time3 min
Views37K

Атака OpenSSL MITM CCS injection


За несколько последних лет в разных криптографических библиотеках были обнаружены несколько серьезных уязвимостей. Хотя только некоторые из них могли быть реально массово использованы перед тем, как их подробности становились общедоступными, и были выпущены патчи с исправлениями, серьёзные уязвимости типа Heartbleed побудили разработчиков, исследователей и простых пользователей к повышенно внимательному изучению надежности этих продуктов.

Среди недавних багов исправленных в OpenSSL версии 1.0.1h главная это — возможность MITM-атаки (CVE-2014-0224) против протоколов OpenSSL и TLS.
Читать дальше →

Делаем Twitter Cards с галереями и котиками

Reading time6 min
Views34K

Речь сегодня пойдет о встраивании расширенного контента в твиты, содержащие ссылку на ваш сайт. Многие наверняка встречались с подобным в Facebook'е или ВК: вы расшариваете в соцсеть некую ссылку, а помимо нее туда автоматически подгружается, например, заголовок, описание и изображение. Вот только поддержка технологии для VK и FB сейчас не является редкостью, а Twitter Cards встречаются не так часто, особенно в рунете.
Читать дальше →

SIP через WebRTC на продакшне. Как мы к этому шли и какие проблемы решали

Reading time5 min
Views52K
Доброго времени суток всем!

Я уже писал о своем опыте работы с WebRTC тут, но учитывая то, что в последнее время всё больше статей на эту тему появляется на хабре и то, что я давно хотел написать о том, как мы добились стабильной работы SIP телефонии через WebRTC на продакшне, я решил написать через что мы прошли.

А прошли мы через многое: боль, панику, истерики, кучу матов и пожелания добра мейнтейнерам.
Сейчас же это всё в прошлом. Мы избавились от всех костылей, которые мы делали, и сделали так, чтобы операторы звонили и всё работало стабильно.
В статье, я как можно подробнее описал все проблемы, с которыми мы сталкивались, используя как можно меньше кода и конфигов.

Кому интересно, прошу под кат.
Читать дальше →

Unboxing NetApp E2700

Reading time4 min
Views18K
NetApp E2700

Мы продолжаем знакомить вас с оборудованием как оно есть: крупно, со всех сторон и без обертки.

В данной статье мы подробно рассмотрим представительницу блочных систем хранения данных NetApp E2700, которая пришла к нам неделю назад на тестирование. Основными областями применения данных систем являются: full motion видео, медиа контент, обработка сейсмических данных, видеонаблюдение, высокопроизводительные вычислительные кластера (HPC), D2D бэкап, геологоразведка и др.

Кто заинтересовался — внимание! Мы начинаем)
Читать дальше →

Micro Python — эффективная реализация Python 3 для микроконтроллеров

Reading time1 min
Views42K


Английский разработчик Дэмьен Джордж (Damien George) сегодня официально объявил о выпуске Micro Python — эффективной реализация Python 3 для встроенных систем с малым объёмом оперативной памяти. Разработка этой версии началась в декабре, после удачной кампании по сбору средств на выпуск Pyboard — контроллера, работающего на Питоне.
Читать дальше →

Как это работает: дата-центр «Берзарина»

Reading time5 min
Views16K
image

Наши клиенты (даже те из них, кто имеет доступ в серверную), не могут видеть все, что происходит в дата-центре. Многие из них лишь приблизительно знают, как именно поддерживается бесперебойная работа в режиме 24/7/365. Сегодня мы расскажем, как это делается в нашем дата-центре «Берзарина», расположенном в Москве.
Читать дальше →

VIM как IDE для разработки на Python

Reading time10 min
Views163K
image
Данная статья будет посвящена настройке vim, в которой я поделюсь своим «скромным» пониманием того, каким должен быть текстовый редактор, чтобы в нем было удобно/приятно/легко (нужное подчеркнуть) писать код также, как это сейчас возможно во всевозможных IDE типа PyCharm, SublimeText и т.п.
Весь процесс постараюсь описать как можно более подробно, чтобы вопросов по мере чтения для начинающих осваивать vim возникало как можно меньше.
Читать дальше →

Проблемы при верстке сайтов и игр. Особенности сайтов для мобильников

Reading time8 min
Views29K
Привет, Хабра!
Эта статья является продолжением прошлой статьи (JavaScript to APK. http://habrahabr.ru/company/ifree/blog/214531/). Я попробую дать несколько советов по разработке мобильных сайтов, которые сложились из моего опыта работы над сервисами и продуктами в i-Free.
image

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

  • Кнопочные, без поддержки touch-событий
  • С сенсорным экраном, с поддержкой touch-событий
  • Смартфоны


Откуда в 2014 году берутся старые кнопочные телефоны?

Наследие прошлых лет. Раньше телефоны могли быть довольно качественными и служить очень долго. Например, есть много историй о Nokia 3310, которую можно было кидать на бетон и забивать ею гвозди в прямом смысле слова. Так как эти телефоны работают, и их продали довольно в большом количестве, то до сих пор есть люди, которые ими пользуются.

Откуда в 2014 году берутся новые кнопочные телефоны?

Производство новых J2ME телефонов заполняет низший сегмент рынка. Такие телефоны имеют несколько качественных отличий:

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


Кто делает сайты для таких телефонов?

Как правило, это очень крупные компании, которые стараются сделать свои сервисы максимально доступными (например, Google, Yandex, Mail). Цена вопроса в этом случае не имеет значения. Кроме того, во всех телефонах есть стандартные закладки, в которых вшит сайт оператора, производителя или компании вендора. На таких сайтах можно купить различный контент (игры, картинки, мелодии) или оформить какие-либо услуги. Т.к. телефонов производится очень много, то у таких сайтов может быть очень большая нагрузка.
Читать дальше →

Бутлоадер с AES-128 и EAX на AVR Assembler в 1024 байта

Reading time23 min
Views80K

Или как я перестал бояться и полюбил ассемблер

Однажды летом, я устроился в родном университете программистом микроконтроллеров. В процессе общения с нашим главным инженером (здравствуйте, Алексей!), я узнал, что чипы спиливают, проекты воруют, заказчики кидают и появление китайского клона наших программаторов для автомобильной электроники — лишь вопрос времени, задавить их можно только высоким качеством. При всем этом, в паранойю впадать нельзя, пользователи вряд ли захотят работать с нашими железками в ошейниках со взрывчаткой.

Хорошая мера защиты — обновления программного обеспечения. Китайские клоны автоматически отмирают после каждой новой прошивки, а лояльные пользователи получают нашу любовь, заботу и новые возможности. Робин Гуды при таком раскладе, естественно, достанут свои логические анализаторы, HEX-редакторы и начнут ковырять процесс прошивки с целью ублажения русско-китайского сообщества.

Хоть у нас и не было проектов, которые требуют подобных мер защиты, было понятно: заняться этим надо, когда-то это пригодится. Погуглено — не найдено, придумано — сделано. В этой статье, я расскажу, как уместить полноценное шифрование в 1 килобайт и почему ассемблер — это прекрасно. Много текста, кода и небольшой сюрприз для любителей старого железа.
Читать дальше →

Подмена (встраивание) спам-ссылок на страницы сайта плагинами браузеров, cpatext, Content-Security-Policy

Reading time3 min
Views45K
В конце января в логах нашей внутренней системы анализа пользовательских кликов на сайте kidsreview.ru появились сотни переходов по странным линкам вида:

compareiseries.in/goto.php?url=aHR0cDovL24uYWN0aW9ucGF5LnJ1L2NsaWNrLzUyZDhmODY2ZmQzZjViMjYxYTAwNDFjNS82OTIzMy81MDI1OS9zdWJhY2NvdW50
Читать дальше →

На Coursera вышел курс от нобелевского лауреата с русским дубляжом

Reading time2 min
Views90K
Недавно на Coursera произошло примечательное событие — вышла дублированная версия курса «Финансовые Рынки» (Financial Markets) о самых азах финансов.

image

И примечательно оно потому как раньше дублированных курсов на платформе не существовало, а первый появился именно на русском языке. Во-вторых, сделано это было на частное пожертвование. И в-третьих, курс прочитал профессор Йельского университета, нобелевский лауреат по экономике 2013 года – Роберт Шиллер.
Читать дальше →

Что нового нас ожидает в Django 1.7

Reading time5 min
Views24K
В данном посте представлен обзор новшеств и особенностей популярного среди Python разработчиков фреймворка Django 1.7. Релиз позиционируется как сообществом, так и основными разработчиками — как наиболее значимый релиз, с момента выхода в свет Django 1.0.

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

Information

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