Разделенные, мы стоим: Рецепт шеф-повара Golang для Шардинга базы данных

Разделенные, мы стоим: Рецепт шеф-повара Golang для Шардинга базы данных

Ах, горизонтальное масштабирование — это кулинарное искусство архитектуры баз данных! Подобно нарезке гигантской салями на управляемые кусочки (но с меньшим количеством чеснока), сегментирование помогает нам обслуживать данные быстрее, чем нью-йоркский пиццерийщик. Давайте наденем наши поварские колпаки и приготовим устойчивую реализацию сегментирования в Go! Сегментированный шведский стол: выберите вкус раздела Прежде чем мы запустим кодовую печь, давайте рассмотрим основные варианты подачи: Горизонтальное или вертикальное сегментирование graph LR A[Монолитная база данных] --> B{Тип сегментирования} B --> C[Вертикальное: таблицы в виде слоёв] B --> D[Горизонтальное: строки в виде срезов] C --> E[Специализированные серверы баз данных] D --> F[Распределённые узлы данных] В этом рецепте мы сосредоточимся на горизонтальной нарезке — потому что кому не нравятся равномерно распределённые кусочки данных?...

12 мая 2025 14:00 · 3 минуты · 553 слова · Maxim Zhirnov
Зигзаг или вплавь: Прагматичное погружение в системное программирование без спасательных жилетов

Зигзаг или вплавь: Прагматичное погружение в системное программирование без спасательных жилетов

Ах, Zig — язык, который заставляет C выглядеть так, будто он спит с 70-х годов. Давайте закатаем рукава и разберём этого современного претендента на системное программирование, дополненного примерами кода, которые действительно компилируются, и аналогиями, от которых не будет вас коробить (почти). Первый контакт: установка бензопилы Прежде чем мы будем жонглировать указателями памяти, давайте заточим наши инструменты. Создайте файл hello.zig: const std = @import("std"); pub fn main() void { std.debug.print("Привет, Meatbag!\n", ....

8 мая 2025 14:00 · 4 минуты · 655 слов · Maxim Zhirnov
Расширение Jupyter Notebook: игровая площадка для разработчиков JavaScript

Расширение Jupyter Notebook: игровая площадка для разработчиков JavaScript

Представьте: вы потягиваете кофе, а Jupyter Notebook послушно превращает ваши переменные Python в сонеты Шекспира. В этом сила расширений — и сегодня мы создадим такое, которое будет действительно полезным (хотя поддержка ямбического пентаметра может появиться в версии 2). Приготовьтесь к насыщенному кодингом путешествию по системе расширений Jupyter! Подготовка основы Прежде чем мы начнём творить чудеса, давайте подготовим мастерскую нашего волшебника: # Создаём каркас расширения npx create-jupyterlab-extension jupyterlab_stonks cd jupyterlab_stonks jlpm install Это создаёт проект TypeScript (двоюродный брат JavaScript, знающий о типах)....

6 мая 2025 14:00 · 3 минуты · 533 слова · Maxim Zhirnov
Разработка ПРОТИВ расширений кода: где JavaScript встречается с магией (и легким разочарованием)

Разработка ПРОТИВ расширений кода: где JavaScript встречается с магией (и легким разочарованием)

Итак, вы хотите создать расширения для VS Code? Отличный выбор! Вы вот-вот погрузитесь в мир, где сможете заставить редакторы работать по вашей воле… если справитесь с первоначальным хаосом настройки. Давайте превратим «Hello World» в «Hello продуктивный рабочий процесс» с помощью магии JavaScript. 1. Настройка рабочего пространства для расширений Сначала вооружитесь этими инструментами: Node.js (версия 18 или новее, если вам не нравятся ошибки версий); Yeoman (npm install -g yo); Генератор расширений VS Code (npm install -g generator-code)....

24 апреля 2025 14:00 · 3 минуты · 528 слов · Maxim Zhirnov
Создание программы чтения мыслей для просмотра фильмов: NLP на базе BERT с TensorFlow

Создание программы чтения мыслей для просмотра фильмов: NLP на базе BERT с TensorFlow

Ах, обработка естественного языка — искусство научить машины понимать человеческую речь или, как я люблю это называть, «научить роботов ценить Шекспира, пока они молча судят ваши текстовые сообщения». Сегодня мы создадим систему, которая сможет предсказывать, является ли отзыв на фильм положительным или отрицательным, используя BERT и TensorFlow. Зачем? Потому что иногда вам нужно знать, действительно ли фраза «Этот фильм изменил мою жизнь» означает, что эти два часа вернуть уже не удастся....

23 апреля 2025 08:40 · 3 минуты · 627 слов · Maxim Zhirnov