Обновить
17
0

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

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

Раскрываем секреты загрузочных ISO-образов

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


В этой статье я хочу поговорить об ISO-файлах, на которых, как известно, распространяются дистрибутивы операционных систем. Начиная писать статью, я немного сомневался в её актуальности, так как я ассоциировал ISO-образы с оптическими дисками, которые, ввиду ряда причин, уходят в прошлое. У меня было стойкое понимание, что ISO-файлы в основном нужны только для хранения образов оптических дисков, которые содержат установщик операционной системы. Но, как оказалось, всё гораздо сложнее и интереснее, особенно применительно к современному железу.
Читать дальше →

Ретроразработка драйвера для Windows 3.1

Время на прочтение6 мин
Количество просмотров12K
Word, запущенный в Windows 3.1 с удобным разрешением 1152х864

Много месяцев назад я попробовал свои силы в написании 256-цветного драйвера высокого разрешения для Windows 3.1. Попытка была успешной, но работа пока ещё не завершена. В процессе я заново открыл для себя множество забытых вещей и узнал ещё больше новых. Этот пост основан на заметках, которые я делал по ходу разработки.
Читать дальше →

Грокаем монады императивно

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

В предыдущем посте мы переизобрели Монаду на рабочем примере. У нас получился базовый механизм в виде функции andThen для типа option, но мы еще не достигли нашей конечной цели. Мы надеялись, что получится написать код, так же как если бы нам не нужно было обрабатывать значения option. Мы хотели писать в более "императивном" стиле. В этой части мы увидим как достичь этого при помощи технологии computation expressions языка F#, а также углубим наше понимание Монад.

Читать далее

Налоговый и валютный резидент РФ —последствия приобретения и утраты статусов — полный FAQ с примерами

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

Друзья, всех приветствую и предлагаю ознакомиться, как мне кажется с довольно полным FAQ по теме налогового и валютного резиденства РФ. По ходу материала есть некоторые примеры, а внизу вопросы & ответы.

Читать далее

Заблуждения программистов относительно времени

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

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


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


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

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

Ужасы японского языка. Лексика

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

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

Но что по поводу других аспектов языка? Сравнимы ли по сложности с письменностью лексика и грамматика? Другими словами: насколько сложно запоминать новые слова (лексика) и как сложно затем строить из этих слов предложения (грамматика)?

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

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

Читать далее

10 итераторов, о которых вы могли не знать

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

Одним из главных достоинств Python является выразительность кода. Не последнюю роль в этом играет возможность удобной работы с коллекциями и последовательностями различного вида: перебор элементов списка по одному, чтение файла по строкам, обработка всех ключей и значений в словаре. Эти и многие другие подобные задачи в Python помогает решить так называемый протокол итераторов (Iterator protocol). Именно этот протокол обеспечивает работу цикла for, устанавливает по каким объектам можно итерироваться, а по каким нет. Как мы увидим далее, сам язык и стандартная библиотека очень широко используют возможности протокола. В этой статье попробуем отыскать не самые известные, но от этого не менее интересные примеры итераторов и итерируемых объектов, которые предлагает Python.

Читать далее

Почему инженеры и бизнес говорят на разных языках

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

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

Читать далее

Повторил клип Foo Fighters из LEGO

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

Всем привет, это Денис Вебер.

Foo Fighters - одна из самых популярных рок групп современности и одна из моих любимых групп. Посмотрев сотый раз клип на песню Pretender, я подумал: "А как бы выглядело это видео, если бы участники и декорации были из LEGO?".

Как обычно, специально для тех, кому больше нравится формат видео, а не текст, видео я оставлю в конце статьи.

Читать далее

Виртуальных частиц не существует

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

И бесконечного количества пар «частица-античастица» в вакууме тоже нет.

Выражение «виртуальная частица» часто попадается в физике и в научно-популярных объяснениях квантовой теории поля. Но на самом деле виртуальных частиц как таковых не существует. Сегодня мы поговорим о том, зачем (и в каком виде) нужны виртуальные частицы, и почему их не существует. 

Читать далее

Кварковый конструктор. О протоне, его аддонах и спиноффах

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

В одной из моих публикаций я затрагивал тему распада протона. Суть проблемы: до сих пор не зафиксировано ни одного самопроизвольного распада свободного протона, хотя, искусственно «расколоть» протон не составляет труда. Более того, свободные нейтроны вне атома распадаются очень быстро (период полураспада – около 15 минут). Чрезвычайная стабильность протона – залог существования Вселенной и, в частности, залог горения звезд, состоящих в основном из водородной плазмы, то есть, из свободных протонов и свободных электронов (ни те, ни другие частицы в свободном виде не распадаются). При этом не менее интересно, что протон не является подлинно элементарной частицей, а состоит из кварков и глюонов. И здесь у физиков возникают большие вопросы о природе массы протона. С одной стороны, масса протона гораздо больше, чем суммарная масса входящих в него кварков и глюонов. С другой стороны, в 2022 году был поставлен эксперимент, указывающий, что некоторые свойства протона можно объяснить только присутствием в его составе очарованного кварка – а очарованный кварк сам по себе тяжелее протона. Наконец, я кратко остановлюсь на вкладе вещества и антивещества в массу протона, и расскажу о некоторых экзотических частицах, возникающих при этих взаимодействиях.  

Читать далее

Упрощаем код с помощью if constexpr и концептов C++17/C++20

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

До C++17 у нас было несколько довольно неэлегантных способов написать static if (if, который работает во время компиляции). Например, мы можем использовать статическую диспетчеризацию или SFINAE. К счастью, ситуация изменилась к лучшему, ведь теперь мы можем воспользоваться для этого if constexpr  и концептами C++20!

Ну что ж, давайте разберемся, как мы можем использовать это в качестве замены std::enable_if кода!

Читать далее

8 практических советов как сделать тренировки частью привычной жизни и перестать ненавидеть физкультуру. Часть вторая

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

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

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

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

Разберем еще несколько, достаточно важных, рекомендаций, которые вы сможете применить немедленно. И в конце, по традиции вас ждет чек-лист для самоконтроля. И велкам комментировать!

Читать далее

Как я 20 лет ненавидела физкультуру, а потом решила подойти с точки зрения нейрофизиологии и выучилась на тренера

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

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

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

Как бывший невролог уверена, уговаривая себя пойти на тренировку или отказаться от шоколадки, вы противостоите древним механизмам вашего мозга и всей биохимической лаборатории организма, которые спасали ваших предков от гибели. Не понимая внутреннего устройства вашего организма и того, как работает мозг, очень сложно заставить себя тренироваться. Я сама 20 лет пыталась «заставить себя полюбить спорт» (ну а как минимум регулярно делать зарядку), потом поняла, что дело в не том, что у меня «нет силы воли», а в том, что мозг не любит расставаться с калориями. И ваша задача тут — постараться обмануть мозг используя «нейрофизиологические хитрости».

Читать далее

Цифровая ностальгия: BBS, DOS Navigator, DOOM и Civilization

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

Есть гипотеза, что интерфейсные предпочтения пользователя закладываются в самом начале его компьютерного пути. В моем случае — это консольные приложения и строгий аскетизм DOS.

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

Читать далее

Очередная статья про систему типов TypeScript

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

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

Особо впечатлительным просьба смотреть через розовые очки.

Заглянуть внутрь

Как звероящеры стали нами?

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

Продолжаем серию докладов с научного фестиваля «Улики Эволюции». Сегодня мы поговорим про то, как же человек стал тем, кто он есть, и как звероящеры захватили планету.
Читать дальше →

Взлетит или нет — сможет ли новый язык программирования Hare стать альтернативой Си

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

Практически сразу после анонса языку стали пророчить светлое будущее в качестве замены не только Си, но и других ЯП. Однако энтузиазм разделили далеко не все участники ИТ-сообщества. В лагере скептиков оказались даже сами разработчики Hare.

Мы в T1 Cloud предлагаем решения для бизнеса и разработки, поэтому решили разобраться в ситуации и обсудить аргументы сторон.

Читать далее

Краткий обзор библиотеки so5extra с дополнениями для SObjectizer-5

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

О проекте SObjectizer-5 мы рассказываем на Хабре уже давно и более-менее регулярно. А вот о сопутствующем ему проекте so5extra речь заходит гораздо реже и вскользь. Между тем so5extra развивается уже пять лет (как же быстро летит время) и на днях мы зафиксировали очередную версию. Что представляется хорошим поводом представить вашему вниманию обзор библиотеки so5extra, с акцентом на разнообразие реализованных в ней типов почтовых ящиков (mbox-ов в нашей терминологии).

Читать далее

Ужасы японского языка. Письменность

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

Четыре года назад я совершил один из самых безрассудных поступков в своей жизни: начал учить японский язык. Разумеется, прежде чем решиться на такое приключение, я тщательно все продумал и провел подробное исследование на тему. Т.е. погуглил, что другие люди думают об этом экзотическом языке. Отзывы меня весьма приободрили. В них говорилось, что нужны годы и годы тяжелого учения. Люди писали, что, если тебе кажется, что язык очень тяжелый, то ты все еще недооцениваешь опасность раз в десять. Интернет пестрит предупреждениями, что тебе это не нужно; что это тяжело; что "не лезь оно тебя сожрет".

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

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

Читать далее

Информация

В рейтинге
6 607-й
Зарегистрирован
Активность