Pull to refresh
6
1.9
Send message

Как будут работать суды при DeSoc

Level of difficultyMedium
Reading time4 min
Views1.2K

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

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

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

Почему мой любимый API — это файл zip на сайте Европейского центрального банка

Level of difficultyEasy
Reading time7 min
Views31K

Когда был максимальный курс доллара к евро?

Вот небольшая программа, вычисляющая это:

curl -s https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.zip \ | gunzip \ | sqlite3 -csv ':memory:' '.import /dev/stdin stdin' \ "select Date from stdin order by USD asc limit 1;"

Результат: 2000-10-26. (Можете попробовать запустить её самостоятельно.)

Читать далее
Total votes 81: ↑67 and ↓14+76
Comments27

Удивительная лампочка из Ашана

Level of difficultyEasy
Reading time2 min
Views46K
На прошлой неделе я протестировал 23 модели светодиодных ламп Ашан и среди них обнаружилась одна, «не такая, как все», причём отличается она в лучшую сторону.


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

Взаимодействие с MOEX ISS через Python

Level of difficultyEasy
Reading time4 min
Views19K

В этой статье я хочу дать поверхностное представление о том, как работает взаимодействие с MOEX ISS на Python requests. Да, сегодня уже существуют готовые решения для работы с MOEX, например aiomoex. Но как по мне, лучше всегда сначала что‑то захардкодить и понять, как это работает под капотом. Если вы только знакомитесь с MOEX ISS или начинаете заниматься анализом временных рядов, думаю, вам эта статья будет полезна. Если же вы более продвинутый специалист, то вряд ли найдете здесь что‑то новое.

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

Новые возможности в скриптах Роутер Ос 7 Микротик

Reading time10 min
Views15K
Появления Роутер ОС 7 давно ждали. Новая система создавалась разумеется для более производительных устройств, имеющих новые процессоры и больше оперативной памяти. Новое ядро Linux, поддержка WireGuard и ZieroTier, новые возможности маршрутизации и BGP, новый users manager, обновление MPLS, запуск приложений в контейнерах далеко не полный список новинок.

Но в этой статье мы будем обсуждать нововведения только в скриптовом языке системы вплоть до актуальной beta версии 7.12.
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments28

Как (быстро) сделать русский локальный ChatGPT

Level of difficultyMedium
Reading time7 min
Views42K

Эта история началась в начале марта этого года. ChatGPT тогда был в самом расцвете. Мне в Telegram пришёл Саша Кукушкин, с которым мы знакомы довольно давно. Спросил, не занимаемся ли мы с Сашей Николичем языковыми моделями для русского языка, и как можно нам помочь.

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

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

Читать далее
Total votes 70: ↑69 and ↓1+88
Comments54

Статистические тесты и проверка гипотез в R

Reading time15 min
Views8.4K

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

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

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

Как спасти принцессу, используя 8(+45) языков программирования, в пятницу

Reading time1 min
Views68K


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



У вас есть С. У вас есть библиотека для замка и для принцессы. В атаку! Вы спасаете принцессу, ее собаку, весь ее гардероб и всё, что она когда-либо съела. Fuck, неужели я забыл null-terminator?
Total votes 122: ↑81 and ↓41+40
Comments205

Мониторинг — это боль

Level of difficultyMedium
Reading time13 min
Views14K

И все мы выполняем его неправильно (в том числе и я).

Я должен признаться. Несмотря на то, что меня много раз нанимали в том числе и благодаря моему опыту работы с платформами мониторинга, я начал его ненавидеть. Инструменты мониторинга и наблюдаемости (observability) совершают тяжкий грех: обманом заставляют людей думать, что это простая задача. Очень легко мониторить маленькое приложение или сервис. Но почти ни одно из таких решений не масштабируется.

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

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

В статье я расскажу о том, что, по моему мнению, нужно делать, а также поделюсь своими надеждами и мечтами. Прошу вас убедить меня, что я не прав и что есть более качественные решения.
Читать дальше →
Total votes 46: ↑46 and ↓0+46
Comments15

W-функция Ламберта, ее приближения, и как она помогает строить доверительные интервалы

Level of difficultyHard
Reading time9 min
Views4.1K

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

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

Анонимная сеть в 200 строк кода на Go

Level of difficultyMedium
Reading time15 min
Views19K

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

Вследствие этого, можно сказать just-for-fun, у меня появился вопрос: можно ли реализовать анонимную сеть настолько малую, чтобы её программный код смог понять даже начинающий программист за короткое время?

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

История T

Level of difficultyMedium
Reading time25 min
Views4.3K

Олин Шиверс


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

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

В поисках инвестиционного портфеля «На все времена»

Level of difficultyMedium
Reading time10 min
Views7K

...или точнее попытка декомплилировать знаменитый портфель от Рэя Далио и перестроить его с учетом современных реалий.

Меня всегда интересовало, как построить для себя пассивный инвестиционный портфель, который бы генерил доходность, сопоставимую с индексным фондом, но с меньшими относительными просадками в периоды кризисов. На первый взгляд, невыполнимая задача со стороны теоретиков эффективного рынка. Со временем размышления на тему привели меня к изучению так называемых “вечных” (permanent) портфелей. Одним из таких портфелей является портфель “На все времена” (All-weather или All-seasons portfolio).

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

Анонимная сеть с теоретически доказуемой моделью на базе увеличения энтропии

Level of difficultyHard
Reading time14 min
Views7.9K

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

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

Такой дозиметр может сделать каждый

Level of difficultyEasy
Reading time16 min
Views19K

Хомяки приветствуют вас друзья!

Сегодняшний пост будет посвящен радиометру Atom-Scan, универсальному самодельному прибору, который может работать c разными счетчиками Гейгера включая слюдяные, а так же детектировать альфа, бета и гамма излучение. В ходе поста посмотрим как собрать такое устройство, где достать дефицитные радиокомпоненты и как правильно настроить схему чтобы все работало. По традиции смоделируем и напечатаем корпус на фотополимерном 3D принтере, проведем сравнительный тест счётчиков, а так же попытаемся разобраться какой дозиметр на сегодняшний день самый лучший.

Читать далее
Total votes 53: ↑47 and ↓6+56
Comments28

[Пятничное] Теория Жоп

Reading time5 min
Views231K

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее
Total votes 399: ↑388 and ↓11+473
Comments107

Задача о нижней оценке на поиск в таблице Юнга

Level of difficultyMedium
Reading time4 min
Views1.6K

Читателю не столь хорошо знакомому с теоретической информатикой может показаться удивительным, что нижние оценки известны лишь для малого числа задач. Когда оценивают сложность алгоритма, используют O-нотацию — асимптотически верхнюю оценку на сложность алгоритма. Так, хорошо известно, что у сортировки слиянием сложность O(n \log n).Из теории известно, что ни одна сортировка сравнениями не может сортировать асимптотически лучше чем за n \log n(пишут \Omega(n \log n)), отсюда для сортировки слиянием берётся нижняя оценка. Верхняя оценка сложности алгоритма, решающего задачу, является и верхней оценкой сложности самой задачи, поэтому сортировки сравнениями имеют точную асимптотическую оценку \Theta (n \log n).

Большинство нижних оценок имеют вид \Omega (n), где nтрадиционно длина входа. Увы, наука чаще всего умеет доказывать только простые вещи в духе «для решения задачи необходимо считать весь вход». Даже для сортировок не ограниченных только доступом к сравнениям нижняя оценка остаётся открытым вопросом (при дополнительных ограничениях на вход за линейное время работает, например, Counting Sort). Чаще всего во вводных курсах по алгоритмам и книжках можно встретить нижние оценки для задач на взвешивание: поиск максимума за n-1сравнение, одновременный поиск максимума и минимума за \frac {3n} 2 -cсравнений, и ещё несколько подобных задач. За исключением нескольких простых хорошо известных примеров, задачи на нижние оценки часто оказываются либо сложными, либо требуют знакомство со специальной (математической) техникой, нужной для их решения. Какого же было моё удивление, когда я встретил среди задач, используемых на вступительных испытаниях в Школу анализа данных Яндекса задачу на нижние оценки, которую можно решить достаточно простым способом!

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

[HTTP API & REST] Организация HTTP API согласно принципам REST

Level of difficultyHard
Reading time10 min
Views8.1K

Это глава 37 раздела «HTTP API & REST» моей книги «API». Второе издание книги будет содержать три новых раздела: «Паттерны API», «HTTP API и REST», «SDK и UI‑библиотеки». Если эта работа была для вас полезна, пожалуйста, оцените книгу на GitHub, Amazon или GoodReads. English version on Substack.

Перейдём теперь к конкретике: что конкретно означает «следовать семантике протокола» и «разрабатывать приложение в соответствии с архитектурным стилем REST». Напомним, речь идёт о следующих принципах: операции должны быть stateless; данные должны размечаться как кэшируемые или некэшируемые; интерфейсы взаимодействия между компонентами должны быть стандартизированы; сетевые системы многослойны.

Эти принципы мы должны применить к протоколу HTTP, соблюдая дух и букву стандарта: URL операции должен идентифицировать ресурс, к которому применяется действие, и быть ключом кэширования для GET и ключом идемпотентности — для PUT и DELETE; HTTP‑глаголы должны использоваться в соответствии с их семантикой; свойства операции (безопасность, кэшируемость, идемпотентность, а также симметрия GET / PUT / DELETE‑методов), заголовки запросов и ответов, статус‑коды ответов должны соответствовать спецификации.

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

Облака и безопасность

Level of difficultyMedium
Reading time9 min
Views1.4K

Сейчас все облачные платформы, построенные по принципу Cloud Native, используют виртуализацию и контейнеризацию для реализации микросервисной архитектуры. Поэтому здесь и далее мы будем говорить о безопасности виртуальных машин (VM), понимания под ними как полную виртуализацию, так и паравиртуализацию и контейнеры (Docker и т.п.). Идеалом для пользователя облака было бы получить безопасность своих удаленных виртуальных машин такую же (или почти такую же), как при локальной работе. Как этого достичь?

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

Читать далее
Rating0
Comments3

Внутреннее устройство DRBD: алгоритмы работы отказоустойчивого хранилища

Level of difficultyHard
Reading time13 min
Views7.5K

DRBD


Глубокое понимание внутреннего устройства DRBD позволяет более тонко настраивать работу системы и правильно планировать ресурсы. К счастью, у команды DRBD уже есть отличная документация, которая довольно подробно разбирает эту тему. Мы опирались на нее в своей работе, и решили перевести и выложить в открытом доступе 17-ю главу — как удобную шпаргалку по внутреннему устройству DRBD. Так что это не обычная статья, а перевод части официальной документации (исходная нумерация разделов сохранена).


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

Читать дальше →
Total votes 19: ↑18 and ↓1+24
Comments1

Information

Rating
1,406-th
Registered
Activity