Pull to refresh
43
0
Михаил Лукин @Ktator

Программист

Send message

Безопасность android-приложений. Реверсим OWASP MASTG Crackme 1

Level of difficultyMedium
Reading time6 min
Views960

Всем привет! Меня зовут Максим и я занимаюсь исследованиями источников данных. В своей работе периодически приходится сталкиваться с исследованием android-приложений. В этой статье я хочу показать базовые методы реверс-инжиниринга и исследования android-приложений на примере Crackme из проекта OWASP MASTG.

Читать далее
Total votes 5: ↑5 and ↓0+7
Comments0

Анимируем 3d-персонажа в среде Unity: контроллер анимаций, параметры, условия

Level of difficultyEasy
Reading time4 min
Views1.9K

В этой статье продолжим делать управление 3d-персонажем в среде Unity. В прошлый раз мы остановились на портировании анимаций, они добавились без материалов (текстур). Чтобы отобразить текстуры из исходной blender-модели, кликнем на одну из анимаций, например, idle.fbx, в правом окне выберем вкладку Materials. В комбобоксе Material Creation Mode выберем Standard (Legacy), Location - Use External Materials (Legacy), остальные поля оставим неизменными, нажмем кнопку Apply. Теперь наша анимация отображает исходный skin модели.

Читать далее
Total votes 3: ↑2 and ↓1+5
Comments6

Российская микроэлектроника — два года спустя

Level of difficultyHard
Reading time9 min
Views100K

За эту статью попрошу благодарить патриотично размороженных граждан в целом, и @WebPeople (регистрация 2012, разморожен с первым комментарием 8 июл 2023 в 20:47) в частности. Глобальное потепление, ничего не поделать.

В мае 2022 в комментариях @hippohood отметился не имеющим аналогов текстом:
Примерно опишу мыслительный процесс позитивно (патриотично) настроенных граждан.

Оборудование можно сделать и самим, но пока можно и просто привезти серым импортом. Оборудование выглядит примерно как большой ящик с дырками, включённый в розетку; в одну дырку складываешь кремний, в другую заливаешь фоторезистор. Под третью дырку надо подставить ведро - в него будут ссыпаться чипы. Вёдра мы делать умеем (хотя и импортируем сейчас, но чертежи-то остались), фоторезистор научатся намешивать в Зелинограде; с кремнием разберемся, не всё сразу. Надо ещё заранее заказать в Китае переходник с европейской розетки на нормальную - лучше сразу 3 или 4, они постоянно горят. Вроде все ясно.

Читать далее
Total votes 564: ↑539 and ↓25+599
Comments451

Как GameDev-специалисту защитить свои права на продукт? Практические рекомендации от юристов

Level of difficultyMedium
Reading time6 min
Views1.3K

Как создателю игры приобрести право использования всех составляющих элементов игры, право на игру в целом и избежать юридических рисков? Публикуем подробную инструкцию от GameDev-юристов

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

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

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments0

Кандидатура — старший инженер-программист. В должности отказать…

Reading time5 min
Views23K

Привет, Хабр!

Недавно команде разработки beeline cloud попалась вот такая статья. И оказалась она довольно дискуссионной. Настолько, что мы решили ее перевести и узнать мнение широкой аудитории — а кто же, по вашему мнению, достоин называться синьором?

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

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

Десятилетний опыт в программировании на деле ничего не значит. Не время определяет статус senior’а.

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

Читать далее
Total votes 43: ↑23 and ↓20+7
Comments33

Экспорт статьи из LibreOffice Writer в Habr Flavored Markdown или HTML

Level of difficultyEasy
Reading time8 min
Views2.2K

Резюме.
В статье дается ссылка на файл в формате ODT (основной формат файлов, используемый в текстовом редакторе LibreOffice Writer), содержащий макросы на «родном» для LibreOffice языке программирования макросов BASIC, которые осуществляют экспорт текста из LibreOffice Writer в новый файл в формате Habr Flavored Markdown (далее - HFM) или HTML, в виде, пригодном для размещения статьи в интернете, например, на сайте habr.com.

Текст данной статьи был экспортирован в формат HFM для размещения на сайте habr.com с помощью библиотеки макросов, содержащихся в данном файле.

Для использования достаточно скачать указанный файл (его можно переименовать), заменить в нем текст на свой текст, подготовленный в соответствии с описанием в статье, и вызвать макрос. В папке со скачанным файлом появится новый файл в выбранном формате.

Рассмотрение макросов на языке BASIC, которые осуществляют экспорт, предполагается в отдельной статье.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments13

Новый уровень дипфейков: изменение объектов в видео по prompt, получение движимого объекта одним кликом в Wunjo AI

Level of difficultyEasy
Reading time6 min
Views5.7K

Привет всем увлеченным генеративными нейронными сетями, генерацией изображений и видео из prompt!

В этой статье я хочу поделиться новостями о последнем обновлении моего проекта с открытым исходным кодом, Wunjo AI, в котором я переосмысляю возможности создания дипфейков с использованием Stable Diffusion. Давайте рассмотрим, какие изменения вносит версия 1.6 и как теперь Wunjo AI позволяет вам легко изменять видео с помощью текстовых запросов и создавать маски для движущихся объектов одним кликом. Помимо этого, я также представлю новый инструмент, который позволяет извлекать объекты из видео с прозрачным фоном, что делает их более универсальными для дальнейшего использования, например в дизайне.

Что же там такое?
Total votes 19: ↑16 and ↓3+17
Comments8

Делаем crackme. Часть вторая: шифруем функции

Level of difficultyMedium
Reading time28 min
Views3.2K

Эта статья вторая в цикле по созданию crackme под linux amd64. В этой части мы создадим исполняемый файл, в котором каждая функция будет зашифрована собственным ключом, и будет расшифровываться только на время исполнения. Процесс создания будет полностью автоматизирован, то есть при добавлении нового кода или изменении старого никаких дополнительных действий делать будет не нужно. Код всего проекта находится в репозитории на github.

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments0

Реально Бесконечное (лето) RuGPT3.5: Генерация новеллы на ходу нейросетью

Level of difficultyMedium
Reading time24 min
Views24K

Я уж было подумал, что эпоха локальных трансформерных нейросетей ушла, оставив после себя невеликое наследие (можно пересчитать на пальцах), однако неделю назад RuGPT3.5 от сбера вышла в открытый доступ и обещала быть мощной моделью, о ней и пойдёт речь в этой статье.

Будет создан прототип text adventure, основанного на тексте Everlasting summer, проведена оценка потенциала RuGPT3.5 в разных аспектах подобной задачи и проведено дообучение модели для получения лучших результатов.

Перейти на другую временную линию
Total votes 27: ↑26 and ↓1+30
Comments23

taichi.js: Программируем на WebGPU без боли

Level of difficultyMedium
Reading time10 min
Views3.3K

Привет, Хабр! Сегодня хочу предложить вашему вниманию перевод на русский язык статьи моего коллеги и хорошего приятеля Dunfan Lu. Он создал taichi.js - open-source фреймворк для программирования графики на WebGPU, и написал подробный туториал как его использовать на примере знаменитой "Игры жизни". Уверен, эта сложная и красивая работа на стыке технологий рендеринга и компиляции не оставит вас равнодушными. - пр. переводчика.

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments1

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Level of difficultyEasy
Reading time8 min
Views189K

Привет, Хабр!

Я решил посвятить свою первую статью SQL. Вопросы, рассмотренные ниже мне задавали на собеседованиях на позицию python-разработчика. Естественно отвечать правильно получалось не всегда, а если точнее то чаще не правильно, однако проведя N часов в рефлексии я составил перечень ответов, которыми пользуюсь до сих пор.

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

Читать далее
Total votes 156: ↑149 and ↓7+177
Comments177

Интероперабельность между С++ и Rust

Level of difficultyHard
Reading time13 min
Views7.7K
image

image

Этот пост основан на презентации, с которой автор выступил на конференции EuroRust 2022 в Берлине. Доступны слайды и видеозапись.

Автор, работающий в компании Slint, участвует в создании UI-инструментария, написанного на Rust. Этот UI-инструментарий может использоваться и с другими языками и экосистемами, кроме той, для которой был написан, поэтому в Slint предусмотрены API для C++ и даже для Javascript. Естественно, эти API должны восприниматься как совершенно нативные для разработчиков, имеющих дело с этими языками. Именно поэтому ребром стоит вопрос о том, как создать нативно воспринимаемые API к коду Rust для пользователей, привыкших работать с C++.

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

В этом посте хотелось бы исследовать оба направления интеграции между Rust и C++ и представить некоторые инструменты, используемые в Slint.
Читать дальше →
Total votes 30: ↑28 and ↓2+37
Comments1

Боссов мы не спавним: Terraria Calamity

Level of difficultyEasy
Reading time5 min
Views3.1K

Дизайн боссов очень важен, но не менее важно их игроку показать! Какие приемы используются в игре Terraria, геймдизайн и немного нарратива

Читать далее
Total votes 4: ↑3 and ↓1+3
Comments12

Движок для игры от первого лица в 265 строках Javascript

Level of difficultyHard
Reading time6 min
Views26K
image

Сегодня окунёмся в мир, который можно потрогать. В этой статье мы исследуем, как с нуля, быстро и без особо сложной математики написать движок для игры от первого лица. Для этого мы воспользуемся приёмом под названием «бросание лучей» (raycasting). Возможно, вы видели примеры такой техники в играх Daggerfall и Duke Nukem 3D, а из более свежего – в статьях из «ludum dare» от Нотча Перссона. Что ж, для Нотча это неплохо, но не для меня! Вот демка (управление стрелками и тачпадом) [источник].
Читать дальше →
Total votes 61: ↑60 and ↓1+76
Comments36

С Днем Космонавтики! Подборка из 10 прекрасных произведений о космосе

Level of difficultyEasy
Reading time4 min
Views4.5K

Что бы ни происходило, а сегодня особенный день, знаменательный день. День Человека и человеческого. День, воплощающий лучшее, что есть в Homo Sapiens – способность превратить самую дерзкую мечту в реальность.

В честь праздника – подборка из 10 художественных произведений о космосе, которые я рекомендую к прочтению/просмотру. А вам я предлагаю поделиться своими любимыми произведениями в комментариях!

Читать далее
Total votes 16: ↑12 and ↓4+11
Comments53

«Орбита смерти»: космический триллер от известного астронавта

Reading time3 min
Views3.2K

Более шестидесяти лет назад, 12 апреля, человек впервые отправился в космос, за пределы атмосферы Земли. Советский летчик и космонавт Юрий Гагарин навеки внес свое имя в историю, а мечтатели, визионеры и писатели-фантасты получили новую волну вдохновения, представляя возможности дальнейшего покорения космоса. 

Полет Гагарина был одним из ключевых этапов космической гонки между СССР и США, но далеко не ее завершением. И поскольку как раз недавно вышел роман в жанре альтернативной истории о противостоянии двух держав на ниве покорения космоса, хотелось бы об этой книге немного поговорить.

Читать далее
Total votes 10: ↑6 and ↓4+4
Comments4

Тетрис, разработка игр на SFML C++

Reading time16 min
Views9.9K

Предыдущая тема

"Тетрис" - легендарная игра, которую знает каждый. Она была создана в 1984 году российским программистом Алексеем Пажитновым и с тех пор завоевала сердца миллионов игроков по всему миру.

Игровой процесс заключается в заполнении горизонтального ряда в нижней части экрана фигурами из различных геометрических форм, известных как тетрамино. Довольно сложно описать, какие именно фигуры есть в игре, поэтому проще показать пример: это могут быть фигуры, состоящие из четырех квадратов (квадрат, "буква T", "буква L", "буква S", "буква Z" и "буква J").

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments2

Запуск аналогов ChatGPT на домашнем ПК в пару кликов и с интерфейсом

Level of difficultyEasy
Reading time6 min
Views198K

--- Обновление статьи 9 Августа 2023 ---

В течении последнего полугода в сфере текстовых нейронок всё кипит - после слитой в сеть модели Llama, aka "ChatGPT у себя на пекарне" люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен, а хорошие по мощности нейронки можно запускать локально.

Основная проблема в том, что всё это требует глубоких технических знаний.

Но в этой статье я расскажу, как запустить добротную нейросеть на домашнем ПК с 16ГБ ОЗУ в несколько кликов. Буквально в несколько кликов - копаться в консоли не придётся.

Читать далее
Total votes 117: ↑116 and ↓1+142
Comments180

Как избежать отказа Минцифры при подаче заявки в реестр российского ПО?

Level of difficultyEasy
Reading time5 min
Views3.7K

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

Меня зовут Софья, я IP/IT юрист Центра интеллектуальной собственности «Сколково». Мы с коллегами на постоянной основе сопровождаем большое количество заявок в реестр российского ПО (Реестр). В этой статье я хочу поделиться опытом и разобрать наиболее типичные ошибки при включении сведений о ПО в Реестр.

Читать далее
Total votes 19: ↑9 and ↓10+3
Comments9
1
23 ...

Information

Rating
Does not participate
Registered
Activity

Specialization

Chief Technology Officer (CTO), GPGPU Developer