Pull to refresh
83
0
Михаил Зинин @Fyret

Разработчик

Send message

Made at Intel

Level of difficultyEasy
Reading time2 min
Views8.2K

Всем привет. Спешу сообщить, что книжка «Made at Intel» увидела свет. Она по большей части состоит из обработки одноименного цикла статей на Хабре. Но, также, включает некоторое количество Bonus Tracks. 😉

Читать далее
Total votes 70: ↑68 and ↓2+66
Comments14

Как установить Windows 11

Level of difficultyEasy
Reading time10 min
Views74K

Да, статья о том, как установить Windows 11 правильно. Этот процесс нынче сопровождается таким количеством шаманских плясок, что ей-богу, проще Arch устанавливать. Решил вот поместить все познания по этому вопросу из головы в статью.

Читать далее
Total votes 143: ↑121 and ↓22+99
Comments238

Снятие с воинского учета. Дистанционно. Пакет документов

Level of difficultyEasy
Reading time6 min
Views43K

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

Если вкратце, то рабочий кейс, это когда: (А) имеется основание для снятия: уже живете зарубежом полгода, либо имеется иностранный ВНЖ, (B) грамотно составлено заявление на снятие с учета и подписано вашей подписью, (C) в военкомат идет ваш представитель по доверенности, которая оформлена у российского нотариуса или в зарубежном консульстве РФ.

Ниже пояснения и документы. Делайте все красиво, грамотно, и тогда результат будет 👍

Читать далее
Total votes 92: ↑82 and ↓10+72
Comments83

Как работает компьютер: глубокое погружение (на примере Linux)

Level of difficultyHard
Reading time48 min
Views132K



Введение


Я делала много вещей с компьютерами, но в моих знаниях всегда был пробел: что конкретно происходит при запуске программы на компьютере? Я думала об этом пробеле — у меня было много низкоуровневых знаний, но не было цельной картины. Программы действительно выполняются прямо в центральном процессоре (central processing unit, CPU)? Я использовала системные вызовы (syscalls), но как они работают? Чем они являются на самом деле? Как несколько программ выполняются одновременно?


Наконец, я сломалась и начала это выяснять. Мне пришлось перелопатить тонны ресурсов разного качества и иногда противоречащих друг другу. Несколько недель исследований и почти 40 страниц заметок спустя я решила, что гораздо лучше понимаю, как работают компьютеры от запуска до выполнения программы. Я бы убила за статью, в которой объясняется все, что я узнала, поэтому я решила написать эту статью.


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


Более удобный формат статьи.

Читать дальше →
Total votes 152: ↑152 and ↓0+152
Comments36

Вам придётся выбросить все зубы и поставить новые

Level of difficultyEasy
Reading time16 min
Views14K
Наверное, одна из вещей, которых подсознательно боится любой человек перед походом к стоматологу, — это объём вмешательства. Приходишь с жалобой на небольшое щёлканье сустава, а стоматолог печально сообщает, что вам будет нужно поменять левые зубы с правыми и вообще тут нужен новый рот. Давайте выкинем все старые и некрасивые и заменим на новые протезы.

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

Мы всячески выступаем за минимально возможное вмешательство. Свои зубы всегда лучше имплантатов — богатая сенсорика и важный компонент жевательных рефлексов. К сожалению, иногда приходится вмешиваться более радикально, когда других вариантов не остаётся.

Сегодня буду рассказывать про сложные случаи, когда такое радикальное вмешательство действительно необходимо. И нет, тут не подходит причина «я не хочу больше возиться со стоматологией, с искусственными будет проще». Ключевая причина тут — снижение прикуса из-за потери зубов и стираемости. Если ничего не делать — рассыпятся суставы, начнутся хронические головные боли и начнут страдать мышцы.

image
Рентген до/после тотального протезирования
Читать дальше →
Total votes 34: ↑33 and ↓1+32
Comments22

Самый детальный разбор закона об электронных повестках через Госуслуги. Как сняться с военного учета удаленно

Level of difficultyEasy
Reading time19 min
Views231K

Новый закон об электронных повестках потенциально касается практически всех российских мужчин от 18 до 70 лет. Я узнал у адвоката со специализацией в вопросах мобилизации, чем конкретно нам грозят эти нововведения, и можно ли как-то «выписаться из военкомата» удаленно.

Читать далее
Total votes 339: ↑300 and ↓39+261
Comments612

Продать российскую недвижимость без возвращения в РФ: руководство для IT-специалиста

Reading time5 min
Views21K

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

Моя история – типичная для айтишников в последние месяцы. Правда, без осенних драматических перемен, потому что я выехал раньше, еще летом.

IT-компания, в которой я работаю четвертый год, была создана на деньги зарубежных инвесторов. Весной повисла неизвестность – у компании возникло много проблем из-за санкций. Летом до нас довели информацию: российский офис меняет расположение. Условием сохранения рабочего места был переезд. Затраты на релокацию и съем жилья предлагалось компенсировать.

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

В общем, я уехал...

Что было дальше - читаем далее
Total votes 114: ↑60 and ↓54+6
Comments72

Руководство по CMake для разработчиков C++ библиотек

Reading time18 min
Views76K

Данное руководство позволит читателю составить полную картину того, как организовать сборку C++ библиотек с использованием современных возможностей CMake. Предполагается, что читатель имеет представление о базовых понятиях из мира CMake и динамических/статических C++ библиотек, так как в руководстве они могут не объясняться.

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

Элементы языка С, которые являются неподдерживаемыми в языке С++

Reading time7 min
Views32K

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

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

Разумеется, язык С имеет много существенных отличий от языка С++, т.е. не составит никакого труда привести примеры несовместимостей, основанные, скажем, на ключевых словах или других очевидных эксклюзивных свойствах С99. Таких примеров вы не найдете в списке ниже. Мой основной критерий для включения примеров в этот список заключался именно в том, что пример кода должен выглядеть на первый взгляд достаточно "невинно" для С++-наблюдателя, т.е. не содержать бросающихся в глаза С-эксклюзивов, но тем не менее являться специфичным именно для языка С.

Читать далее
Total votes 140: ↑139 and ↓1+138
Comments80

Альтернативы исключениям С++ и зачем они нужны

Reading time10 min
Views14K

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

Читать далее
Total votes 29: ↑25 and ↓4+21
Comments40

Мой опыт технического собеседования: как не превратить его в экзамен и найти профпригодного сотрудника

Reading time21 min
Views28K
image

Привет, Хабр! Меня зовут Леонид Титов, я бэкенд разработчик в #CloudMTS. Так уж сложилось, что я не только пишу код, но и иногда собеседую кандидатов. Мне нравится процесс, и, думаю, у меня это получается.

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

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

Еще я поделюсь неожиданными впечатлениями от ситуации, когда оказался «по ту сторону», лайфхаками, фейлами и неплохо зарекомендовавшими себя практиками. Про soft skills тут ничего не будет — это отдельная важная тема. Прежде всего мы затронем вопрос профпригодности, определения ее наличия или отсутствия. Во второй половине статьи приведу собственный список вопросов, переведенный на русский, с комментариями.
Читать дальше →
Total votes 60: ↑48 and ↓12+36
Comments68

Зачем С++ в Такси? Доклад Яндекса

Reading time21 min
Views17K
Бэкенд первой версии Яндекс.Такси, которая вышла в 2011 году, был написан на Python. Мы довольно долго не меняли основной язык, но постепенно пришли к идее о необходимости С++ в стеке технологий. Перед вами доклад о том, что мы переписали в первую очередь и почему, а также о трюках С++, которые помогают нам справляться с ростом.

— Добрый день. Меня зовут Александр Голубев, и сегодня я вам расскажу, зачем C++ появился в Такси.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Comments18

Does the latency matter?

Reading time12 min
Views8.9K

Есть исследование от Google, которое говорит, что если ваш сайт открывается больше трех секунд, то вы потеряете около 40% десктопных пользователей и более 50% — мобильных. Еще есть репорт от Amazon, который говорит, что для Amazon каждые 100 мс дополнительного latency стоит им 1% продаж. В объемах Amazon это миллионы долларов.

В зависимости от вашего бизнеса вам стоит тоже ответить на вопрос: Does the latency matter?

Я работаю как системный инженер уже более 8 лет. Хочу поделиться опытом, который получил в процессе решения задач в компании Big Data Technologies. У нас есть какой-никакой highload. В пике это 30 тысяч rps, и вопрос с latency довольно остро стоит перед бизнесом.

Читать далее
Total votes 46: ↑45 and ↓1+44
Comments3

Закалка тимлида: как вывести проект из пожара, не сгореть самому и не спалить команду

Reading time23 min
Views19K

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

На прошедшей в апреле конференции TeamLead Conf 2021 я поделился своим опытом, как вытащить проект из пожара и обойтись без человеческих жертв. Под катом моя история, а если предпочитаете смотреть — вот запись выступления.

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

Книга «Облачные архитектуры: разработка устойчивых и экономичных облачных приложений»

Reading time19 min
Views5.5K
image Привет, Хаброжители! Облачные вычисления — это, пожалуй, наиболее революционная разработка в IT со времен виртуализации. Облачно-ориентированные архитектуры обеспечивают большую гибкость по сравнению с системами предыдущего поколения. В этой книге продемонстрированы три важнейших аспекта развертывания современных cloud native архитектур: организационное преобразование, модернизация развертывания, паттерны облачного проектирования.

Книга начинается с краткого знакомства с облачно-ориентированными архитектурами — на примерах объясняется, какие черты им присущи, а какие нет. Вы узнаете, как организуется внедрение и разработка облачных архитектур с применением микросервисов и бессерверных вычислений как основ проектирования. Далее вы изучите такие столпы облачно-ориентированного проектирования, как масштабируемость, оптимизация издержек, безопасность и способы достижения безупречной эксплуатационной надежности. В заключительных главах будет рассказано о различных общедоступных архитектурах cloud native, — от AWS и Azure до Google Cloud Platform.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments3

Серебряная пуля геораспределенных систем

Reading time11 min
Views3.8K

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

Я — руководитель департамента эксплуатации и разработки сервисных систем ECOMMPAY IT. В своем докладе на конференции HighLoad++ Весна 2021 я рассказал, правда ли, что геораспределенные системы потенциально могут повышать надежность. И разобрал ситуации, когда геораспределенность не помогает, а добавляет потенциальных проблем и заставляет задумываться о новых вещах. Расшифровку доклада читайте под катом.

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments2

Внутренности Linux: как /proc/self/mem пишет в недоступную для записи память

Reading time7 min
Views8.8K

Странная причудливость псевдофайла /proc/*/mem заключается в его «пробивной» семантике. Операции записи через этот файл будут успешными даже если целевая виртуальная память помечена как недоступная для записи. Это сделано намеренно, и такое поведение активно используется проектами вроде компилятора Julia JIT или отладчика rr.

Но возникают вопросы: подчиняется ли привилегированный код разрешениям виртуальной памяти? До какой степени оборудование может влиять на доступ к памяти ядра?

Мы постараемся ответить на эти вопросы и рассмотрим нюансы взаимодействия между операционной системой и оборудованием, на котором она исполняется. Изучим ограничения процессора, которые могут влиять на ядро, и узнаем, как ядро может их обходить.
Total votes 33: ↑31 and ↓2+29
Comments1

Топ 6 библиотек Python для визуализации: какую и когда лучше использовать?

Reading time13 min
Views62K

Если вы только собираетесь начать работу с визуализацией в Python, количество библиотек и решений вас определенно поразит:

- Matplotlib

- Seaborn

- Plotly

- Bokeh

- Altair

- Folium

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

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

C++17. Функция стандартной библиотеки std::launder и задача девиртуализации

Reading time34 min
Views27K

В этой статье мы попробуем разобраться с одним из самых неоднозначных и непонятных нововведений стандарта C++17 — функцией стандартной библиотеки std::launder. Мы посмотрим на std::launder с другой стороны, посмотрим на источник. Разберем что лежит в основе функции на примере решения задачи девиртуализации и реализации виртуальных указателей в LLVM.


Читать дальше →
Total votes 70: ↑70 and ↓0+70
Comments72

Information

Rating
Does not participate
Registered
Activity