Pull to refresh
0
0

User

Send message

Runscope: удобный тул для тестирования API

Reading time3 min
Views32K

Back-end не всегда функционирует так идеально, как указано в API-спецификации. Например, кто-нибудь забывает внести обязательный параметр в JSON-строку выдачи или вместо «0» решает вписать null. Если такие данные проникают в мобильное приложение, последствия могут быть самые неприятные.
Сегодня я расскажу об инструменте, который используется для выявления таких случаев. Это Runscope.
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Comments8

Простое объяснение движения денег в банковской системе

Reading time10 min
Views257K
От переводчика: В последние месяцы в жизнь многих людей прочно вошли новости сферы финансов. Одна из недавних тем — возможное отключение России от системы SWIFT. Угроза выглядит очень серьезно, но что на самом деле грозит стране, если события будут развиваться по этому сценарию? Наш сегодняшний материал призван помочь разобраться с тем, как все устроено в глобальном мире финансов.

На прошлой неделе [статья опубликована в ноябре 2013] Twitter сошел с ума из-за того, что кто-то перевел почти 150 миллионов долларов за одну транзакцию в криптовалюте. Появление такого твита было в порядке вещей:



Транзакция 194 993 биткоинов стоимостью в 147 миллионов долларов порождает много тайн и спекуляций

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

С помощью этой статьи я попытаюсь изменить ситуацию и проведу простой, но, надеюсь, не слишком упрощенный, анализ в этой области.
Читать дальше →
Total votes 100: ↑91 and ↓9+82
Comments180

Основы боевой системы в играх

Reading time6 min
Views81K
Дорогие читатели, я придумал для себя интересное хобби, которое принесет ощутимую пользу не только мне, но и вам. Так как сейчас я активно занимаюсь прокачкой своего навыка в создании игр, мне приходится изучать тонны различной информации по этой теме, а много полезной информации можно найти исключительно в буржнете. Я сам не очень люблю читать информацию на не родном для меня языке, поэтому я решил убить сразу целую стаю зайцев: совершенствовать свой язык переводя статьи, совершенствовать свои навыки как геймдизайнера, приносить пользу другим делясь интересным материалом. Погнали.



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

В результате, благодаря приобретенному опыту удалось написать свод правил. Соблюдение правил поможет вам воплотить мощную боевую механику в ваших играх.
Узнать все секреты
Total votes 57: ↑43 and ↓14+29
Comments12

Пишем компонент движения для RTS в Unreal engine 4

Reading time9 min
Views58K
image

Привет, меня зовут Дмитрий, я программист. Только что закончил рефакторинг компонента движения кораблей для проекта тактической игры в реальном времени, в которой игроки могут собрать свой собственный космический флот и повести его в бой. Компонент движения переписывался уже три раза, от релиза до начала разработки альфа версии. Было собрано множество граблей, как архитектурных, так и сетевых. Постараюсь подбить весь этот опыт и рассказать вам о Navigation Volume, Movement component, AIController, Pawn.
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments25

Опыт использования Freenet

Reading time5 min
Views63K
image

Я следил за развитием проекта Freenet много лет, периодически возвращаясь к нему. В последний раз я запустил его месяц назад и после месяца использования могу сказать, что он работает гораздо быстрее, чем раньше. Сейчас я расскажу о том, как его использовать, и о том, как я обошёл кое-какие проблемы при размещении контента.

Обзор


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

Узлы сети резервируют место на диске и пользователи выбирают, какие данные хранить по ключу. Размещение данных в хранилище распределяет их по разным узлам, и обычно данные не хранятся на вашем узле. Запрос данных отправляется в сеть, и данные переходят на ваш узел. Используется система, которая позволяет восстанавливать данные. Даже если M из общего числа N сегментов данных потеряны, их всё равно можно восстановить. Данные поступают в сеть, и наименее используемые данные исчезают из неё. Данные в хранилище нельзя редактировать. Пока они находятся в хранилище, они всегда связаны с одним ключом.
Читать дальше →
Total votes 22: ↑18 and ↓4+14
Comments10

Архитектурная визуализация в Unreal Engine 4

Reading time4 min
Views119K
Работая над проектом, архитекторы и дизайнеры прибегают к такому способу подачи, как 3D визуализация. Чаще всего это статичное изображение, полученное с помощью визуализаторов vRay, MentalRay, Corona и других.

В данной статье речь пойдет о визуализации архитектурных проектов на движке Unreal Engine. Рассмотрим все плюсы и минусы, а также поделюсь своими впечатлениями и опытом на примере готового проекта:


Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments11

Очередной умный дом, в трех частях. Часть первая, железная

Reading time5 min
Views137K
Хочу рассказать и показать результаты проекта, который развивается примерно 10 лет. Развивается как хобби, поэтому бывает, что за неделю делается новое устройство, а потом за полгода – не делается ничего. Я очень не люблю словосочетание «Умный дом», поэтому дальше оно не встретится. Также тут не будет схем, примеров кода, опутанных проводами макетных плат и прочих скучных вещей. Будет много фото и рассуждений на общие темы.

image
Читать дальше →
Total votes 43: ↑43 and ↓0+43
Comments79

Инженерное устройство дата-центра уровня TIER III, стоящего на четырех магистральных линиях

Reading time11 min
Views50K
Мы уже рассказали о том, как проектировали и стоили наш TIER III ЦОД. Пора уже показать, что получилось.



Сначала на месте дата-центра было чистое поле, затем вырыли здоровенный 100–метровый котлован. Потом дата-центр стал похож на бетонную площадку, а еще позже – из металлоконструкций построили шестиугольное здание, внутри которого расположены шесть модулей ЦОД (на схеме выделены зеленым), «командный центр» для мониторинга магистральной сети по всей стране и офис (подробнее о строительстве можно почитать в публикации «ЦОД нашей мечты в Ярославле: фото строительства и запуска»).



Осторожно, трафик и гикпорн из ярославского дата-центра: 91 фотография только-только запущенного первого модуля, в главном здании кое-где ещё идут финальные работы, но капитального строительства больше не будет.
Читать дальше →
Total votes 69: ↑68 and ↓1+67
Comments33

Прототип. От идеи до опытной партии. Литье в силикон

Reading time2 min
Views182K
В прошлой статье я описал мой путь по созданию опытной партии изделия, в ней я литье в силикон отдал на аутсорс. Пока я ждал выполнения моего заказа, потихоньку сам начал осваивать это ремесло. Статья будет полезна тем, у кого допустим есть плата какого-нибудь девайса, но нету красивого корпуса, 3д-печать не подходит по характеристикам, а делать сразу промышленную пресс-форму очень дорого.


Читать дальше →
Total votes 168: ↑166 and ↓2+164
Comments75

Туториал по Coub API

Reading time10 min
Views23K
На днях мы выпустили Coub API. Теперь можно делать приложения, смотреть ленту, лайкать, рекобить, то есть практически все, что можно сделать на сайте, можно делать через API. Но самое главное — теперь можно из сторонних приложений через API создавать кобы.

В этом туториале я покажу, как можно сделать простейший клиент коба на Ruby on Rails. Приложение позволяет залогиниться через коб и сгенерить такой коб с любым текстом:



Рабочая версия этого приложения лежит по адресу fantozzi.dev2.workisfun.ru, код приложения из этого туториала можно посмотреть на Гитхабе: github.com/igorgladkoborodov/memegenerator
Подробности
Total votes 60: ↑54 and ↓6+48
Comments23

Язык R в помощь хабра-статисту

Reading time5 min
Views105K
На написание данной статьи меня сподвиг следующий топик: В поисках идеального поста, или загадки хабра. Дело в том, что после ознакомления с языком R я крайне искоса смотрю на любые попытки, что-то посчитать в экселе. Но надо признать, что и с R я познакомился лишь неделю назад.

Цель: Собрать средствами языка R данные с любимого HabraHabr'а и провести, собственно то, для чего и был создан язык R, а именно: статистический анализ.

Итак, прочтя этот топик вы узнаете:
  • Как можно использовать R для извлечения данных из Web ресурсов
  • Как преобразовывать данные для последующего анализа
  • Какие ресурсы крайне рекомендуются к прочтению всем желающим познакомиться с R поближе


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

Приступим!
Total votes 59: ↑54 and ↓5+49
Comments22

Облако с нуля с использованием XenServer

Reading time10 min
Views65K
Недавно мы создали небольшое облако для решения наших внутренних задач и хотим поделиться этим опытом с читателями Хабра. Здесь мы подробно опишем, какое оборудование было выбрано для развёртывания облака и как создать инфраструктуру облачной системы, опираясь на XenServer от компании Citrix. В этом продукте Citrix решила отказаться от стандартного подхода, когда у облака есть некоторый центральный управляющий узел, они разбили его на несколько составляющих и предложили их тоже поместить в облако. Кому интересно, как это всё работает — добро пожаловать под кат!



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

Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments35

Устанавливаем любой Linux дистрибутив на Digital Ocean

Reading time3 min
Views57K


Digital Ocean — лоукостер на рынке облачных VPS провайдеров. Пользуется технологией виртуализации KVM. Хорош по соотношению цена/качество и бла-бла-бла, вы сами всё это знаете.

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

Поддержку загрузки пользовательских ядер они обещают сделать со дня на день… уже чуть больше года.

Мы ждать и клянчить не будем.
Читать дальше →
Total votes 80: ↑76 and ↓4+72
Comments18

Разработка Air Native Extensions (ANE) для OS X

Reading time13 min
Views6.6K
Привет всем хаброюзерам. Хотел бы поделиться опытом создания нативных расширений для OS X.

AIR — просто потрясающая в своей кроссплатформенности среда. Пока дело не доходит до использования каких-то уникальных для платформы фишек. Именно с этой проблемой я столкнулся, когда передо мной была поставлена задача превратить браузерную flash-игру в десктопную для OS X. Всё это с использованием среды AIR мной было сделано за несколько часов и я не буду описывать этот процесс, так как в гугле на эту тему полно информации. Самое интересное началось тогда, когда появилась необходимость подключить к игре различные сервисы Apple, такие как GameCenter, In-App-Purchase и т.д. И здесь я столкнулся с трудностями. Дело в том, что есть куча готовых ANE, в том числе и бесплатных. Но вся беда в том, что все эти решения работают только для iOS. Для OS X же нет ни то, что готовых библиотек, но даже информацию по созданию этих библиотек приходилось собирать по крупицам с пары-тройки интернет ресурсов многолетней давности, постоянно натыкаясь на какие-то подводные камни или даже айсберги.

Сейчас же я хочу собрать все накопленные знания и опыт в одном месте и поделиться с вами, чтобы хоть немного уменьшить ту боль, через которую вам придётся пройти, если всё таки вы тоже решитесь на создание нативных библиотек для мака. Хотя после четырёх разработанных расширений для OS X они не кажутся такими уж сложными и мудрёными.
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments2

Сколько дизайнов интерфейсов на самом деле нужно рисовать для iPhone 4, 5, 6 и 6+?

Reading time3 min
Views34K
Выход смартфонов iPhone 6 и 6+ внесло некоторую дезориентированность в ряды дизайнеров и программистов, ведь раньше можно было просто нарисовать один макет под iPhone 5 и пропорционально уменьшить в 2 раза при разметке под предыдущие устройства. Но теперь ситуация несколько изменилась: первопроходцы-программисты сетуют, что макет, красиво нарисованный и сверстанный под iPhone 6, выглядит абсолютно непривлекательно, нечитаемо и нетапабельно на iPhone 5, ведь его как раньше просто пропорционально уменьшили. IOS HIG по этому поводу конкретных советов не содержит, поэтому для дизайнеров сейчас особо остро стоит вопрос о том, сколько же на самом деле дизайнов интерфейсов нужно рисовать, чтобы охватить всю текущую линейку iPhone-устройств? Давайте разбираться.

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

DIY-печенье

Reading time3 min
Views31K


Возможно вы читали пост «Продленки» про знакомство ребят с профессией программиста — Как мы объясняли детям, кто такой программист (напомню, «Продленка» делает интересные бесплатные мероприятия для детей с лучшими российскими и зарубежными специалистами. И свободно транслируют по всей стране).

Следующей лекцией (22 февраля) было про кондитеров. Пришла идея — а можно ли сделать «связку» между программистами (IT-специальностями) и кондитерским делом? Пообщался с организаторами — оказалось, пересечений достаточно: есть 3д-принтеры печатающие сахаром, можно 3д моделировать формочки для заливки шоколадом, есть дельта 3д принтеры для создания выпечки, есть шоколадные 3д принтеры.

Но остановились мы на самом простом — это создание 3д формочек для печенья.

Необходимо было:
  • создать 3д модель формы,
  • напечатать на 3д принтере,
  • сделать печенье,
  • угостить ребят на мероприятии

До начала мероприятия оставались считанные дни, о том как всё было — от идеи до воплощения и будет рассказ.
Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments14

Под крылом самолета о чем-то поет

Reading time6 min
Views14K
image

Если внимательно посмотреть на изображение слева, то легко определить местоположение автора.
Достаточно взять циркуль и атлас России.
Ножку циркуля устанавливаете в Сасово и проводите окружность радиусом 103 км.
Затем чертите другую окружность (центр — в Сормово) радиусом 141 км.
В точке пересечения буду я. Ахтунг! Файер!

Расскажу, как я написал приложение-высотомер, интересное для авиа-путешественников. Никакой рекламы. Никаких денег. Чистый код.
Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments11

Используем время простоя веб-приложения для фоновых задач

Reading time4 min
Views14K
Я люблю, когда мои приложения бегут со скоростью 60 fps, даже на мобильных устройствах. А еще я люблю сохранять состояние моего приложения, например, открытые окошки или введенный текст в localstorage и метаданных пользователя (если он зарегистрирован), чтобы, закрыв его, работу с ним можно было бы продолжить позже с того же места, в том числе и на другом устройстве.

Это все прекрасно, вот только сегодня я столкнулся с одной проблемой. Дело в том, что есть у меня одно боковое меню, offcanvas, и его состояние (открыто/закрыто) я тоже бы хотел сохранить в браузере и учетной записи пользователя. Вот только запись в localstorage и AJAX реквест на обновление в БД асинхронны и они все время норовят запускаться прямо во время сложной анимации, крадя у меня пару-другую фреймов, что особенно заметно на мобильных устройствах. Очевидно, мне бы хотелось, чтобы данные сохранялись после того, как анимация завершится, а не в критичный момент моего приложения, но как?
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments14

Как создавать и зарабатывать на SaaS | Часть 14 | Кувырки с ценами

Reading time8 min
Views8.2K
И да, продолжаю свою серию исключительно практических постов о SaaS. Пока инженеры команды заканчивают сборку и тестирование довольно нишевого cтартапа DentalCloud позволю себе в рамках NPD (new product development) порассуждать о том, как мы подошли к вопросам а) ценообразования б) методах формирования тарифных планов для сервиса. DC мы анонсируем позже, ну и надо ли просто анонсировать его на уважаемой аудитории Хабрахабр, даже не знаю.

image
Читать дальше →
Total votes 15: ↑12 and ↓3+9
Comments0

Оптимизация PhonoPaper с использованием инструментов Intel

Reading time4 min
Views11K
Некоторое время назад я уже писал про одну из своих разработок — технологию PhonoPaper и одноименную программу, позволяющую играть звук, напечатанный в виде спектрограммы на бумаге или любой другой поверхности. Процесс выглядит примерно так: 10-секунд звука (голос, кусок песни) преобразуются в картинку специального формата. Картинка распечатывается и, к примеру, клеится на стену. Прохожий, заметив код, запускает PhonoPaper-сканер на телефоне, наводит камерой на картинку и в тот же миг начинает слышать звук, закодированный в ней. При этом пользователь полностью вовлечен в процесс — от движения его руки зависит направление и скорость воспроизведения (хотя имеется и автоматический режим). Вся необходимая информация хранится в изображении, выход в Интернет не требуется.



PhonoPaper вызвал живой интерес в среде музыкантов, художников и просто любителей необычных экспериментов. А в 3 квартале прошлого года приложение заняло первое место в проекте «Рейтинг Intel для разработчиков» на сайте Apps4All.ru. В связи с чем Intel любезно предоставила мне планшет на базе Android x86 для дальнейшего улучшения и оптимизации PhonoPaper. Я поспешил этим воспользоваться, а о проделанной работе и результатах расскажу далее.
Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments9
1
23 ...

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Registered
Activity