Pull to refresh
18
0

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

Send message

Как убрать боль в спине и сутулость

Level of difficultyEasy
Reading time4 min
Views2.6K

Из‑за сидячей работы я превратилась в один сплошной мышечный зажим. Примерно год назад меня начали беспокоить боли в спине, как говорил один мой знакомый невролог «если перестать тренироваться, мышцы перестают быть эластичными».

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

Читать далее
Total votes 9: ↑6 and ↓3+3
Comments0

Приточка на минималках или как сделать дёшево, быстро и качественно одновременно

Level of difficultyEasy
Reading time9 min
Views8.5K

Вопрос — нужен ли кондиционер в своём доме или на даче в средней полосе России? Странный вопрос, скажете вы — температура летом зашкаливает же за 30 градусов!

Но этот вопрос становится не таким очевидным, когда вспомним, что:

..лето в Подмосковье имеет свои особенности.

Как воспользоваться особенностями лета
Total votes 9: ↑6 and ↓3+5
Comments32

Битовые поля в Rust

Level of difficultyEasy
Reading time5 min
Views1K

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

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

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

Как мы учим языки. Часть 2. Почему вы не выучите язык в Дуалинго

Level of difficultyEasy
Reading time9 min
Views61K

У Duolingo огромная база пользователей — по несколько десятков миллионов человек на каждый популярный язык. Естественно, они выбрали это приложение не просто так: у такого сервиса есть большое количество плюсов, а самое главное — «ощущение, что я учу язык». О том, что не так с приложениями для изучения языков и как мы осваиваем языки, мы поговорим в этой статье.

Читать далее
Total votes 51: ↑45 and ↓6+51
Comments138

Все об охранных системах для дома в 2024 году

Reading time10 min
Views8.8K

В 2016 году мы с мужем приобрели небольшой дом в Подмосковье. По охране сильно не заморачивались, так как у нас был сторож на поселок. А в 2022 к нам влезли воры: все что смогли — вынесли, что не смогли — сломали. Кто‑то из соседей вызвал полицию, но она приехала только через 50 минут.

Этим летом воры влезли к нашим соседям. После этого с мужем решили ставить охранную систему.

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

Читать далее
Total votes 26: ↑18 and ↓8+12
Comments47

Транспьютеры — революция многопроцессорных систем, которой не случилось

Level of difficultyEasy
Reading time9 min
Views9.6K

В самом начале 80-х годов двадцатого столетия, как и много раз в более поздние годы, возникло мнение, что обычные процессоры достигли предела своей производительности. Тогда, по крайней мере, к этому имелись все предпосылки: имевшиеся на тот момент технологии уже не позволяли разместить больше логических схем на одном кристалле. Традиционные компьютеры с архитектурой CISC приблизились к пределу своих вычислительных возможностей, и было неясно, можно ли его преодолеть. Именно тогда на свет появились транспьютеры — чипы с принципиально новой архитектурой, которую сразу же окрестили научно-техническим прорывом, революционной разработкой и будущим компьютерных технологий. О самих транспьютерах и о том, как сложилась их судьба — наш сегодняшний рассказ.
Читать дальше →
Total votes 38: ↑37 and ↓1+51
Comments40

C++ с точки зрения Rust-разработчика: достоинства и недостатки

Reading time8 min
Views12K

Я профессионально программирую на Rust и, признаться, немного этот язык продвигаю. Поэтому можете себе представить глубину моего расстройства, когда моя младшая сестрёнка, почти не умеющая программировать, обратилась ко мне и попросила научить её C++. Я попытался её отговорить, сказав, что однажды она будет сидеть за отладкой ошибок сегментирования, вооружившись Valgrind и вспоминать этот наш разговор, размышляя, а где же она свернула не туда. Но она оказалась ещё упрямее меня и настаивала: хочу выучить язык программирования, которым действительно пользуются люди.

Я не притрагивался к C++ с тех пор, как ещё в старших классах разрабатывал игры на Cocos2D-X, но решил, что сохранившихся у меня туманных воспоминаний о «правиле трёх» (или сколько там было? Пять? Ноль?) и прочих подобных материях будет более чем достаточно, чтобы решить такую задачу. Оказалось, что и мне требуется кое-что подучить, но я с удовольствием узнал, что существует большая аудитория, с которой можно поделиться этими знаниями. Почти любую концепцию из C++ легко понять, если объяснить её в ключе «о, эта как та штука из Rust».

Притом, что C++ местами несимпатичен, этот язык по-своему красив. Я и так это знал, но, когда взялся заново учиться C++, мне стало только яснее: если Rust в какой-то степени и превосходит C++ (допустим, вы верите, что это так), то лишь потому, что сам Rust стоял на плечах такого гиганта как C++.

Так что мы потратили пару недель, проштудировав серию руководств по OpenGL от ютубера под ником TheCherno (кстати, сама серия отличная). Две недели спустя нам удалось на экране единственный статичный голубой квадратик. Я уже стал опасаться, а не начнёт ли моя сестра сомневаться, стоило ли таким образом изучать разработку игр и пытаться изобразить что-нибудь на C++. Так что тогда я решил, что следует отбросить руководства господина Черно и взяться за разработку игры всерьёз.

Читать далее
Total votes 27: ↑21 and ↓6+27
Comments65

Systemd для начинающих: разбор юнитов и их функций

Reading time8 min
Views11K

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

Systemd — это init процесс, который запускается при загрузке ядра операционной системы linux и его задачей является форкать другие процессы. Информацию о том, какие процессы необходимо исполнить он берет из, так называемых “юнитов” (systemd unit - https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html). Юниты бывают различных типов, каждый из которых выполняет определенную задачу.

Читать далее
Total votes 18: ↑15 and ↓3+14
Comments4

Руководство по межпроцессному взаимодействию (IPC) в Linux — Часть 2

Level of difficultyMedium
Reading time15 min
Views2.4K

Представляю вашему вниманию вторую часть перевода статьи A guide to inter-process communication in Linux.

Первая часть перевода была посвящена общему введению в курс дела и механизму разделяемого хранилища (shared storage). В этой части будут рассмотрены механизмы каналов (именованных и неименованных) и очереди сообщений.

Приятного чтения!

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

Зачем в iPhone чип, который убивает FaceID

Level of difficultyMedium
Reading time9 min
Views49K

Разбирался я в низкоуровневой работе камер iPhone, и дошёл до FaceID — системы распознавания лиц, используемой Apple для разблокировки смартфона. И наткнулся внутри на интересную вещь: чип, единственное предназначение которого в том, чтобы вывести из строя FaceID. Навсегда.

О том, как в iPhone вообще работает FaceID, где там этот чип стоит, что именно он делает, зачем его сделали таким злым, и как в ремонте справляются с этой напастью — под катом!

Читать далее
Total votes 620: ↑619 and ↓1+733
Comments176

Микроволновка vs Wi-Fi

Level of difficultyEasy
Reading time3 min
Views7.3K

Микроволновая печь греет еду волной 2,4 ГГц, на этой же частоте работает обычный Wi-fi роутер. Измеряем подручными средствами Wi-fi из микроволновки.

Читать далее
Total votes 14: ↑13 and ↓1+12
Comments54

Доплеровское Cмещение Несущей Спутников GPS

Level of difficultyEasy
Reading time5 min
Views2.6K

В этом тексте я намерен выяснить, как быстро меняется частота несущей спутников GPS в результате эффекта Доплера.

Также намерен выяснить в каких диапазонах стоит ожидать варьирование значения несущей частоты для GPS спутников и почему. Задачу буду решать в упрощенном виде, численно.

Для решения этой задачи достаточно обыкновенной школьной математики и физики.

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

Описание триггеров в терминах сигналов

Level of difficultyEasy
Reading time2 min
Views1.8K

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

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

Сигналы не являются всеобщей заменой 1 и 0 для всех случаев. На нашем канале есть десятки лекций, где они необходимы для расчетов, например, ДНФ, карты Карно и т.п. Однако в некоторых случаях, например при описании триггеров, единицы и нули затуманивают смысл, порождая конструкции типа Q(t+1) и им подобные. Все читатели, считающие, что 1 и 0 - единственный способ описания логических схем, можете не читать дальше, дабы не травмировать психику :), но перед этим ответьте себе на 3 вопроса: Почему R(сброс) счетчиков выполняют всегда прямым входом, почему вход CS(chip select) всегда инверсный и какой логический уровень(1 или 0) имеет сигнал на неподключенном входе?

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

Читать далее
Total votes 7: ↑0 and ↓7-7
Comments15

Компиляция математического выражения из строки динамически во время выполнения в C# (.NET)

Level of difficultyMedium
Reading time7 min
Views1.7K

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

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

Руководство Google по стилю в C++: 2019 — 2024

Level of difficultyEasy
Reading time6 min
Views13K

Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Однако, любой стайлгайд со временем корректируется и дорабатывается: иногда этому способствуют обновление стандартов языка, иногда меняются тенденции.
В статье приведены изменения Руководства Google по стилю в C++ за 5 лет: с 2019 по 2024.
Краткое содержание изменений:
+ C++20
- NULL
+ концепты 
- #pragma
+ constinit
- std:hash
+ consteval
- u8
+ аргументы-ссылки
- ENUM_VALUE_NAME
+ повесточка и "they" в единственном числе
- здравый смысл

Читать дальше →
Total votes 17: ↑15 and ↓2+19
Comments36

Как раздать модифицированный трафик с компьютера на телевизор за роутером

Level of difficultyEasy
Reading time7 min
Views16K

Бывает, что YouTube без тормозов хочется посмотреть на телевизоре. И если это телевизор на Android (либо с Android-приставкой), то тут на помощь приходят ByeDPIAndroid или PowerTunnel. Но что делать, если в наличии какой-нибудь Smart TV не на Android (например, какой-нибудь LG или Samsung)?

Очевидным решением тут будет модификация трафика на роутере. Но при всех преимуществах такой вариант может не подойти по разным причинам:

• не на каждый роутер можно установить zapret;

• не каждый человек обладает для этого нужными навыками;

• не у всех есть желание разбираться в том, как это делается и т. д.

Некоторые роутеры также прямо в родной прошивке поддерживают подключение через прокси или VPN. Но такая аппаратура есть далеко не у всех, а ютубчик смотреть всё равно хочется. А вот покупать новый роутер — не особо.

В итоге в цепочке ТВ → роутер → ПК в нашем распоряжении остаётся компьютер. Вот им мы и займёмся.

Читать далее
Total votes 14: ↑12 and ↓2+11
Comments25

Обходим блокировку VPN

Level of difficultyMedium
Reading time2 min
Views65K

Мой провайдер помимо замедления (читай полная блокировка) YouTube так-же стали блокировать соединения с моими рабочими VPN. Работодатель не очень любит, когда на встречах на вопрос о прогрессе, я неделю отвечаю, что у меня не работает VPN! Своими действиями, мой провайдер сам меня подтолкнул к поиску обходных путей.

Сразу скажу, обходной путь придумал не сам, мне его подсказал автор проекта zapret, а точнее его комментарий, более того, я использую его проект, чтоб смотреть нормально YouTube. Спасибо огромное!

Добавлю, я использую nftables и nfqws, если этот вариант работает у меня — это не значит, что оно заработает и у вас! Возможно, вам придётся изменить некоторые параметры.

Читать далее
Total votes 36: ↑34 and ↓2+39
Comments81

Корутины? Простейшая имплементация на C, protothread и Arduino

Level of difficultyEasy
Reading time4 min
Views7.6K

*иногда хочется уйти от управляемых будней

Корутины — это функции, которые могут приостанавливать своё выполнение и возобновлять его позже, сохраняя своё состояние между вызовами. Это позволяет выполнять несколько задач одновременно без необходимости создания отдельных потоков или процессов.

Читать далее
Total votes 14: ↑13 and ↓1+17
Comments17

Гарри Поттер и имя типа в компайлтайм

Level of difficultyMedium
Reading time6 min
Views3K

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

Wingardium Leviofa
Total votes 12: ↑12 and ↓0+16
Comments12

Магнитная мешалка с подвыподвертом. Как сделать?

Level of difficultyMedium
Reading time4 min
Views6.8K
Как размешать сахар в чае, не опуская в него ложку? Можно позвать Кашпировского, а можно…
Усложним задачу. Пусть вместо чашки будет химическая колба, вместо чая — азотная кислота, а вместо сахара, ну не знаю, что вы там сегодня в ней растворяете на завтрак. Что мы можем сделать? Потрусить или покачать колбу руками? Не выйдет, колба уже присоединена к остальной части химического аппарата и закреплена на штативе. Просунуть стеклянную палочку через горловину и бултыхать ею? Части аппарата могут этому препятствовать, да и герметичность нарушать не желательно, а то и недопустимо. Естественно, есть у химиков специальные насадки, позволяющие без нарушения герметичности пропустить ось мешалки в аппарат. Но есть и более элегантное решение — магнитная мешалка.

Что же это за зверь такой? А очень просто — это прибор, который вращает сильный постоянный магнит под колбой, в то время как внутри колбы находится якорь — магнит поменьше, облачённый в инертную (как правило, фторопластовую, реже — стеклянную) оболочку. Якорь подхватывается вращающимся магнитным полем и делает своё бултыхальное дело внутри колбы. Эстетично, гигиенично, герметично.

Читать дальше →
Total votes 36: ↑36 and ↓0+54
Comments23
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity