Как стать автором
Обновить
31
0
Евгений Бредня @bzq

IT

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

Адекватная латиница для русского языка

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров11K

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

В первую очередь адекватный стандарт нужен для конвертации названий и имен для международных документов. Очевидно, что паспорта, водительские удостоверения и даже визитки должны быть с нормальными именами, написанным по правилам русского языка, а не английского, немецкого или французского. Сейчас в России и Казахстане используется стандарт конвертации из Британского Географического общества, который был принят столетия назад и предназначался для населенных пунктов, а не имен. И цель была отличать их от английских названий, поэтому, например, вместо очевидной буквы H для русской Х там используется KH — две буквы, которые носители английского языка не умеют читать, поскольку в их языке такого нет. И в русском тоже нет. Этот стандарт не подходит для нормального использования. Он даже не всегда одинаково относится к тем же самым буквам: Ц может превратится в C или в TS. А буква Ё чаще всего становится буквой E.

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

Читать далее
Всего голосов 43: ↑28 и ↓15+20
Комментарии198

Сам себе мобильный интернет. Запускаем базовую станцию стандарта 4G LTE

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров92K
Приветствую всех!

Я уже не раз рассказывал про то, как в домашних условиях поднять сотовые сети разных стандартов. Но всё же все они были уже весьма древними. Самое время замахнуться на кое-что поинтереснее — LTE.



Итак, в сегодняшней статье поговорим о том, что детально в нашем сообществе не описывал практически никто — о том, как запустить базовую станцию самого нового из поддерживаемых большинством телефонов этой страны стандартов. Поговорим об особенностях её работы и о трудностях, с которыми, возможно, придётся столкнуться при запуске. Традиционно будет много интересного.
Читать дальше →
Всего голосов 313: ↑312 и ↓1+368
Комментарии159

Как в СУБД реализовать администратора без прав доступа к данным

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров7.9K

В СУБД-строении есть не новая, но не теряющая актуальности задача. Сформулировать её можно примерно так: как убрать возможность суперпользователя взаимодействовать с данными, но оставить ему все возможности по управлению СУБД? Эта функция затребована не только большими компаниями с жёсткими требованиями к информационной безопасности, но и крайне нужна всем, кто попадает под различного вида государственные регуляции, вроде приказа ФСТЭК №64 или страшного GDPR.

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

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

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии12

GOST: швейцарский нож для туннелирования и обхода блокировок

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров116K

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

Сегодня я расскажу о замечательном инструменте под названием GOST. Не пугайтесь, он не имеет никакого отношения к ГОСТ-шифрованию или чему-то подобному, на самом деле это Go Simple Tunnel. Он действительно simple (простой) в использовании и настройке, но при этом невероятно мощный, поскольку поддерживает огромное количество протоколов и транспортов, из которых вы при желании сможете построить самые упоротые и бронебойные комбинации, а именно...

Читать далее
Всего голосов 145: ↑142 и ↓3+174
Комментарии114

Что для меня значит быть программистом

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

Как-то мне написали с Хабра и сказали: Саня, хочешь написать статью про программистов?

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

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

Чтобы получать 300кк/c, нужно всего лишь..
Всего голосов 158: ↑143 и ↓15+149
Комментарии71

Последние изменения в IO-стеке Linux с точки зрения DBA

Время на прочтение15 мин
Количество просмотров21K
Главные вопросы работы с базой данных связаны с особенностями устройства операционной системы, на которой работает база. Сейчас Linux — основная операционная система для баз данных. Solaris, Microsoft и даже HPUX все еще применяются в энтерпрайзе, но первое место им больше никогда не занять, даже вместе взятым. Linux уверенно завоевывает позиции, потому что open source баз данных все больше. Поэтому вопрос взаимодействия БД с ОС, очевидно, о базах данных в Linux. На это накладывается вечная проблема БД — производительность IO. Хорошо, что в Linux последние годы идет капитальный ремонт IO-стека и есть надежда на просветление.


Илья Космодемьянский (hydrobiont) работает в компании Data Egret, которая занимается консалтингом и поддержкой PostgreSQL, и про взаимодействие ОС и баз данных знает многое. В докладе на HighLoad++ Илья рассказал о взаимодействии IO и БД на примере PostgreSQL, но и показал, как с IO работают другие БД. Рассмотрел стек Linux IO, что нового и хорошего в нем появилось и почему все не так, как было пару лет назад. В качестве полезной памятки — контрольный список настроек PostgreSQL и Linux для максимальной производительности подсистемы IO в новых ядрах.
Всего голосов 48: ↑43 и ↓5+38
Комментарии9

Как работает ChatGPT: объясняем на простом русском эволюцию языковых моделей с T9 до чуда

Уровень сложностиПростой
Время на прочтение30 мин
Количество просмотров436K

В последнее время нам почти каждый день рассказывают в новостях, какие очередные вершины покорили языковые нейросетки, и почему они уже через месяц совершенно точно оставят лично вас без работы. При этом мало кто понимает — а как вообще нейросети вроде ChatGPT работают внутри? Так вот, устраивайтесь поудобнее: в этой статье мы наконец объясним всё так, чтобы понял даже шестилетний гуманитарий!

Погнали →
Всего голосов 299: ↑292 и ↓7+343
Комментарии283

Слепые капитаны ищут дно: почему российский бизнес – это болото, в котором барахтаются идиоты-«менеджеры»

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

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

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

Читать далее
Всего голосов 259: ↑183 и ↓76+149
Комментарии1361

Чем Linux HugePages важны для серверов баз данных?

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

Часто пользователи рассказывают о сбое базы данных по вине Out Of Memory Killer. Он завершает процессы PostgreSQL и остается причиной большинства отказов этой БД. Память на хост-компьютере может закончиться по нескольким причинам. Наиболее распространены из них четыре. Во-первых, может быть плохо настроена память на хост-компьютере. Во-вторых, могут быть ограничения глобальной переменной work_mem. Например, если у вас 32Гб RAM и work_mem=1Гб, то больше 32 соединений вы никогда не запустите. Каждое соединение PostgreSQL будет выделять этот размер памяти.

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

Представляем вам перевод статьи от Jobin Augustine, который работает в Percona старшим инженером службы поддержки. Более 20-лет он был консультантом, архитектором, администратором и инструктором по PostgreSQL, Oracle и другим технологиям баз данных. Сегодня поговорим о том, как можно защититься от OOM с помощью HugePages и разберем насколько они важны и почему нужны.

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии7

Клон ZX-80 на базе ATmega8

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

ATX-80 на GitHub: github.com/Panda381/ATX80

Проект по сборке компактного клона ZX-80, в котором мы не только разберем сам процесс сборки, включая подготовку платы и схематику подключения на ней компонентов, но также познакомимся с используемым в ATX-80 интерпретатором Basic и научимся работать с памятью этого компьютера на примере загрузки 32 образцов программ.
Читать дальше →
Всего голосов 43: ↑40 и ↓3+58
Комментарии30

15с, 16c или 41c – вам какой? Собираем собственный эмулятор калькулятора HP

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

Я всю свою жизнь пользовался калькуляторами HP RPN, и мне жаль, что RPN-версии больше не производят. Они были упразднены в угоду стандартным инфиксным калькуляторам. Тем не менее я всегда хотел иметь HP15c, но вот никак не подворачивался случай его купить. Так что это моя первая попытка создать его самостоятельно.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+47
Комментарии12

Внедрение в архитектуру советских программируемых калькуляторов «Электроника МК-52»

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


В этой статье я хочу рассказать об архитектуре советских программируемых микрокалькуляторов на примере калькулятора «Электроника МК-52» и как можно внедриться в его архитектуру.

Советские калькуляторы семейства "Электроника Б3-34" («Электроника МК-56», «Электроника МК-61» и «Электроника МК-52») были особенно популярны в СССР. Причиной этому была не только доступная цена в 65 рублей за МК-54, 85 рублей за МК-61 или 115 рублей за МК-52, но и развитой язык программирования. Это семейство калькуляторов стало де-факто стандартным для многочисленных пользователей. Огромное количество книг было посвящено программированию на этих машинках и публикацией готовых алгоритмов. Электроника МК-52 даже летала в космос на корабле Союз ТМ-7, где предполагалось его использование в качестве резервного на случай неисправности спускаемого навигационного оборудования. Даже в военно-морском флоте СССР калькулятор «Электроника МК-52» с блоком расширения памяти БРП «Астро» какое-то время был стандартным средством для навигационных расчетов.


Читать дальше →
Всего голосов 115: ↑115 и ↓0+115
Комментарии180

Протокол, который невозможен: как на самом деле в ДЭГ обеспечивают тайну голосования

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

В предыдущей публикации мы сравнивали российские системы ДЭГ (дистанционного электронного голосования) с эстонскими — и мгновенно залезли в такие технические детали, как слепая подпись, ключевые пары и так далее, то есть, по сути, в архитектуру систем ДЭГ.

Впрочем, залезли мы относительно поверхностно — на самом деле, российская система ДЭГ (для определённости дальше будем описывать федеральную систему, ибо она в целом интереснее московской) с технической точки зрения устроена крайне непросто, но сложность эта имеет причину. И большинство комментариев о том, что «начальнику на стол ляжет список, кто как проголосовал» — из непонимания или нежелания, иногда намеренного, разобраться в этой сложности.

Конкретные объяснения, «почему с ДЭГ всё плохо», зависят от квалификации высказывающегося — и простирается от «какие числа захотят, такие и покажут» (Дарья Митина, «Коммунисты России», на недавнем круглом столе у Александра Асафова) до ссылок на протокол двух агентств с указанием на отсутствие таковых агентств (статья Александра Исавнина на Хабре).

Попробуем разобраться, так ли всё плохо на самом деле, как устроена российская — для определённости возьмём федеральную, которую делает «Ростелеком», она интереснее — система ДЭГ, что там с протоколом двух агентств и что помешает показать такие числа, какие захотят. Ну и заодно — какие есть основания верить, что система реализована действительно так, как говорится в документах.

Надеемся, вам будет интересно — в конце концов, на Хабре можно быть равнодушным к выборам, но не к сложным технологическим системам!

Читать далее
Всего голосов 50: ↑45 и ↓5+62
Комментарии209

DBA: прибираем «мертвые души»

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

Иногда при выполнении длительных или плохо написанных запросов в PostgreSQL происходят разные неприятные вещи типа внезапного сбоя процесса или краша всего сервера.

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

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

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии3

23 минуты. Оправдание тугодумов

Время на прочтение3 мин
Количество просмотров192K
Я всегда думал, что я – тупой. Точнее, что я — тугодум.

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

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

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

Просто культура в тех компаниях, где я начинал работать, была модерновая. Ну, как там это бывает – «совещание должно закончиться принятием решения». Вот чего придумали на совещании, то и принимается. Даже если решение — полная фигня.
Читать дальше →
Всего голосов 321: ↑305 и ↓16+365
Комментарии334

Логическая репликация в PostgreSQL. Репликационные идентификаторы и популярные ошибки

Время на прочтение42 мин
Количество просмотров53K
image

Начиная с 10 версии, перенести данные с одной базы PostgreSQL на другую несложно, с обновлением, без обновления — неважно. Об этом немало сказано и сказанное сводится к следующему: на мастере, 10 версии и выше, устанавливаем параметр конфигурации wal_level="logical". В pg_hba.conf добавляем такую строку:

host    db_name    postgres    192.168.1.3/32     trust

Затем рестартуем на мастере postgres и выполняем на реплике из-под пользователя postgres:

pg_dumpall --database=postgres --host=192.168.1.2 --no-password --globals-only --no-privileges | psql
pg_dump --dbname db_name --host=192.168.1.2 --no-password --create --schema-only | psql

Теперь подключаемся на мастере пользователем postgres к базе db_name и создаём публикацию:

CREATE PUBLICATION db_pub FOR ALL TABLES;

а на реплике создаём подписку:

CREATE SUBSCRIPTION db_sub CONNECTION 'host=192.168.1.2 dbname=db_name' PUBLICATION db_pub;

По завершении репликации переключаем приложение или балансировщик на новую базу.

Теперь вы знаете постгрес (и с какой стороны доить слонеску) и можете идти устраиваться ДБА.
Для любознательных есть пара небольших деталей под катом.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+9
Комментарии4

Мы Опубликовали Качественный, Простой, Доступный и Быстрый Синтез Речи

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

fiona


Вторая частьhttps://habr.com/ru/post/563484/


Вокруг темы синтеза речи сейчас много движения: на рынке есть огромное число тулкитов для синтеза, большое число закрытых коммерческих решений за АПИ (как на современных технологиях, так и на более старых, т.е. "говорилки") от условных GAFA компаний, большое количество американских стартапов, пытающихся сделать очередные аудио дипфейки (voice transfer).


Но мы не видели открытых решений, которые бы удовлетворяли одновременно следующим критериям:


  • Приемлемый уровень естественности речи;
  • Большая библиотека готовых голосов на разных языках;
  • Поддержка синтеза как в 16kHz так и в 8kHz из коробки;
  • Наличие своих собственных голосов у авторов решения, не нарушающих чужие права и лицензии;
  • Высокая скорость работы на "слабом" железе. Достаточная скорость работы на 1 потоке / ядре процессора;
  • Не требует GPU, команды ML инженеров или какой-либо дополнительной тренировки или для использования;
  • Минимализм и отсутствие зависимостей / использование в 1 строчку / не надо ничего собирать или чинить;
  • Позиционируется именно как готовое решение, а не очередной фреймворк / компиляция чужих скриптов / тулкитов для сбора плюсиков;
  • Решение никак не связано и не аффилировано с закрытыми экосистемами и продуктами Гугла / Сбера / Яндекса / вставить нужное;

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

Всего голосов 205: ↑205 и ↓0+205
Комментарии229

Новая история Млечного Пути

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

За последние два года астрономы переписали историю нашей Галактики



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

Представители койсанских народов из Чёрной Африки, наблюдая за извилистой полосой из звёзд и пыли, разделяющей ночное небо, видели в ней угли костра. Полинезийские моряки видели в небе акулу, пожирающую облака. Древние греки видели поток молока, и называли эту дорожку «млечной» – galaxias – откуда в последствии и взялся термин "галактика".
Всего голосов 29: ↑29 и ↓0+29
Комментарии6

Тариф «100к+», или как вельми зело огорчить спамера

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

Уже не впервые сталкиваюсь, что читатели Хабра не все поголовно умеют правильно бороться со спамом. И я не про SpamAssasin, «Ктозвонил» и прочие приложения для фильтрации информационного мусора, а про несложную, но весьма доставляющую всем сторонам процесса подачу жалобы в ФАС.

Давайте расскажу, как буквально за 15 минут не отрываясь от любимого компьютера подключить спамеру задораздирающий тариф линейки «Административный»: «Административный 100к», «Административный 150к» и вплоть до «Административный 500к» – как повезет.
Читать дальше →
Всего голосов 207: ↑203 и ↓4+264
Комментарии259

Дизайн обложки за 250 рублей

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

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

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

Мы решили найти исполнителя, готового сделать для нас обложку за 250 рублей


Сначала попытались разместить заказ на известный сайт для поиска фрилансеров: fl.ru.
Читать дальше →
Всего голосов 56: ↑52 и ↓4+75
Комментарии57

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность