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

Пользователь

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

Лучшие страны с визами для цифрового кочевника

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

Коста-Рика — одна из стран со специальной визой для удалёнщиков

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


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


Если вы хотели куда-то поехать и спокойно жить, не бросая своей текущей работы, вот какие сейчас есть варианты:

Читать дальше →

IT-фирмы в отчаянии из-за нехватки сотрудников. Бонусы выходят на новый уровень

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


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

Читать дальше →

Как запустить свой спутник

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

Что нужно, чтобы запустить свой собственный космический аппарат на околоземную орбиту? Кто-то скажет, что нужна ракета. В целом — верно, но если переходить от теории к практике, то чаще всего владельцу спутника для запуска в космос собственная ракета не нужна. Например, на Земле для перемещения из пункта А в пункт В не обязательно покупать автомобиль, поскольку есть такси, РЖД, «Аэрофлот»… В космонавтике точно так же есть пусковые операторы, которые уже подумали, как удовлетворить потребности всех производителей и пользователей спутников, надо лишь соблюсти формальности и технические требования.
Читать дальше →

Как вырастить тупого ребёнка (научно обоснованные вредные советы)

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

Brain of someone described as an «idiot»

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

Попробуем разобрать эти верования с точки зрения доказательной медицины и пойдём от обратного.

Что мы подразумеваем под умственным развитием


Интеллект (ум) – это способность учиться, делать выводы и решать проблемы. Эти способности закладываются генетически, но развиваются благодаря внешним факторам с момента зачатия до конца жизни.

Набор генов не только определяет ваши свойства, а ещё, сильно упрощая, задаёт возможный диапазон их развития. То есть мы не можем по ДНК отличить гения от среднего, не очень умного человека, но можем влиять на развитие потенциала ребёнка посредством воздействия на генетику эпигенетическими механизмами.

Итак, начнём растить не очень умного ребёнка, пользуясь достижениями современной науки.
Читать дальше →

Почему вообще ломаются импланты (и почему именно они такие дорогие)

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

Так выглядит подготовка к имплантации, проектируем поверх модели конкретного пациента.

Имплант сам по себе очень и очень дешёвый. Это просто металлическая трубка, снаружи у неё — резьба для крепления внутри кости, а внутри — резьба для крепления коронки. По сути, это слот для искусственного зуба или другой конструкции. В целом крепить можно и на правильно забитый кусок канцелярской скрепки, но тогда риски неоправданно увеличатся. Дорогим имплант делают технология изготовления этой самой трубки, которая становится прочнее, инструментарий для установки в комплекте и набор запчастей. Потому что импланты надо поддерживать 30–40 лет, потому что обычно даётся пожизненная гарантия. Попробуйте представить проект с такой гарантией и поддержкой, и вы примерно поймёте, как формируется цена на железку. Остальное — операция, то есть примерно квадратичное увеличение цены за каждый уменьшенный процент серьёзных осложнений за счёт квалификации хирурга и используемого оборудования.

Мы принципиально не используем импланты noname включая всех российских производителей. До наработки ими имени осталось лет так 5–10 по разным оценкам. Сломаться, конечно, может любой, но у производителей с репутацией это случается сильно реже. Но всё равно есть шансы через пять, семь или даже 30 лет после остеоинтеграции получить поломку, особенно если вам под видом обычного хорошего импланта поставили «пиратский».
Читать дальше →

Удаление Whitelist ноутбуков HP на примере HP Pavilion dv6-2135er

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

Удаление Witelist ноутбука HP Pavilion dv6-2135er. Реверс-инжиниринг и модификация дампа bios.

Читать далее

Препарируем дельфина: что внутри у Flipper Zero

Время на прочтение12 мин
Количество просмотров45K
Для того, чтобы эффективно разрабатывать под Flipper, надо не только понимать, как писать код, но и понимать, что внутри у него.

На «больших» компьютерах есть куча уровней абстракции и аппаратных средств сделать жизнь пользователя и разработчика проще. В итоге, даже если вы пишете на голом С, вас все равно не волнует как конкретно по PCI передается информация, как работает система питания процессора и какая там микросхема используется для хранения BIOS/UEFI.



Тут все не так, слишком уж близко к железу происходит разработка. Статья — это краткий экскурс в то, как устроен Flipper с железной точки зрения. Поехали.
Читать дальше →

Что нужно знать, чтобы быть синьором?

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

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

Ну-ка, ну-ка...

Вычитываем прошивку STM32

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

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

Flash Readout Protection (RDP) ключевой компонент в защите, включенный во все линейки микроконтроллеров. Он защищает системную прошивку, сохраненную во внутренней флэш памяти от вычитывания. В зависимости от линейки, могут быть включены дополнительные механизмы, такие как Memory Protection Unit (MPU) и привилегированные / непривилегированные режимы исполнения. Вместе, эти системы призваны повысить защищенность.

Авторы статьи пришли к выводу, что серия мк STM32F0 содержит ряд уязвимостей позволяющих в лаборатории с базовым оборудованием создать установку для вычитывания прошивки. Методы могут комбинироваться для достижения наилучшего результата или позволить работать в RDP level 2.

Узнать подробнее

Что делать, если поймал HardFault?

Время на прочтение6 мин
Количество просмотров37K
Что делать, если поймал HardFault? Как понять, каким событием он был вызван? Как определить строчку кода, которая привела к этому? Давайте разбираться.

Всем привет! Сложно найти программиста микроконтроллеров, который ни разу не сталкивался с тяжелым отказом. Очень часто он никак не обрабатывается, а просто остаётся висеть в бесконечном цикле обработчика, предусмотренном в startup файле производителя. В то же время программист пытается интуитивно найти причину отказа. На мой взгляд это не самый оптимальный путь решения проблемы.

В данной статье я хочу описать методику анализа тяжелых отказов популярных микроконтроллеров с ядром Cortex M3/M4. Хотя, пожалуй, «методика» — слишком громкое слово. Скорее, я просто разберу на примере то, как я анализирую возникновение тяжелых отказов, и покажу, что можно сделать в подобной ситуации. Я буду использовать программное обеспечение от IAR и отладочную плату STM32F4DISCOVERY, так как эти инструменты есть у многих начинающих программистов. Однако это совершенно не принципиально, данный пример можно адаптировать под любой процессор семейства и любую среду разработки.


Читать дальше →

Оцифровка звука на STM32 (АЦП+DMA) и кодирование в Speex для передачи

Время на прочтение7 мин
Количество просмотров50K
image В продолжение своей вчерашней статьи на Geektimes хочу рассказать подробнее про реализацию оцифровки и кодирования звука на микроконтроллере STM32.

В статье покажу как настроить проект в STM32CubeMX, собирать данные с АЦП в два кольцевых буфера посредствам DMA, подключить библиотеку Speex и кодировать данные. Возможно многим материал покажется весьма очевидным, но надеюсь хоть кому-то он будет полезен.

Прошу под кат.
Читать дальше →

Как мы решаем проблему неинициализированной стековой памяти в Windows

Время на прочтение19 мин
Количество просмотров20K
В этой заметке я расскажу в общих чертах о том, как в Microsoft устраняют уязвимости, связанные с неинициализированной стековой памятью, и почему мы вообще этим занимаемся.
Читать дальше →

Щуп осциллографа. Устройство и принцип работы

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

Эта статья для тех кто всегда хотел знать как устроен щуп осциллографа, но боялся спросить. Для тех кто начинает работать с осциллографом, а также для тех кто много лет работает, но никогда не хватало времени и сил для того, чтобы разобрать как устроен щуп(пробник) осциллографа на самом деле. Этот материал основан на статье Doug Ford «The secret world of oscilloscope probes» с некоторыми изменениями и дополнениями. В статье будут рассматриваться только пассивные щупы. Исследование работы будем проводить в популярном симуляторе электронных схем LTSpice. Разберем последовательно назначение и особенности каждого элемента, моделируя эквивалентные схемы начиная от простых вариантов и переходя к более реалистичным. Узнаем кто изобрёл и запатентовал первый прототип этого устройства в том виде в котором он используется сейчас. А также в конце рассмотрим как устроен реальный щуп фирмы Keysight(бывший Agilent) 10073C, вышедший из строя и давший согласие предоставить свои останки на благо научного прогресса.

Все кто работает в области электроники хоть раз сталкивался с измерением с помощью осциллографа. Существует много разновидностей пробников, в основном они делятся на активные и пассивные. Активные пробники могут быть самого разного устройства и назначения, и в этой статье не рассматриваются. Мы обратим внимание на наверное самый распространенный вариант пассивного пробника с коэффициентом деления равным 10 (либо с переключателем режимов 1 или 10) и входным сопротивлением 10 МОм с учетом входного сопротивления осциллографа 1 МОм. В комплекте осциллографа как правило имеется два таких щупа.

Читать далее

Внутренняя и внешняя линковка в C++

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

Представляем вам перевод интересной статьи, который подготовили для вас рамках курса «Разработчик C++». Надеемся, что она будет полезна и интересна для вас, как и нашим слушателям.

Поехали.

Сталкивались ли вы когда-нибудь с терминами внутренняя и внешняя связь? Хотите узнать, для чего используется ключевое слово extern, или как объявление чего-то static влияет на глобальную область? Тогда эта статья для вас.

В двух словах

В единицу трансляции включены файл реализации (.c/.cpp) и все его заголовочные файлы (.h/.hpp). Если внутри единицы трансляции у объекта или функции есть внутреннее связывание, то этот символ виден компоновщику только внутри этой единицы трансляции. Если же у объекта или функции есть внешнее связывание, то компоновщик сможет видеть его при обработке других единиц трансляции. Использование ключевого слова static в глобальном пространстве имен дает символу внутреннее связывание. Ключевое слово extern дает внешнее связывание.
Компилятор по умолчанию дает символам следующие связывания:

  • Non-const глобальные переменные — внешнее связывание;
  • Const глобальные переменные — внутреннее связывание;
  • Функции — внешнее связывание.


Читать дальше →

Как начинался Буран. Луна и Шаттл

Время на прочтение17 мин
Количество просмотров17K
«Буран» стал, пожалуй, последним масштабным техническим достижением советской космонавтики. Огромный космический корабль, запущенный сверхтяжёлой ракетой и совершивший полностью автоматический полёт, он стал настоящим глотком свежего воздуха для народа задыхающейся страны. Его разработчики прошли длинный путь, начало которого мы рассмотрим в этой статье.

Предпосылки


Для того, чтобы понять, почему «Буран» стал именно таким, нам следует вернуться в конец шестидесятых годов и переместиться в США. Там завершалась подготовка к лунным миссиям, однако чиновники NASA уже думали над тем, что делать дальше. К началу 1969 года стало ясно, что программа «Аполлон» не будет продолжена после выполнения первичных задач, а значит космическому агентству придётся что-то изобретать, чтобы сохранить пилотируемую программу. Рабочая группа по космосу под руководством вице-президента страны Спиро Агню обратилась к четырём компаниям для того, чтобы собрать их предложения по многоразовой космической системе. По планам рабочей группы такая система позволила бы организовать в будущем экспедицию на Марс, а также снабжать масштабную космическую станцию и даже космический завод.


Старт Аполлона-11 к Луне
Читать дальше →

Коля и его истории про фулфилмент

Время на прочтение11 мин
Количество просмотров11K
Фулфилмент — весь путь вещи, заказанной вами в интернете, до порога вашего дома. Он начинается где-то на далёком складе: вещь нужно найти, собрать и упаковать. Этот этап не всегда простой, он гораздо менее заметен, чем доставка, но не менее интересен. Сейчас я постараюсь вам это доказать.


Эффективность процесса зависит от его устройства, но если я сходу попробую объяснить, как устроены склады большого маркетплейса, мой рассказ вызовет много вопросов «Почему так сложно?». Поэтому я начну с основ процесса сборки, а потом постепенно, в несколько шагов, увеличу сложность и покажу, какую задачу решает каждое из усложнений. Мне понравились посты на Хабре про стажёра Васю, поэтому добавлю нового вымышленного персонажа — Колю. Он пройдёт с нами весь путь и настроит процессы на складе. Поехали!
Читать дальше →

Собеседования в Яндекс: взгляд бэкендера

Время на прочтение12 мин
Количество просмотров52K
Меня зовут Максим Бабенко, и, может быть, вы знаете меня как преподавателя ШАДа (или как автора рассказа про технологию YT на Хабре).

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

В Яндексе я работаю уже больше 12 лет и повидал все наши изменения процесса собеседования. Сегодня я расскажу о наших интервью, попробую разобрать самые популярные мифы и объяснить, чем они обусловлены.
Читать дальше →

Дефицита нет, платить не нужно

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

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

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

Я берусь доказать, что основной тезис ошибочен. В РФ нет дефицита кадров. 

Читать далее

Как мы тестируем системы микрофонов на STM32: опыт разработчиков устройств Яндекса

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


Привет, я Геннадий «Крэйл» Круглов из команды аппаратных решений Яндекса.

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

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

Это кажется несложным только на первый взгляд. В этом материале я объясню, как мы решили задачу передачи звука с семи микрофонов с PDM-интерфейсом на компьютер через USB, с какими аппаратными и программными нюансами столкнулись и как их преодолели (спойлер: этот подход может быть адаптирован для матриц с числом микрофонов ≤ 8). В конце поста поделюсь ссылкой на стрим, где я показываю процесс разработки на микроконтроллере STM32, и расскажу о следующей серии.
Читать дальше →

SIM800L + STM32 Bluepill + Rust. Как оно?

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

Несколько лет назад сделал себе на Arduino блок мониторинга питания дачного котла от UPS. Как показала практика, связка Arduino MEGA + шилд на SIM900 со стандартными библиотеками работает очень нестабильно. Периодически всё зависает, само перегружается и т.д. Отладить это невозможно, поэтому стал искать другие варианты. В результате решил всё переделать на современных технологиях: взял за основу STM32 Bluepill, приобрел на али модуль SIM800L, но самое главное – весь код решил написать на Rust, купился на обещания его высокой надёжности. Что из этого получилось читайте дальше.

Нажми меня

Информация

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