Pull to refresh
-23
0
Send message

Матрицы Паули. Просто. Для обычной физики и графики

Level of difficultyMedium
Reading time5 min
Views7.6K

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

В-третьих, основной рецепт во введении, на первой же странице.

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

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

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

Простой расчет контрольной суммы

Reading time12 min
Views216K
При передачи данных по линиям связи, используется контрольная сумма, рассчитанная по некоторому алгоритму. Алгоритм часто сложный, конечно, он обоснован математически, но очень уж неудобен при дефиците ресурсов, например при программировании микроконтроллеров.



Чтобы упростить алгоритм, без потери качества, нужно немного «битовой магии», что интересная тема сама по себе.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments26

Электронный конструктор, не бьющий током

Reading time13 min
Views38K

Дайте угадаю: вы в детстве заворожённо рассматривали печатные платы? Вам было любопытно узнать, как работает этот мини-город из разноцветных деталек? Возможно, у вас был опыт сборки электронных схем по книгам Борисова и Свореня? Советский сорокаваттный паяльник, кусочек канифоли в спичечном коробке? А ещё штаны с намертво влипшей в ткань каплей припоя?

Современные программные средства иллюстрируют процессы, происходящие в электрических цепях, с недосягаемыми для радиолюбителей недавнего прошлого наглядностью и интерактивностью. Они визуализируют протекающие по схеме токи и показывают напряжения в её различных частях. Это снижает порог понимания для людей, которым сложно даются абстрактные знания и язык формул.
Читать и смотреть картинки
Total votes 163: ↑163 and ↓0+163
Comments153

Как веб-технологии помогают искать золото

Level of difficultyEasy
Reading time6 min
Views1.9K

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

Читать далее
Total votes 13: ↑13 and ↓0+15
Comments5

Они проводили секретные эксперименты над собой; их открытия помогли выиграть войну

Level of difficultyEasy
Reading time14 min
Views21K

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

Я биомедицинский инженер и исследователь в Медицинской школе Университета Дьюка. Я изучаю способы выживания людей в экстремальных условиях, например под водой или в космосе. Я не одинока в использовании собственного тела в исследованиях; на самом деле, за исключением таких областей, как химиотерапия и хирургия мозга, эта практика удивительно распространена. Однажды доктору Шерри Фергюсон, ещё одному исследователю подводного плавания, понадобилась камера, в которой воздух мог бы находиться под давлением только вокруг ног человека. Проектируя аппарат, она постоянно испытывала его на себе. В процессе работы оказалось, что её выталкивает из прототипов под действием давления, и она снова и снова вылетала из аппарата, пока не создала хорошо работающее уплотнение. Она также надевала маску и вдыхала токсичные газы, чтобы должным образом проинформировать и предупредить потенциальных испытуемых о симптомах, которые они будут испытывать – а также чтобы никто не смог подделать результаты.

Читать далее
Total votes 26: ↑25 and ↓1+24
Comments7

Играем в крестики-нолики c RPN калькулятором

Level of difficultyMedium
Reading time6 min
Views3.1K

Когда я разбирался с программируемыми калькуляторами, то думал, как бы элегантнее протестировать функциональность устройства. Один из известных способов проверки – это реализация какой-либо игры.

Игр для калькуляторов, как на просторах бывшего СССР, так и за рубежом громадное количество, остаётся только выбрать. Наиболее популярная — это «Посадка на Луну». Однако, для меня она показалась скучной и неинтересной, а сам код сложным и запутанным. Поэтому мой выбор пал на крестики-нолики, так как все мы играли в них в школе, и мне стало интересно сыграть в неё с калькулятором.

Реализовать игру решил на модели HP-32S, поскольку он мне очень полюбился за красоту архитектурной реализации и удобство программирования.
Читать дальше →
Total votes 48: ↑48 and ↓0+58
Comments20

Как починить телефон своими руками

Level of difficultyMedium
Reading time4 min
Views13K

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

Читать далее
Total votes 70: ↑70 and ↓0+79
Comments86

Действительно ли C++ — лучший язык, чтобы выстрелить себе в ногу?

Level of difficultyMedium
Reading time15 min
Views30K
В 2023 году одной из главных IT-новостей стала публикация гайда от Агентства национальной безопасности (NSA) США, в котором языки С/C+ признавались «опасными» и требующими перехода на «безопасные» C#, Go, Java, Ruby и Swift.

В этой статье я с позиции Security Champion в KasperskyOS, собственной микроядерной операционной системе «Лаборатории Касперского», расскажу, так ли плохо обстоят дела с безопасностью в С++ на самом деле, а также разберу различные подходы к митигации описанных проблем, которые современная индустрия предлагает для решения данного вопроса.
Читать дальше →
Total votes 49: ↑40 and ↓9+31
Comments135

Cortex-M0+ под ногами или бесплатная «девборда»

Level of difficultyEasy
Reading time7 min
Views19K

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

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

Анатомия Hello World на языке C

Level of difficultyMedium
Reading time15 min
Views23K

Эта статья посвящена программе Hello World, написанной на C. Это максимальный уровень, на который можно добраться с языком высокого уровня, не беспокоясь при этом о том, что конкретно язык делает в интерпретаторе/компиляторе/JIT перед выполнением программы.

Изначально я хотел написать статью так, чтобы она была понятна любому, умеющему кодить, но теперь думаю, что читателю полезно иметь хотя бы некоторые знания по C или ассемблеру.
Читать дальше →
Total votes 125: ↑125 and ↓0+142
Comments47

Rust — это не «memory safe C»

Level of difficultyMedium
Reading time27 min
Views47K

TL;DR:
— в Rust намного больше достоинств, чем просто скорость и безопасность
— в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD
— Rust — не сложный язык, особенно если не гнаться за максимальной производительностью

В этой статье я бы хотел рассказать:
— почему взгляд на Rust как на "memory safe C" очень сильно сужает область его возможного применения
— почему я смотрю на Rust как на очень удобный в разработке язык высокого уровня, которому просто случайно повезло оказаться невероятно быстрым
— почему разработка на Rust быстрее, чем многие думают
— почему Rust — это один из лучших языков общего назначения

Читать далее
Total votes 178: ↑173 and ↓5+168
Comments555

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

Level of difficultyHard
Reading time48 min
Views136K



Введение


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


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


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


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

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

Много бесплатных книг по программированию

Reading time7 min
Views345K
Читать дальше →
Total votes 202: ↑192 and ↓10+182
Comments42

А в чем проблема работать с файлами?

Level of difficultyMedium
Reading time53 min
Views28K

Данные - это важный компонент системы. Приложение может хранить их где угодно, но в результате все сводится к файлам. Файлы - это хорошая абстракция, но она протекает: если не знать того, как работают ОС или гарантии файловой системы, то легко выстрелить себе в ногу.

Меня увлекла тема отказоустойчивости, а конкретно - отказоустойчивой работы с файлами. В этой статье я попытался соединить все полученные знания:

Кто участвует в процессе записи

Ошибки, которые могут произойти

Что от нас зависит, а что нет

И самое главное - как это этого защититься

Читать далее
Total votes 171: ↑170 and ↓1+169
Comments23

Теоретические основы всех популярных алгоритмов машинного обучения и их реализация с нуля на Python

Level of difficultyHard
Reading time1 min
Views24K

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

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

Как работает радио?

Level of difficultyMedium
Reading time8 min
Views18K

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

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


Если вы подзабыли какие-то из этих тем, то рекомендую сначала освежить память.
Читать дальше →
Total votes 64: ↑64 and ↓0+65
Comments51

Линейная регрессия. Основная идея, модификации и реализация с нуля на Python

Level of difficultyHard
Reading time16 min
Views13K

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

Читать далее
Total votes 18: ↑17 and ↓1+16
Comments11

Автоматическое тестирование ускорило разработку в 50 раз. Сказка от создателей FoundationDB

Level of difficultyMedium
Reading time10 min
Views8.7K
Автоматическое тестирование по сравнению с обычным, источник

Стартап Antithesis Operations LLC создан разработчиками известной системы FoundationDB. Они говорят, что между двумя продуктами много общего: «Когда в 2010 году мы взялись за создание масштабируемой, отказоустойчивой распределённой базы данных с ACID-транзакциями, большинство людей не думали, что такое возможно. Вот и сейчас многие не верят в полную автоматизацию тестирования».

Сейчас они уверены, что произвели революцию в разработке программного обеспечения. Они сделали полностью автономную и детерминированную систему автоматического тестирования. Внедрение системы в их собственной компании ускорило разработку в 50 раз, потому что программисты теперь думают только о коде и не боятся ошибок. 100% багов выявляется автоматически. Вручную писать тесты не надо, никаких тестировщиков, SDET и QA. Двое-трое программистов выполняют работу за 100−150 человек. Настоящая сказка!
Читать дальше →
Total votes 43: ↑38 and ↓5+33
Comments13

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Level of difficultyMedium
Reading time45 min
Views145K

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

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

Читать далее
Total votes 506: ↑498 and ↓8+490
Comments351

Тормозящая виртуализация на x86. Небольшая попытка разобраться. Часть 1: Общий обзор

Level of difficultyHard
Reading time10 min
Views13K

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

Про что текст. Я знал, что виртуализация «тормозит по сравнению с baremetal», но заметил, что я, и не только я, порой не понимают «почему» и списывают это на превратности климата, кривой код в кровавом энтерпрайзе, и просто на «так устроен мир». Но ведь так нельзя (можно), надо примерно представлять — почему тормозит, и насколько тормозит.

Читать далее
Total votes 54: ↑44 and ↓10+34
Comments25
1
23 ...

Information

Rating
Does not participate
Registered
Activity