Pull to refresh
46
0.8
Send message

Продвижение инди-игры на Steam Greenlight

Reading time11 min
Views97K
Всем, привет! Наша команда сейчас проходит важный этап становления любого разработчика игр — первый запуск игры на Steam Greenlight. Пока я готовил материал для этой статьи, наша игра вошла в ТОП-100 проектов на Greenlight, набрала почти 2000 голосов «ЗА» и через 12 дней получила зелёный свет.

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

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

Исследование защиты PVS-Studio

Reading time4 min
Views55K
PVS-Studio

Приветствую! Это мой первый пост на Хабре в принципе, но не первая статья о взломе ПО вообще, поэтому навык писать все с начала и по шагам, для начинающих крякеров, у меня есть. В данной статье я расскажу о том, как был отучен от триальности PVS-Studio.
Читать дальше →

Что я рассказал бы себе о стартапах, если бы мог вернуться на 5 лет назад

Reading time5 min
Views28K

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

1. Ничего не получится, если пытаться делать слишком много и сделать это слишком поздно. Старательно избегай этого.

2. Над этой же идеей прямо сейчас кто-то уже работает. И, в общем-то, это не так плохо.

3. Никогда не подписывай NDA, пока не услышишь о чём вообще речь.

4. Нравится тебе это или нет, но большинство социальных связей в Лондоне основаны на выпивке. Смирись и прими, сумев избежать постоянного похмелья.

5. Люди, которые действительно чего-то добились — это не те, кто постоянно бухает.

6. Линейный рост может быть хуже, чем вообще никакого роста.

7. Большинство людей, которые говорят о скором провале, этим вообще не занимаются.

8. Легко обманывать себя, будто ты «заботишься об интересах пользователей», хотя на самом деле ты пытаешься найти способ заставить их согласиться с тем, над чем ты сам хочешь работать.
Читать дальше →

Когнитивное сопротивление правил и инструкций

Reading time8 min
Views48K


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

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

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

Задача о 64 монетах, двух заключённых и одной шахматной доске

Reading time6 min
Views154K


Примечание переводчика: я заменил оригинальные обозначения сторон монеты head/tail на аверс/реверс, чтобы не вносить путаницу русскоязычными орёл/решка. На иллюстрации выше слева аверс (head), справа реверс (tail).

Спасение невозможно?


Это одна из тех типичных загадок о заключённых, в которых вы приговорены к смерти и можете спастись, только если докажете свои умственные способности тюремщику. Вы и ваш друг были заключены в тюрьму. Ваш тюремщик предлагает вам испытание. Если вы его выполните, вы оба будете освобождены.
Читать дальше →

Исследование андроид-вируса

Reading time13 min
Views106K
Всем привет. Недавно мне valdikss рассказал об андроид-вирусе, который может немало навредить пользователю, если он недостаточно внимателен. Мне захотелось узнать его внутренности, т.к. более или менее в последнее время занимаюсь ресерчем андроид приложений, но вирусы никогда еще не исследовал. До его рассмотрения, мне сразу бросилось в глаза название файла — android_update-1.apk. Первым делом делаю то, что делает каждый андроид ресерчер — распаковывает его dex2jar-ом (ну и параллельно можно посмотреть WinRAR-ом список файлов).

dex2jar


Когда я распаковал файл dex2jar-ом у меня получился красивый jar. Я обрадовался и кинулся смотреть его в JD-GUI.

image

Но, к сожалению, JD-GUI не смог полностью декомпильнуть получившийся файл, зато в самом конце файла были интересные строки.
Читать дальше →

10 заповедей программирования без эго

Reading time3 min
Views57K
image«Программирование без эго» — перевод понятия egoless programming. Смысл в том, что разработчик осознанно отодвигает эго на второй план ради эффективности в работе. При разработке Web-payment.ru — сайта о платежных системах с каталогами и мониторингом обменников — мы стараемся руководствоваться этими принципами. Если кто-то благодаря этому посту тоже начнет применять их в своем проекте, мы будем очень рады, ведь они помогают избежать конфликтов и несут в себе добро. Перевод и редактура moigagoo.

О программировании Стивен начал говорить с отцом за 2 недели до его смерти. Стивену было 22, он изучал графдизайн в колледже и почти получил степень бакалавра. Его отцу было 62 — больше, чем большинству отцов. Когда он только начинал программировать в Теннессийском техническом университете в 60-е, то писал код на Фортране на перфокартах. Знал он очень много.

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

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

Как вернуть качественный звук в Windows 7, 10, 11 — побитовый вывод, аппаратные эффекты (EAX и пр.)

Reading time5 min
Views276K
Хочу поділитися досвідом по темі звуку в Windows 7.
Насправді все не так погано, як спочатку здається, і я вам зараз це продемонструю.
Читать дальше →

5 частых ошибок при составлении «пользовательского соглашения»

Reading time3 min
Views5.6K
Каждый юрист постоянно ищет и, к сожалению, находи, в договорах других юристов ошибки. Не все эти ошибки действительно опасны. За некоторые бывает иногда просто стыдно, а другие добавлены специально или несут реальные риски для клиентов. Оценим каждую ошибку по степени риска, распространенности и раздражения на примере одного из самых важных документов на сайте.
Читать дальше →

Грабли при использовании общих .dll

Reading time4 min
Views9K
Не так давно наткнулся на интересную нестандартную проблему, которая заставила поломать голову около двух часов. В ней смешалось несколько факторов, таких как некоторая кривость архитектуры продукта, недостаточный уровень логирования и особенности другого уже установленного программного обеспечения. Сразу оговорюсь, что взгляд на проблему и решение по большому счету будет с обывательской колокольни (в программировании шарю чуть более чем никак), но в данном случае именно этот свежий взгляд был ключевым в финальном решении.



Начну по порядку.

«Ни единого разрыва!» или зачем клиенту воевать с техподдержкой

Reading time5 min
Views21K
Помните, какие мемы гуляли по интернетам лет семь назад? В одном из них клиент выбивал из техподдержки беспрерывный интернет и жаловался на ежедневные разрывы. Было и смешно, и грустно. Поставьте себя на место инженера поддержки – да такому клиенту не объяснишь, что Земля круглая!

image

Теперь перепрыгните на место клиента и вспомните часовые разговоры с колл-центром. Долгие ожидания на телефоне, потуги получить горстку полезной информации… На той стороне тоже вроде не сильно напрягаются. Неужели всё всегда так плохо? И чтобы разговор действительно задался, на обоих концах провода правда нужны люди с высшим техническим и ангельским терпением?
Читать дальше →

BSXinsight — проверка мышцы на износ

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

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

Агрессия в Интернете: статистика и выводы

Reading time4 min
Views13K
По результатам статистического исследования Pew Research Center, 73% взрослых пользователей Интернета были свидетелями агрессии в Интернете и 40% испытали её лично на себе.

Общие результаты таковы:
  • 60% интернет-пользователей были свидетелями оскорбительных обзывательств кого-либо
  • 53% видели попытки умышленного оскорбления кого-либо
  • 25% видели физические угрозы в отношении кого-либо
  • 24% были свидетелями длительной агрессии в отношении кого-либо
  • 19% сказали что они наблюдали агрессию на сексуальной почве в отношении других
  • 18% были свидетелями травли (так я перевёл английское слово stalked, но смотрите другое определение, которое дали в комментариях TrueKir и equand)

Те же, кто лично испытали на себе интернет агрессию, отметили, что агрессия проявлялась, по крайней мере, в одной из следующих форм:
  • 27% были обозваны оскорбительно
  • 22% были умышленно оскорблены
  • 8% испытали физические угрозы
  • 8% подверглись травле
  • 7% подвергались агрессии в течение длительного времени
  • 6% подверглись агрессии на сексуальной почве

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

Аудио watermark для приложений Second Screen

Reading time9 min
Views7.8K
Для приложений Second Screen cуществует два основных способа синхронизации контента по аудиосигналу (Automatic Content Recognition, ACR): на базе аудио fingerprints и с использованием цифровых водяных знаков (ЦВЗ, digital watermark). Эти технологии имеют принципиально разные подходы.

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

Я уже писал о достигнутых нами результатах по распознаванию аудио на основе fingerprints. В этом посте хочу рассказать об аудио ЦВЗ и проблемах, с которыми мы столкнулись при построении ACR на их основе.
Читать дальше →

Настройка групповых политик ограниченного использования программ в Windows 7

Reading time2 min
Views210K

Прочитав статью Windows-компьютер без антивирусов, я загорелся такой идеей обеспечения безопасности и решил попробовать сделать у себя так же.

Поскольку у меня стоит Windows 7 Professional, первой идеей оказалось использование AppLocker'a, однако быстро выяснилось, что работать в моей редакции винды он не хочет, и требует Ultimate или Enterprise. В силу лицензионности моей винды и пустоты моего кошелька, вариант с AppLocker'ом отпал.

Следующей попыткой стала настройка групповых политик ограниченного использования программ. Поскольку AppLocker является «прокачанной» версией данного механизма, логично попробовать именно политики, тем более они бесплатны для пользователей Windows :)
Читать дальше →

Как поймать то, чего нет. Часть третья: а судьи кто?

Reading time13 min
Views25K
В прошлой статье было показано, что основной проблемой безопасности является то, что средства защиты (на примере антивирусов) пропускают наиболее опасные вредоносные файлы. И такое поведение является нормальным и ожидаемым. С другой стороны, имеются результаты многочисленных тестов, которые показывают вплоть до 100% обнаружения угроз (из последнего на Хабре можно заглянуть в публикацию «Как нас тестируют», особенно в комментарии).

О чем же умалчивают те, кто тестируют, и те, кто получают награды?
Читать дальше →

Как мы помогали слепому дедушке. Делаем индикатор уровня жидкости в чашке своими руками

Reading time3 min
Views96K

Идея и поиск решения


Идея этого поста родилась спонтанно. Однажды у нас в конторе раздался телефонный звонок. Звонил 87-летний дедушка, который по каким-то своим каналам нашел наш номер телефона (раньше он работал в нашей организации). Дедушка просил о помощи. С возрастом он практически потерял зрение и простейшие действия, о которых здоровые люди даже не задумываются, для него стали проблемой. Даже такая элементарная вещь, как налить кипятка в чашку, чтобы сделать себе чай. Мы прониклись проблемой и решили помочь.

Естественно, для того чтобы не придумывать велосипед, был проведен предварительный анализ существующих решений. Вот, например, интересный концепт Поющей кружки для незрячих, который когда-то упоминался на Хабре. Идея отличная, но, похоже, ее так и не довели до стадии массового производства. Далее, на Ebay были найдены приемлемые варианты индикаторов уровня жидкости в чашке по цене около 20 долларов, учитывая доставку. Также на российских сайтах было пару вариантов по цене от 400 рублей. Что же касается нашего местоположения (Украина), то тут все оказалось значительно хуже — мы не нашли никаких вариантов (да, возможно, просто плохо искали).

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

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

Вычислите длину окружности

Reading time6 min
Views90K
«Пожалуйста, напишите на C++ функцию, которая получает диаметр круга как float и возвращает длину окружности как float».

Звучит как задание на первой неделе курса по C++. Но это только на первый взгляд. Сложности возникают уже на первых этапах решения задачи. Предлагаю рассмотреть несколько подходов.

Студент: Как вам такой вариант?

#include <math.h>
float CalcCircumference1(float d)
{
    return d * M_PI;
}

Преподаватель: Да, этот код может нормально откомпилироваться. А может и нет.
Читать дальше →

Опыт маскировки OpenVPN-туннеля с помощью obfsproxy

Reading time9 min
Views109K
Примечание: приведённая в статье информация во многом устарела, и предназначена скорее для общего ознакомления. Сейчас можно попробовать использовать утилиты вроде ptproxy для создания туннеля с помощью любого актуального pluggable transport для Tor.

Преамбула


В связи с наметившимися тенденциями решил я обфусцировать свой скромный OpenVPN-туннель, просто чтобы набить руку — мало ли пригодится…

Дано: дешевая VPS с белым IP, работающая под Ubuntu Trusty Server Edition и служащая OpenVPN сервером.
Требуется: по-возможности скрыть OpenVPN туннель, желательно без изобретения велосипедов.
Ну и что дальше?

Как я имплантировал RFID себе в руку, а потом еще NFC. Часть 1

Reading time6 min
Views140K


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

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

А когда обнаружилась метка, совместимая с NFC — и способная быть ключом к ноутбукам, смартфонам и оставшимся замкам — избегать ее встраивания причин решительно не было.
Что я сделал и как это работает

Information

Rating
2,690-th
Location
Niedersachsen, Германия
Registered
Activity