
Программирование устройств на основе модуля ESP32

Пользователь
Привет, Хабр!
Хочу поделится личным опытом в DIY роботостроении.
Что можно уже сейчас сделать с доступными современными технологиями CAD проектирования, 3д печати, прототипирования моделей в симуляторах физики, новыми функциональными языками программирования а также паяльником, отверткой и желанием постигать что то новое.
Здравствуйте, дорогие читатели!
Меня зовут Алексей Карпенко. Проработав в разработке игр больше 5 лет, разрабатывая экономику и баланс для проектов, принесших более 150M$+ выручки, я решил подытожить все свои знания в экономике, балансировке и монетизации игр в одну работу, и поделиться с другими разработчиками.
Материалов в данной сфере совсем немного, на момент написания статьи осень 2024 года, всего +-20 научных статей и пару книг, одна из которых 800 страничный фолиант от Brenda Romero and Ian Schreiber. Я собрал всю эту информацию в одной статье, а также добавил свои знания и опыт, поэтому я считаю что мои знания будут полезны для вас.
Изучив это подробное руководство, вы узнаете, как успешно монетизировать игры, разрабатывать стратегии и баланс для устойчивой экономики и познакомитесь с актуальными трендами в игровой индустрии.
Мы начнём с основ экономики игр и медленно будем погружаться всё глубже и глубже, пока не поймем как создать такую экономику, которая не только будет приносить вам доход, но и дарить игрокам настоящее удовольствие.
Всего в моей статье 7 глав, материал получился объемный, подойдёт как для совсем начинающих, так и для действующих специалистов дизайнеров экономики и монетизации.
Приятного чтения! 😊
Привет, Хабр!
Давайте знакомиться: меня зовут Никита Соболев, я core‑разработчик CPython, mypy и typeshed. Некоторое время назад я понял, что на русском языке довольно мало контента про устройство CPython внутри. В основном доклады с конференций и статьи. Где‑то про память, где‑то про GIL, где‑то про парсер. Но чтоб системно и по всем основным частям в одном месте — такого я не нашел.
И решил сделать своё! Под катом я расскажу, как я делаю «Лучший курс по Питону»* на ютюбе. Почему он бесплатный. И почему он такой, какой есть. А еще я расскажу, какая польза будет разработчикам от его просмотра.
В этой статье мы расскажем про базовые техники работы с Docker, а также погрузим читателя в основы докеризации приложений.
Предполагается, что читатель что-то слышал про Docker и хотел бы начать знакомство с технологией. Мы постараемся упростить этот процесс.
Мы, разработчики ПО, пользуемся git
каждый день, однако большинство из нас применяет только самые основные команды, например, add
, commit
, push
и pull
, как будто на дворе по-прежнему 2005 год.
С тех пор в Git появилось множество фич, пользование которыми может сильно упросить вашу жизнь. Так давайте исследуем некоторые из недавно добавленных современных команд git
, о которых вам стоит знать.
Многие летом работают с дачи, а некоторые даже находят уединенные уголки в лесу с доступом к 4G. И все бы хорошо, но на даче иногда «пропадает свет», а в лесу его и вовсе нет. Я расскажу, как сделать на скорую руку power bank для ноутбука, который обеспечит дни, а при желании и недели свободы от розетки.
Это обзорная статья для таких же, как и я, которые начинали программировать уже в тот момент, когда весь функционал командной строки обрел "кнопочки" в интерфейсе.
В этой инструкции хочу рассказать о командах adb, которые использовать легче, чем делать то же самое через UI.
Основная задача — показать возможности adb, которые избавят от рутинных шагов при разработке/отладке. Например, позволят быстро переключать светлую тему на темную.
Ниже рассмотрим только те команды, которые действительно пригождаются хотя бы раз в пару дней. Для остального есть документация.
Статья-туториал для тех, кто хочет узнать, как из заголовка получается «6» методом рекурсивного спуска. Начнём с самого простого и дойдём до вычисления -1.82
или около того из строки -2.1+ .355 / (cos(pi % 3) + sin(0.311))
.
Конечно, этот метод неоднократно описан на Хабре и зачитан каждому айтишному первокурснику. В своей версии я хочу изложить его очень просто, подробно и поэтапно, элементарной практикой на JavaScript. Ссылки на рабочий код — в самом низу.
Привет, Хабр! Меня зовут Александр Карпенко, я QA Engineer в inDrive. Я подготовил эту статью для начинающих QA-специалистов. Ниже расскажу, как использовать Android Debug Bridge (ADB) в тестировании мобильных приложений и нужен ли вообще этот инструмент.
Какой самый частый комментарий после запуска Хабра-АДМ? Верно! "Пора делать пост Хвастовства." Что ж, пора - значит пора!
Пост Хвастовства объявляется открытым!
С НАСТУПАЮЩИМ НОВЫМ 2022 ГОДОМ!
PS: А если вам кажется, что комментариев пока слишком мало, можете посмотреть, как это было в прошлых сезонах: 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020.
Кадры из фильма-долгостроя, большие змеи и красивые девушки в комплекте. Крутая кондовая графика, пояснения, советы и хитрости рендера. Жуткая красота и красивая жуть. Ковёр! Кормим змей от фотографии до смонтированного результата.
Расскажу вам историю судебной тяжбы с игроком, которая отняла у меня полтора года жизни. Ни я, ни тем более клиент удовольствия от этого процесса не получили.
Началось с того, что игрок, продонативший крупную сумму, начал требовать особого положения в игре. Наверняка, вы с этим встречались не раз: требования сыплются в поддержку с возрастающими скоростью и аппетитом. Ответы начинают обсуждаться на форуме. В конце игрок впадает в «неадекват» и начинает стращать всяческими «подлянками», а заодно настраивать окружающих против модераторов и администрации игры.
Интересно, чем все закончилось?/
Что в этом случае делает администрация? Сначала банит клиента на форуме, если не помогает – блокирует персонажа до устранения нарушений. Примерно так развивался сюжет и в моем случае с одним отличием: клиент выйдя из бана повторно спровоцировал конфликтную ситуацию, получил отказ на претензию, зафиксировал ответы в нотариальном порядке и пошел в суд по Закону «О защите прав потребителей.» (далее - ЗЗПП для краткости).
В иске игрок потребовал все, на что хватило фантазии:
У вас бывают в разработке такие периоды, когда что-то в коде идет не так, ты ищешь баг, а потом оказывается, что за ним стоял еще один баг? Мне нравится искать баги. Это создает ощущение словно ты Шерлок Холмс и являешься главным героем в детективе, где кто-то из обширного списка на вид безобидных классов и функций вызывает неожиданное и даже неопределенное поведение программы, а ты своим зорким взглядом и экспериментами пытаешься вычислить этого мерзавца в кратчайшие сроки.
Можно выделить несколько стадий поиска бага:
• удивление (не знаю как вы, но я каждый раз как в первый раз удивляюсь когда что-то вдруг в моем коде работает не так, как ожидается);
• обвинение всех кругом в баге (коллег по проекту, github, сторонние либы, компилятор), но только не себя;
• смирение с тем, что возможно баг появился из-за меня и поиск бага: анализ выдаваемого результата, локализация ошибки, эксперименты с входными данными; в общем, все, что делает нормальный детектив, только в сфере программирования;
• если причина бага найдена быстро, то я хвалю себя за то, что нашел баг, при этом, я не напоминаю себе, что причиной бага стал тоже я, а не коллеги по проекту, не github, не сторонние либы и не компилятор;
• если причина бага все время ускользает, то приятное ощущение того, что ты суперпупердетектив сменяется глупой злостью, и чем дольше я не могу найти причину бага, тем больше я злюсь. И вот такие истории почему-то всегда запоминаются больше всех. Об одной такой истории я вам как раз хочу поведать.
scratch
и крошечного http-сервера на основе этой сборки, я смог ужать результат до 6.32kB!