Как стать автором
Обновить
2
0
Герман @naso4ek

Специализация хз

Отправить сообщение

Банановые шкурки на интервью Python-разработчика

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров9.9K

В этой статье я, Евгений Бартенев, техлид и автор курса «Python-разработчик», возьму и рассмотрю не только те «банановые шкурки», которые периодически разбрасываю сам на собеседованиях, но и те, на которых поскальзывались мои коллеги, некоторые наши студенты, да и я сам.

Читать далее
Всего голосов 20: ↑18 и ↓2+16
Комментарии23

Взламываем головное устройство автомобиля Nissan

Время на прочтение22 мин
Количество просмотров17K

В комплекте с моим Nissan Xterra поставлялось современное (на то время) головное устройство с сенсорным экраном, встроенной навигацией, дисплеем камеры заднего вида, мультимедийными функциями и возможностью подключения смартфона. Некоторые из самых продвинутых функций доступны только через приложение NissanConnect, требующее регистрации и подписки. Я никогда не пользовался им и даже не уверен, поддерживается ли оно сейчас.

Разве не здорово было бы добиться выполнения кода на устройстве и даже разрабатывать собственные расширения и приложения?

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

В статье также представлен код, позволяющий воспроизвести эти действия на вашем автомобиле, а также пример приложения, выполняющего задачу логирования GPS-данных. Однако здесь вы не найдёте абсолютно никакой информации по обходу механизмов DRM/защиты от копирования, особенно связанных с навигационными картами и онлайн-сервисами. Весь представленный в статье код и инструкции не дают никаких гарантий, воспроизводите их на собственный риск.
Читать дальше →
Всего голосов 114: ↑112 и ↓2+110
Комментарии26

Увеличение видео 1080P до 4K, или Как я научился не волноваться и полюбил апскейл с помощью нейросетей

Время на прочтение27 мин
Количество просмотров185K
Читая недавно очередную статью про апскейл (Upscale — масштабирование изображения до более высокого разрешения), на этот раз про коммерческий продукт Topaz AI Gigapixel, я оставил комментарий следующий содержания:
Жаль, что пост — простой перевод, хотелось бы сравнения с чем-нибудь бесплатным, вроде того же waifu2x. Полагаю, разницу найти будет очень сложно, даже несмотря на то, что waifu2x предназначена для анимации.
Ну а раз статья была переводом, я решил взять дело в свои руки. Итак, не будем тратить времени, знакомьтесь:


Под катом лонгрид, а также гайды по апскейлу видео с помощью Instant 4K, Waifu2x, Lanczos и Topaz Gigapixel AI.

Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии29

USB монитор из Futaba GP1160A02A

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров26K

В конце 60-ч годов вакуумно-люминесцентные индикаторы создавались как альтернатива газоразрядным, а также в целях загрузить производство электроламповых заводов, так как в те времена лампы уже начали терять актуальность и на их место пришли полупроводники.

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

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

Про один из таких дисплеев, изготовленный по этой технологии и будет рассказано в этой статье, а именно про дисплейный модуль Futaba GP1160A02A.

Эта статья не будет про подключение этого дисплея к какой-нибудь “ардуине” стандартными способами. Это слишком просто и скучно. Речь пойдёт про обход ограничений, наложенных производителем, и попытки выжать из этого дисплея всё, что позволяет технология.

Читать далее
Всего голосов 264: ↑264 и ↓0+264
Комментарии43

Архитектура Хорошо Поддерживаемого драйвера для I2C/SPI/MDIO Чипа (или как писать код по понятиям)

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров8.6K

В программировании микроконтроллеров часто приходится писать драйверы периферийных микросхем. Зачастую это 60% всего кода большинства проектов. В этом тексте я написал несколько общих нюансов разработки драйверов периферийных чипов.

Эти правила "написаны кровь".

Читать далее
Всего голосов 25: ↑18 и ↓7+11
Комментарии24

Коллоквиум по программированию микроконтроллеров

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров15K

Это список вопросов на которые должен уметь ответить тот кто хочет программировать микроконтроллеры и заниматься разработкой электроники. Вопросы в частности взяты из технических собеседований при устройстве на работу в разные компании. Постарался отобрать только самые приближенные к практике вопросы, которые можно выделить после 11 лет insider(ского) опыта.

Если вы знаете адекватные, сложные и интересные вопросы по теме разработки на MCU, то пишите их в комментариях.

Читать далее
Всего голосов 40: ↑18 и ↓22-4
Комментарии126

Когда мы сможем загрузить свой мозг на компьютер?

Время на прочтение8 мин
Количество просмотров10K

«Трон», «Призрак в Доспехах», «Тринадцатый этаж», «Аватар» Джеймса Кэмерона, добрая треть эпизодов Стар Трека… Наше общественное сознание давным-давно готово к тому, что наш мозг можно (и, наверное, нужно?) будет оцифровывать. Но как далеко нам остается до технологии полноценной загрузки сознания? И какой у нас шанс увидеть это в обозримом будущем, хотя бы для Маска и Гейтса?

Читать далее
Всего голосов 36: ↑31 и ↓5+26
Комментарии68

Разработчик с мозгом груга

Время на прочтение14 мин
Количество просмотров86K

Введение


это сборник мыслей о разработке программ собранный разработчиком с мозгом груга

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

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

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

Ещё больше-больше ДУМАЮТ, что они разработчики с большим мозгом и им она тоже не понравится

(груг раньше думал груг с большим мозгом, но потом всё понял)

это ладно!

груг надеется, что тебе понравится читать и может ты научишься на много-много ошибка груг совершил за длинную жизнь программиста
Читать дальше →
Всего голосов 261: ↑235 и ↓26+209
Комментарии81

NES, реализация на FPGA

Время на прочтение15 мин
Количество просмотров187K
Добрый день!

Я хочу рассказать о проекте игровой консоли Nintendo Entertainment System (NES) в реализации на FPGA. На постсоветском пространстве она известна как Dendy.

NES на ПЛИС
Желающих посмотреть видео и поностальгировать прошу под кат.
Ностальгировать
Всего голосов 229: ↑228 и ↓1+227
Комментарии77

STM32MP1 запуск Ubuntu 22.04

Время на прочтение40 мин
Количество просмотров15K

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

Совсем недавно, компания Canonical, выпустила Ubuntu 22.04, "потыкав" ее на виртуалке, решил накатить апдейт на рабочий ноут, пока накатывались обновления, перебирал девкиты в полке, нашел запыленную STM32MP157c-DK2 отладучную платку от старого проекта, ну и подумал - почему бы и не попробовать запустить 22-ю убунту на этом CPU.

В интернете полно статей как собрать Yocto или Buildroot под данный процессор, но ни одной как собрать свой собственный дистрибутив, по крайней мере, я не встречал.

Читать далее
Всего голосов 49: ↑49 и ↓0+49
Комментарии21

Перестаньте писать классы

Время на прочтение9 мин
Количество просмотров184K
Фото Джэка Дидриха из профиля на G+ Признак того, что объект не должен быть классом — если в нём всего 2 метода, и один из них — инициализация, __init__. Каждый раз видя это, подумайте: «наверное, мне нужна просто одна функция».

Каждый раз когда из написанного класса вы создаёте всего один экземпляр, используете только раз и тут же выбрасываете, следует думать: «ой, надо бы это отрефакторить! Можно сделать проще, намного проще!»

Перевод доклада Джэка Дидриха, одного из ключевых разработчиков языка Питон. Доклад прозвучал 9 марта 2012 на конференции PyCon US.
Читать дальше →
Всего голосов 234: ↑206 и ↓28+178
Комментарии148

Асинхронный телеграм-бот с вебхуками на Heroku

Время на прочтение7 мин
Количество просмотров26K

Разрабатывая телеграм-бота для проведения викторины, я даже не задумывался каким количеством человек он будет использоваться и как оказалось очень зря …

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

Читать далее
Всего голосов 5: ↑3 и ↓2+1
Комментарии11

Атрибуты Xорошей PCB

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров14K

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

Этот перечень сформировался в результате реальных инцидентов.

Читать далее
Всего голосов 44: ↑37 и ↓7+30
Комментарии82

Как найти идею для диплома? Придумать сотню и удалить девяносто девять

Время на прочтение11 мин
Количество просмотров23K

Вот мои условия:

1.     Нужно найти тему для диплома, причем чем скорее, тем лучше.

2.     Проект должен производить впечатление.

3.     Перспективы для монетизации и расширения будут плюсом.

4.     Процесс подготовки не должен быть смертельно скучным.

Как найти подходящую тему? Можно искать идеи по очереди, исследовать и проверять.
Но мне нравится придумывать идеи, так что я займусь этим.

Ведь все что нужно, это одна хорошая мысль.

Читать далее
Всего голосов 30: ↑28 и ↓2+26
Комментарии35

Запись звука и отображение громкости на Android

Время на прочтение4 мин
Количество просмотров6.6K
Всем привет! Меня зовут Юрий Дорофеев, я Android-разработчик и преподаватель в Mail.ru Group. Если вы когда-нибудь записывали аудиосообщения, то видели, как анимируется интерфейс в зависимости от громкости вашего голоса. Давайте повторим этот эффект:


Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии4

C#: Автоматизация Android без посредников (adb)

Время на прочтение6 мин
Количество просмотров15K

Часто приходится автоматизировать то или действие, андроид приложения не являются исключениями.Конечно, все в этом случае прибегают к различным фреймворкам - Appium, Detox, UI Automator, Ranorex, но все эти приложения созданы для тестирования, соответственно потребляют больше ресурсов и их скорость оставляет желать лучшего.Однако есть выход - автоматизировать приложения напрямую с adb, для этого я и дописал эту библиотеку. Она ничем не уступает по возможностям этим фреймворкам , но при этом является достаточно простой и легко разворачиваемой на любой машине. Об этой библиотеке и пойдет речь в статье.

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии8

Разработка Tizen-приложений для Samsung Smart TV: полный гайд для Javascript-разработчиков

Время на прочтение12 мин
Количество просмотров41K

Эта статья рассказывает про удивительные приключения JS-разработчиков в мире ОС Tizen. В ней будет и пошаговая настройка рабочего окружения, и подключение «умного» телевизора Samsung вместе с пультом, и, конечно, сам процесс разработки и публикации приложения для Tizen Store — с примерами и подводными камнями. 

Так что если вы разделяете наше мнение о том, что Javascript — лучший язык программирования, потому что он работает практически везде – от домашнего Smart TV до кораблей SpaceX, то добро пожаловать под кат.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии5

Архитектура Playstation 2

Время на прочтение25 мин
Количество просмотров30K

Оригинальная Playstation 2, выпущенная 04.03.2000 в Японии, 26.10.2000 в Америке и 24.11.2000 в Европе

Краткое введение


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

Эта машина даже близко не сравнится по простоте с первой Playstation, но вскоре мы узнаем, почему она не разделила судьбу рассмотренных нами ранее сложных консолей.
Всего голосов 38: ↑38 и ↓0+38
Комментарии6

Взлом reCAPTCHA v2

Время на прочтение6 мин
Количество просмотров13K

Назойливая игра, разметка данных для google. Если, занимаетесь сбором доступной информации, с ресурсов не принадлежащим вам, и не сумели реализовать решение для преодоления этой преграды, советы от начинающего разработчика вам помогут. Опишу один из способов, основанный на детекторе объектов, хорошо справляется с типом 4x4, хуже с 3x3. Использую архитектуру YOLO, "золотая середина", точность/производительности, подход одинаков для всех детекторов. В коммерческом продукте, стоит использовать "ансамбль" нейронных сетей, к детектору, добавить классификацию каждой ячейки, повысит общую точность с приемлемой производительностью. Так же эту задачу можно решить, использую обучение с подкреплением A2C/DQN, или любую современную архитектуру, трансформеры, генеративно состязательные сети.

Читать далее
Всего голосов 13: ↑12 и ↓1+11
Комментарии2

Первый опыт с Raspberry Pi или микросервисы для дома

Время на прочтение14 мин
Количество просмотров15K

Данная статья будет полезна тем, кто никогда прежде не экспериментировал с Raspberry, но считает, что этому самое время.

Привет, Хабр! Тенденция приписывать любому техническому устройству эпитет «умный» достигла, кажется, своего апогея (по количеству употребления, разумеется). К тому же, большинство моих знакомых не из IT-сферы до сих пор наивно полагают, что каждый уважающий себя программист живет в самом «умном» доме во всём квартале, у которого вместо стен — серверные стенды исполинских размеров, а в свободное от работы время этот же человек-программист выгуливает «умную» собаку из Boston Dynamics. Дабы не отставать от этих современных стандартов, мы с товарищем решили собственноручно создать что-то «умное», но несложное, поскольку в школе схемотехника и конструирование роботов обошли нас стороной.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии8

Информация

В рейтинге
Не участвует
Откуда
Украина
Зарегистрирован
Активность