Обновить
12
0
Александр Шатилов@alexbraun

AI CPTO

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

Укрощаем одноглазого змея. Разбираемся с WireGuard и делаем свой умный VPN

Время на прочтение29 мин
Охват и читатели626K

Забавная ситуация: сайтов и сервисов, доступных только через VPN, все больше, но при этом многие российские компании закрывают доступ из-за границы. В результате приходится целыми днями теребить ползунки «вкл-выкл», что утомительно. Я расскажу, как с помощью магии маршрутов и WireGuard, решить эту проблему и сделать «умный» VPN, который не надо отключать.


Если ты пользуешься VPN, то и сам наверняка сталкиваешься с блокировками зарубежного трафика. К примеру, могут не открываться pochta.ru, leroymerlin.ru, rt.ru, avito.ru.


Получается мем.



Каждый с этим борется как может. Например, на устройствах Apple родными средствами можно настроить автоматизацию, которая будет запускать VPN, когда открываешь определенные приложения (например, Twitter), а когда выходишь из них — выключать обратно. Но это костыль, а хочется все сделать красиво, да еще и прокачать навык работы с сетью.


Поэтому мы сейчас попробуем «включать VPN чуть-чуть».

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

Как мы учили Почту события в календарь добавлять. Часть 1

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

Сегодня очень любят использовать слово «умный»: умный дом, умный телевизор, умный пылесос. Хотя чаще всего речь идёт не о какой-то мифической “умности” прибора или приложения, а об автоматизации каких-то рутинных действий. Вот и мы сделали «умным» наш Календарь: автоматизировали добавление в него событий на основе важных входящих писем. Я - Дима, тимлид команды машинного обучения Почты Mail.ru, и на примере этого функционала хочу рассказать о том, какой путь проходит фича от рождения до передачи в эксплуатацию.

Читать далее

Как издать свою книгу и сколько это стоит

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

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

Читать далее

И конфеты за меня есть будете? AutoML в помощь Citizen Data Scientist’у

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели8.4K

В прошлых статьях мы много рассказывали о том, как Data Science помогает металлургу, что такое Self-Service Analytics и как простой технолог может командовать моделями машинного обучения. В этом посте хочется раскрыть больше технических деталей по последнему пункту.

Хардкорный дата-сайентист может собрать нейросеть даже из спичечных коробков. Однако CDS — это про решение производственных задач малой кровью и в разумные сроки. И для таких решений необходим соответствующий инструментарий.

Привет, на связи снова Андрей Косинцев из ЕВРАЗа, и под катом вы узнаете, как самообучаются ML-модели и самоверстается фронтенд.

Читать далее

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

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели132K

Mojo — это новый язык программирования, основанный на Python, который устраняет имеющиеся у него проблемы производительности и развёртывания.

Об авторе: Джереми Говард (Jeremy Howard) — Data Scientist, исследователь, разработчик, преподаватель и предприниматель. Джереми является одним из основателей исследовательского института fast.ai, занимающегося тем, чтобы сделать глубокое обучение более доступным, а также он является почётным профессором Университета Квинсленда. Ранее Джереми был выдающимся научным сотрудником в Университете Сан‑Франциско, где он был основателем Инициативы Уиклоу «Искусственный интеллект в медицинских исследованиях».

Mojo – это Python++

Введение в Screen Capture API — Сканируем QR коды в браузере

Время на прочтение6 мин
Охват и читатели14K

Введение


В этой статье мы, как вы уже догадались, поговорим про Screen Capture API. Этот API появился на свет в 2014 году, и новым его назвать сложно, однако поддержка браузерами все еще достаточно слабая. Тем не менее его вполне можно использовать для персональных проектов или там, где эта поддержка не так важна.


Немного ссылок для начала:



На случай если ссылка с демо отвалится (или если вам лень туда перейти) — вот так выглядит готовое демо:



Приступим.

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

Как стартапу получить ранний трэкшн (traction)

Время на прочтение10 мин
Охват и читатели18K

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

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

Прежде чем перейдем к вопросу «как получить трэкшн?», давайте разберемся, что это за трекшн такой, и почему он так важен, как для самого стартапа, так и для инвестора, как его измерить, и показать. Также остановимся на том, как получить трэкшн дешево и увеличить благодаря этому оценку стартапа. Погнали!

Читать далее

Кастомная стратегия виртуального скроллинга для просмотра pdf

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

Angular CDK имеет широкие возможности для скроллинга плоского списка. Если размер каждого элемента одинаков, то можно воспользоваться FixedSizeVirtualScrollStrategy: всего лишь нужно прокинуть размер элемента в пикселях, проитерироваться по данным и виртуальный скроллинг готов. Но что делать, если размер элементов разный? Данную проблему можно решить кастомной стратегией виртуального скроллинга. В данной статье мы рассмотрим как построить такую стратегию для pdf-документов.

Читать далее

CRDT: Conflict-free Replicated Data Types

Время на прочтение10 мин
Охват и читатели64K

Как считать хиты страницы google.com? А как хранить счётчик лайков очень популярных пользователей? В этой статье предлагается рассмотреть решение этих задач с помощью CRDT (Conflict-free Replicated Data Types, что по-русски переводится примерно как Бесконфликтные реплицированные типы данных), а в более общем случае — задачи синхронизации реплик в распределённой системе с несколькими ведущими узлами.
Читать дальше →

CI/CD из GitHub в Яндекс Облако через Docker

Время на прочтение6 мин
Охват и читатели20K

Всем привет!

Будем использовать GitHub Actions. Создадим виртуальную машину в Яндексе. И многое другое.

Сегодня настраиваем деплой из GitHub в Яндекс Облако, используя Docker compose.

Читать далее

Play to earn: как технологии и игры помогают агробизнесу

Время на прочтение6 мин
Охват и читатели2K

Итак, представим, то вы находитесь в России и вдруг понимаете, что неплохо было бы купить виноградник в Италии. Безумие? Нет! Сегодня вполне возможно приобрести в метавселенной NFT токен, эквивалентный реальному земельному участку, и заняться хозяйством в игровом мире, майня не только цифровые активы, но и реальные продукты.

Читать далее

Как мы сделали аудиозвонки в приложении для сотрудников

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели8.5K

Меня зовут Ильдар, я техлид в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. Сегодня расскажу о том, как мы внедрили функцию аудиозвонков в наш корпоративный мессенджер для сотрудников.

Читать далее

Создание кастомизируемого Dropdown для React на TypeScript

Время на прочтение11 мин
Охват и читатели43K

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

В этой статье будет рассмотрен пример создания такого компонента с использованием React, TypeScript и styled-components (замечу, что использование css-in-js - опционально. Вы можете использовать любой способ стилизации, который вам по душе).

Читать далее

5 классных сервисов на основе ИИ (с примерами)

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

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

Сегодня я бы хотел показать 5 сервисов на основе нейронных сетей, которые не связаны с chatGPT, Midjorney или Stable Diffusion. Эти сервисы помогают обрабатывать аудио, преобразовывать текст в речь и удалять ненужные вещи с картинок.

Ознакомиться

Делаем эффекты в видеосвязи, используя Canvas API и MediaPipe

Время на прочтение7 мин
Охват и читатели4.7K

Привет! На связи Влад из команды видеоплатформы Skyeng. Мы отвечаем за аудио и видео коммуникацию в образовательных продуктах, применяем WebRTC и реализуем фичи вокруг Video Conferencing. О реализации одной из них хочу рассказать: мы сделали видеоэффекты для веба.

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

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

Все сошлось. Решили делать.

Читать далее

Жизнь после Docker: как команда VK Cloud переходила на CRI-O

Время на прочтение7 мин
Охват и читатели21K


Kubernetes прекратил поддержку Docker и отказался от dockershim — прокладки между kubelet и Docker, которая позволяет последнему работать с CRI. В итоге разработчики столкнулись с необходимостью использования новых, совместимых с CRI, движков для запуска контейнеров. Из числа общеизвестных таких два — containerd и CRI-O.

Меня зовут Александр Чадин, я руководитель команды разработки в VK Cloud. Расскажу, как мы искали замену Docker для сервиса Cloud Containers, на что ориентировались при выборе нового движка, как внедряли новое решение и с какими подводными камнями при этом столкнулись. 
Читать дальше →

Гайд по тестированию локализации и интернационализации, а также большой и полезный checklist

Время на прочтение23 мин
Охват и читатели65K

Привет, хабровчане. Сегодня я хочу осветить и обсудить тему локализации (L10N) и интернационализации (I18N). В интернете и, в том числе и на Хабре уже есть полезные и интересные статьи, но часто они дают более-менее общую информацию о подходах, без углубленной информации о том, что и как можно проверить. Я бы хотел с вами поделиться своим опытом, просуммировать кое что из статей, которые вы можете найти в интернете, а также постараюсь описать большой checklist с самыми распространёнными кейсами как для локализации, так и для интернационализации. В чеклистах я буду стараться упоминать только те проверки, которые вы можете сделать сами, без (глубоких) знаний языка новой для вас локали.


image

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

i18n в Angular

Время на прочтение9 мин
Охват и читатели20K

Angular i18n


Цель статьи — это описать детальные шаги интернационализации вашего приложения на Angular с помощью родного функционала.


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

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

Как развернуть свою блокчейн-платформу на базе технологий Web3 Tech

Время на прочтение10 мин
Охват и читатели4.8K

В апреле этого года, после нескольких лет успешного развития платформы Waves Enterprise и ее использования в различных проектах мы решили выпустить её open-source версию, чтобы расширить охват потенциальных пользователей платформы. Мы сохранили в ней почти всю функциональность и классные фичи: это контейнеризированные смарт-контракты на любом языке, поддержка трех разных консенсусов, возможность обмена конфиденциальными данными и не только. Убрали только поддержку ГОСТ-криптографии, TLS и PKI.

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

Читать далее

Как войти в блокчейн через JavaSсript: создаем свой DeFi-проект на базе JS SDK смарт-контрактов Waves Enterprise

Время на прочтение11 мин
Охват и читатели4.4K

Всем привет, я Тимофей, fullstack-разработчик в команде Web3 Tech. Недавно мой коллега Степан писал о нашем Java/Kotlin SDK для смарт-контрактов. В этом посте я расскажу об аналогичном JavaScript SDK. А чтобы было интересней, в качестве примера создам на нем простой, но уже полноценный инструмент децентрализованных финансов — CPMM, Constant Product Market Maker (маркет-мейкер на основе постоянной формулы, такой, например, как Swop.fi).

Читать далее

Информация

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