Месяц: Ноябрь 2022

  • Компенсация повреждений и сохранение стабильности полета

    от автора

    Современные роботы отличаются от своих предшественников не только улучшенными интеллектуальными способностями, но и маневренностью. Стоит вспомнить видео Boston Dynamics, где инженеры пинают и толкают несчастного робота, демонстрируя его умение сохранять стабильность или восстанавливаться после падения. Но во всех этих роликах робот цел, то есть, как бы мрачно это не звучало, все его конечности на месте.…

  • Борьба с пластиком в ОАЭ

    от автора

    На написание данной статьи подтолкнула публикация на Хабре «Мир тонет в пластике. Вот с чего все началось». Я никогда не отличался осознанным потреблением, не сортировал мусор и не бойкотировал добычу нефти на шельфе. Но переехав в Дубай и начав изучать страну и город, я плотно столкнулся с различными инициативами как Эмиратов, так и Дубая в…

  • Мультиканальная атрибуция в EdTech: ожидание/реальность или что мы вынесли из этого опыта

    от автора

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

  • Считываем и эмулируем карты с магнитной полосой

    от автора

    Приветствую всех! О том, что магнитные карты совсем скоро навсегда уйдут в историю, говорят уже не первый год. Тем не менее, хоть они и постепенно вытесняются другими технологиями (например, RFID, ISO7816), окончательно исчезать они пока даже не собираются. Итак, в данной статье поговорим о том, как работает запись данных на карты с магнитной полосой, разберёмся,…

  • Оптимизация Dockerfile для уменьшения размера и быстрой сборки образов

    от автора

    У каждого образа Docker есть свой размер, который он занимает на жёстком диске. Порой бывает так, что контейнер с запущенным приложением на языке программирования Go, который содержит в себе всего лишь одну строчку с выводом фразы «Hello, world!» может занимать сотни Мб, в то время как существуют образы содержащие легковесные ОС весом всего лишь 5…

  • Зачем __name__ == "__main__"?

    от автора

    В этой небольшой статье мы рассмотрим один из самых популярных «новичковых» вопросов — зачем нам конструкция if __name__ == «__main__».Эта статья ориентирована на начинающих разработчиков, я пытаюсь объяснить тему максимально понятно и доступно. Поэтому где-то лукавлю, где-то преувеличиваю, но это для лучшего понимания, не кидайтесь ананасами :)Прежде чем изучить конструкцию if __ name__ == __»main__»,…

  • Управление загрузками в Xcode

    от автора

    Начиная с Xcode 14, симуляторы для watchOS и tvOS доступны в виде отдельных загрузок (iOS и macOS по-прежнему «встроены»). Данное решение позволяет значительно уменьшать размер загрузки приложения, однако теперь вам придется самостоятельно управлять этими большими (3-4 ГБ) компонентами.При первом запуске Xcode 14 вам будет предложено загрузить дополнительные платформы. Также подсказка появится, когда вы попытаетесь запустить…

  • Как организовать роботизированный сбор показаний пациентов

    от автора

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

  • Посчитайте сумму n-го ряда пирамиды нечетных чисел

    от автора

    Эта задача преследовала меня на двух интервью подряд, и я решил ее!TL;DRdef row_sum(n: int): prev_row: list[int] = [] n_row: list[int] = [] if n > 1: for i in range(1,n*(n-1),2): prev_row.append(i) for i in range(prev_row[-1]+2, prev_row[-1]+(n*2)+2, 2): n_row.append(i) else: n_row.append(n) return sum(n_row)Постановка задачиВообще, на интервью мне ничего толком не объясняли, а только показывали вот это:…

  • 20+ хакерских операционных систем для атаки и защиты

    от автора

    На этот раз речь о различных десктопных Linux-дистрибутивах, но найдется место и Android, и даже Windows. Большинство хакерских ОС отчасти похожи на подборки узкоспециализированных утилит, которые я уже выкладывал. Они представляют собой готовые наборы инструментов с некоторыми предустановками для оптимальной работы — ничего эксклюзивного. Простые скрипты, например, katoolin или PFT за пару команд делают из…