Search
Write a publication
Pull to refresh
41
0

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

Send message

О работе ПК на примере Windows 10 и клавиатуры ч. 1

Reading time16 min
Views114K
image

Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Windows 10. Данный цикл статей рассчитан в первую очередь на студентов технических специальностей. Мы рассмотрим какой путь проходит информация о нажатой клавише от клавиатуры до отображения в Notepad.exe. В виду обширности и междисциплинарности темы в статьях могут быть неточности, о которых сообщайте в комментариях. Какая-то информация может быть устаревшей в виду скорости с которой развивается Windows.
Читать дальше →

Новая математика чёрных дыр: ещё один шаг вперед

Reading time10 min
Views13K

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

Читать далее

Как устроен блок питания, который работает в каждом системнике

Reading time12 min
Views155K

Блок питания извлечён из корпуса. Пучок проводов слева подключается к компьютеру. Большой компонент посередине типа трансформатора — это фильтрующий индуктор. Кликабельно, как и все фотографии в статье

Вы когда-нибудь задумывались, что находится внутри блока питания (БП) вашего компьютера? Задача БП — преобразовать питание из сети (120 или 240 В переменного тока, AC) в стабильное питание постоянного, то есть однонаправленного тока (DC), который нужен вашему компьютеру. БП должен быть компактным и дешёвым, при этом эффективно и безопасно преобразовывать ток. Для этих целей при изготовлении используются различные методы, а сами БП внутри устроены гораздо сложнее, чем вы думаете.

В этой статье мы разберём блок стандарта ATX и объясним, как он работает1.
Читать дальше →

Расчёты гравитационных манёвров в космосе или зачем человечеству нужны компьютеры

Reading time10 min
Views13K
Что вы делаете, когда вдруг выясняется, что задача, над которой вы работаете не имеет решения? Принципиально не имеет, можно даже не пытаться. Правильно, откладываете до лучших времён, а лучше, забываете о ней, чтоб не портить себе аппетит и психику.

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

К рубежу 19-20 веков прогрессивное человечество столкнулось с доказательством невозможности создания волшебных и точных математических формул, описывающих наше бытие. Например, к 1899 году французский математик Анри Пуанкаре доказал, что существует бесконечно много частных решений задачи трёх тел. Другими словами, существует бесконечно много разных формул, описывающих движение, например, космического тела в поле тяготения двух других. Для каждого объекта, момента времени, положения в пространстве надо всё считать отдельно, и пока считаешь, задача потеряет актуальность, комета улетит, а мы облажаемся с гравитационным манёвром и эта чёртова консервная банка с надписью NASA станет нашим гробом. А чтобы описать поведение системы множества тел, потребуется время, сопоставимое с возрастом Вселенной. Распаковывай чемоданы обратно, мы никуда не летим, дорогая.


Приблизительные траектории трёх одинаковых тел, находившихся в вершинах неравнобедренного треугольника и обладавших нулевыми начальными скоростями
Читать дальше →

Собираем детектор космических лучей CosmicWatch. Часть 1: введение и планирование

Reading time4 min
Views9.3K

CosmicWatch — это проект Массачусетского технологического института из США и Национального центра ядерных исследований Польши. Он позволяет всем желающим с базовыми навыками в электронике собрать недорогой настольный детектор мюонов, рождающихся в результате столкновения космических лучей с атмосферой Земли.
Читать дальше →

Практическое руководство по анонимности в онлайне

Reading time9 min
Views215K

Направленная антенна для удалённого доступа к публичному Wi-Fi

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

Но это возможно.

Предупреждение. Для усвоения информации в полном объёме требуется несколько недель.
Читать дальше →

Этюд — логическая репликация для копирования баз данных PostgreSQL

Reading time4 min
Views5.7K

Постановка задачи


От бизнеса поступила задача — необходимо регулярно сохранять копии отдельных баз данных, расположенных в разных кластерах PostgreSQL.

Упрощенно говоря — бекапить отдельные базы данных, на случай сверки или потери данных в исходных базах.



Первое и самое очевидное решение — pg_dump

Достоинства — простота решения. Штатные методы. Все отработано, документации и материалов великое множество.

Но, достоинства есть продолжения недостатков.
Во-первых: объемы дампов.
Во-вторых: и это самое неприятное, были случаи несовпадения исходной и целевой БД при восстановлении из дампа.
Возможно этот случай заслужит отдельной заметки. Как оказалось, не все так однозначно, с pg_dump

В-третьих: время, сначала на создание дампа, потом на восстановление БД из дампа.

В итоге — нужно искать другой путь копирования БД между серверами. Бизнес требовал, задача интересная.
Не факт, что решение получилось максимально эффективным и не будет изменено/улучшено. Но как этюд на тему использования возможностей PostgreSQL, идея показалась как минимум интересной.
Читать дальше →

С помощью Python создаём математические анимации, как на канале 3Blue1Brown

Reading time6 min
Views37K

Вы наверняка когда-то испытывали трудности в понимании математических концепций алгоритмов машинного обучения и для лучшего понимания темы пользовались обучающим ресурсом 3Blue1Brown. 3Blue1Brown — известный математический YouTube-канал, который ведёт Грант Сандерсон. Многим нравится 3Blue1Brown за прекрасные объяснения Гранта и великолепные анимации.

21 мая стартует новый поток курса о математике для Data Science. Специально к его запуску мы делимся переводом, в котором автор решил рассказать, как делать анимации, подобные анимациям на канале 3Blue1Brown, чтобы вы могли иллюстрировать свои идеи и рассуждения о математике и не только.

Читать далее

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

Reading time7 min
Views6.4K

Начать смотреть видео на иностранном языке не просто. Этим объясняется большое количество статей с самыми разными советами:

• Смотреть с русскими субтитрами и не париться.

• Смотреть с иностранными субтитрами и переводить на паузе, если не понятно.

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

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

Читать далее

Лотерея Green Card DV-2022: россиян оставили за железным занавесом. Есть ли шанс получить визу?

Reading time7 min
Views183K

До ежегодного розыгрыша лотереи, дающей возможность получить гринкарту (вид на жительство в США) остаются считанные часы. Однако, если многие победители предыдущей лотереи DV-2021 потеряли свои счастливые билеты из-за пандемии и президентской прокламации P.P. 10141, то в этом году победителям из России полностью отрезали возможность пройти собеседование на получение визы.

Read more

Что запрещает принцип Паули?

Reading time7 min
Views29K

Принцип запрета Паули с однозначной многочастичной волновой функцией эквивалентен требованию, чтобы волновая функция была антисимметричной по отношению к обмену частицами. Как это объяснить на пальцах? Легко - ткните пальцем в стол, в монитор, во что-нибудь твердое. Глубоко пронзили материю? Удалось достичь перекрывания атомных электронных облаков пальца и стола? Нет? Не удивительно. Читайте дальше, если хотите узнать, почему так.

Читать далее

«Скажи мне свой адрес и я скажу как зовут твоего соседа», или как дешево и быстро проверять любой объект недвижимости

Reading time3 min
Views39K

Все, что понадобится — подтвержденная учетная запись на Госуслугах и небольшая плата за сведения

СМИ время от времени сотрясают скандалы связанные с тем, что у того или иного государственного служащего находят дома, квартиры, участки и другую недвижимость. Их сменяют другие скандалы о том, что имя  чиновника в государственных реестрах зашифровывается.

Как удается узнавать собственников недвижимости? Неужели любой может узнать кто владеет тем или иным участком, домом или квартирой?

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

Все что Вам нужно для этого - подтвержденная учетная запись на госуслугах. С помощью нее заходим на официальный сайт Росреестра.

Сколько это стоит?

Официальная плата Росреестра от 1 до 5 рублей за одну выписку. Доступ к выпискам оплачивается по УИН на сайте Росреестра пакетами от 100 шт. до 500 000 шт.

Читать далее

Мифы об асинхронном PHP: он не по-настоящему асинхронный

Reading time12 min
Views13K

В последнее время было достаточно много обсуждений производительности в PHP. И даже несмотря на то, что у нас есть PHP8, JIT и куча других улучшений, многие по-прежнему продолжают жаловаться на то, что PHP "недостаточно производительный". Что PHP - это язык, подходящий только для модели запрос-ответ. Что PHP слишком медленный и его не нужно использовать для высоконагруженных систем. С одной стороны от части всё это правда. Если мы строим какую-то систему, для которой вопрос производительности критичен, то использовать классический блокирующий PHP явно не стОит. Большая часть функций и библиотек PHP созданы для работы в традиционном блокирующем окружении, что уже подразумевает собой не самую высокую производительность. Однако PHP может работать быстро, более того, он может работать очень быстро. Как? Обычно у нас может быть две причины, из-за чего будет проседать производительность: мы либо совершаем какие-то сложные вычисления, либо у нас есть блокирующй ввод-вывод. Первое к сожалению (или к счастью) мы не можем решить в PHP. Но блокирующий ввод-вывод для PHP совсем не проблема. В PHP-сообществе есть люди, которые пишут асинхронный код уже на протяжении несколько лет. Конечно одновременно с этим бОльшая часть сообщества по-прежнему считает асинхронный PHP - дикостью. Я часто слышал: "Ты наверно совсем отчаянный, если собираешься писать что-то асинхронное на PHP". По правде говоря, у нас у всех есть это предубеждение, что PHP не подходит для подобного рода задач. И в большинстве случаев это предубеждение основано на неверных представлениях о самой "асинхронности". Неверные предубеждения в свою очередь ведут к неправильным ожиданиям, что в свою очередь приводит к разочарованию и обвинениям в том, что PHP "не по-настоящему асинхронный".

Читать далее

Релокейт-обзор для удаленщика: 5 стран, куда просто приехать

Reading time10 min
Views49K

В блоге часто пишем про страны, куда IT-специалисты релоцировались, устроившись в местную компанию: и инженеры, дизайнеры и продакты рассказывают о том, как им живется на новом месте. Но это не единственный вариант переезда. Жить у моря и работать на пляже под пальмами — кажется, что именно так выглядит идеальная работа на удаленке. Реально ли в таком месте работать и оставаться продуктивным IT-специалисту? И какие еще есть варианты? Собрали 5 направлений, рассказываем!




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

Блокировки в PostgreSQL: 4. Блокировки в памяти

Reading time11 min
Views35K
Напомню, что мы уже поговорили о блокировках отношений, о блокировках на уровне строк, о блокировках других объектов (включая предикатные), и о взаимосвязи разных типов блокировок.

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


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

Одноплатный компьютер для embedded программиста. Моргаем светодиодом на Qt

Reading time3 min
Views7.9K

Цель - моргать светодиодом на GPIO одноплатного компьютера в своём Qt проекте. Я решил прикрутить известную библиотеку для управления GPIO под названием wiringOP к своему проекту на Qt статически, да и ещё иметь возможность редактировать wiringOP как проект статической библиотеки прямо в Qt Creator.

Читать далее

Вторая жизнь пыльного Андроида

Reading time4 min
Views107K

Три мысли всё не давали мне жить спокойно:

1) есть ноутбук, но для работы нужен второй экран
2) давно мечтаю о пульте управления для Photoshop в дополнение к клавиатуре
3) на полках пылятся устаревшие гаджеты, которые продавать глупо, а выкидывать жалко

Решим одно за счёт другого

[Личная история] Португалия. Дайвинг, ведение бизнеса и страсть к балконам. Стоит ли переезжать?

Reading time8 min
Views34K


Дмитрий Лайер, бывший PHP-разработчик и техдиректор в РБК, ВТБ24 и Softline, теперь живет на юге солнечной Португалии. Мы поговорили с ним о многочисленных плюсах и минусах жизни в этой стране, дайвинге, открытии бизнеса, методах получения «резиденции» и вечных-вечных проблемах с уплатой налогов.

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

Трепещущий Kivy. Обзор возможностей фреймворка Kivy и библиотеки KivyMD

Reading time11 min
Views36K

Kivy и Flutter — два фреймворка с открытым исходным кодом для кроссплатформенной разработки.

Flutter:


  • создан компанией Google и выпущенный в 2017 году;

  • в качестве языка программирования использует Dart;

  • не использует нативные компоненты, рисуя весь интерфейс внутри собственного графического движка;

Kivy:


  • создан сообществом Kivy в 2010 году;

  • в качестве языка программирования использует Python и собственный декларативный язык для разметки UI элементов — KV Language;

  • не использует нативные компоненты, рисуя весь интерфейс с помощью OpenGL ES 2.0 и SDL2;

Недавно на просторах Ютуба наткнулся на видео демонстрацию Flutter приложения — Facebook Desktop Redesign built with Flutter Desktop. Отличное демонстрационное приложение в стиле material design! И поскольку я один из разработчиков библиотеки KivyMD (набор material компонентов для фреймворка Kivy) мне стало интересно, насколько просто будет сделать такой же красивый интерфейс. К счастью автор оставил ссылку на репозиторий проекта.

Information

Rating
Does not participate
Registered
Activity