
Попытаемся отреверсить и заглянуть в реализацию фото-эффектов приложения камеры Xiaomi 8 летней давности
Бэкенд разработчик
Попытаемся отреверсить и заглянуть в реализацию фото-эффектов приложения камеры Xiaomi 8 летней давности
Недавно я столкнулся с тем, что потребовалось распечатать большое количество строительных смет, но в последний момент оказалось, что номер договора в них указан неверно, потому что в начале месяца он поменялся.
Так появилась задача однотипной замены номера договора и его даты в каждом из *.xlsx файлов, которые были расположены в папках, названных по адресу объекта. Таких папок было множество и некоторые ещё имели вложенные подкаталоги.
Ручной способ, который состоит из использования сочетания клавиш Ctrl + H
хоть и позволял сделать замену во всей книге Microsoft Excel сразу, но подразумевал что придётся открыть каждый файл по отдельности, нажимать несколько раз (под замену не только номер, но и дата) сочетания клавиш для замены, сохранять книгу Экселя, закрывать книгу, открывать новую книгу. В общем совершать множество механических действий.
Я конечно же стал думать, как можно наиболее простым для себя способом сделать это множество автозамен. Выбор сразу пал на VBA - Visual Basic для приложений. Ведь при помощи VBA можно заставить Эксель делать то, чего он не умеет по умолчанию.
Так что в этой статье хочу показать пошаговое руководство по быстрой и массовой автозамене любых данных во множестве файлах Excel с помощью сценария VBA.
Небольшая предыстория зачем все это может быть нужно. Недавно столкнулся с ситуацией, когда заказчику было необходимо реанимировать заблокированный старый проект, добавить фичи и снова разместить в PlayMarket. Ключ который генерирует Google извлечь нельзя, генерируемые билды отличались подписью и не принимались. В итоге было принято решение зарегистрировать новый проект, но чтобы не зависеть в будущем от такой ситуации сделать собственный ключ.
Итак, пройдемся по всему процессу. Перед добавление версии сборки приложения в самом начале этого процесса консоль предложит выбрать ключ подписи.
Всем привет. Сегодня я покажу вам, как можно создавать 2.5D уровни в изометрии с помощью быстрого прототипирования техникой grayboxing, и генеративного искусственного интеллекта, а именно Stable Diffusion. Практически весь процесс, описываемый в статье, довольно легко автоматизируется.
Если интересно, добро пожаловать под кат.
Годот, немного костылей и прямые руки (по желанию).
Самый подробный гайд о создании системы инвентаря, без воды, по факту и с кодом!
В этой статье показано, как получить полный функционал Midjourney с помощью АПИ
Для этой задачи вам понадобится учетная запись Discord с активной подпиской Midjourney, подойдет базовый план за 10 долларов.
Будучи одной из самых популярных баз данных, SQL Server славится простотой установки и настройки, функциями безопасности, среди которых есть шифрование, великолепными возможностями восстановления данных и множеством удобных инструментов.
Однако из-за ряда ограничений SQL Server постепенно теряет своих пользователей. SQL Server имеет достаточно сковывающую лицензию и стоимость обслуживания, растущую по мере увеличения размера базы данных или числа клиентов. Ее максимальный размер составляет 10 ГБ, а буферный кэш — 1 МБ. Она работает только под Windows.
Переманить же пользователей SQL Server может PostgreSQL — полностью бесплатная база данных с открытым исходным кодом. Эта база данных может похвастаться поддержкой международного сообщества и доступна под Windows, Mac, Linux, FreeBSD и Solaris. Кроме того, для нее существуют множество опенсорсных дополнений.
Я начну эту статью со знакомства с двумя бесплатными инструментами для миграции с SQL Server на PostgreSQL, затем поэтапно продемонстрирую, как выполнить миграцию между этими двумя базами данных, а в конце расскажу о полноценном решении для резервного копирования с защитой для управления сразу несколькими базами данных.
В данной статье рассмотрим способ процедурной генерации подземелий, с помощью рекурсивную функцию на Godot 4.1.
Познакомимся с один из возможных алгоритмов генерации подземелья, который достаточно быстро написать и легко применять в своём проекте. Добавим персонажа, который сможет бегать по нашему подземелью.
В 2020-м мой работодатель начал прижимать меня по условиям, я забрал команду, снял склад и запустил свое производство когтеточек. Казалось бы, ничего сложного: закупаешь клей, картон, и находишь людей, которые 5 000 раз в день готовы повторять одни и ту же операцию. Но есть нюансы.
Привет! Меня зовут Оля, я программист учебного центра компании «Тензор».
В декабре 23-го мне поступила творческая задача разработать телеграм-бот для проведения новогоднего марафона-тренинга по личностному росту.
В этой статье расскажу о проблеме, с которой столкнулась при разработке телеграм-бота. Разберем ошибку 429 (Too Many Requests) и лимиты на доступ к API.
Всем привет! Ранее рассказывал о том, как создать REST API и Web-сервер на PowerShell для Windows, а также упоминал, что подобный сервер будет работать и в системе Linux, благодаря кроссплатформенной версии PowerShell Core. Безусловно, для подобных целей лучше используются специализированные серверные фреймворки или библиотеки, такие как Flask
или Django
в Python
, но меня не покидала идея реализации похожего сервера, где описание логики будет производиться на языке одного только Bash. Приведу примеры, с помощью которых можно создать такой сервер используя сетевые сокеты netcat
, socat
и ncat
, а также веб-сервера Apache
с использованием встроенных модулей.
Дистрибутивов Linux достаточно много — на любой запрос, вероятно, можно найти подходящий вариант. Не так давно появился ещё один дистрибутив, который внешне является почти полной копией Windows 11. Также он способен запускать Windows-программы и работает на относительно старых компьютерах и ноутбуках. Называется он Wubuntu, и подробности о нём — под катом.
В этой статье осторожно прикоснёмся к sin()
и cos()
. Есть и другие функции, в том числе tan()
, зачем же останавливаться только на синусе и косинусе? Они идеальны для размещения текста по краю круга. Об этом уже рассказывалось на CSS-Tricks, когда Крис поделился подходом к размещению текста по кругу с миксинами Sass. Это было шесть лет назад [оригинал опубликован 8 марта 2023 года], поэтому поработаем с размещением чисел по-новому.
Вот о чём я говорю:
Chronos for Laravel
Веб-интерфейс для управления командами Laravel в real-time без необходимости лезть в код проекта.
Вашему вниманию предлагается небольшая заметка, посвящённая особенностям хранения одноканальных (серых) 16 бит изображений (как беззнаковых, так и знаковых) в PNG формате. В некоторых случаях интенсивности пикселей, получаемые из такого файла могут не соответствовать изначальным интенсивностям, под катом мы заглянем во внутренности PNG файла и разберёмся, почему так происходит.
В сентябре я устроился на должность поискового дата-саентиста и с тех пор часть моих обязанностей заключается в работе с Solr — опенсорсным поисковым движком на основе Lucene. Я знал основы работы поискового движка, но мне хотелось понять его ещё лучше. Поэтому я закатал рукава и решил создать его с нуля.
Давайте поговорим о целях. Слышали когда-нибудь о «кризисе сложности обнаружения маленьких веб-сайтов»? Проблема в том. что маленькие веб-сайты наподобие моего невозможно найти при помощи Google или любого другого поискового движка. Какова же моя миссия? Сделать эти крошечные веб-сайты снова великими. Я верю в возвращение славы этих малышей вдали от SEO-безумия Google.
В этом посте я подробно расскажу о процессе создания поискового движка с нуля на Python. Как обычно, весь написанный мной код можно найти в моём GitHub (репозиторий microsearch). Эта реализация не будет притворяться готовым к продакшену поисковым движком, это лишь полезный пример, демонстрирующий внутреннюю работу поискового движка.
Кроме того, мне стоит признаться, что в заголовке поста я слегка преувеличил. Да, поисковый движок действительно реализован примерно в 80 строках Python, но я ещё и писал вспомогательный код (краулер данных, API, HTML-шаблоны и так далее), из-за которого весь проект становится немного больше. Однако я считаю, что интересная часть проекта находится в поисковом движке, который состоит из менее чем 80 строк.
P.S. Написав этот пост и microsearch
, я осознал, что пару лет назад нечто похожее написал Барт де Гёде. Моя реализация очень похожа на работу Барта, но я считаю что кое-что улучшил, в частности: (1) мой краулер асинхронный, что сильно ускоряет работу, (2) я реализовал пользовательский интерфейс, позволяющий взаимодействовать с поисковым движком.
Пошагово, с чек-листом и примерами из игр. Для конкретики беру популярный в прошлом году жанр VS-Like, при этом знания из статьи применимы к играм любых жанров.
Метапрогрессия — это система механик, изменяющая процесс игры определёнными способами. Она ложится поверх кор-лупа, изменяя или улучшая кор-геймплей. МП дополняет Кор, создаёт ощущение прогрессии между забегами, улучшает игровой опыт, открывает новые механики. Это та менюшка, где можно повысить количество здоровья герою.