Search
Write a publication
Pull to refresh
0
0
Константин Садовский @AsmodeusL

User

Send message

Почему линукс использует swap-файл, часть 2

Reading time7 min
Views24K
Первая часть маленького «срывания покрова» о работе подсистемы виртуальной памяти, связи механизмов mmap, разделяемых библиотек и кэшей вызвало такое бурное обсуждение, что я не смог удержаться от того, чтобы не продолжить исследование на практике

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

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

Почему линукс использует swap-файл

Reading time8 min
Views105K

Жажда тюнинга может завести в неведомые дебри. И, пожалуй, едва ли не самая частая неправильная оптимизация - отключение swap-файла. Если прикинуть частоту, с которой эта ошибка встречается, то, наверное, она входит в негласный top-10 (а может и top-5) самых распространенных, самых бесполезных и самых вредных оптимизаций - потому что swap-файл это одна из самых интересных, сложно понимаемых и недооцененных  сущностей в подсистеме управления виртуальной памятью.

Читать далее

Кеш бывает разным

Reading time11 min
Views11K

PostgreSQL хранит данные на каких-то носителях. И между PostgreSQL и, например, магнитной поверхностью диска находится несколько кешей: кеш самого винчестера, кеш RAID-контроллера или винчестерной полки, кеш файловой системы на уровне операционной системы и кеш самого PostgreSQL. Если первыми перечисленными кешами мы практический не можем управлять, то последними, находящимися в ОЗУ сервера, управлять можем: например, выделяя больше ОЗУ под кеш PostgreSQL в ущерб кешу ОС, или наоборот. В официальной документации можно прочитать ничем не подтвержденные рекомендации, типа выделять под PostgreSQL четверть ОЗУ. Это вызывает сомнения. PostgreSQL в виде Postgres95 впервые появился в 1995 году и, кто знает, быть может и эти рекомендации относятся к тому же году. Поэтому появилась идея эксперимента с целью разобраться, как лучше распределять ОЗУ.

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

Модель адаптивного усвоения углеводов часть 2: Васывание углеводов

Reading time3 min
Views2.4K

Абсорбация (разложение) углеводов в организме человека с диабетом 1 типа.

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

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

Для исследования реального разложения была написана программа, которую мы называем "Carbs Absorbation Modul", показывающая сколько углеводов было разложено в организме в 5 минут.

Читать далее

Пример работы системы ниже:

Читать далее

NVMe стирает разницу между памятью и накопителями

Reading time5 min
Views94K


История накопителей представляет собой гонку между носителями и вычислительными мощностями. На пути к компьютерной нирване встаёт узкое место – хранение миллиардов нулей и единиц. Самый новый из игроков на этом поприще – энергонезависимая память Non-Volatile Memory Express (NVMe), представляющая собой что-то вроде гибрида нескольких предыдущих технических решений.

В первом поколении домашних компьютеров в качестве накопителей использовались флоппи-диски и компакт-кассеты, но с ростом возможностей компьютеров постепенно росла и важность накопителей. К 1990-м большое распространение получили жёсткие диски, позволявшие хранить сначала мегабайты, а потом и гигабайты информации. В результате выросла необходимость в быстрой системе связи между накопителем и остальной системой. В то время чаще всего использовался интерфейс ATA (IDE) в режиме программного ввода-вывода Programmed Input-Output (PIO).
Читать дальше →

Курсы и книги для изучения data science c нуля

Reading time11 min
Views105K

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

Читать далее

Использование статистических методов для анализа временных рядов

Reading time3 min
Views13K

Очень часто в нашей работе встречается такое понятие как «временной ряд». Это определение было придумано очень давно. Тогда, когда люди только стали записывать данные о чем-то двумя значениями: явлением и временем. Наиболее классическим описанием временного ряда является запись температуры на протяжении года или нескольких лет.

Но сам ряд — это лишь набор информации, который не несет ничего нужного. При этом, если построить график этого ряда, используя, к примеру, для оси Y значения времени, а для оси X — показания, которые были нами изначально записаны или форматизированы в цифровом виде, то мы сможем найти некоторые последовательности.

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

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

Но для чего может использоваться временной ряд в аудите? Для всего!

Операции клиента на протяжении квартала – временной ряд. Расход топлива служебного автомобиля – временной ряд. Даже чтение этой статьи – тоже временной ряд! (мы можем записать — сколько слов в минуту вы читаете, с указанием порядкового времени минуты)

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

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

Возьмем простой пример: рассмотрим покупки подарков к праздничному мероприятию для десяти коллег.

Читать далее

Время-деньги. Сколько стоит час инженера

Reading time5 min
Views70K

Сколько стоит час работы сотрудника? Это обязаны знать в любой компании, которая продаёт свои часы. А тем, кто не продаёт, а покупает, не лишним будет понять, почему именно столько просят подрядчики, и сколько на самом деле стоят внутренние проекты. Давайте разберёмся, как мы считаем стоимость часа и что туда входит.

Читать далее

25 полезных однострочников Python, которые вы должны знать

Reading time5 min
Views49K

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

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

Читать далее

Если эмигрировать в Канаду не получается, но очень хочется

Reading time6 min
Views16K
Человек в полном расцвете сил живет с семьей в живописном городе на воде. Работает меньше чем в странах постсоветского пространства, его зарплата больше 90 тысяч долларов США в год, а стоимость жизни меньше, чем в Израиле или штатах. Он наверняка потратил много сил и долго туда стремился, но идиллическая зарисовка от этого никак не испортилась.

Мы нашли такого человека в Ванкувере, и это Денис Астахов, амбассадор AWS. Он рассказал о своем опыте эмиграции в Канаду и поиске работы в DevOps.


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

Токен авторизации на примере JSON WEB Token

Reading time7 min
Views143K

Доброго времени суток, дорогой читатель. В данной статье я постараюсь рассказать об одном из самых популярных (на сегодняшний день) способов авторизации в различных клиент-серверных приложениях - токен авторизации. А рассматривать мы его будем на примере самой популярной реализации - JSON Web Token или JWT.

Читать далее

Мнемоника и английский язык: как ошибки превратить в победы

Reading time7 min
Views13K


Ученые подсчитали, что объем памяти самого обычного человека примерно равен 2,5 петабайт информации. Больше 2,5 миллионов гигабайт — это примерно 35,5 лет непрерывной записи видео в формате Full HD.

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

«Affect» или «effect»? «Complement» или «compliment»? В каких случаях нужно использовать «than», а в каких — «then»? Как правильно писать слово: «neccessary», «neccesary» или «necessary»? И таких примеров сотни.

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

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

Токен Авторизации

Reading time9 min
Views113K

В настоящее время киберпреступность стала проблемой мирового уровня. Например, Дмитрий Самарцев, директор BI.ZONE в сфере кибербезопасности привёл на Всемирном экономическом форуме следующие цифры. В 2018 году ущерб мировой экономики от киберпреступности составил по его словам 1.5 триллиона долларов. В 2022 году прогнозируются потери уже в 8 триллионов, а в 2030 ущерб от киберпреступлений может превысить 90 триллионов долларов. Чтобы уменьшить потери от киберпреступлений, необходимо совершенствовать методы обеспечения безопасности пользователей. В настоящее время существует множество методов аутентификации и авторизации, которые помогают реализовать надежную стратегию безопасности. Среди них многие эксперты выделяют в качестве лучшей авторизацию на основе токенов.

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

Читать далее

Как бы я сейчас объяснил молодому себе… зачем существуют требования ACID для баз данных?

Reading time35 min
Views52K

Я – выскочка. По крайней мере, так я себя иногда ощущаю. Закончив второй курс политологии и журналистики в университете, я увидел американский рейтинг профессий по уровню оплаты труда. Журналист в этом рейтинге был на последнем месте, а на первых местах были data scientists и data engineers (политолога в этом списке, почему-то, не было). Я не знал, кто составлял этот список, и понятия не имел, кто такие эти data-челы с первых строк, но он меня впечатлил. Я бросил пить и начал проходить курсы на Coursera, а потом каким-то чудом заполучил студенческую подработку в стартапе. Так я сделал своё «войти в IT».

Когда человек, не имеющий университетской подготовки, пытается начать программировать, то он чувствует себя несчастным, который, увидев из окна солнце, вышел на улицу и попал под неожиданный в столь прекрасный день град: шаблоны проектирования, функции, классы, ООП, инкапсуляция, протоколы, потоки, ACID… Хочется прокричать, как Виктор Фёдорович в своё время:

Окно в удивительный мир баз данных...

Ультимативный список инструментов для разработчиков и опытных пользователей для Windows

Reading time6 min
Views77K
Можете ли вы поверить, что с момента моего последнего списка инструментов прошло 6 лет? Инструменты изменились, многие из них доступны онлайн, но, честно говоря, для составления нового списка инструментов требуется ОЧЕНЬ МНОГО РАБОТЫ. Но я смог, вот список на 2020-2021 годы. Это инструменты в моей папке Utils. Я создал папку d:\dropbox\utils и добавил ее в свой PATH. Таким образом, он будет на всех моих компьютерах, и я могу мгновенно добраться до любого из них.

Это обновленный до версии 2020-21 мой список 2003, 2005, 2006, 2007, 2009, 2011 и 2014 годов, который в настоящее время включает все остальные мои списки. Я занимаюсь этим более 17 лет. Вау. Думаю, стоит тратить на это больше времени.

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

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

Эту статью написал наш коллега Скотт. Вот версия на английском. Ну а сам список под катом.

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

19 вредных советов ИТ-менеджеру банка … или Скатертью дорога

Reading time4 min
Views19K

Сегодня мой менеджер решил покинуть банк в котором я работаю, всего за год превратив его из работодателя с хорошей репутацией в место, откуда все разбегаются. Эта статья - одновременно прощальное письмо ему и инструкция другим "как не надо делать".

Read more

Как выбрать, приобрести и (не) обосраться с 4k@60Hz монитором

Reading time5 min
Views61K

Как выглядит текущий сетап




А зачем?


Я программист. На прошлой работе мне выдали macbook, а к нему монитор LG UltraFine 27UL850-W. За год я привык к картинке приближенной к маковской. Почему приближенной дальше расскажу и приведу математические расчеты.

С мартом 2020 и короной пришла удаленка, а с ней и смена рабочего места.

На новой работе выдали обычный, неплохой монитор Samsung 23.5 Full HD, использовал его в связке с MacBook Pro 13* 2015 и Lenovo ThinkPad E480. В связке с маком картинка после 4к монитора была откровенно вялая, с леново — нормально, работать можно было. Увы, за пол года я так и не привык к этому монитору. Более того, в последнее время ближе к окончанию рабочего дня (к 16-17 часам) стабильно начинали болеть глаза вместе с ощущением тяжести — хотелось просто держать глаза закрытыми. Насколько я понял, типичные симптомы синдрома сухого глаза. Периодически прокапывал глаза увлажняющими каплями, на время становилось лучше, но не более.
Читать дальше →

Фантастика 2020 года, которую стоит почитать

Reading time6 min
Views112K


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

Правильно пишем командлеты на Powershell и заодно симулируем парадокс Монти Холла

Reading time11 min
Views7.1K
Хабр точно знаком с парадоксом, а вот с некоторыми фичами павершелла, вероятно, нет, поэтому тут больше про него.



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

Контроль версий в базах данных — Сравнение Liquibase и Flyway

Reading time6 min
Views15K

Автоматизированный рефакторинг баз данных должен быть частью жизненного цикла разработки наших продуктов наряду с рефакторингом любых других программных компонентов. Исторически так сложилось, что контроль версий исходников покрывал в подавляющем большинстве случаев только так называемый прикладной код (например, Java), исключая SQL, скрипты на котором носили внешний характер и применялись к целевым базам данных, минуя контроль версий.

Тем не менее, в связи с ростом популярности аджайл методологии в последние годы и востребованностью непрерывной интеграции и развертывания, мы больше не можем ограничивать применение CI/CD только к коду приложения, оставив SQL позади.

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

Ниже будут рассмотрены сходства и различия ныне хорошо известных продуктов Flyway и Liquibase.

Читать далее

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity