Search
Write a publication
Pull to refresh
63
0
Андрей @Smi1e

User

Send message

Исследование качества звука на SoundCloud

Reading time5 min
Views42K

image


В 2014-м я провёл подробное исследование качества звука на YouTube (материал ещё весьма актуален, серьёзных изменений на YouTube за это время не произошло), незадолго до этого проверял, насколько качественно музыка воспроизводится в соцсети ВКонтакте. В этой же статье я исследую качество звука на сервисе, предназначенном сугубо для музыки — SoundCloud.

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

10 известных логотипов, нарисованных по памяти

Reading time8 min
Views57K
Насколько точно вы сможете вспомнить логотипы известных брендов?


Ну почти русалка

Быть узнаваемым и запоминающимся — вот важные цели при создании логотипа. Самые известные в мире логотипы от Apple до McDonalds тщательно разрабатывались, чтобы при одном взгляде ассоциироваться со своим брендом.
Читать дальше →

Счетчик копий программы или сбор статистики об использовании

Reading time19 min
Views14K
Некоторое время назад выполнял я заказ для одной конторы. Суть проекта сейчас не важна (это был некий довесок к их корпоративной системе, который они ставили на компы своим клиентам), одним из требований было что бы приложение отправляло отчет об своем использовании. А попросту говоря, ребята хотели знать насколько их программа востребована среди клиентов. И вот на этой волне, возник у меня вопрос — а действительно, написал ты программу, отдал |продал в добрые руки или просто выложил ее в интернет. И что дальше? Сколько реальных пользователей ее увидели?
Читать дальше →

Исследование фотограмметрии

Reading time8 min
Views38K
Друзья, хочу поделиться опытом, который приобрел в процессе практического изучения дисциплины, как фотограмметрия. Буду рад, если кто-нибудь из вас выскажет свое мнение, поправит меня или укажет на ошибки, которые допустил. Возможно эта статья по изучению мною фотограмметрии поможет и будет полезна Вам. Моя работа описана на примере фотосъемки природы в городском парке, в Центральной полосе России, в период август–сентябрь 2017 г.
Читать дальше →

Как работает буфер обмена в Windows

Reading time12 min
Views50K
Недавно у меня появилась возможность выполнить отладку буфера обмена в Windows, и я решил, что хорошо бы поделиться информацией, которую удалось узнать. Буфер обмена — это тот компонент Windows, который многие из нас используют десятки (сотни?) раз в день, особо не размышляя об этом. Прежде чем взяться за это дело, я даже никогда не задумывался, как всё устроено. Как выяснилось, там столько интересного, что вы даже не можете себе представить. Сначала опишу, как приложения хранят разные типы данных в буфере обмена и как извлекают их оттуда, а затем — как приложения могут «прицепиться» к буферу и отслеживать изменения в нём. В обоих случае вы увидите отладочные записи, которые показывают, как получить доступ к данным из отладчика.

Начнём с обсуждения форматов буфера обмена. Такие форматы используются для описания, какие типы данные можно поместить в буфер. Там есть некоторое количество предопределённых стандартных форматов, которые может использовать приложение, вроде битового массива, текста ANSI, текста в Юникоде и TIFF. Windows также позволяет приложению установить собственный формат. Например, текстовый процессор может зарегистрировать формат, включающий в себя текст, форматирование и картинки. Конечно, это ведёт к определённой проблеме: что произойдёт, если вы скопируете данные из текстового редактора и вставите их в «Блокнот», который не понимает всего этого форматирования и не отображает картинки?
Читать дальше →

Введение в реверс инжиниринг с Radare2

Reading time6 min
Views41K

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

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

Реверс-инжиниринг первых умных часов Seiko UC-2000

Reading time32 min
Views32K


Где-то в конце 1983 — начале 84 года, японская компания Seiko начала продавать первые в истории компьютеризированные часы — Seiko Data-2000 и Seiko UC-2000. Data-2000 имели возможность хранить 2КБ заметок, их нужно было вводить с помощью специальной компактной клавиатуры, которая шла в комплекте. UC-2000, по сути, те же Data-2000 с корпусом другого цвета, но они уже позиционировались как часть Наручной Информационной Системы, которая, среди прочего, включала терминал UC-2200, представляющий из себя компьютер с Z80-совместимым процессором, интерпретатором Бэйсика и термопринтером, но без экрана, в качестве которого использовались часы (как это не странно). Среди прочего, терминал давал возможность загружать на часы приложения со специальных картриджей. Подробнее о линейке ранних умных часов Seiko можно почитать, например, в этой статье. В этом же посте я расскажу, как написал (возможно) первую, за более чем 33 года, программу для этих часов.

Как мы торговали играми из киосков с газетами

Reading time7 min
Views35K


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

Что меня куда больше удивляет — мы узнали, сколько людей покупают газеты. Это просто чума! Двадцать первый век на дворе, космические корабли бороздят просторы Вселенной, Фейсбук по 15 лайкам знает, что мне понравится, а что нет — а люди покупают и читают бумажные газеты. С завидным постоянством.

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

[Перевод] Круглее круга: оптические эффекты при проектировании интерфейсов

Reading time9 min
Views42K
Какой «круг»воспринимается как самый «круглый»?

image

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

Как создать визуально пропорциональные иконки, правильно расположить объекты разных форм и выполнить идеальное скругление углов. В посте представлено более 50 изображений.
Читать дальше →

Как создавали систему чувств ИИ в Thief: The Dark Project

Reading time11 min
Views15K
image

«Чувства» в разработке игр — это полезная метафора для понимания, создания и обсуждения той части ИИ, которая занимается сбором информации о важных объектах симулируемой среды игры. Неигровыми персонажами в реалистичном трёхмерном пространстве обычно бывают люди, животные или другие создания со зрением и слухом, поэтому такая метафора очень удобна.

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

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

В этой статье описывается подход к дизайну и реализации высокоточной сенсорной системы для ИИ в игре от первого лица с упором на стелс. Описанные здесь техники взяты из опыта разработки ИИ для Thief: The Dark Project, а также из ознакомления с кодом Half-Life. В первой части статьи изложены базовые концепции чувств ИИ на мотивирующем примере Half-Life. Во второй части излагаются более строгие требования к сенсорным системам в дизайне стелс-игр и описывается система, созданная для Thief.
Читать дальше →

GeekUniversity открывает набор на факультет разработки игр

Reading time1 min
Views8.8K


В нашем онлайн-университете для программистов открылся новый факультет разработки игр. За год обучения студенты научатся писать игры на C#, достигнув уровня middle.

GeekUniversity — совместный образовательный проект Mail.Ru Group и IT-портала GeekBrains. Программу обучения и спецкурсы для факультета разрабатывают Avito, Альфа-банк, МТС, Тинькофф, DeliveryClub.
Читать дальше →

По следам кибердетектива

Reading time17 min
Views25K
image

Всем хабровчанам привет!

Мне довелось поучаствовать в конкурсе, довольно редком в своем роде, под названием Cyber Detective. Конкурс проводился при конференции HackIT-2017, в которой также принимал активное участие. Задания основываются на поиске открытой информации в сети. Хочу поделиться опытом, райтапами и впечатлениями.
Читать дальше →

10 лет с Колибри: как это было

Reading time8 min
Views32K
Обзор в честь моего 10-летия участия в проекте создания операционной системы Kolibri.

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

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

По тысяче рублей за идею: платим за предложения по автоматизации кошельков QIWI

Reading time4 min
Views7.8K


Современные онлайн-кошельки — как интернет-клиенты классических банков, так и сервисы электронных денег — стараются максимально кастомизироваться, пытаясь вести учёт ваших трат или автоматизировать оплаты. Но что, если стандартных «создать регулярный платёж» вам недостаточно? Что, если вам нужно «оплачивать телефон каждый раз, когда у меня баланс ниже определённой суммы»? Или «сделать покупку, когда цена/курс упадут ниже порога»? Очевидно, что такие сложные сценарии требуют как доступа к параметрам сторонних сервисов, так и доступ к управлению своими платёжными инструментов.

Такой, как доступ, который даёт API кошелька QIWI. Чтобы как можно больше разработчиков узнал и опробовало возможности автоматизации своих кошельков через наше API, QIWI проводит конкурс приложений для QIWI Кошелька, который завершится в Москве 23 сентября финальным этапом. До 15 сентября будут отобраны 15 команд, которые померятся качеством и оригинальностью своих вариантов автоматизации QIWI-кошелька ради главных призов: поездки на Singapore FinTech Festival и деловой завтрак с генеральным директором QIWI Сергеем Солониным, входящего в список «Форбс» 200 самых богатых бизнесменов России.

Но даже если вы не разработчик, то помочь участникам хакатона и получить за это свой приз можно будет, дочитав этот пост до конца — мы расскажем, как принять участие в конкурсе самых перспективных идей приложений для QIWI-кошелька.
Читать дальше →

Бот в муравейнике

Reading time27 min
Views19K

Еще один игровой бот для «Космических рейнджеров HD» (издатель ) наводит на интересные мысли о путях развития искусственного интеллекта (ИИ).
Читать дальше →

Попиксельная заливка экрана в Wolfenstein 3D

Reading time4 min
Views42K
В коде id Software порой встречаются бесподобные жемчужины. Самая знаменитая — это, конечно, 0x5f3759df, удостоившаяся даже комикса на xkcd. Здесь же речь пойдёт о заливке экрана: пиксели закрашиваются по одному в случайном порядке, без повторов. Как это сделано?

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

Цвет в дизайне интерфейсов: инструкция по применению

Reading time7 min
Views57K


Как создать чистый интерфейс, используя всего лишь один цвет? Вы узнаете из этой статьи. Перевод «Я люблю ИП».


Будучи по большому счёту дизайнером-самоучкой, мне всегда было интересно, почему так много статей и сайтов говорят о теории цвета и цветовых палитрах. По моему опыту, вероятность сделать красивый дизайн, использую «сплит-комплиментарную палитру», стремится к нулю.


У меня есть другое мнение на этот счёт: теория цвета бесполезна.


Но если теория цвета не является прочной основой для выбора цвета в дизайне интерфейсов, то что тогда является?


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


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


Я знаю, что это звучит немного странно. Но послушайте меня, я дам вам практическую инструкцию для адаптации цвета в вашем дизайне.


Вы готовы? Тогда поехали.

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

4 способа выделиться на рынке кофейных компаний

Reading time3 min
Views15K
В этой статье мы расскажем о шаблонах в дизайне компаний, связанных с определенной сферой деятельности. На примере кофейных брендов мы выбрали 4 способа выделиться на фоне конкурентов, привлечь внимание, запомниться покупателю, но при этом не выглядеть странно. Цель нашей статьи —помочь создать свой оригинальный фирменный стиль.

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

image
Источник


1. Яркое цветовое решение


Обычно кофейные компании используют природные, пищевые цвета. На логотипах и фирменных носителях почти всех брендов в этой сфере — одни и те же оттенки зеленого, желтого и коричневого. Коричневый цвет ассоциируются с самим кофе, зеленый — показывает, что продукт близок к природе, белый — дает ощущение чистоты. Самые известные примеры — Coffeeshop, Кофе Хауз, Шоколадница.

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

image
Источник
Читать дальше →

Планетарный ландшафт

Reading time51 min
Views22K
Трудно поспорить, что ландшафт — неотъемлемая часть большинства компьютерных игр на открытых пространствах. Традиционный метод реализации изменения рельефа окружающей игрока поверхности следующий — берем сетку (Mesh), представляющую из себя плоскость и для каждого примитива в этой сетке производим смещение по нормали к этой плоскости на значение, конкретное для данного примитива. Говоря простыми словами, у нас есть одноканальная текстура размером 256 на 256 пикселей и сетка плоскости. Для каждого примитива по его координатам на плоскости берем значение из текстуры. Теперь просто смещаем по нормали к плоскости координаты примитива на полученное значение(рис.1)


Рис.1 карта высот + плоскость = ландшафт

Почему это работает? Если представить, что игрок находится на поверхности сферы, и радиус этой сферы чрезвычайно велик по отношению к размеру игрока, то искривлением поверхности можно пренебречь и использовать плоскость. Но что если не пренебрегать тем фактом, что мы находимся на сфере? Своим опытом построения такого рода ландшафтов я хочу поделиться с читателем в данной статье.
Читать дальше →

Information

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