Как стать автором
Обновить
0
0

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

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

Как небольшой команде переехать на ClickHouse: на какие грабли мы наступили и о каких фишках не знали

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

Привет, Хабр!

Меня зовут Петр. Я работаю инженером по данным в Okko и обожаю ClickHouse. 

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

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

Статья в основном для тех, кто только начинает свой путь работы с кликхаусом: мы посмотрим, как делать не надо, и как можно сделать лучше.

В этой статье не будет объяснений почему для переезда мы выбрали именно этот инструмент. Не будет и глубокой теории о его внутреннем устройстве. Отметим лишь: в правильных руках ClickHouse — одна из самых быстрых колоночных СУБД для OLAP запросов.

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

Telegram Mini App. Как создать Web App с нуля

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

Mini Apps (или же WebApps) - это относительно новый и удобный способ добавления веб приложения прямо в интерфейсе приложения Telegram. Используя JavaScript, становится возможным создавать бесконечное множество интерфейсов, которые смогут заменить полноценный веб-сайт.

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

И сегодня мы попробуем создать miniapp приложение, взаимодействующее с данными пользователя.

Приступим

Читать далее
Всего голосов 19: ↑18 и ↓1+21
Комментарии11

Как стать тестировщиком бесплатно? Программа обучения с нуля

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

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

Чтобы разбавить обилие платных курсов, мы подготовили для вас программу обучения «Тестировщик с нуля», которая состоит только из бесплатных курсов.

Читать далее
Всего голосов 26: ↑23 и ↓3+22
Комментарии6

Разбираемся с стейблкойном на TON или как ваши средства могут заблокировать

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

19 апреля на конференции Token2049 после выступления Павла Дурова было объявлено о появлении стейблкойна от Tether в сети TON - USDt. Так как это централизованный стейблкойн эмитент подобного токена должен иметь контроль над средствами пользователей для соответствия требований регулятора, например, блокировать средства пользователя. В данной небольшой статье я расскажу как устроены токены на TON и какие возможности есть у эмитента стейблкойна.

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

Как устроены смарт-контракты в сети TON

Блокчейн TON асинхронный, смарт-контракты передают данные друг другу сообщениями. Контракты пишут на языке TACT и FUNC, логика написанная на этих языках вполне понятна без детального изучения, этим мы воспользуемся при обзоре контрактов стейблкойна. Но если же вы хотите разобраться глубже здесь есть бесплатные опенсорсные уроки.

Смарт-контракты на TON не предполагают хранения внутри себя больших словарей, вместо этого предполагается создавать мастер контракт, который может “воссоздавать”(адрес представляет собой хэш из начальной информации смарт-контракта и его кода, что делает возможным подобную механику) внутри себя адреса связанных контрактов и таким образом отправлять им сообщения, меня информацию в их хранилищах.

Читать далее
Всего голосов 12: ↑10 и ↓2+15
Комментарии17

Как распознать мошенническое письмо. Памятка безопаснику для обучения пользователей основам ИБ

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

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

Думаю, не стоит объяснять, почему именно фишинговые письма – это ситуация из разряда «обняться и плакать». Но если всё-таки нужно, то вот статистика компании Egress, которая занимается защитой электронной почты и противодействием фишингу: 94% опрошенных ими компаний стали жертвами фишинга.

НО! Перед погружением в мир «рыболовства» под спойлером небольшое напоминание очевидного.

Читать далее
Всего голосов 12: ↑10 и ↓2+8
Комментарии11

Раздача файлов на смартфоны без интернета. Опенсорсные альтернативы AirDrop

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


Формулировка задачи. У нас есть настольный компьютер и мобильные устройства под Android. Задача простая — как быстро перебросить файлы с компьютера на телефоны и планшеты. Например, скачанные подкасты и HD-фильмы 1080p, файлы apk для установки, рабочие файлы с персоналки, бэкапы. Хранилище телефона можно использовать как резервный внешний диск или как «беспроводную» флешку, которая работает по Wi-Fi.

Конечно, можно это сделать через веб-сервисы Wormhole/PairDrop/FilePizza, через телеграм/вайбер или инструменты синхронизации ПК и смартфона, такие как syncthing. Да, это удобно и привычно. Но процесс можно 1) ускорить; 2) избавиться от подключения к интернету. То есть файлы будут передаваться напрямую между устройствами, как Apple AirDrop, только лучше.
Читать дальше →
Всего голосов 41: ↑40 и ↓1+57
Комментарии68

CrowdSec — современная альтернатива Fail2Ban и коллективный иммунитет для Интернета

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

CrowdSec

Инструмент Fail2Ban хорошо известен админам. Программа анализирует логи на сервере и подсчитывает количество попыток доступа с конкретных IP-адресов по указанным протоколам. В случае нарушения правила данный IP-адрес блокируется на заданный отрезок времени. Например, джейл для авторизации по SSH включён с дефолтными настройками 5 попыток авторизации за 10 минут, после чего происходит бан IP-адреса на 10 минут. Отличный способ отфильтровать мусорный трафик от разных сканеров и защита от DDoS.

Fail2Ban и SSHGuard — лучшие инструменты в своей области. Однако новый опенсорсный проект CrowdSec представляется интересной альтернативой. Это локальная замена Fail2Ban, а потенциально нечто большее — глобальная база репутации IP-адресов типа иммунной системы интернета.
Читать дальше →
Всего голосов 30: ↑28 и ↓2+33
Комментарии64

SSH-Туннели простыми словами

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

В какой-то момент у меня возникла необходимость разобраться с простыми SSH-туннелями: как из запускать и какие туннели могут помочь мне (обычному web-разработчику). Разобраться в этом удалось и я решил поделиться пояснениями в простой понятной форме.

Читать далее
Всего голосов 17: ↑16 и ↓1+18
Комментарии27

Docker для новичков — #1 Что такое контейнер, image, DockerHub?

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

В этой статье я расскажу о том, что такое Docker, Docker Desktop и как этим пользоваться! Два способа создания image, значения вкладок Docker Desktop

Читать далее
Всего голосов 25: ↑20 и ↓5+16
Комментарии6

Автоматизируем поиск ценной информации в групповых чатах Telegram с помощью LLM

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

Устали мониторить бесконечные групповые чаты в Telegram в поисках важной информации? Решение есть! Пишем компактное приложение на Python, которое будет делать это за нас с использованием LLM.

Читать далее
Всего голосов 20: ↑19 и ↓1+18
Комментарии17

Упражнения для глаз

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

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

Эти упражнения позволяют сохранять качественное зрение в любом возрасте.

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

Упражнения описывал сам, но кто хочет, может обратится к первоисточнику, ссылка на книгу внизу. Часть упражнений не описал, либо сам не делал, либо решил, что всё равно не будете делать:)

Выполнять упражнения  обязательно с удовольствием, никакое напряжение не допустимо.

Читать далее
Всего голосов 13: ↑10 и ↓3+7
Комментарии24

Умная квартира айтишника: хотел всё на Wi-Fi, но передумал

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

Артур — айтишник из Минска, который любит все технологичное и современное. После покупки новой квартиры с черновой отделкой все сомнения были отброшены: она будет умной!

Как тогда казалось Артуру, беспроводные технологии — самое передовое и удобное решение для инженерных систем умного дома. Тем более многие кондиционеры, пылесосы, приводы штор, лампы, регуляторы теплых полов и другая бытовая техника поддерживают Wi-Fi «из коробки».

Однако появились аргументы против. В итоге Артур выбрал гибридное решение, сочетающее как проводные технологии, так и Wi-Fi с Zigbee.

В статье мы расскажем о выборе Артура и инженерных системах, которые работают в его умной квартире. Интересно? Ныряйте под кат.

Читать далее
Всего голосов 31: ↑30 и ↓1+31
Комментарии134

Как я выбирал решения для удаленного администрирования? Опыт руководителя IT-отдела московского колледжа

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

Привет, Хабр, меня зовут Владимир, и я работаю руководителем IT департамента одного из московских колледжей. Сейчас у нас трудится порядка 1500 сотрудников в 57 зданиях и обучается более 35 000 жителей Москвы. В прошлый раз я рассказывал, как мы переживали времена перевода всего образования на удаленку, как выбирали решение, собирали feedback и масштабировали решение. Тогда же мы начали готовиться к одному важному событию в жизни нашего учреждения – капитальному ремонту основного здания и прилегающей территории. Точнее, реставрации, так как здание является объектом культурного наследия.


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


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


image

Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии13

Как отлаживать bash-script-ы по шагам или, возможно, самая короткая статья о программировании/отладке на Хабре

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

Мне всегда хотелось иметь возможность отлаживать bash-scripts так же, как и любой другой код, т.е. по шагам, и bash такую возможность предусмотрел, но о ней не все знают. Несмотря на довольно большой опыт использования Linux, я дошёл до неё только недавно.

Читать далее
Всего голосов 158: ↑157 и ↓1+188
Комментарии37

Экспорт статей Хабра в html, markdown

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

image


До меня было написано 4 статьи по экспорту статей с хабра в FB2 и pdf:



Я захотел получить исходники своих статей.

Читать дальше →
Всего голосов 26: ↑25 и ↓1+34
Комментарии28

Proxmox 8. Настраиваем проброс видеокарты (GPU Passthrough). Выбор материнской платы на AM5 сокете

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


Уже прошел год как вышел Debian 12 Bookworm и, основанный на нем, Proxmox 8. Несмотря на тот факт, что мои предыдущие статьи по пробросу дискретной Видеокарты в виртуальную машину, в кол-ве 4-х на Хабре, частично все еще актуальны для последней версии Proxmox, в тематических чатах регулярно поступали обращения обновить статью, а так же выяснилось что, у тех кто пользуется такими инструкциями, есть определенное непонимание в нюансах, из-за чего приходится проходить вместе с ними всю цепочку действий заново.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+25
Комментарии21

Пишем чат-бот для работы с PDF

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

Популярность языковых моделей, в частности ChatGPT, растет в геометрической прогрессии, но многие из нас все еще сталкивается с определенными ограничениями, такими как устаревшая информация, которые OpenAI пока что не смогла преодолеть.

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

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

Приступим (:

Читать далее
Всего голосов 12: ↑11 и ↓1+13
Комментарии7

ChatGPT во фронтенде: как его использовать и когда он заменит разработчиков

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

Что такое ChatGPT, чем он может помочь фронтенд-разработчику и стоит ли бояться, что нейросеть отнимет у вас работу?

Короткий ответ: искусственный интеллект пока что не может заменить программистов — зато может здорово облегчить им жизнь.

Развёрнутый ответ — в этой статье. Мы последовательно объясним, почему нейросетей не стоит бояться, и на конкретных примерах покажем, как именно вы можете внедрить ChatGPT в свою работу уже сегодня.

Узнать дальше
Всего голосов 10: ↑5 и ↓5+1
Комментарии7

Начала Docker для юнги

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

Туториал по основам докера в котором простыми словами объясняется, как собирать образы и разворачивать контейнеры. Тут же можно узнать, чем контейнер отличается от виртуалки, что такое образ и увидеть простой кейс.

Окунуться
Всего голосов 19: ↑16 и ↓3+16
Комментарии26

Погружаемся в CSS: как использовать :where ()

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

Функция :where() помогает писать меньше кода, применять стили ко всему списку и снимает головную боль при использовании CSS reset. В статье разберёмся, как это работает, и посмотрим на примеры использования.

Читать далее
Всего голосов 17: ↑15 и ↓2+15
Комментарии6
1

Информация

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