Search
Write a publication
Pull to refresh
16
0
Алексей @norlin

software engineer | game developer

Send message

Gource — визуализируем историю работы над проектом

Reading time1 min
Views23K
Спешу рассказать хабрасообществу о, относительно новом, дьявольски завораживающем проекте Gource которое еще не упоминалось. Это приложение позволяет визуализировать историю изменений в системе контроля версии. Отрисовывает невероятно красиво при помощи OpenGL.


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

Как мы строили свою WiFi-сеть

Reading time15 min
Views128K
Я хочу рассказать о том, как мы строили свой собственный, хороший WLAN — Wireless LAN.

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

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

7 способов улучшения процесса разработки адаптивного дизайна

Reading time10 min
Views45K
image

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

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

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

Получение 3D объекта по 1 фото

Reading time1 min
Views74K


На выставке SIGGRAPH ASIA 2013 (англ.), посвященной компьютерной графике и интерактивным технологиям, представлена разработка 3–Sweep, позволяющая лишь по одной фотографии получить трехмерный объект с текстурой. Хотя речь идет о объектах являющихся наборами примитивов и их растяжений по некоторому пути, но скорость и простота работы впечатляет! Также оценивается и дополняется то, что могло бы быть за объектом, после его вырезания из фотографии, хотя мы уже видели похожий инструмент от Adobe.
Читать дальше →

Обзор Leap Motion

Reading time3 min
Views50K


Приветствую вас, пользователи Habrahabr! Многие из нас на протяжении 10 лет щелкали мышкой, после этого 5 лет нажимали на тачпад, а совсем недавно начали водить пальцем по экрану.

Скоро настанет время, когда мы будем махать руками перед экраном – бесконтактное управление. И первопроходец в этом тернистом пути – Leap Motion, американская разработка, продажи которой начались уже по всему миру (серые, конечно). Предлагаю вам взглянуть на обзор этого устройства и порассуждать на тему будущего…
Читать дальше →

Знай сложности алгоритмов

Reading time2 min
Views1.1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →

Как HTTPS обеспечивает безопасность соединения: что должен знать каждый Web-разработчик

Reading time9 min
Views375K


Как же все-таки работает HTTPS? Это вопрос, над которым я бился несколько дней в своем рабочем проекте.

Будучи Web-разработчиком, я понимал, что использование HTTPS для защиты пользовательских данных – это очень и очень хорошая идея, но у меня никогда не было кристального понимания, как HTTPS на самом деле устроен.

Как данные защищаются? Как клиент и сервер могут установить безопасное соединение, если кто-то уже прослушивает их канал? Что такое сертификат безопасности и почему я должен кому-то платить, чтобы получить его?
Читать дальше →

Визуализация графов. Метод связывания ребер

Reading time7 min
Views58K
Иногда полезно представить граф в графической форме, так чтобы была видна структура. Можно привести десятки примеров, где это может пригодиться: визуализация иерархии классов и пакетов исходного кода какой-нибудь программы, визуализация социального графа (тот же Twitter или Facebook) или графа цитирования (какие публикации на кого ссылаются) и т.д. Но вот незадача: количество ребер в графе зачастую настолько велико, что нарисованный граф просто невозможно разобрать. Взгляните на эту картинку:



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

Karma — тестируем javascript в консоли

Reading time3 min
Views54K
Здравствуйте. Признаюсь честно, я пишу тесты редко. Т.е хотел бы чаще, но все как-то не получается. Вроде и руководство в принципе не против даже, но все равно находятся задачи посрочнее и поважнее. Тем не менее на днях заглянув в redmine обнаружил что задач практически нет (точнее они были, но требовали сперва дождаться бэкэнда).
Что ж, самое время вспомнить про тесты (конечно нужно было раньше о них думать, но лучше поздно чем никогда).
Вообще я до этого уже пробовал писать тесты, в том числе и на бэкэнде, а конкретно django. Я еще тогда подумал что было бы здорово запускать тесты из консоли а не в окне браузера. Ну а поскольку с недавнего времени я активно слежу за развитием angular, то почему бы не посмотреть как это сделано у них. Тем более как-то краем глаза я зацепил момент, что там тесты как раз запускаются в консоли. Плюс к тому же с нуля разбираться в премудростях тестирования не хотелось и я решил взять какой нибудь готовый проект с тестами, посмотреть как оно сделано, и погонять собственно тесты на нем. Мой выбор пал на angular-ui, а точнее на один из его модулей ui-utils.

Скачиваем, заходим в корень видим папку test а в ней файл karma.conf.js
Да и в самом ридми написано, что тесты запускаются так karma start —browsers ….
Гуглим karmajs и находим то что нам нужно karma-runner.github.io/0.8/index.html
Утилита для тестирования. Итак что она может?
  • Запускать тесты из консоли
  • Автоматически прогонять все тесты при каждом сохранении!!!
  • Возможность писать тесты на множестве фреймворков, таких как jasmine, qunit и др.
  • Прогонять тесты сразу на нескольких браузерах. (в том числе виртуальных, например fantomjs).


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

Haxe + OpenFL: даже моя бабушка сможет сделать игру под iOS

Reading time3 min
Views54K


Привет, %USERNAME%! решил рассказать тебе, как, приложив минимальные усилия, начать разрабатывать на Haxe игры под iOS (на самом деле и не только, но я решил ограничить данную статью именно этой платформой).

Для этого нам понадобятся:
  1. бабушка Руки. Желательно прямые. Ещё желательней из плеч;
  2. Mac OS X;
  3. XCode;
  4. Идея для игры.


Приглашаю всех под кат, даже если чего-либо из списка у Вас нет в наличии.
Читать дальше →

Не повторяйте моих ошибок на собеседовании

Reading time5 min
Views357K
image
Я — разработчик с чуть более чем 10 годами опыта разработки и опытом прохождения нескольких раундов собеседований каждый год-два.
Пост написан под впечатлением двух предыдущих постов на смежную тему — Как я искал сотрудников или Как не надо проходить собеседования и Как я искал работу или Как не надо проводить собеседования. И хотя в этих постах освещены наиболее насущные проблемы соискателя и работодателя, рискну высказать свое мнение, которое основано на лично набитых шишках и помогает взглянуть на проблемы под другим углом.

Также рискну обрисовать пути решения проблем, состоящие в том, чтобы поменять то, что можно поменять (в основном — себя), а не то, чего изменить нельзя (скажем, рынок труда).

Ошибка №1
Соискатель получает столько приглашений на собеседование, что не в состоянии их обработать.
Логичный вывод соискателя: «на рынке острый дефицит кадров, так что могу отсеивать компании как хочу, отфутболив тех, кто заикнется о коде на бумажке, сортировках или гномиках». Возможна и менее скромная вариация того же вывода: «раз меня все хотят, значит, я классный профессионал, могу всем диктовать свои условия». Звучит, вроде, логично, но абсолютно бесполезно.

Я предлагаю взглянуть на корень ошибки (да-да, это ошибка). Если соискатель получает слишком много приглашений — значит, он неправильно составил резюме. Ведь именно резюме послужило причиной лавинообразного интереса.
Читать дальше →

Hyperboria: Интернет 2.0

Reading time3 min
Views118K


Hyperboria — это Open Source реализация проекта Mesh сетей, аналог всем известного и желанного проекта Netsukuku, который, к сожалению, умер.

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

Hyperboria: Маршрутизация

Reading time3 min
Views33K

Продолжая цикл статей об Hyperboria, в этой статье будут рассмотрены следующие аспекты:
1) Количество IP адресов в Hyperboria, как они генерируются.
2) Коллизии и как с ними бороться.
3) Почему используется служебный (приватный) диапазон IPv6 адресов.
4) Роутеры и Hyperboria.
5) Маршруты и DHT.
6) Защищенность сети.
Читать дальше →

Эдвард Сноуден: осведомитель, который выдал секреты АНБ

Reading time3 min
Views164K


Несколько часов назад газета The Guardian сообщила имя человека, который передал в редакцию секретные документы Агентства национальной безопасности США, включая презентацию проекта PRISM и запрос на информацию обо всех абонентах сотовой связи Verizon. Крупнейшую утечку в истории АНБ организовал 29-летний компьютерщик, специалист по информационной безопасности Эдвард Сноуден (Edward Snowden). Теперь он сам попросил раскрыть свою личность — и объясняет мотивы этого поступка.

Эдвард Сноуден не боится мести со стороны американского правительства, и для него раскрытие информации было делом принципа.
Читать дальше →

The Guardian опубликовало очередной слайд из секретной презентации о PRISM

Reading time1 min
Views28K


На Хабре ранее уже появилось несколько статей и заметок о секретной правительственной программе по сбору данных пользователей/клиентов технологических компаний. В Сети публикуется информация разного рода — сами технологические компании отрицают участие в подобного рода программах, но появляются и материалы, которые подтверждают возможность сбора пользовательских данных правительством США. На днях известное издание "The Guardian" опубликовало очередной слайд из 41-страничной презентации АНБ/NSA (Агентство [Управление] национальной безопасности США) о PRISM и родственных программах. Оказалось, что PRISM — это еще не все.

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

Google и Facebook не давали разведке прямого доступа к серверам, но создавали для неё «защищённые порталы»

Reading time2 min
Views25K
image

Девять компаний, обвинённых вчера в участии в разведывательной программе по сбору данных PRISM, опровергли обвинения, заявив, что не предоставляли «прямого доступа» к своим серверам. Однако по словам The New York Times, всё дело в формулировках.

Как пишет The Verge с ссылкой на The Times, на самом деле правительство обратилось к таким компаниям, как Google, Apple, Microsoft и Facebook, с вопросом о разработке цифровых защищённых порталов, в которые компании могли бы передавать данные и куда позже могло бы получить доступ правительство.

По данным источников Times, большая часть упоминавшихся компаний сначала сопротивлялись реализации такого сервиса, но в итоге многие из них согласились на участие в той или иной степени (Twitter, как сообщают, отказался от участия). Причём и Google, и Facebook принимали участие в обсуждении планов по разработке отдельных «защищённых порталов» — и Facebook якобы уже создал такую ​​систему, несмотря на сегодняшний возмущённый пост Марка Цукерберга.
Читать дальше →

Ларри Пейдж о программе PRISM: «What the ...?»

Reading time3 min
Views73K

Штаб-квартира АНБ

Как известно, 6 июня газета The Washington Post опубликовала слайды из 41-страничной презентации PowerPoint, в которой речь идёт о секретной программе АНБ по наблюдению за гражданским населением. Якобы, в рамках программы PRISM девять интернет-компаний предоставляли АНБ прямой доступ к своим серверам для получения информации о пользователях: Microsoft, Yahoo, Google, Facebook, PalTalk, YouTube, Skype, AOL и Apple.
Читать дальше →

Инспектор UIKit в реальном времени (Reveal App)

Reading time2 min
Views11K


Программу сравнивают с Web Inspector для WebKit, если это сравнение вам о чём-нибудь говорит. Если без сравнения, то это инструмент, который позволяет вживую исследовать всю иерархию объектов UIKit в вашем приложении и менять их аттрибуты.
Читать дальше →

Практика удаленной работы: взгляд изнутри

Reading time6 min
Views39K
Посмотрите на результаты поиска:

image

Интересно, поисковая выдача по картинкам действительно отражает мнение большинства людей об удаленной работе или это прочно обосновавшийся в Интернете стереотип? Или может это только я работаю 8 часов в день пять дней в неделю, правда на удалении более чем в 1000 км от своего места работы?

Не хочу развенчивать ничьи мечты и не стремлюсь переломить стереотипы. Просто хочу немного рассказать о практике удаленной работы со стороны работника.
Читать дальше →

24 совета javascript-разработчику

Reading time9 min
Views86K
От переводчика: Не смотря на то что оригинал данной статьи датирован январем 2009 года, она не потеряла актуальности и теперь. Я надеюсь что даже те, кто используют JavaScript не первый год, почерпнут для себя что-то полезное.

1. Используйте === вместо ==


В JavaScript существует два разных типа операций сравния: === / !== и == / !=. Считается хорошим тоном всегда использовать первую пару для сравнения.
“Если два операнда одного типа и значения, то === вернет true, а !== false”
JavaScript: The Good Parts
Читать дальше →

Information

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