Pull to refresh
13
0.2
Влад Даггерт @daggert

User

Send message

«Монстры в играх или как создать страх»

Reading time4 min
Views29K
image

Противники, одни из ключевых фигур, без которых та или иная игра может потерять свой смысл, а когда эти враги еще и монстры, то как раз они и создают ту атмосферу, которую вкладывают создатели. Тяжело представить Silent Hill без пирамидаголового, Outlast — без Криса Уокера и так далее, принцип понятен. Монстры — это собирательный образ врага в игре, это может быть не только уродливый демон или гигантские пауки, даже злобный сосед, как Hello Neighbor, является монстром, несмотря на облик человека.

Дойдя до этой части, читатель спросит:


“ А о чем собственно речь?
Читать дальше →
Total votes 31: ↑26 and ↓5+21
Comments87

Проверка присутствия пакета обновления в системе перед установкой

Reading time3 min
Views9.7K
Установка пакетов обновлений для Windows может происходить как в автоматическом режиме службой Windows Update, так и в ручном режиме через Windows Update Stand-alone Installer (WUSA) — Автономный установщик обновлений из msu-файлов. Кроме WUSA, обновить ОС также можно с помощью Deployment Image Servicing and Management (DISM) — Система обслуживания образов развёртывания и управления ими. Используя DISM можно устанавливать обновления на не только из msu-фалов, но и из cab-файлов. Чтобы получить cab-файл пакета обновления, нужно скачать с сайта Microsoft нужный msu-файл и распаковать его запуском с ключом /extract. Замечено что установка пакетов обновлений в виде cab-файлов с помощью DISM происходит быстрее чем из msu-файлов с помощью WUSA. Я выбираю DISM для работы с обновлениями Windows, поэтому дальнейшее описание приведено для неё.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments10

Чистый код на PHP

Reading time19 min
Views111K


Это принципы разработки ПО, взятые из книги Clean Code Роберта Мартина и адаптированные для PHP. Это руководство не по стилям программирования, а по созданию читабельного, многократно используемого и пригодного для рефакторинга кода на PHP.


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


Статья вдохновлена clean-code-javascript.

Читать дальше →
Total votes 69: ↑61 and ↓8+53
Comments180

Нестандартный способ подружиться с STM32: не Ардуино и не Discovery

Reading time4 min
Views25K

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


И на Хабре, и на geektimes уже достаточно много статей, посвящённых микроконтроллерам серии STM32F, например: Дешевая STM32 плата + Arduino IDE, Попытка подружиться с STM32 и ответ на неё Как надо дружиться с STM32 и многие другие. В совокупности они очень хорошо освещают эту тему, но есть одно но… Во всех этих статьях рассматриваются готовые платы и один конкретный контроллер, что на этой плате. А что делать тем, кто хочет поиграться с разными контроллерами, да ещё и на макетной плате? Например, многие известные мне платы с контроллером STM32F4 (та же STM32F4-Discovery) в макетную плату не воткнуть. Но мне лично хочется что-то типа такого (внимание, все картинки кликабельны):



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

Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments25

Очередные умные часы своими руками

Reading time18 min
Views90K


Вдохновившись некоторое время назад статьей «Умные часы своими руками за 1500р.», я тоже решил попробовать сделать подобный девайс.


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


Подбор компонентов, разводка платы, пайка в суровых условиях, 3D-печатный корпус и JavaScript на часах — под катом. Welcome!

Total votes 145: ↑144 and ↓1+143
Comments214

Запускаем GSM-сеть у себя дома

Reading time12 min
Views137K


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

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

В результате мы запустим экспериментальную 2G сотовую сеть в пределах комнаты с поддержкой СМС и голосовых вызовов, без GPRS. Ее можно будет использовать для изучения работы и взаимодействия устройств и компонентов GSM сети, не вмешиваясь в коммерческие сотовые сети.
Читать дальше →
Total votes 119: ↑119 and ↓0+119
Comments185

Реверс-инжиниринг игры Lost Vikings

Reading time31 min
Views25K
После интересной обратной разработки игрового движка Comprehend (см. Recomprehend) я подбирал новый проект для реверс-инжиниринга игры под DOS. За долгие годы разные люди реверсировали множество старых популярных игр и опубликовали для них спецификации и инструменты. Например, на сайте shikadi.net есть куча информации об играх, в которые я играл в детстве.

Я обнаружил, что для реверс-инжиниринга игры The Lost Vikings компании Blizzard (тогда она называлась Silicon and Synapse), похоже, не предпринималось никаких серьёзных попыток. Игра была выпущена в 1993 году, на закате эры DOS, и очень нравилась мне в юности. The Lost Vikings — это головоломка-платформер, в которой игрок управляет тремя викингами, каждый из которых имеет собственные умения. Викингам нужно объединить свои силы для решения загадок и прохождения уровней с различной тематикой: космический корабль, доисторический мир, Древний Египет. На изображении ниже показан первый уровень игры (источник: Strategy Wiki):

image

Казалось, что эту игру разобрать будет довольно просто. Уровни основаны на тайловых картах и содержат простые загадки: кнопки, включающие и отключающие объекты, передвижные ящики и поднимающий предметы кран. И на самом деле, бóльшая часть проекта по обратной разработке была достаточно прямолинейной. У игры есть один пакетный файл данных, содержащий сжатые блоки файлов. Блоки кодируют различные ресурсы игры, такие как спрайты, карты, звуки и т.д. Я написал несколько утилит, которые можно использовать для просмотра ресурсов игры: The Lost Vikings Tools.
Total votes 58: ↑58 and ↓0+58
Comments20

Что намазать на зубы, чтобы они не выпали

Reading time8 min
Views193K


Хорошо зафиксированный пациент в анестезии не нуждается

По многочисленным просьбам трудящихся сегодня мы будем заниматься очень важными вопросами:


  • Как правильно мазать зубы пальцем?
  • Хорошо ли растворяются пломбы в кислоте?
  • Почему больно, когда сверлят зубы дрелью без анестезии?
  • Зачем мазать зубы зеленкой?
  • Лечение кариеса на дому
  • Глубокое микрофторирование эмали

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

Читать дальше →
Total votes 209: ↑206 and ↓3+203
Comments693

Отечественный процессор от компании ЭЛВИС

Reading time8 min
Views35K

Всем привет! Наша статья про отечественный процессор Мультиклет, вызвала довольно большой интерес. Правда, многие почему-то решили, что это статья от самого Мультиклета.

В этой статье речь пойдёт об отечественных производителях процессоров (микроконтроллеров). Сейчас эта тема достаточно популярна: например, этому была посвящена конференция OSDay. В общем, в этот раз к нам попала плата от компании «Электронные вычислительно-информационные системы» ЭЛВИС. Мы затащили туда свой Embox и решили, что пользователям хабра было бы интересно узнать и об этой эпопее.
Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments47

Повторяем дизайн приложений, получивших награду Apple

Reading time9 min
Views15K
Привет, Хабр! Дизайнеры рисуют приложения с красивыми кнопочками, тенями, анимациями, градиентами и сложными переходами между экранами. К сожалению, такие дизайны нелегко превращать в рабочие приложения. Можно ли облегчить нашу работу? Разберемся на примере приложений, получивших награды Apple за дизайн: Auxy, Streaks и Zova.

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

Подключение управлямых блоков питания, сенсоров и реле к серверным материнским платам. Без Arduino

Reading time19 min
Views29K
Подключение различных сенсоров, датчиков, реле, GPIO-расширителей и прочего «ардуиновского» хозяйства по шине I²C напрямую к серверным материнским платам через IPMI-интерфейс бортового контроллера (BMC). Практические примеры I²C-устройств и работа с ними из командной строки утилитой ipmitool. SMBus, PMBus и управление блоками питания. Не очень документированные ограничения и вопросы безопасности. Разоблачение проприетарщины.

После установки сервера в самодельную конструкцию порой хочется подключить к нему ещё чего-нибудь: например, датчики температуры, давления, влажности, ЖК-экранчики или даже ШИМ-драйверы моторчиков. Бывают глючные внешние устройства, которые приходится удалённо и жёстко сбрасывать с помощью реле, не уровнив при этом весь сервер целиком. А может, читателю просто захотелось гребёнку GPIO с гирляндой светодиодов? Если это не одноплатник типа Raspberry Pi, а полноразмерный сервер, приходится навешивать микроконтроллер и возиться с ним: писать прошивку, тестировать, налаживать стык с хостом и т.д. Иногда это интересно само по себе, но бывает и наоборот: скорей бы скриптину написать да запустить, наконец, лишь бы работало.

Необычные разъёмы на железе всегда вызывали у автора смешанные чувства инженерно-технического зуда и вентиляторного фетишизма. Об этих занимательных разъёмах здесь и речь.
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments36

А если без JavaScript?

Reading time3 min
Views71K
В нашем мире без JavaScript никуда! Куча фреймворков, библиотек и прочей радости! jQuery плотно вошел в нашу жизнь. React с Angular пробивают дорогу к светлому будущему. Да и не за горами поддержка браузерами ES6 без Babel.

Но если тема заходит об обычном сайте со стандартным функционалом, не редки случаи, когда JavaScript начинают “злоупотрелять”. И все, в принципе, нормально… Но порой задаешься вопросом: «А если без JavaScript?».
Total votes 90: ↑76 and ↓14+62
Comments131

Simple Solder MK936. Паяльная станция для тех, кто хочет сам

Reading time6 min
Views59K
Всем привет!

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


Читать дальше →
Total votes 68: ↑65 and ↓3+62
Comments144

Как я стала дизайнером за шесть месяцев

Reading time4 min
Views306K
Я не заканчивала дизайнерских курсов и не училась дизайну в институте, но мне удалось пройти свой собственный курс обучения за 6 месяцев, замечу, что в процессе обучения я параллельно занималась полный день своей основной работой. Хотя я не думала, что уже готова устраиваться на новую работу дизайнером, все же мне сильно повезло и удалось найти неплохое место.
Читать дальше →
Total votes 90: ↑76 and ↓14+62
Comments50

То, чего еще никто не писал про Нокиа, Элопа и горящую платформу

Reading time40 min
Views547K
Взявшись за этот пост, автор полностью отдает себе отчет. И в том что «набило оскомину». И что «только ленивый не кинул камень». И про то что «хватит уже, достали». Однако, вдоволь начитавшись доморощенных и не очень аналитиков, автор решил все-таки выразить собственное мнение, которое отличается от того общепринятого, что с некоей мазохистской истомой доселе перепечатывалось здесь и тут различными авторами, интерпретаторами и переводчиками. Вероятно кому-то будет интересно его прочитать.

Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:

  • Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
  • Будучи долгое время лидером, Нокиа просрала потратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга.
  • Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением гениального юриста CEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д.
  • Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных дебилопроцессов комитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами.
  • Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
  • У великого CEO Элопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый.
  • Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
  • Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
  • С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
  • То, что сделал великий CEO Элоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться.
  • Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.

Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Читать дальше →
Total votes 548: ↑505 and ↓43+462
Comments330

RandomRace.ru — радиопеленгация для чайников (начало)

Reading time6 min
Views20K

Откуда есть пошла идея


Один мой старый приятель взялся обсуждать со мной свою новую затею — все мы в свое время увлекались приключенческими гонками, коих проводится множество в наших краях, но вот не давала человеку спокойно жить предсказуемость классической приключенческой гонки — контрольные пункты (КП) расставляются людьми, а значит их можно хоть немного предугадать.
Вот так и появился RandomRace.ru (кратко — RR).

Итак, основная идея RR — запустить гоночные КП на шарах в воздух, на некоторой случайной высоте высоте шары будут лопаться, а КП — падать на парашютах. КП будут отдавать свои GPS координаты на сервер гонки, а участники будут их потом искать. В принципе, правила соревнований составлены так, чтобы КП-зонды возвращались организаторам силами участников. Естественно, кроме тех зондов, которые отличились повышенным рандомом и улетели куда-то в за.. далеко. Такие КП приходится искать организаторам собственными силами. Так получилось, что в результате я занялся техническим решением задачи «последних 100 метров», когда организаторы приехали на место, найти КП очень хочется, а координаты неточные. С этой целью было задумано использовать радиопеленгацию — каждый зонд несет радиопередатчик, а организаторы несут приемник-пеленгатор.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments17

Я покажу тебе мир без STM32

Reading time7 min
Views18K
Компания ЭФО перезапускает сайт myMCU.ru — портал для параметрического поиска микроконтроллеров и сопутствующих решений.

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

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



Читать дальше →
Total votes 27: ↑23 and ↓4+19
Comments53

Ловим горизонт с Arduino

Reading time3 min
Views77K
В комментариях поста про создание трех-степенной платформы на базе аппаратной платформы Arduino поднимался вопрос управления не только с компьютера, поэтому было решено разобраться с работой акселерометра MMA7260, который можно свободно приобрести в Гонконге на Ebay.
image
Читать дальше →
Total votes 58: ↑57 and ↓1+56
Comments72

STM32 и FreeRTOS. 1. Развлечение с потоками

Reading time7 min
Views151K
Данный цикл из 5 статей рассчитан на тех, кому стало мало возможностей привычных «тинек» и ардуинок, но все попытки перейти на более мощные контроллеры оканчивались неудачей или не приносили столько удовольствия, сколько могли бы. Все ниженаписанное проговаривалось мной много раз на «ликбезе» программистов нашей студии (которые часто сознавались, что переход с «тинек» на «стмки» открывает столько возможностей, что попадаешь в ступор, не зная за что хвататься), поэтому смею надеяться, что польза будет всем. При прочтении подразумевается, что читающий — человек любопытный и сам смог найти и поставить Keil, STM32Cube и понажимать кнопки «ОК». Для практики я использую оценочную плату STM32F3DISCOVERY, ибо она дешевая, на ней стоит мощный процессор и есть куча светодиодиков.

Каждая статья рассчитана на «повторение» и «осмысление» где-то на один околовечерний час, ибо дом, семья или отдых…



Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments35

Осваиваем простейший микроконтроллер PIC. Часть 1

Reading time7 min
Views381K
Выбор микроконтроллера обычно осуществляется под необходимые задачи. Для изучения хорошо подойдет популярный МК с минимальным набором периферии: PIC16F628A.
Читать дальше →
Total votes 63: ↑61 and ↓2+59
Comments40

Information

Rating
2,355-th
Location
Россия
Date of birth
Registered
Activity