Социальные сети Рунета
Понедельник, 5 декабря 2022

Под капотом у Mobx. Пишем свою реактивную библиотеку с нуля Первое мое знакомство с Mobx началось с удивления. Я не понимал всю магию библиотеки и задавал себе вопрос: “А как это возможно?”. Кажется, в ней используются какие-то подкапотные возможности JS или Mobx вообще написан на другом языке. И вот, потратив 3 месяца в исходни...

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

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

Сам себе data scientist или зачем нужен анализ данных менеджеру по продажам Всем привет! Меня зовут Михаил Тимофеев, я работаю специалистом в отделе телемаркетинга в Ростелекоме. Когда начинал работать менеджером по продажам, меня постоянно мучали вопросы: почему клиент отказался, где моя зона роста, что делать, чтобы продавать больше? И т...

Создание .NET библиотеки от А до Я Думаете о создании .NET библиотеки, но не знаете, в какую сторону двигаться? Уже разрабатываете нечто подобное, но хочется открыть для себя что-то новое? Ищете варианты расширить автоматизацию? Не знаете, что делать с пользователями?Надеюсь, данная статья поможет ответить на...

[Перевод] Почему KRaft заменил ZooKeeper Зачем менять ZooKeeper на встроенный лог Apache Kafka® для управления метаданными? В этой статье вы узнаете, зачем нужна была эта замена, какие преимущества даёт протокол консенсуса на основе кворума, вроде Raft, и как работает контроллер кворума поверх протоколов KRaft. Чит...

[recovery mode] Изучаем инструменты для работы с ARP протоколом Статья расскажет об очень простом протоколе, который может быть использован для атак на сети. Рассмотрим из чего состоит протокол и какие инструменты есть для работы с ним. Читать далее

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

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

Шардированный кэш на базе Memcached Привет! Меня зовут Андрей Барболин, я Senior Software Engineer в команде Order Management System. Сегодня я расскажу вам, как мы сделали шардированный кэш и под стресс-тестами добились 30 миллионов операций в секунду, а также про первую open source библиотеку от AliExpress Р...

Страх и ненависть в протоколе RDP Все те из нас, кто всё ещё администрирует Windows на серверах, привыкли к протоколу RDP. Последовательность: Win+R->mstsc зашита не то что в мышечной, а наверняка уже в генетической памяти. Но не все занимались изучением протокола RDP. Для нас это данность, которую м...

WireMock – швейцарский нож в арсенале тестировщика. Часть 1 Всем привет! Меня зовут Анатолий Калмыков, и я отвечаю за качество создаваемых решений в «Ростелеком ИТ». Сегодня я расскажу вам про WireMock – это одновременно и утилита, и библиотека на Java для создания HTTP заглушек над веб-сервисами. Он создает HTTP-сервер, к которому м...

Ищем боттлнеки за 30 минут с помощью Jaeger трейсов Всем привет! Меня зовут Артем, я бэкенд-разработчик в команде клиентского бэкенда. Одна из важных частей моей работы — это снижение латенси нашего бэкенда. История, о которой я расскажу в статье, как раз и началась с одной из таких задач. Звучала она следующим образом: В од...

Как мы делали свой Typeform с тотализатором, но без куртизанок, а ещё случайно изобрели велосипед Всем привет. Меня зовут Дима, и пока мой конструктор опросников не захватил рынок, лишив три сотни испанцев из Typeform работы, средств к существованию и крыши над головой, придется самому немного рассказать о том, что такое WebAsk, почему я решил создать именно такой проект...

Бэкап CommuniGate Pro: как мы сделали резервную копию коммуникационной платформы надежной Привет, Хабр! Сегодня я хочу рассказать о том, как работает резервное копирование сервера CommuniGate Pro, если делать его с помощью Кибер Бэкап 15. Под катом — схема взаимодействия наших решений, а также подробности о том, как работает бэкап-агент в наиболее сложных дл...

Пишем свою библиотеку под Arduino Одна из довольно сильных сторон любого программного обеспечени — это возможность единожды написанной программы быть использованной многократно как в виде отдельных частей, так и целиком, что и привело к зарождению концепции «библиотеки». Можно сказать, что она вполне впис...

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

Приключения онлайн-кинотеатра Premier в Android TV, или Как мы javascript внедряли Привет, Хабр! Меня зовут Артем, и вот уже два года, как я работаю над онлайн-кинотеатром PREMIER. Эта история началась, как и многие другие, со слов тимлида: “Артем, есть интересная задачка”.Ситуация была следующая: библиотека, над интеграцией которой велись работы, не имела...

Запуск MFC-приложения на не-x86 архитектуре нативно при помощи Winelib и подключение к нему плагина на Qt Занимался я недавно портированием одного старого win32 MFC MDI приложения, до сих пор разрабатываемого с использованием Microsoft Visual Studio 6.0 (среда разработки 1998 года выпуска), на Linux. При чем необходимо было, чтобы под Linux собирался нативный бинарник в формате ...

[Перевод] Расширенное использование SSH Протокол SSH v.2 является важной составляющей безопасных компьютерных сетей. Он криптографически надёжен, быстр, универсален и широко распространён. Многие крупные облачные провайдеры даже не пытаются заменить его каким-либо альтернативным, собственным решением, что подчёрки...

ПОЛУЗОЖ: маленькие ошибки в похудении каждый день Статья для тех, кто хочет быть стройным и не поймет, почему при всех вложенных титанических усилиях в похудение вы до сих пор "худеющий мечтатель". Четко, жестко и по делу.Точно вам говорю, вы не одиноки: все, кто стремится измениться, проходят стадии неудач. Это нормально. ...

Как агенты сбора метрик защищаются от потерь данных при работе с remote write протоколом Привет. Меня зовут Григорий Рочев. Хотел бы поделиться сравнением Prometheus like агентами для сбора метрик (нигде я такого определения не встречал, но почему бы их так не назвать?). Рассматривать буду prometheus в режиме agent mode, grafana agent, VictoriaMetrics agent (дал...

Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были опред...

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

Пишем собственную тему для Visual Studio Code Если зайти в магазин дополнений Visual Studio Code, то можно заметить огромное количество совершенно разных тем и оформлений. Во всем этом обилии наверняка найдётся что-то подходящее. Но если ничего не нашлось или просто хочется реализовать свою идею, то всегда можно сделать...

Российские ученые создали библиотеку алгоритмов для разработки квантовых приложений Разработками в области квантовых вычислений занимаются как гиганты вроде Google, IBM и Intel, так небольшие стартапы и исследовательские группы. Часть из этих разработок доступна широкой публике через облачные сервисы. При этом такие компьютеры могут иметь радикально разную ...

Универсальный солдат: обзор библиотеки Signals от команды Preact Стейт-менеджеры уже давно стали своеобразным мемом среди разработчиков. Бытует мнение, что фронтедеры только тем и занимаются, что вместо решения действительно важных и актуальных проблем постоянно переписывают проект с одного стейт-менеджера на другой. Благо их количество и...

[Перевод] TCP — плохой вариант для дата-центров. Встречайте новый протокол Homa Несмотря на свою феноменальную успешность на протяжении всей истории интернета, TCP — плохой транспортный протокол для современного дата-центра. Джон Остерхаут из Стэнфордского университета в научной статье «Пришло время заменить TCP в дата-центре» (опубликована 3 октября 20...

Нейронная сеть для распознавания образов с TensorFlow: как с ней работать Привет, Хабр! В сегодняшней статье хотим поделиться опытом, как можно начать использовать TensorFlow в целях распознавания образов. Напомним, что TensorFlow — открытая программная библиотека для машинного обучения, разработанная компанией Google для решения задач построения ...

OAuth в iOS В большинстве случаев мобильное приложение должно уметь авторизовывать пользователя для доступа к данным, и зачастую это должно происходить с помощью сторонних сервисов. В таких случаях используется OAuth2.0 — протокол, позволяющий авторизоваться в другом сервисе без необход...

Гайд по первичной настройке асинхронного Python-приложения с GraphQL-библиотекой Strawberry Пишете на Python и давно хотели запрыгнуть на поезд хайпа по GraphQL, но никак не могли выбрать между Graphene и Ariadne? Предлагаем вам третий вариант – Strawberry.Strawberry – code-first библиотека с большим количеством батареек. 2.6 тыс. звёзд в репозитории на GitHub. Для...

Заходят тимлид, менеджер и инженер в бар, а там матрица компетенций… Привет, Хабр! Меня зовут Сабина Метляева. Я работаю в GlowByte менеджером проектов MLOps. Помимо управления проектами, занимаюсь созданием обучающих материалов, изучаю и внедряю инструменты по оптимизации своей работы и команды в целом, провожу обучение. Об одном из таких ин...

Обзор GraphQL-фреймворков на Java В предыдущей статье мы поговорили о том, что такое graphQL, почему решили на него переходить, какие у него есть достоинства и недостатки. Но что делать дальше, если вы всё-таки решились внедрить graphQL в java-проект? Какие на данный момент есть фреймворки, чем они отличаютс...

Настройка среды для работы с Deep Learning в браузере, используя Облачную операционную систему Привет Хабр! Меня зовут Ильдар. Сегодня я расскажу вам как настроить Visual Studio Code Server с плагином Jupyter ноутбук для работы с нейронными сетями в браузере на выделенном сервере используя Облачную ОС. Читать далее

Готовим, пробуем Casbin RBAC и handmade RBAC Всем привет!Меня зовут Андрей Таболин, я системный аналитик в компании Bimeister.Casbin – одна из популярных библиотек для построения авторизации в веб-сервисах. В этой статье расскажу, как я тестировал Casbin, попутно подготовил своё решение для сравнения и п...

Когда 2+2=5: чем страшны ошибки бизнес-логики приложений и почему их легко не заметить при разработке Мы как-то писали про SSRF-атаку, которая входит в список наиболее распространенных уязвимостей OWASP Top 10. Однако мир уязвимостей намного разнообразнее и, конечно же, не ограничивается этим списком. Сегодня мы хотим рассказать про уязвимости, связанные с бизнес-логикой. Чт...

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

JupyterHub или как перестать бояться pip install Всем привет! Сегодня я расскажу о том, как мы переехали на наш велосипед в виде JupyterHub, и он оказался удобным. У нас в компании работают ~20 дата саентистов и в своей работе они используют множество Open Source-инструментов: Airflow, Hadoop, Hive, Spark и т.д. Но в ...

От взлома протокола в старом «железе» до разработки программ Нужно было "взломать" протокол передачи данных внутри торгового автомата. Встроить одноплатную ЭВМ Raspberry Pi, большой монитор, написать программу для связи с web сервером и сам web сервер. Далее рассказ об этом взломе и немного о модернизации. Читать далее

Самая большая BERT-подобная модель на русском, которая поместится на ваш компьютер Привет, это снова Максим Рябинин, исследователь в Yandex Research. В прошлом году я рассказывал на Хабре о том, как вместе с Hugging Face, Университетом Торонто и волонтёрами мы обучили state-of-the-art модель для бенгальского языка и написали об этом статью на конференцию N...

Как подружить Canvas и ItemsSource в WPF и AvaloniaUI Предпосылки: понимая, что контейнеры компоновки в WPF не позволяют сделать привязки (Binding) к своим дочерним элементам, решил поэкспериментировать, а как же всё-таки подсунуть данные из View Model для формирования содержимого в эти самые контейнеры компоновки. Позже аналог...

Опыт перехода на MVI в Android на базе собственного решения В команде Android мы активно применяем MVI для проектирования взаимодействия состояния экрана и бизнес-логики. В этой статье мы хотим рассказать о собственной MVI-библиотеке – Reduktor и об опыте внедрения и использования. Статья будет полезна всем, кто хочет познакомиться с...

Как мы строили реактивный игровой сервер на Vert.x Всем привет, меня зовут Алексей Жуков, я старший программист в студии IT Territory. В этой статье я расскажу, как мы строили игровой сервер для Rush Royale. Объясню, почему создание сервера в геймдеве — это не так просто, как кажется на первый взгляд, а также опишу плюсы и м...

Как мы с женой повышали ее качество жизни с диабетом при помощи ИТ Всем привет! Меня зовут Андрей. Сегодня я расскажу о проекте, который делал для своей жены и при активном ее участии. Это устройство на Raspberry Pi с опенсорсным софтом для контроля сахара в крови с помощью данных мониторинга и команд, отдаваемых инсулиновой помпе.Оговорюсь...

Как автоматизировать рутинные операции с помощью Jupyter, Python и Selenium Привет, Хабр! Меня зовут Николай Суворов, я руководитель направления в МТС Digital. Занимаюсь продуктом МТС Premium – это единая подписка на сервисы МТС и партнеров. Сегодня я расскажу о нашем опыте создания робота для автоматизации повторяющихся действий сотр...

Учимся настраивать свою почту, не наступая на чужие грабли: Postfix + msmtp + сайт Привет, меня зовут Никита, я backend-разработчик в компании ИНТЕРВОЛГА. Работаю в компании уже 3 года, и за этот срок достаточно часто мне приходилось возиться с установкой и конфигурированием собственного почтового сервера для разных задач (см. далее) клиентов. Сначала...

Как не проиграть с производительностью в длительном скроллинге Меня зовут Михаил Кириченко. Я разрабатываю клиентскую часть в компании Bimeister.В этой статье хочу поделиться своим опытом и практиками, которые мне приходилось применять в своей работе, а главное, ответить на вопрос: как лучше подходить к построению интерфейсов, чтобы не ...

Materialized Path – создаём своё первое дерево Всем привет! Меня зовут Хусрав, я бэкенд разработчик в компании Bimeister.В этой статье я бы хотел бы поговорить о способе поиска родительских и дочерних элементов структуры посредством PostgreSQL Materialized Path.Статья является вводной и рассчитана на людей, незнакомых с ...

[recovery mode] Как мы развивали бэкенд War Robots, в процессе заDDoSив самих себя — и чему научились после этого Привет! Меня зовут Андрей Михеев, я занимаюсь развитием бэкенда War Robots (это мобильный PvP-шутер, в котором с помощью больших роботов можно выяснить, кто круче). Игре уже почти 9 лет, и за это время мы повидали всякого.Круто, когда у вас в команде есть большой опыт в разр...

Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 2: аутентификация Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрались, как настроить и запустить проект, а сегодня продолжим создавать наш планировщик и поэтапно разберём создание аутентификации с помощью библиотеки Passport...

Microsoft опубликовала исходники своих 3D-смайликов в стиле Fluent Design Microsoft решила открыть исходники своих 3D-смайликов в стиле Fluent Design, что должно способствовать развитию творческого подхода и инклюзивности в сфере эмодзи. Библиотека из 1538 смайликов с сегодняшнего для доступна в Figma и на GitHub. Отмечается, что изначально компа...

Пишем приложение на Mi Band 7 с сервисной частью Недавно я купил себе Mi band 7, по началу хотел купить 6-ую версию, пока не узнал, что на 7-ой обновилась операционная система и теперь она поддерживает установку приложений. Да, официально они об этом не заявили, но умельцы уже сделали множество приложений. Они ставят их ка...

Cloud levels Привет, Хабр!Сегодня хочу поговорить об уровнях приложений в проде с точки зрения архитектуры/размещения компонентов конечного решения и практиках, рекомендациях по их построению, защите/изоляции. Читать далее

Как мы зарелизили новую корзину и победили проблему разваливающихся заказов Привет! Меня зовут Катя Антипова, я старший продакт в М.Видео-Эльдорадо. Сегодня я расскажу вам о том, как мы обновляли корзину в мобильном приложении и на сайте М.Видео и решали одну их сильных «головных болей» наших клиентов. Читать далее

Чиним баг в iOS Firebase RemoteConfig Здравствуйте, меня зовут Артем Волков. Я iOS разработчик в компании "AliExpress Россия".В этой статье расскажу историю одного бага, который мы встретили, работая c подом Remote Config из SDK Google Firebase для iOS, а также о том, как мы внесли свой небольшой вклад в его исп...

Конструктор триггеров в Telegram. Или как мы сделали простейшего, но полезного бота Привет! Меня зовут Боровков Евгений и я предприниматель. В этой статье я расскажу про свой pet-проект. Или как я решил проблему вечного поиска информации прямо в уютном Телеграммчике. Читать далее

Патчим байт-код для просмотра логов в Android. Подробная инструкция и примеры кода Привет, Хабр! Меня зовут Саша Лепехин, я разрабатываю мобильное приложение СберИнвестор под Android. Во время разработки и тестирования мобильного приложения мне часто нужно  просматривать логи внутри приложения, причем без подключения по adb. В принципе, есть множество...

Наводим мосты между Flutter и нативными библиотеками Все вы знаете, что Flutter реализует несколько абстракций для передачи данных между Dart-кодом и кодом, связанным с оболочкой Flutter Engine на языке платформы (например, Kotlin для Android). Но в действительности у Dart есть еще один инструмент для взаимодействия с внешним ...

Между небом и землей: как совмещать работу в ИТ и учебу на пилота Меня зовут Игорь, мне 34 года. Я разработчик и будущий летчик. Работаю в компании CUSTIS и при этом студент-первокурсник Якутского авиационного технического училища. Мой процесс поступления растянулся на три года, но я не потерял мотивацию, не сдался и всё же сумел дока...

От Web до Desktop за 2 недели: технология Electron на практике Если у вас есть компьютер и вы используете его по назначению, то скорее всего вы так или иначе работали с приложениями на Electron (даже если об этом не знали).Меня зовут Сергей Володин, я руковожу командой разработки VK WorkMail. В этой статье я расскажу, как на основе Elec...

Вредные советы для React-разработчиков Недавно британские ученые открыли, что на свете бывают непослушные разработчики, которые все делают наоборот. Им дают полезный совет: «Не подключай целую библиотеку ради одной функции», — они берут и подключают. Им говорят: «Будь внимателен на код-ревью», — они тут же начина...

Квантовый компьютер: технология будущего, которой мы пока не умеем пользоваться Привет, Хабр! Меня зовут Андрей Тотмаков, я технический директор Platforma. И сегодня я хочу рассказать о крайне странном устройстве, которое выходит за рамки понимания обычного человека.Да, я говорю о квантовом компьютере. Постараюсь объяснить простым языком, как он работае...

Как компьютерное зрение помогает определить координаты спутниковых снимков Привет, Хабр!Меня зовут Андрей, и я data scientist. В этой статье расскажу о том, как я занял второе место в конкурсе «Цифровой прорыв» с решением по автоматизации привязки фотографии к географическому положению. Главный инсайт — базовые решения не всегда хороши и проверены....

[Перевод] Что Chrome сделал с JPEG XL и почему делать этого не стоило Аргументы в защиту формата в лонгриде под катом — к старту курса по Fullstack-разработке на Python. Разработчики Chrome недавно анонсировали своё решение о прекращении поддержки формата JPEG XL, который ранее был «убран за флажок». Это решение объясняется так: Читать дальше...

Категоризация веб-ресурсов при помощи… трансформеров? Привет! Меня зовут Анвар, я аналитик данных RnD-лаборатории. Перед нашей исследовательской группой стоял вопрос проработки внедрения ИИ в сервис фильтрации веб-контента SWG-решения Solar webProxy. В этом посте я расскажу, зачем вообще нужен анализ веб-контента, почему из мно...

Без одной faangи или как я проходил собеседования Привет, Хабр! Меня зовут Рустам, работаю программистом 9 лет. 7 лет работал в Контуре и около 2 лет в Яндексе. В этой статье расскажу про свой опыт подготовки и прохождения собеседований в большие технологические компании, поделюсь рекомендациями.Пробовался в Facebook, Apple...

Легкая автоматизация кроссплатформенных тестов с Kotlin DSL Привет! Я - Урманчеев Станислав, QA Automation Engineer на проекте «Лояльность» в Mир Plat.Form (НСПК). Хочу поделиться с читателями Хабра нашим опытом в создании и развитии фреймворка для автоматизации тестов на Appium.Какие проблемы мы собрали по пути, к чему пришли в итог...

Как мы улучшали функциональность онлайн-кинотеатра на tvOS Всем привет, меня зовут Валерия Рублевская и я iOS-разработчик на проекте онлайн-кинотеатра KION в МТС Digital. Это третья часть рассказа о фиче Autoplay и сегодня мы поговорим о нюансах ее реализации на tvOS. Хотите подробностей? Добро пожаловать под кат! Читать далее

Как джуну найти работу: лайфхаки от HR Привет, Хабр! Меня зовут Анна Галимова, я HR бизнес-партнер в МТС Digital. В этой статье я расскажу о том, что делать, если вы специалист уровня junior и хотите найти хорошую работу в IT. Я дам советы: расскажу, на что смотреть при выборе работодателя, как подготовиться к со...

[recovery mode] Магистратура ИИИИ от Физтеха и ВТБ: Data Science с человеческим лицом В современном мире невозможно быть энциклопедистом. Со времён Вольтера и Дидро человечество накопило слишком много знаний, и они не поместятся в одну голову. Однако это не значит, что не стоит даже пытаться. Как говаривал Козьма Прутков, «специалист подобен флюсу». А флюс — ...

[Перевод] Как работать с curl в Windows Curl (client URL) — это инструмент командной строки на основе библиотеки libcurl для передачи данных с сервера и на сервер при помощи различных протоколов, в том числе HTTP, HTTPS, FTP, FTPS, IMAP, IMAPS, POP3, POP3S, SMTP и SMTPS. Он очень популярен в сфере автоматизации и...

Технологии NiFi & Kafka: применение (часть 1) Добрый день, меня зовут Рустам Ахметов, я архитектор ГК Юзтех и интеграционной шины данных UseBus. В этой статье я расскажу о нашем опыте разработки продукта и выборе технического стэка. Хочу добавить, что я буду давать лишь поверхностный Helicopter view на продукты и их ана...

Зоопарк ML-моделей или лучший справочник на Хабре Привет, Хабр! Меня зовут Ирина, я работаю ML инженером в Brand Analytics. Моя работа тесно связана с NLP, ведь мы ежедневно получаем огромное количество текстовых данных со всего интернета. Сегодня я хочу поговорить о теме, которая беспокоила меня еще с тех времен, когда я т...

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

Почему я перешёл на фултайм в НКО Привет, Хабр!Люди, обладающие практическими навыками в сфере IT, востребованы в некоммерческом секторе все сильнее. В ОВД-Инфо, независимом правозащитном проекте, спрос на таких людей постоянно растет. В своей работе мы применяем много интересных инструментов и технологий, н...

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

Разработка на Angular под SmartTV: история одной фичи Всем привет. Меня зовут Ярослав Карманников, я разработчик команды SmartTV/Web в онлайн-кинотеатре KION МТС Digital. Это четвертая часть сериала, посвященного фиче Autoplay в нашем кинотеатре. Сегодня обсудим нюансы реализации фичи на платф...

Albumentations: Пожертвования В прошлом посте я писал про то, какая ситуация сложилась с open source библиотекой Albumentations на лето 2022.Проект разрабатывается в свободное время на энтузиазме Core Team (трое) и вкладе сторонних разработчиков (более сотни).Библиотеку активно используют:20-30 тысяч ска...

“Вам курицу или рыбу?” – Рекомендательная система на “Своем Родном” знает ответ Привет, Хабр!Меня зовут Павел Дудукин, руководитель Data Science команды в Центре развития финансовых технологий Россельхозбанка.Сегодня мы хотим продолжить цикл статей статей про решенные нами Data Science задачи и рассказать о построении и внедрении рекомендательной систем...

Ambrosia – Open Source-библиотека для работы с A/B-тестами Всем привет! На связи Аслан Байрамкулов и Артем Хакимов из Big Data МТС. Мы вывели в OpenSource первую версию библиотеки под названием Ambrosia. Ее назначение – работа с A/B тестами и экспериментами. В этой статье мы расскажем о функционале библиотеки и напомним о ключевых э...

У вас не Agile Как же часто мне приходилось слышать от рекрутеров одну и ту же фразу:Мы работаем по Agile. Спринты по 1-2 неделиПод "Agile" они, конечно же, имеют в виду Scrum. Но я с уверенностью могу сказать, что ни в одной компании, что я работал, Agile'ом даже и не пахло. И тут я даже ...

Пишем 3D игру под Windows Mobile, ч.1 На хабре достаточно много пользователей коммуникаторов. Они рассказывали достаточно много историй о том, как их использовали: раскладывали пасьянс, играли в шарики, сидели в интернете, читали книги и в конце-концов, использовали как телефон. А что, если я вам скажу, что на к...

Площадки для стартапов. Куда можно разместить ссылку на свой проект Привет Хабр! Меня зовут Боровков Евгений, и я предприниматель. Сегодня я хочу поделиться с вами подборкой реестров и справочников, где можно рассказать о своем продукте, проекте или стартапе, без необходимости писать длинные лонгриды. Читать далее

[Перевод] Обзор End-to-End Exactly-Once семантики в Apache Flink (с Apache Kafka!) Релиз Apache Flink 1.4.0 в декабре 2017 года стал знаковым событием для потоковой обработки данных с помощью Flink: была представлена новая фича под названием TwoPhaseCommitSinkFunction (соответствующий issue в Jira), которая извлекает общую логику протокола двухфазной фикса...

«Просроченные карты»: как продлить срок действия банковских карт и возможно ли сделать их бессрочными? Привет, Хабр!Меня зовут Александр, в Мир Plat.Form я занимаюсь карточными платежными приложениями и терминальными технологиями, а сегодня хотел бы рассказать о продлении срока действия банковских карт.Ни для кого не секрет, что международные платежные системы прекратили обсл...

О чём вы? Конечно, езжайте в Бакулевку Рассказать свою историю меня подвигла статья, которую написал skaynet4788. Всё то, о чём пойдет речь ниже, случилось со мной 5 лет назад и началось всё 6 декабря 2016 года. В этот день я как обычно сидел в своём кабинете и программировал, а также периодически смотрел коммент...

Typescript в hh.ru Привет! Меня зовут Владислав Коротун, я — ведущий фронтенд-разработчик в одной из продуктовых команд hh.ru. Сегодня я расскажу о том, как мы затащили TypeScript в наши проекты.  Читать далее

[Перевод] JUnit: тестирование методов, вызывающих System.exit() В определенных ситуациях нам может потребоваться, чтобы метод вызывал System.exit() и завершал работу приложения. Например, в случае если приложение должно быть запущено только один раз, а затем завершено, или в случае фатальных ошибок, таких как потеря соединений с базой да...

Домашний Linux-сервер или как самому развернуть систему визуализации на MQTT+Telegraf+InfluxDB+Grafana В данной статье приведен скоуп информации о том, что взять за основу, чтобы развернуть свой домашний Linux-сервер и систему визуализации на нем, используя MQTT в качестве транспорта с оконечного оборудования. Многие статьи или инструкции, которые есть в и...

Ехали-ехали и, наконец, приехали: наш переход на 1С:ERP за 2 месяца и причем тут Scrum Привет, Хабр! Меня зовут Дмитрий, работаю Руководителем проектов 1С в IT-компании Lad и сегодня хочу рассказать о том, как наша команда переводила небольшой завод с Infor M3 ERP на “1C:ERP Управление предприятием 2”. Ну переводили и переводили, скажете вы, все переводят. Мы ...

16 Атрибутов Хорошего Канального Протокола Передачи Данных В этом тексте представлены атрибуты хорошего и простого канального Master-Slave протокола для пакетного обмена информацией между устройствами на общей шине таких как RS485, CAN, LoRa, BLE. Несмотря на то, что есть канальные протоколы ModBus, DLMS, RDS, UBX, NEC, Pelco-D, yMo...

Flutter jank shaders — история проблемы и пути решения Меня зовут Андрей, я Flutter-разработчик в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. Сегодня поговорим о «jank shaders» — дёргающейся анимации при первых запусках приложений на Flutter — и о том, как можно постараться её исправить.Несколько лет на...

Как выбрать язык программирования и начать карьеру: советы от разработчика, занимающегося наймом Хайп вокруг «войти в IT» привел к тому, что в разработчики и тестировщики потянулись не только студенты профильных вузов, но и люди из других профессий. Не будем сейчас обсуждать правильность подобного выбора в той или иной ситуации, а просто расспросим опытного человека в о...

Trunk Based Flow — кто такой и зачем нужен Привет! Меня зовут Павел Лакосников, я Team Lead Backend Engineer в Авито. Сегодня расскажу про свой любимый подход к разработке Trunk Base Development, сравню его с другими моделями ветвления и подсвечу его достоинства и нюансы.Краткий обзор трёх моделей ветвления: Central ...

Отечественное решение для IP-телефонии и чатов. Ростех выпустил приложение «Колибри-SIP» для устройств под управлением «Авроры» «Росэлектроника» Госкорпорации Ростех выпустила приложение «Колибри-SIP» для смартфонов и планшетов, которые работают под управлением операционной системы «Аврора» 4.0. Это полностью отечественное программное обеспечение, которе при и...

Шаблонизация в CLI может быть простой Однажды я был маленьким, и задавался вопросом — вот если Unix way это (упрощенно) небольшие, довольно простые утилиты и библиотеки, которые делают одну вещь, но делают её хорошо (Peter H. Salus: "...that do one thing and do it well"), то… Где тогда утилита, котора...

Event Storming: что будет, если запереть 10 человек в одной комнате Меня зовут Александр Донсков и я архитектор в компании REG.RU. Сегодня я расскажу о том, что такое Event Storming и что будет, если запереть 10 человек в одной комнате (в том числе виртуальной). Цель статьи не столько в том, чтобы рассказать, как это работает, сколько п...

Пишем тесты производительности под Webflux Добрый день! Меня зовут Александр Леонов, я руководитель группы разработки одной из распределённых команд Usetech. Сегодня я хочу рассказать вам о том, как написать карманный тест производительности на неблокирующий код Webflux. Статья рассчитана на разработчиков, которые ра...

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

Масштабирование. Алгоритм Уменьшения и Увеличения изображения В этой статье я хочу затронуть проблемы построения алгоритмов масштабирования изображения. Наверняка когда вы пытались найти алгоритмы масштабирована вы находили в первую что-то вроде: Существуют несколько алгоритмов самое простое это алгоритм Ближайший сосед потом билинейна...

[Перевод] Анализ внедрения MPTCP в Интернете Multipath TCP (MPTCP, набор расширений спецификации протокола управления передачей) находится в разработке с 2013 года (RFC 6824) и вызывает значительный интерес со стороны как исследователей, так и представителей промышленности. Протокол направлен на одновременное использов...

В Tank Company Mobile можно донатить, рассказываем как Для Tank Company Mobile начался пробный запуск в Америке и Европе. Геймеры из России и ряда других стран СНГ могут донатить. Tank Company Mobile — отличная замена World of Tanks Blitz, подробности вместе с установочным файлом вы найдёте в прошлой статье. А сейчас расскажем...

Сделай так, чтобы оно больше не падало Привет, меня зовут Ярослав Иссинский, я руководитель Технической платформы в группе «М.Видео-Эльдорадо». Сегодня я хочу рассказать про переход в публичное облако на примере крупной ритейл-компании. Читать далее

Найти работу. Продуктовый подход Привет. Меня зовут Костя, и я отвечаю за дизайн в Агиме. Больше 9 лет я нанимаю дизайнеров. И сам, конечно, много раз искал работу в прошлом.Меня все время забавляет, что мы, дизайнеры, это классические сапожники без сапог. Имея навыки повышения конверсий и достижения целей,...

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

10 вредных советов для дизайнеров-джунов Меня зовут Яна, я дизайнер платформы речевой аналитики и контроля качества в Тинькофф, ментор по направлению «Дизайн» в Тинькофф Старте. Все написанное ниже — моя личная боль.Расскажу о том, что бывает, когда начинающий дизайнер начинает свой путь и ищет первое место работы....

Консольный UI и отказ от асинхронного кода в idewave-cli С выходом версии 1.0.1 я решил осветить некоторые аспекты технической стороны моего проекта. В этой статье я расскажу про использование библиотеки tui-rs и про нюансы использования библиотеки tokio-rs, а так же постараюсь рассказать, что же было исправлено и почему так, как ...

Как быстро реализовать поиск на корпоративном портале Привет, меня зовут Антон Щербак, я разработчик корпоративного портала Selectel. Это внутренняя система, где можно узнать новости компании, поучаствовать в Selectel Game (это наша собственная геймификация рабочих достижений) и, конечно, найти необходимого коллегу или структу...

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

Как завладеть сетью /16 с помощью libpcap и libdnet Всем привет. Сегодня я попытаюсь рассказать про сетевое программирование на довольно низком уровне, с библиотеками libpacp и libdnet. Про последнюю многие наверное и не слышали, т.к. информации о ней в сети фактически нет. А ведь её использует сам Fyodor :) Читать дальше &r...

Как мы перепридумали поиск для разработчиков У вас бывало, что открываешь поиск, ищешь что-то по программированию и не находишь ответ? Тогда эта история для вас. Меня зовут Алексей Степанов, я руковожу службой исследований машинного обучения поиска Яндекса. Сегодня я расскажу непростую историю. Она про проблему, д...

С++ и Raylib как глоток свежего воздуха Какое то время назад пришла ко мне идея исполнить хотя бы немного детскую мечту программировать игры. Надо сказать, что определенный опыт у меня был. Попала в девятом классе ко мне в руки чудесная книга Андрэ Ламота "Секреты программирования игр", благодаря которой я изуча...

Визуализация алгоритмов сортировки Приветствую всех, уважаемые читали! Меня зовут Сергей Семенов, я frontend-разработчик в компании Домклик. Эта статья посвящена созданию интерактивного приложения для визуализации алгоритмов сортировки. Надеюсь, многим из вас тема покажется интересной. Уверен, что вы успешно ...

Как обмануть геолокацию на Андроиде Подменить своё местоположение может быть полезно в разных ситуациях. Например, если вы хотите с кем-то им поделиться, но не хотите сообщать, где находитесь на самом деле. Кроме того, фейковое местоположение иногда нужно для AR-игр вроде Pokemon Go, чтобы собрать редких перс...

VIM и редактирование файлов на удаленных серверах Статья о том, как настроить vim в одном месте, а все файлы, которые находятся на других серверах, подгружать и работать локально. Понятно, что можно поставить vim на каждый удаленный сервер, настроить и работать по ssh, но не всегда есть такая возможность, хотя бы потому, ч...

Пробел в нумерации, или почему никто не говорит про IPv5 Участники ИТ-сообщества уже долгое время спорят, что делать с IPv4 и IPv6. Одни призывают внедрить протокол нового поколения как можно скорее. Другие считают, что решением проблемы нехватки адресов станет NAT. Но в пылу дискуссий на тематических площадках иногда можно встрет...

Как написать кроссбраузерное расширение в 2022 году Привет! Меня зовут Георгий Костуров, я лид фронта в одной из команд СберМаркета. В один прекрасный день ко мне пришли менеджеры и сказали, что нужно написать браузерное расширение для внутреннего джобборда. Оно должно взаимодействовать с сайтами avito и hh, чтобы добавлять...

[Перевод] Никто не бесил меня больше, чем Google Play Team Меня зовут Дэниел Рид. Я пишу код уже более двадцати лет. Я сооснователь и ведущий разработчик SaaS-компании, предоставляющей ПО для управления фитнесс-студиям, например, студиям йоги. Наше базовое приложение хостит все студии в одном месте, однако за дополнительную цену м...

[Перевод] IP MTU: перестать ботать заголовки и начать жить Старина IPv4… В сетевом мире он распространён так же, как и воздух на Земле. Однако несмотря на то, что миллионы людей используют этот протокол в повседневной жизни, у IPv4 всё ещё есть пара сюрпризов в рукаве. Сегодня мы рассмотрим один из них. Читать далее

Первые шаги в анализе безопасности мобильных приложений: разбираемся на примере Allsafe Allsafe — это приложение, намеренно спроектированное небезопасным. Для чего это нужно? Оно предназначено для обучения и поиска различных уязвимостей. В отличие от других подобных приложений для Android, оно использует современные библиотеки и технологии. Меньше похоже на CTF...

Трудности перевода в разработке: как делать интернациональные проекты и говорить с пользователями на одном языке В современных приложениях и сервисах часто нужна интернационализация (i18n, от англ. internationalization). Она позволяет создавать интерфейсы с учётом культурных и языковых особенностей пользователей из разных стран. Это требует не только простого перевода, но и некоторых т...

Основные изменения React 18 Привет, меня зовут Кристина, я фронтенд-разработчик в Домклик. Хочу рассказать немного про основные изменения React 18. Читать далее

Microsoft выпустила обновление для приложения Xbox for Windows Компания Microsoft выпустила обновление для приложения Xbox for Windows. Выберите свою следующую игру PC Game Pass с помощью HowLongToBeat Microsoft сотрудничает с HowLongToBeat для создания уникальной функции, которая еще больше упрощает выбор следующей игры для ПК — начина...

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

GraphQL: доступ запрещен Жил-был один маленький разработчик, работал себе над REST API и горя не знал. Но вот приходит к нему тимлид и предлагает затащить GraphQL. Казалось бы: классный и мощный GraphQL — это запросто! Но в процессе проектирования API разработчик столкнулся с неожиданными проблемам...

Как мы выбирали корпоративный мессенджер и почему остановились на Discord Всем привет, меня зовут Виктор Щепкин, я руководитель проекта в Allods Team. В этом тексте я расскажу, как мы искали рабочий мессенджер и в итоге остановились на Discord. Также опишу, как устроен наш сервер, и поделюсь подробным описанием функций, которые мы используем. Чита...

Один из альтернативных протоколов для интернета вещей — CoAP Источник Говоря об интернете вещей, мне сразу приходит в голову связка из разных устройств или датчиков, соединённых с помощью беспроводных каналов связи с удалёнными клиентами, используя посредника — Mqtt broker. Однако интернет вещей не ограничен только этим протоколом,...

Диагностика и замена дисков в дата-центре: бот для SMART-теста, «черный ящик» для утилизации и лайфхаки Привет, Хабр! Меня зовут Данил, я системный инженер, работаю с серверами и клиентским оборудованием в дата-центре Selectel в Дубровке (Ленобласть). Бывают ситуации, когда диски в серверах работают некорректно. В таком случае нужно быстро определить причину, понять, на чьей ...

Хакеры научились взламывать Windows 7 с помощью «Калькулятора» Операционная система Windows 7 всё ещё остаётся популярной. Однако из-за отсутствия обновлений безопасности она оказалась уязвимой к некоторым атакам, которые не работают на более новых ОС. Специалисты недавно нашли модификацию троянской программы Qbot (также известна ...

Сделаем защищенный DNS снова быстрым. DNS over QUIC Протокол DNS (Domain Name System Protocol) является одним из важнейших инфраструктурных протоколов для поддержки сети Интернет и первоначально он разрабатывался для максимальной производительности и возможности распределенного хранения неограниченного числа доменных зон. DNS...

Человеческим языком про метрики 1: Потерянное введение Однажды мне понадобилось внедрить метрики в сервисы своей команды. С самого начала я не понимал, что именно хочу получить: одно дело — прикрутить библиотеку и нарисовать графики, другое дело — показывать осмысленные данные.Мне нужен был гайд, который сочетает эти две вещи: с...

Как поменяется профессия ИТ-инженера сейчас, и почему быть адским занудой теперь — важный софт-скилл Привет, Хабр!Я системный архитектор и ситуацию в ИТ в нашей стране сейчас могу образно описать как «цирк с велосипедами» и «зоопарк приехал». С велосипедами — потому что, например, по части ИТ-инфраструктуры теперь нам на ровном месте приходится изобретать то, что ещё нескол...

Поиск объектов на фото с помощью Python В данной статье хочу рассказать про поиск объектов на изображении. В качестве изображения может быть использована как Captcha, так и любое другое изображение.Полный код и все исходники можно найти на моем Github. Для того, чтобы написать легковесное приложение для обнаружени...

Не горбись! Как на самом деле реагировать на подобные замечания? “Не горбись!”, - я раньше очень часто это слышал в свой адрес. А еще: “Не шаркай ногами, втяни живот”, - и все в таком духе. Наверное было что-то еще, но я уже не вспомню. Я пытался что-то сделать. В какой-то момент даже купил устройство для удержания осанки, но все без толк...

Нейросети на RISC-V с Movidius Neural Compute Stick RISC-V — перспективная открытая архитектура, не требующая royalty от производителей железа на её основе. Нужно отметить, что интерес к архитектуре RISC-V растёт намного быстрее, чем закрепляется её спецификация и идёт процесс принятия новых фич комитетом, а также дальнейшая ...

Используем делегаты в android-приложениях Всем привет, меня зовут Алексей, и я отвечаю за разработку android-приложений в Константе. У нас в компании есть несколько проектов с большим набором функций, часть из которых присутствует во всех (или, по крайней мере, во многих) разделах интерфейса приложения. Речь идет об...

Имитация трёхмерных зданий в 2D-игре Создаём объём при помощи света и теней. Игра двухмерная, разрабатывается на Game Maker Studio 2 и во время работы я столкнулся с множеством задач а-ля «должно быть красиво». Где-то пришлось придумать свой велосипед, где-то повезло наткнуться на описание решения похожих задач...

Блеск и нищета мапперов объектов в .net Всем привет, меня зовут Сергей, я системный архитектор в компании BIMeister, и, как вы уже догадались, сегодня мы поговорим про маппинг объектов в .net Мы сравним несколько популярных подходов и библиотек для маппинга, дадим общее представление и посмотрим на различия, кот...

Образование в РФ избыточно Эта статья призвана дать ответы на вопросы, которые возникают у некоторых студентов во время обучения и после окончания вузов относительно процесса обучения, образования вообще. Вроде таких наивных вопросов: Для меня, как человека, который верил в то, что учебное заведение ...

Учим автотесты API адаптироваться под требования Привет! Меня зовут Тимур Шарафутдинов, я занимаюсь процессами автоматизации тестирования в «Ростелеком ИТ». Сегодня поделюсь своим опытом реализации model based-подхода в написании python API автотестов на проекте — приложении с микросервисной архитектурой для обработки, хра...

Геометрические фигуры мультимедийной библиотеки SFML для разработки игр на C++ Перед тем как приступить к рассмотрению темы, геометрические фигуры, разберём каркас программы на С++, которая использует библиотеку SFML.Для работы с кодом мы будем использовать Visual Studio 2022 и библиотеку SFML. Как подключить библиотеку SFML к Visual Studio 2022 вы мож...

Кибербезопасность и маркетинг: как мы в Positive Technologies запускали продукты в онлайне Привет, Хабр! Меня зовут Герман Холмов, недавно я публиковал статью, посвященную нюансам проведения крупных мероприятий по информационной безопасности. Ну а сегодня расскажу о еще одном проекте Positive Technologies, который я помогал реализовывать. Речь идет о маркетинговой...

Python в атомной энергетике: сообразительные нейроморфы, предсказание поломок и анализ нормативки Атомная энергетика — отрасль наукоёмкая. Python со своими инструментами для анализа данных и построения ИИ как раз подходит АЭС, здесь с ним можно решать амбициозные задачи на острие науки о данных. Поэтому Хабр решил разузнать побольше про Python в Росатоме. И попросил меня...

[Перевод] Вероятно вам не нужен MediatR MediatR - это очень популярная библиотека, которая используется для уменьшения зависимостей между объектами. Она популяризует архитектуру, основанную на крайне значимых принципах проектирования:• препятствование прямому общению между объектами для уменьшения связности;• наце...

Два сервера GAGAR>N и несколько жизненных тестов: насколько хороша новая платформа? Привет, Хабр! Сегодня мы расскажем о нашем опыте тестирования серверов GAGAR>N. Интерес к этим решениям, построенным на российской платформе сегодня достаточно высокий. И, договорившись с производителем, мы решили проверить, на что способны эти серверы, действительно ли о...

[Перевод] Использование утилиты tar по сети через SSH GNU-версию утилиты архивирования tar, равно как и её старые версии, можно использовать через сетевое подключение по протоколу ssh. От telnet/nc стоит отказаться, так как они не гарантируют безопасность соединения. Создавать архивы можно с помощью каналов (pipe) Unix/Linux, ...

Вот так импортозамещение: многие программы из российского RuStore не запускаются на смартфонах без сервисов Google Ряд приложений из российского магазина RuStore не работают или делают это некорректно на смартфонах без системных сервисов Google. Это касается, в частности, смартфонов производства Huawei. Как сообщает «Коммерсантъ», проблема затрагивает разные приложения, ...

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

Как запустить динозаврика Google на тачбаре? Обзор Python-библиотеки PyTouchBar В 2016 году Apple встроили в MacBook Pro сенсорную OLED-панель. По сути, она просто заменяет функциональные клавиши. Но с ней чуть интересней: на тачбар можно вывести закладки и даже медиаэлементы. На примере игры с динозавриком показываю, как написать свою программу для ...

Не приходит код подтверждения WhatsApp. Что делать Несмотря на то что работу WhatsApp в России никто не ограничивал, после блокировки Инстаграма и Фейсбука мессенджер всё чаще стал испытывать проблемы с авторизацией. Пользователи жалуются, что не могут войти в свой аккаунт, потому что Ватсап не присылает сообщение с кодом в...

Kubernetes CronJob не запустился? Тогда мы с shared informer идём к вам Всем привет! Меня зовут Аня, я строю и развиваю инфраструктуру мониторинга в платформе телеметрии Ozon. Моя команда не только помогает настроить мониторинг, но и разрабатывает различные сервисы и инструменты, чтобы упростить жизнь разработчикам компании.В прошлом году я расс...

Создаём своё объектное хранилище за чаc Привет! Меня зовут Артем Гаврилов и я работаю в Tarantool. Сегодня я расскажу, как быстро создать объектное хранилище на основе платформы in-memory вычислений Tarantool и распределённой файловой системы IPFS (InterPlanetary File System). Мы рассмотрим пример шардирования с...

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

Кибербезопасность в массы: как мы в Positive Technologies проводили крупнейшие мероприятия по инфобезу Привет, Хабр! Меня зовут Герман Холмов, долгое время я работал в Positive Technologies в должности Digital Marketing Director. На Хабре многие знают эту компанию, а если нет - то вот ее блог. Но речь сейчас не о компании, а об организации двух онлайн-ивентов для специалистов...

Простой mp3-плеер с графическим интерфейсом на Go Мы продолжаем рассматривать разные платформенные применения Go (ранее мы посмотрели как использовать Go для микроконтроллеров, веб-приложений, разработки API, создания мобильных приложений) и сегодня поговорим об использовании Go для создания приложений для настольных компью...

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

Что делать с системой кармы (охохошенькихохо)? Что-то подобное хотел написать после обсуждения кармы в комментариях моего материала «Починим Хабр?». После несколько раз встречал обсуждение системы кармы и снова порывался. По итогу каждый раз не было однозначного ответа на вопрос «надо ли об этом писать?».После выхода мат...

Как управлять просодией в синтезе речи Привет, Хабр! Меня зовут Дарима Мылзенова, я инженер-исследователь Just AI.В компании я работаю над задачами синтеза речи. Возможно, вы слышали, как мы синтезировали голос Кроша из Смешариков. В этой статье я хочу поделиться современными методами управления просодией в синте...

Как связать админку продукта и его базу знаний (и обойтись без доработок продукта) Всем привет! Сталкивались ли вы с ситуацией, когда в вашей админке пользователям трудно интуитивно разобраться, возможности быстро исправить это нет, а существующую документацию по ней никто не читает? Знакомы ли вам частые вопросы вида "А как это настроить?" или "А можно ли...

Обход граблей в процессе согласования требований Мы в Bimeister любим процессы.А за что ж их не любить, в самом деле? Хорошо отлаженный процесс создает эффект «оно само»: каждый его участник в любой момент времени точно знает, что и в каком порядке ему нужно делать. За его ходом достаточно приглядывать и иногда нежно подта...

«Мы KTS, а не BTS»: как разработчики делали ребрендинг Привет! Меня зовут Сергей, я управляющий партнер в KTS: мы занимаемся разработкой цифровых сервисов для бизнеса. Недавно мы провели ребрендинг: рассказываю, сколько с ним мучились и что в итоге получилось.  Читать далее

Индивидуальный план развития разработчика в Сравни Привет, Хабр! Меня зовут Владимир Каратаев, я руковожу группой разработки в проектах страхования компании Сравни. Проще говоря, я тимлид. Моя команда разрабатывает четыре сервиса: страхование ипотеки, недвижимости, путешествий, а также страхование от несчастного случая.Про И...

Что делать, если собеседование QA по типовым вопросам не работает Заходит как-то тестировщик в бар, а бармена нет — он на курсах «Как стать тестировщиком программного обеспечения».Всем привет! Меня зовут Алиса, я — ведущий тестировщик в компании Constanta, и сегодня расскажу вам, как мы нанимаем QA на наши проекты.Наверняка многие из вас ...

[Перевод] Инструменты мониторинга производительности приложений: зачем они нужны и как используются В этой статье я расскажу о своём опыте работы над большими приложениями и о том, как в мою работу пришёл мониторинг, когда я начал создавать ПО, предназначенное для решения критичных для бизнеса задач. Решение критических проблем клиентов может создавать отличные возможнос...

RTC, почти RTC и Франкенштейн Не смотря на то, что технологии WebRTC уже больше 10 лет, сейчас она очень активно развивается. За последний год, использование WebRTC в браузерах выросло в 100 раз, апишка стала IETF-стандартом и научилась делать новые интересные трюки.Я — Полина Гуртовая, занимаюсь фронтен...

Как подготовить и провести A/B-тестирование. Базовый роадмэп для новичков Хабр, привет! Меня зовут Полина Окунева, я работаю ведущим аналитиком в компании GlowByte в команде Advanced Analytics, а также автор курса по A/B тестам. Сегодня в статье я предлагаю интересующимся небольшой гайд по A/B-тестам.Когда я начала погружаться в тему A/B-тест...

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

Как мы уменьшили время проверки релизной сборки с 4 дней до 4 часов Всем привет! Меня зовут Иван, я QA-инженер релизной команды в inDriver. В этой статье расскажу о том, как мы сократили время регрессионного тестирования релизной сборки мобильного приложения и релизный цикл до одной недели, с какими проблемами столкнулись и как их решали.Ран...

Как мы изменили подход к локализации приложения и перевели его на казахский за 4 недели Представьте, что вы перевели свое приложение на английский. А что, если ваше приложение работает в 47 странах, большая часть из которых говорит на разных языках и диалектах? Возникает проблема выстраивания единого процесса локализации и проверки переводов в каждом конкретном...

NVIDIA открыла доступ к инструменту GET3D Сегодня компания NVIDIA официально представила миру свой инструмент под названием GET3D, который выступает методом формирования различных объектов на основе искусственного интеллекта. Работает механизм крайне просто — если пользователю необходимы различные объекты для формир...

Про выбор места пмж + список людей, готовых помочь вам 1:1 советом, делом и поддержкой В этом году многие осознали, что в мире много прекрасных мест для жизни (внезапно). И из-за такого изобилия - находятся в ступоре: как бы не ошибиться с выбором!А многие из вас уже эмигрировали, или как минимум начитались много полезностей про релокацию. Предлагаю формат, ко...

Паяльники и паяльные станции для новичков и не только: 5 устройств и систем, которые помогут в работе Многие читатели Хабра работают с электроникой не только как пользователи или администраторы, но и в качестве разработчиков и/или ремонтников. У кого-то это основная работа, кто-то занимается ремонтом ноутбуков/смартфонов в качестве хобби, ну а кто-то разрабатывает и собирае...

Свой агрегатор новостей на python. Телеграм + RSS + новостные сайты (telethon, feedparser, scrapy) freepik Здравствуйте дорогие хабровчане, в этом посте я хочу показать, как написать свой агрегатор новостей. Конечно, сразу становится очевидно, что это очередное изобретение велосипеда, однако анализируя существующие решения я всё время натыкался на камни преткновения. То ...

Шахматы на C++ Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими програ...

Apple HomeKit В данной статье речь пойдет про Apple HomeKit Accessory Protocol (HAP): внутренности и разработку контроллера.Apple HomeKit создан для взаимодействия контроллера (по умолчанию iOS-устройства, приложение Home) и множества устройств(аксессуаров). Протокол открыт для некоммерче...

Там сложно, ты не разберешься В своей первой статье на Хабре я описывал опыт реверсинга и модификации проекта, доставшегося по наследству. Конечно, в отношении проекта на Python "реверсинг" - это гипербола, однако с чем-то ранее неизвестным столкнуться все же получилось. Если вкратце - вместо классически...

Варианты использования Java ML библиотек совместно с Spring, Docker, Spark, Rapids, CUDA В данной статье рассматривается способ использования GPU nVidia с технологией CUDA в Docker-контейнерах для распределенной тренировки моделей машинного обучения на нескольких машинах. Цель статьи - показать вариант использования Big Data Tool Apache Spark в Docker-контейнера...

Превращаем HTML table в GridComponent. Часть I. Frontend Привет хабровцы и любители фронтенда!Это моя первая статья, в которой я хочу поделиться своими первыми шагами в мир frontend разработки на VueJS. И в качестве примера для изучения я решил реализовать вариант грида со стандартным набором функционала: сортировкой, фильтрацией ...

Напиши мне, напиши: WhatsApp получил функцию, которя позволяет отправлять сообщения самому себе. Но такое уже есть в Telegram Мессенджер WhatsApp, наконец, получил функцию, которая позволит отправлять сообщения самому себе. Это необходимо, если нужно сохранить какие-то файлы или документы. На данный момент эта возможность уже реализована в iOS версии 22.23.74 и Android версии 2.22.23.77. При ...

Что такое Shared UI, как он нам помог и причём тут микросервисы Всем привет! Меня зовут Дима, я frontend-разработчик в Альфа-Банке. Сегодня я расскажу про Shared UI, что это такое и как мы пришли к созданию такого сервиса в интернет-банке, что это такое, как мы вообще придумали такой сервис. Читать далее

MVI и State Machine — объединяем концепции. Визуализация и анализ диаграммы состояний в Android и KMM проектах Чтобы проще было развивать и поддерживать код продукта, сложную логику можно разбить на конечное множество состояний и описать правила переходов между ними. В итоге мы получаем конечный автомат. Часть бизнес-логики, описывающая смену состояний в MVI-архитектуре, может быть ...

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

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

Как техдолг может утопить команду, и что делать, чтобы этого не допустить Существует миф, что один сильный программист может быть в 10 раз продуктивнее другого — ten-X developer. Я считаю, что таких программистов не бывает, но есть ten-X команды, которые перформят в 10 раз лучше самой слабой команды. Чтобы стать ten-X team, нужно поменять отношени...

Распространяй и властвуй: приглашаем на открытый Frontend Meetup Привет, Хабр

Как мы сделали WebRTC-видеозвонилку и что перепробовали: P2P, SDK от Voximplant и VK Звонков Привет, меня зовут Кирилл и я инженер, который превозмогал ковидные времена вместе с компанией JUG Ru Group. Мы делаем технические конференции, и в пандемию сделали собственный сайт для проведения онлайн-конференций. Тогда нам понадобились качественные видеозвонки на WebRTC,...

[Перевод] Работа с графикой на языке Rust. Часть 2 В этой статье я продолжу перевод и исследование WGPU, библиотеки языка Rust для работы с графикой.Для тех, кто не читал первую статью небольшая вводная информация.WGPU реализует современный стандарт работы с видео подсистемами — WebGPU и компилируется в разные backend-ы (Ope...

Обходим блокировки сайтов: или как я развёртывал прямой proxy на базе nginx Ты как специалист в области IT, после февральских событий скорее всего столкнулся с проблемой недоступности некоторых ресурсов и наверняка подумал о том, как это дело обойти. Но использовать "бесплатный" или сторонний сервис кажется небезопасным или не даёт нужную ширину кан...

[Перевод] Атака на Intel TXT через перехват выполнения кода SINIT Атака, представленная в этой статье, как обычно, предполагает, что злоумышленник может выполнить код до запуска TXT, т.е. до инструкции SENTER. Цель злоумышленника состоит в том, чтобы либо 1) иметь возможность скомпрометировать только что загруженный гипервизор, даже если о...

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

Все на борт! Онбординг и адаптация новых сотрудников Вы приходите на работу, завариваете кофе, подходите к своему рабочему месту, душите нового сотрудника, садитесь за свой стол, разбираете письма, начинаете писать код... Приятно, да? Нет. Не душите нового сотрудника.Всем привет! Меня зовут Павел Стрельченко, я — And...

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

Микроконтроллеры по 5 рублей. Программируем микросхемы PADAUK Впервые известие о том, что фирма PADAUK Tech продаёт микроконтроллеры по три цента появилось в 2018 году. Эта новость вызвала интерес и обсуждение на форумах, а затем благополучно была забыта (по крайней мере в русскоязычном комьюнити).В статье расскажу о своём опыте освоен...

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

Удалённая сборка Android проектов на сервере прямо из Android Studio Если вам случалось работать над очень крупным Android проектом, с большим количеством модулей, кода, или наоборот не самой удачной декомпозицией на модули и наличием легаси, то вы наверняка знаете что сборка подобного проекта может занимать довольно много времени. К тому же,...

Магазин приложений Apple App Store «стал кишащим рекламой подражателем самого себя», считает бывший старший менеджер компании На сайте Business Insider вышла статья под названием «Магазин приложений Apple стал кишащим рекламой подражателем самого себя, что не очень хорошо для пользователей или разработчиков iPhone». Её автором является Майкл Гартенберг — бывший старший менедж...

Нефункциональные требования: как не пустить систему ко дну Привет, Хабр! Меня зовут Елена, я ведущий аналитик ИТ-компании SimbirSoft. Сегодня хочу затронуть такую тему, как нефункциональные требования к ИТ-продукту, которым не всегда уделяется должное внимание, а зря. Их несоблюдение может привести к потере прибыли, клиентов, репута...

Кто же такой этот многорукий бандит? Представьте на секунду, что вы очень азартный игрок, который только что попал в казино и не может выбрать, за какой игровой автомат ему сесть. Или один муравей из колонии, выбирающий по какому пути ему пойти на поиски пищи. Или даже вы – это целый маркетплейс, который думает...

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

Xiaomi 13 опережает iPhone 14 Pro Max по времени работы без подзарядки на графике, опубликованном главой Xiaomi Лэй Цзюнь (Lei Jun), основатель и генеральный директор Xiaomi, опубликовал несколько минут назад на своей страничке в Weibo информацию о том, что Xiaomi 13 будет работать без подзарядки дольше, чем iPhone 14 Pro Max и другие флагманы. Увеличивая емкость батареи, я думаю...

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

Распознавание лиц с InsightFace или как CatBoost имена угадывал Цель статьи - рассказать про простой и в тоже время рабочий вариант создания системы распознавания лиц, используя только модели из коробки, а именно ,библиотеку InsightFace для обнаружения и предобработки лиц и Catboost для их классификации. Читать далее

Мониторинг дисков и программных RAID-массивов с помощью Zabbix Ранее в статьях, посвященных Zabbix, мы рассказали про особенности мониторинга SAAS-сервиса интернет-магазинов, а также про установку сервера и агента Zabbix.Новая статья поможет вам настроить мониторинг дисков и программных RAID-массивов, созданных с помощью mdadm. Без преу...

Выходим за пределы JVM. Объясняем на крестиках-ноликах чем хорош Kotlin Multiplatform Какой есть общий недостаток у мобильной, front-end и back-end разработки и иногда распила микросервисов? Дублирование логики. Очень часто я видел статьи или новости, где одна команда мобильных разработчиков ждет другую, чтобы выкатить релиз. И если с мобильными версиями боле...

Ускорение обновления информации на сайте в 100 раз за счет рефакторинга системы хранения и передачи данных Меня зовут Максим, я руководитель проектов в ИНТЕРВОЛГЕ. Мы с командой уже несколько лет развиваем сеть B2B/B2C интернет-магазинов нашего клиента. Хочу сегодня рассказать про рефакторинг. И кода, и потоков данных.Не всегда легко объяснить бизнесу зачем нужно чинить то, ...

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

Дело принципала: кто такой Principal Game Designer и зачем он нужен команде Всем привет! Меня зовут Иван Звонарёв, Principal Game Designer в компании Pixonic. Сегодня я расскажу о том, что это за роль такая, какие на ней обязанности и какую пользу компании она приносит. Или, если говорить конкретнее, какие принципалу нужны навыки, за что непоср...

Yii3 Overview 1. Вступление Yii3 – пакетный фреймворк. А это значит, что вы можете использовать библиотеки из фреймворка в отвязке от экосистемы Yii. Например, такие пакеты можно подключить к Yii 2, Symfony, Laravel, к проекту без фреймворка или в любой другой PHP-проект.В этой серии статей разбер...

Как мы сделали матчер: тайтлы, БЕРТы и две сестры Всем привет! Меня зовут Андрей Русланцев, я — Senior Machine Learning Engineer в команде матчера в AliExpress Россия. Я расскажу о том, как мы сделали матчер: какие проблемы нам пришлось решить, какие модели мы использовали, как выглядит наш текущий пайплайн, и почему наш ма...

Новый iPad Pro получил поддержку Wi-Fi 6E Вчера компания Apple официально представила свои новые планшетные компьютеры, которые оказались крайне интересными как в плане дизайна, так и в плане характеристик. Например, планшет iPad Pro, который теперь работает на процессоре М2, является единственным устройством компан...

Как я остался работать в «Сириусе» Привет, друзья!В первой своей статье на Хабре я описал, как преподавал в ИТ-колледже "Сириус" ИТ-архитектуру детям. Рассказал как устроен учебный процесс, поделился своими эмоциями от общения со студентами и преподавателями. В этой статье я хочу рассказать продолжение истори...

[Перевод] Оболочка и терминал Unix — это одно и то же? Сегодня любой уважающий себя разработчик не только программирует, но и так или иначе эксплуатирует свой код. А значит, с вероятностью 99,99% сталкивается с такой штукой, как «терминал». Хотя чаще это называют «консолью» или «командной строкой». А как же правильно? И поч...

Что такое Умный дом Matter в iOS 16 и зачем он нужен Одним из грядущих нововведений iOS 16 должна стать поддержка нового стандарта умного дома под названием Matter. Это новшество осталось незамеченным, так как большинство из пользователей предпочитает улучшение повседневных функций, а Умный дом для многих по-прежнему остается...

[recovery mode] Flutter: Настройка тем приложения Всем привет, читатели Habr! В начале я хочу сделать акцент на том, что статья ориентирована для новичков, однако может быть полезной для более опытных коллег. В этой статье я расскажу про то, что такое тема приложения, какие ошибки обычно делают новички и рассмотрю, как по м...

YNDX Family: рассказываем, что это такое, зачем и почему сейчас Всем привет! Меня зовут Антон Абдухамидов, работал в Яндексе директором по корпоративному развитию, где развивал внутренние стартапы компании и направление венчурных инвестиций, а сейчас партнер венчурного фонда GuruDev.В качестве одного из организаторов хочу поделиться...

Полезные плагины VS Code для разработки кроссплатформенных приложений с использованием React Native и Flutter Каждый разработчик кроссплатформенных приложений с использованием фреймворков React Native и Flutter выбирает наиболее удобный для себя редактор кода. Я — один из таких разработчиков. Меня зовут Александр Дудукало, я куратор направления “Веб-разработка” в Skillbox. Лично я п...

MobX с MVVM упрощает жизнь Frontend разработчика гораздо сильнее Redux'а В этой статье я бы хотел подискутировать о том, насколько хорошо паттерн MVVM подходит для разработки Web приложений на React. Вместе этим, я собираюсь описать какие преимущества могут быть при разработке с использованием MobX с паттерном MVVM в сравнении с Redux. Запаситесь...

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

Отмена релокейта в Болгарию, плесень и ремонт, или как я переехал в деревню Всем привет. Меня зовут Павел Кишеня, я работаю в REG.RU системным администратором. Два года назад я переехал из Минска в область, деревню Лещёвцы. В этой статье я расскажу, как и почему я переехал, какие здесь условия для работы и жизни и причем здесь плесень. Читать далее

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

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

Развертывание Spring Boot приложения с помощью Nginx, Let's Encrypt и Docker Compose Привет, Хабр! В своей первой статье я бы хотел поделиться опытом в развертывании Spring Boot приложения. Но для начала небольшое отступление, которое должно ответить на вопросы зачем и почему.Недавно я столкнулся с задачей разработать Telegram бота. Казалось бы, что тут слож...

Мои собеседования (Golang developer) Привет, меня зовут Олег, я разработчик со стажем почти 10 лет.Разработкой начал заниматься ещё со старшей школы, изучал C/C++ (очень пригодилось при написании скриптов в injection для ультимы онлайн). Профессионально начал работать разработчиком приблизительно с 2014, основн...

Принятие решений на основе данных и опросов пользователей: всё от А до Б Всем привет! Меня зовут Александр Григорьев и я работаю в компании «Интерсвязь». Это уральская компания, которая занимается услугами связи, домофонии и IT-продуктами. Я работаю продуктовым аналитиком в домофонии и хочу рассказать про опыт аналитики в разработке «осязаемых» п...

Android Debug Bridge для тестировщика без SMS и регистрации Привет, Хабр! Меня зовут Александр Карпенко, я QA Engineer в inDrive. Я подготовил эту статью для начинающих QA-специалистов. Ниже расскажу, как использовать Android Debug Bridge (ADB) в тестировании мобильных приложений и нужен ли вообще этот инструмент.  Читать далее

Илон Маск оценит. Российский разработчик создал Telegram-бот для управления Tesla Как пишет «Код Дурова», разработчик из Грозного Рамзан Шахбиев создал Telegram-бот, который заменяет фирменное мобильное приложение Tesla и позволяет управлять электромобилем через мессенджер. По словам Рамзана, идея написать бота пришла внезапно, когда он ...

C++. Унарный минус и беззнаковый тип Привет, Хабр! Меня зовут Владимир, я работаю в VK Карты. Хочу рассказать про случай, который недавно произошёл у нас в подразделении. Он кажется достаточно типичным и может быть интересен другим программистам.Нам, программистам на C++, не привыкать, что даже самый безобидный...

Миграция с vue-class-component на vuejs/composition-api В статье хочу поделиться опытом переписывания существующих классовых компонентов vue на новый синтаксис vue-composition-api.Немного о нашем стеке. Наше приложение написано на nuxt2 + vue-class-components + typescript. Из-за стека переезд на новый nuxt затруднился тем, что пр...

Перевод документации React-redux и проблемы переводчиков Я решил перевести документацию react-redux, позвал напарника, и мы вместе решали проблемы, связанные с этим. Собственно, о проблемах и решениях пойдёт речь.Ссылка на переводКратко: поговорили с авторами библиотеки, развернули перевод на github-pages, получили домен, пол...

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

Разрабатываем библиотеку компонентов с помощью React и TypeScript Привет, друзья! В этой статье я покажу вам, как начать разработку библиотеки компонентов с помощью Vite, React, TypeScript и Storybook. Мы разработаем библиотеку, состоящую из одного простого компонента — кнопки, подготовим библиотеку к публикации в реестре npm, а также сг...

Apple заблокировала умный дом Сбера на iPhone, но выход есть В ночь с 20 на 21 октября устройства умного дома от Сбера перестали работать с техникой Apple. Всё началось с того, что пользователи iOS пожаловались, что из App Store пропали приложения «Салют» и «Салют! Умный дом». Как выяснилось, Apple удалила их целенаправленно. В Купер...

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

Топ лучших ремешков для умных часов Все знают, что одними из самых популярных умных часов в мире являются Apple Watch. К ним производители аксессуаров выпускают больше всего ремешков и кейсов. Однако забывается тот факт, что смарт-часы от других производителей обладают одним важным преимуществом — станд...

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

Скоро сайт Сбербанка перестанет работать в иностранных браузерах. Что делать В конце прошлой недели некоторые издания вышли с громкими заголовками из серии “Сайт Сбербанка больше не будет работать в иностранных браузерах”. Под угрозой якобы оказались Safari, Chrome Firefox, Edge и многие другие из-за российских сертификатов безопасности, на которые ...

Intel Arc A770 громит даже GeForce RTX 4090. Тесты кодирования AV1 показали неожиданную сильную сторону новинок Видеокарты Intel Arc, возможно, нельзя назвать лучшим выбором для игр за свои деньги, однако кое в чём, как оказалось, они превосходят не только прямых конкурентов, но и вообще все 3D-карты на рынке.  В Сети появились тесты декодирования в формате AV1 с использован...

Как не разбиться на Soft Launch: разбираем самые частые ошибки Soft Launch позволяет игровой компании проверить, готова ли игра к полноценному запуску. Это пробный запуск для определенной территории, чтобы понять, что стоит поменять и нужно ли вообще выпускать игру. Всем привет, меня зовут Анастасия Кузина, я бренд-менеджер в команде MG...

Сохраняем состояние страницы после авторизации VK с помощью Broadcast Channel API Недавно в работе с одним из наших клиентов мы столкнулись с проблемой в пользовательском сценарии: VK API требует конкретный, железный URL для редиректа после авторизации. А у нас были сотни ссылок с динамическими параметрами, с которым могла начаться авторизация. Меня ...

Deathloop, Watch Dogs 2, Toy Story 3 и другие. Библиотеку PlayStation Extra&Deluxe пополнило 14 игр 20 сентября библиотека PlayStation Extra и PlayStation Deluxe пополняется новыми играми. В PS Extra вошло 11 различных проектов, а в PS Deluxe два порта с PSP и еще одна игра с PS One. Обновление библиотеки богато на интересные проекты, поэтому все пользователи PlayStation у...

Распределенная трассировка: подключить всех и не умереть Всем привет! Меня зовут Филипп Бочаров, я руководитель центра мониторинга и наблюдаемости в МТС Digital. Мы с командой делаем платформу Наблюдаемости – это набор сервисов, который позволяет сделать работу других продуктов МТС прозрачной и понятной. Сегодня я расскажу про рас...

Allure TestOps: «Нестандартный» сценарий использования Привет. Меня зовут Николай, я QA Automation Engineer в мобильной платформенной команде Delivery Club. Эта статья будет о том, как мы интегрировали Allure TestOps (далее Allure TO) в регрессионное тестирование нескольких мобильных приложений и ушли от TestRail. Альтернативу T...

Дизайн-система в inDriver: не пытайтесь покинуть Oymyakon Всем привет, я Алексей, iOS-разработчик в inDriver. Наше приложение представляет собой суперапп с множеством сервисов и услуг: городские, межгородские и грузовые поездки, курьерская доставка, услуги мастеров и так далее. Над каждым сервисом работают отдельные команды, которы...

Превью сайта с разметкой Open Graph: как автоматически рендерить картинку Всем привет! Меня зовут Николай Каменев, я фронтенд-разработчик в Почтатехе. Мы разрабатываем UI для порталов и приложений Почты России.Я хочу поделиться коротким гайдом, как автоматически рендерить og:image-изображения для превью сайтов. Читать далее

“Приказать или научить?”. 4 модели помощи сотруднику, во время уточняющих вопросов В предыдущей статье мы рассмотрели уровни делегирования и плюсы/минусы от применения каждого из них. Сейчас же я предлагаю пойти дальше и рассмотреть модели помощи сотруднику во время его уточняющих вопросов, по ранее поставленному заданию. Независимо от уровня делегирова...

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

Простые highload паттерны на Go Привет, Хабр! Меня зовут Агаджанян Давид, хочу поделиться некоторыми инженерами рекомендациями, которые часто на моем опыте помогали держать highload нагрузку не прибегая к хардкору. Примеры будут на Go. Эти подходы довольно хорошо известны, но как мне кажется они недооценен...

Шаблон диплома в LaTex / практика написания диплома и составления презентации Изначально я хотел рассказать в данной статье про свой шаблон дипломной работы, но таких статей полно, зачем мне делать еще одну? За 6 лет работы научным сотрудником в лаборатории МГТУ им. Баумана я много чему научился, в том числе и оформлению своих результатов, как графиче...

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

Готовим Window Inset под соусом Jetpack Compose и щепоткой View Обожаю запах свежей мобильной разработки по утрам, дням и вечерам

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

iPavlov разросся: автопилот, голосовой помощник, машинное зрение, предиктивная аналитика, Smart City и Smart Clinic Пару лет назад мы делали интервью с Михаилом Бурцевым из МФТИ — создателем системы разговорного ИИ iPavlov. Очень интересный человек, который в 2015 году удачно скрестил свой талант с программами госфинансирования через «Сбер» и НТИ (АСИ). Все началось с библиотеки DeepPavlo...

Битва брокеров сообщений: RabbitMQ, Kafka, AWS SNS/SQS Если вы работаете с вебом, вы обязательно столкнётесь с брокерами сообщений. Они бывают разные, но чаще остальных встречаются Kafka, RabbitMQ и AWS SNS/SQS. У каждого из них есть свои особенности, плюсы и минусы — выбирать брокер нужно под свою задачу. О том, как сделат...

Жизненный цикл гипотезы Всем привет! Меня зовут Аксёнов Павел. Я работаю CPO (директором по продукту) цифровой платформы Самолет Плюс и преподаю управление продуктом в OTUS. А еще у меня есть опыт работы на Head позициях в Яндекс, Ozon и Mail. За весь свой опыт и в управлении проектами, и в управле...

Изобретая бота: система обработки сообщений на примере конструктора чат-бота Привет, Хабр! Я Игорь Латкин, архитектор в KTS. Мы занимаемся различными цифровыми продуктами для бизнеса, специализируемся на HRTech, EdTech и DevOps. Также у нас есть несколько собственных продуктов, и один из них тесно связан с очередями сообщений. Об этом интересном ре...

Экспресс до стора: как мы запускали релизный поезд Всем привет! Меня зовут Николай, я тимлид android-команды СберМегаМаркета. Сегодня расскажу вам, как мы меняли релизный процесс в компании.С чего все начиналосьКогда мы начинали разработку android-приложения нашего маркетплейса, процесс релиза выглядел очень просто: разработ...

В следующей серии… Как устроены UX-исследования в Иви Привет, Хабр! Меня зовут Евгения Савельева, я руковожу отделом UX-исследований в Иви. С коллегами мы шутим: исследования как сериал - всегда есть что-то, что узнаешь только в следующей серии. А еще, по результатам исследований у нас самые интересные встречи! Решили рассказат...

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

От абстрактной идеи к готовой механике: как гейм-дизайнеру составить ТЗ для программиста Когда идея игровой механики возникает в голове гейм-дизайнера, она существует в виде абстрактной задумки, у которой нет конкретного воплощения. И чтобы реализовать ее в реальности, он должен как-то объяснить программисту, в чем ее суть — гейм-дизайнеру нужно понятно и однозн...

Как стать Flutter-разработчиком, или Почему кроссплатформа сейчас — это лучший выбор Hola, Amigos!На связи Александр Чаплыгин, Flutter Dev. В разработке я 3 года, сейчас работаю в компании по заказной мобильной разработке, за последний год делал проекты для частного медицинского центра, системы маркировок и нескольких стартапов. По свежим следам хочу рассказ...

User Story Mapping как подход к проектированию Меня зовут Наталья Кобякова, я ведущий аналитик в Ak Bars Digital. В этой статье я расскажу, почему для проектирования функциональности наших продуктов вместо стандартных ТЗ мы используем методологию User Story Mapping и как это помогает нам вести разработку быстро и качеств...

Прогулка по изнанке «Спортмастера»: ножками и в приложениях Зашёл я (@Lavs) в «Спортмастер», чтобы купить себе футбольный мяч. В этом деле мне помогла сотрудница Ксения: задала пару вопросов, отвлеклась на смартфон и через минуту протянула подходящий мячик.Я знал, что на экране у Ксении был не мессенджер с подружками, а внутренние пр...

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

Неочевидное про Fragment API. Часть 2. (Не) создаем инстанс Всем привет! Меня зовут Максим Бредихин, я Android-разработчик в Тинькофф. А это — вторая статья серии об интересных моментах из Fragment API, о которых вы, возможно, не знали.Готовьте вкусности, сегодня я расскажу, как (не) создавать новые инстансы фрагментов. Читать далее

Как организовать потоковую обработку данных. Часть 1 Привет, Хабр! Меня зовут Евгений Ненахов, я работаю в центре Big Data МТС Digital. В этой статье я расскажу о том, как мы создали универсальный инструмент потоковой обработки данных и построили с его помощью мощную систему стриминга. Если вам интересна обработка данных – доб...

Поиск объектов на видео с помощью Python В данной статье хочу рассказать про поиск объектов на видео с помощью Python и OpenCV. Помимо обычных видео, можно использовать и камеры.Полный код и все исходники можно найти на моем Github.Данный проект является продолжением моей предыдущей статьи - Поиск объекто...

Проецирование вершин графа в векторное пространство. Часть 1. Разложение матрицы смежности Привет, Хабр! Меня зовут Илья Котов, я Data Scientist в Сбере, участник профессионального сообщества NTA. Эта статья — первая часть небольшого цикла, посвящённого алгоритмам вложения вершин графа в векторное пространство. Сегодня расскажу об алгоритмах, основанных на матричн...

Сравнение Javascript-фреймворков React, Angular, Vue.js и Svelte: какой выбрать в 2022 году Сегодня мы попытаемся заглянуть в дебри веб-разработки и сравнить четыре самых популярных Javascript-фреймворка. Статья поможет разобраться, если вам нужно сделать выбор или если вы уже освоили один из них и хотите узнать больше об остальных.

Клуб использованных техлидов Меня зовут Сергей. Я – использованный техлид. Долго думал, что я такой один – невезучий, потерявший всякий интерес к любимому делу, работающий от звонка до звонка. Оказалось, нет.Нас таких много. Начало, первые счастливые годы, безумный интерес к своему делу – у всех техлидо...

Sony представила уникальные в своём роде слуховые аппараты CRE-C10 Сегодня произошло историческое событие — компания Sony, которую многие знают исключительно по смартфонам, фотоаппаратам и игровым консолям, официально представила миру первые в своём роде слуховые аппараты CRE-C10. Главная особенность устройства в том, что человеку не нужен ...

Как проверить версию Bluetooth на телефоне, и на что она влияет Каждый смартфон оснащается кучей датчиков беспроводной связи. Это может быть Wi-Fi, который мы используем для доступа к интернету, а также NFC, получивший популярность за счет бесконтактной оплаты покупок. Но, пожалуй, самым востребованным является датчик Bluetooth. Это еще...

[Перевод] Модульное тестирование операторов Kubernetes с помощью моков Из этой статьи вы узнаете, зачем нужны моки для модульного тестирования операторов Kubernetes и как их писать. Эти концепции применимы к операторам на разных языках и фреймворках. Здесь мы будем использовать Golang, controller-runtime и библиотеку testify. Читать далее

Как мы внедряли tracing Представьте: у вас пара сотен микросервисов, и вдруг всё ломается. А может даже не всё, а, скажем, только одна страница. Если вы хорошо знакомы с системой, то по мониторингам и логам быстро обнаружите проблему и пойдете её решать. Но иногда систему вы видите впервые, и на...

Совсем другая история: как мы проводим A/B-тесты в офлайне и чем они отличаются от классических онлайн-экспериментов Всем привет! Меня зовут Костя Гусев @nevoy, и в М.Видео-Эльдорадо моя команда развивает внутренние и партнёрские продукты. Перед тем, как поменять ассортимент или цены на полках 1 300 розничных магазинов, мы должны убедиться, что новое товарное предложение, как минимум, не п...

Процесс рендеринга Vue Добрый день! Меня зовут Александр, я работаю frontend-разработчиком в компании Nord Clan. В прошлой статье мы рассмотрели процесс компиляции Vue, а теперь надо как-то «пристроить» результат этой самой компиляции в процесс рендеринга.Дизайн лого: Марина Четвертакова Читать д...

Атакуем синезубого короля Английское слово Bluetooth -- буквальный перевод прозвища короля викингов Харальда I Синезубого. Он правил на территории современных Дании и части Норвегии в X веке и вошел в историю как правитель, который объединил враждовавшие датские племена в единое королевство.Подразуме...

Плоская сеть для Kubernetes Приветствую тебя, %username%! Меня зовут Владимир Жуков, и я не хочу впаривать тебе очередную историю успешного успеха про Kubernetes. Я хочу рассказать о наших кластерах Kubernetes с необычной архитектурой. «Что же там необычного?» спросишь ты. Это самая сложная и непонятна...

[Перевод] Напишите свою инфраструктуру Kubernetes — как код Go cdk8s (Cloud Development Kit for Kubernetes) — это опенсорсный фреймворк (часть CNCF), при помощи которого можно определять приложения Kubernetes при помощи обычных языков программирования (вместо yaml). В предыдущих постах по этой теме я познакомил читателей с фреймворком ...

От 50 тыс до 1,7 млн пользователей за два года Всем привет! Меня зовут Денис, разработчик приложения Smart Timetable для школьников и студентов. Два года назад мы полностью обновили приложение и все расписания пользователей обнулились. Читать далее

Technical Governance для IDP на 7000 разработчиков Всем привет, меня зовут Дмитрий Гаевский, я руковожу созданием внутренней платформы для разработчиков в Тинькофф. Последние два года стали знаковыми для российской ИТ-отрасли с точки зрения «распаковки» тем о таких платформах. Крупные технологические компании начали делиться...

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

Поклонники крайне возмущены: чтобы поиграть в новую Call of Duty, нужно привязать свой номер мобильного. Причём подходят не все номера Компания Blizzard подтвердила на сайте технической поддержки Battle.net говорится, что для доступа к учетной записи новой игры Call of Duty: Modern Warfire 2 потребуется ввести номер мобильного телефона. На прошлой неделе Blizzard объявила, что все игроки Overwatch 2 до...

Выгрузка HDFS FSImage в Hive для мониторинга и аналитики: руководство к действию Привет, Хабр! Меня зовут Борис Мурашин, я системный архитектор развития платформы больших данных в Х5 Tech. В статье делюсь своим опытом работы с кластером Hadoop: рассказываю, как с помощью сторонней библиотеки мне удалось организовать оперативную выгрузку образа файловой с...

Что такое осень? Это Школа Всем привет! Меня зовут Анастасия Артамонова, я - руководитель направления IT-обучения и развития Мир Plat.Form, и вы уже могли читать мою статью в этом блоге. С чего хотелось бы начать в этот раз: мир меняется, меняются обстоятельства и времена года. Развивается Мир Plat.Fo...

Google, что за бардак? Компания объединила Meet и Duo, переименовала всё в Meet, а теперь снова переименовала в Duo Эпопея с приложениями Google Meet и Duo продолжается, хотя должна была закончиться.   Некоторое время назад Google объединила приложения, переведя функции Meet в Duo, а затем переименовала Duo в Meet. Далеко не самая понятная трансформация, но в итоге получилось п...

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

Интеграцию сторонних хранилищ файлов поддерживает «Р7-Офис» Офисный пакет приложений «Р7-Офис» поддерживает интеграцию сторонних хранилищ файлов. Рассказываем, как их подключить. При желании к «Р7-Офис» можно подключить внешнее хранилище файлов. Платформа поддерживает множество популярных сервисов — Google Drive, Box, OneDrive, Nextc...

Wi-Fi в институте | Подготовительный этап, часть первая Приветствую, инженер! Меня зовут Артём Ковальчук, я сетевой инженер системного интегратора X-Com, входящего в одноименную Группу компаний. За плечами относительно небольшой опыт в сетях и сертификат Cisco CCNA.Мы запускаем цикл статей, где я поделюсь опытом, как выглядит жив...

Как не быть программистом, раскурить eBPF за сутки и начать мониторить DNS Представим: сервер может отправлять легитимные запросы, но IP, на которые он будет их слать, неизвестны. В журнале сетевого фильтра видно что запросы таки да, идут. Но не ясно - это как раз легитимные или информация уже утекает к злоумышленникам? Было бы проще если бы был из...

It is Wednesday, my java dudes, или насколько сложно сделать свою JVM Что делать, если накануне переезда повысилась тревожность, а привычные методы не приносят успокоения?Конечно же вырабатывать дофамин через решение упоротых инженерных задач!Мне стало интересно - насколько тяжко было бы сделать свой интерпретатор байт-кода Java? И насколько с...

Как слушать бесконечную музыку в Яндекс и что такое нейромузыка Вы же знаете, что такое музыка, и как-то слушаете ее? До недавнего времени вариантов, как сделать это, было намного больше, но теперь с уходом Spotify и проблемами с оплатой Apple Music приходится искать другие варианты. Одним из таких вариантов уже много лет является Яндек...

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

Центрируй, властвуй, располагай Всем привет, с вами Кирилл Мыльников, frontend разработчик компании Usetech.Сегодня я хочу рассказать о вертикальном и горизонтальном центрировании CSS (Cascading Style Sheets). В сети есть много статей на эту тему, но я хочу выделить все виды горизонтального и вертикального...

Разделяй и не страдай: что выбрать для микрофронтенда? Привет! Меня зовут Алексей. Я занимаюсь проектированием фронтенд-составляющей ИТ-систем в архитектурном комитете SimbirSoft. Последние два-три года во фронтенд-сообществе активно обсуждается и используется термин «микрофронтенд» (далее МФ). Разные компании делятся своими под...

[Перевод] Превращаем старый телефон на Android в веб-сервер Есть ли у вас старый телефон на Android? Наверняка есть! В мире накопилось безумное количество всевозможного электронного мусора, и в среднем гражданин развитой страны меняет телефон каждую пару лет, поэтому старые телефоны, вероятно, один из самых распространённых видо...

Как использовать макросы в Confluence, чтобы систематизировать и оформить документацию по продукту и процессам? Привет, Хабр! Меня зовут Таня Дудо, и я уже 6 лет помогаю людям и командам обмениваться знаниями внутри компаний. Для этого использую Confluence. Да-да, ту самую wiki-систему, которую часто называют неудобной и несовременной. Сегодня выступлю ее адвокатом-обозревателем: рас...

Светофор на логике со схемотехникой в стиле Beatles Сейчас даже в чайнике можно найти микроконтроллер со своей прошивкой, и этим уже никого не удивить. А вот то, что можно обойтись без микроконтроллера только «железной» логикой, современного электронщика может реально вогнать в ступор. И именно такое состояние настигло меня...

Параллельный импорт, местное производство и колебание цен: что происходит на рынке смарт-приставок? Привет! Меня зовут Евгений Торчинский, а это — моя первая проба пера на Хабре. Я работаю с технологиями практически всю свою сознательную жизнь, хоть и начал свою карьеру с позиции оператора колл-центра. Я совмещал эту работу с учебой в Пермском Политехническом Универси...

Golang fyne Куда нажать? :-( fyne - кросс-платформенная библиотека для Golang, но ее кросс-компиляция не очевидная вещь, в данной статье Гайд, как же все-таки собрать и распространить свое первое приложение Читать далее

Дегустация Argo Rollouts: обзор решения, часть 1 Всем привет! Меня зовут Евгений Симигин, я занимаюсь внедрением DevOps-практик в Центре компетенций по разработке облачных и интернет-решений МТС Digital. В этой статье – обзор Argo Rollouts, я покажу несколько примеров применения и отмечу интересные места в документации. Х...

Open Source: IT-фетиш 21 века В последние лет 5 часто встречаются в сети красиво изложенные мысли на тему открытых исходников различных приложений. Суть в следующем: «Если код закрыт, то пользоваться приложением нельзя или нежелательно». Ведь если нельзя заглянуть под капот, нет никаких гарантий, что там...

Ошибки выбора MongoDB в качестве основной БД в стартапе В этой статье я хочу рассказать о своих ошибках, которые я допустил, когда писал сервис, у которого MongoDB была основной БД для хранения пользовательских данных (да и не только, но об этом ниже).Я ни в коем случае не считаю, что MongoDB это плохая БД и ее не нужно использов...

iPhone 14 Pro и 14 Pro Max — это почти Samsung. Смотрите сами Ещё до того, как Apple представила iPhone 14 Pro в новом дизайне, все просто с ума сходили, восхищаясь его новизной и свежестью. Ведь мало того, что дизайнеры компании отказались от наскучившего козырька в пользу очень стильной овальной выемки под названием Dynamic Island, ...

Молодёжный и бюджетный дядька из нулевых. Обзор коммуникатора HTC Gene Оживление, Использование в наше время Думаю, ни для кого не секрет, что основная аудитория хабра - люди 20-30-40 лет. И большинство из них помнят про такие штукенции - как КПК/коммуникаторы. Кто-то из вас, читателей - и сам пользовался оными, кто-то видел у друзей, а кто-то и слышать не слышал, и ему хватало его...

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

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

Вот как мы поняли, что нам нужно больше стажеров Всем привет! Меня зовут Алексей Половинкин, я руковожу отделом Python в AGIMA. Последние пару лет мы набираем в команду больше стажеров. Это был наш эксперимент — хотели посмотреть, что из этого выйдет. Результат впечатлил: мы поняли, что нам нравится с ними работать. В...

Что делать, если не работает клавиатура на Android. Собрали все способы решения проблемы Смартфон — универсальное средство общения и поиска информации. При реализации этих задач незаменимым инструментом является виртуальная клавиатура для Андроид. По умолчанию она уже должна быть установлена на вашем устройстве. Чтобы вызвать ее, достаточно тапнуть по строке во...

Есть ли жизнь без RTTI: пишем свой dynamic_cast В современном С++ осталось не так много вещей, которые не подходят под парадигму "Не плати за то, что не используешь". Одна из них – dynamic_cast. В рамках данной статьи мы разберёмся, что с ним не так, а когда поймём – попробуем предложить альтернативу. Читать далее

nocc — распределённый компилятор для гигантских проектов на С++ У нас есть задача постоянно компилировать тонны плюсового кода. Наш проект — почти 200 000 cpp- и h-файлов, множество Git-веток, сотни разработчиков, десятки билд-агентов: его нельзя единожды скомпилировать, приходится перекомпилировать постоянно, параллельно, разные версии....

Разбираемся с концепцией аутентификации в HTTP Я часто путаю понятия авторизации и аутентификации между собой, поэтому решил создать материал, который закрепил бы эти понятия через какой-то практический опыт.Хотелось создать статью, которая поэтапно раскроет базовые концепции аутентификации и авторизации на практике, пос...

Параллельные вычисления в Apache Spark Всем привет!Иногда кажется, что для решения проблемы недостаточно простого выполнения расчётов в Spark и хочется более эффективно использовать доступные ресурсы. Меня зовут Илья Панов, я инженер данных в одном из продуктов X5 Tech, и хочу поделиться некоторыми подходами пара...

Digital Guardian: от идеи до продукта Не знаю, как считаете вы, но я убеждён, что любая работа обязывает человека к непрерывному изучению нового. А уж что говорить, когда ты работаешь в ИТ? Здесь чуть ли не каждый день кто-то что-то да придумает. Придерживаясь своего правила «вечной учебы», я решил, что будет бо...

Open Source для MLOps: сравнение популярных решений Здравствуй, Хабр! Меня зовут Александр Волынский, я занимаюсь разработкой ML Platform в VK Cloud. Наша ML-платформа стала доступна пользователям совсем недавно, некоторые из её компонентов сейчас находятся на этапе бета-тестирования. В этой статье я расскажу, как мы выбира...

IPSec — история, архитектура, подключение IP Security — это комплект протоколов, в состав которого входят почти 20 предложений по стандартам и 18 RFC. Он позволяет осуществлять подтверждение подлинности (аутентификацию), проверку целостности и/или шифрование IP-пакетов. IPsec также включает в себя протоколы для защи...

Kafka как интеграционная платформа: от источников данных к потребителям и в хранилище (часть 1) НЛМК- большая компания, производственные активы которой располагаются в разных регионах России и за рубежом. Перед нами стояла задача спроектировать и внедрить новую интеграционную платформу, которая могла бы быть использована для организации информационного обмена, учитывал...

Вышла iOS 16.1 beta 4. Перечень изменений Вчера была выпущена iOS 16.1 beta 4, которая приближает нас к выходу финальной версии iOS 16.1. Она добавит в iPhone ряд новых функций, в том числе Live Activity, «Зарядку экологически чистой энергией», изменения на экране блокировки, переработанный значок п...

Apple назвала лучшие приложения 2022 года Уже давно стало традицией, что Apple в конце года называет лучшие приложения для каждой категории своих устройств. Этот год, конечно же, не стал исключением. Чтобы получить премию App Store Award, приложение, по словам Apple, должно “демонстрировать свои широкие возможности...

Как включить активный экран Xiaomi и снять ограничение 10 секунд Смартфон является устройством, позволяющим нам оставаться в курсе событий. В частности, следить за временем. Но обычно, когда мы блокируем экран, часы исчезают, а при использовании беззвучного режима даже не удается понять, что пришло сообщение. Эта проблема была решена доб...

StbSharp: история ненужного проекта В этой статье я бы хотел рассказать о своем хобби проекте под названием StbSharp.Итак, в 2016 году мне пришла в голову весьма банальная идея - сделать собственный игровой кросс-платформенный движок на C#. И я озаботился поиском кросс-платформенной же библиотеки для загрузки ...

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

Собрать за 60 секунд: кейс автоматизации получения данных из десятков подразделений Привет, Хабр! Меня зовут Сергей Корнеев, и я хочу рассказать о том, как мы организовали сбор данных в компании “Россети”. На момент запуска проекта я работал в “Россети.Цифра” и руководил внедрением BI-платформы. Нам с командой удалось решить проблему ручного сбора данных на...

Тайм-менеджмент для разработчика. Секреты эффективности в работе и в жизни Привет! Меня зовут Макс Нечаев и я iOS-разработчик. Буквально два года назад я абсолютно не понимал реального значения тайм-менеджмента. Это привело меня к крайне неэффективному использованию своего времени, выгоранию и ряду переживаний.В данной статье я хочу помочь вам разо...

Пока забудьте о 100-долларовой Xbox. Microsoft на время отменила проект облачной консоли Компания Microsoft пока отказалась от планов по выпуску своей облачной игровой консоли Xbox в ближайшее время.  Глава всего подразделения Xbox Фил Спенсер (Phil Spencer) рассказал, что у компании пока не вышло сделать продукт с такой ценой, какую они изначально пр...

Отвертки и пассатижи гейм-дизайнера: основные инструменты и навыки, которые пригодятся в работе Предположим, что ты — Junior Game Designer. Ты только начинаешь свой путь, а студия, в которую ты пришел, сразу отправляет тебя в бой — сражаться с реальными задачами. Какие инструменты использовать в работе с конфигурациями? Где собирать макеты для интерфейса? Как искать ре...

Пишем try-catch в C не привлекая внимания санитаров Конструкция try-catch есть во всех широко используемых сегодня языках, кроме C. Не в силах мириться с вопиющей несправедливостью, попробуем написать свою реализацию этой конструкции Читать далее

Не работай «в стол»: руководство для эффективного аналитика Привет, Хабр! Меня зовут Денис, я работаю продуктовым аналитиком в Delivery Club. Наша команда за последние полгода провела около сотни продуктовых исследований данных, которые способствовали появлению нескольких десятков продуктовых гипотез по улучшению нашего продукта. За ...

Как изменился дизайн Андроид за год и в чем его основная проблема Обновления Android уже не так привлекательны как раньше, особенно, если речь о «чистом» Андроиде без надстроек. Но оригинальная версия системы от Google привлекательна за счет Material You — нового оформления Android, которое компания представила в прошлом г...

Как не отказаться от тестирования фича-веток при переходе на микросервисы В современном мире приложение — это огромная связка микросервисов. Функционально её протестировать сложнее, чем монолит. Кто-то решает это единым staging’ом и чатиком синхронизации: «займу auth на полчасика». Другой уходит с головой в shift-left или тестирует в canary. Разбе...

Задачи для средней школы. Скрещивание Microsoft Active Directory (LDAP) и Hashicorp Vault на домашнем стенде, часть 1 Такой низкокачественный лонг лонг рид я писать не хотел, меня заставили, но сначала в комментариях задали вопрос про доучивание, затем эта статья вызвала у меня некое недоумение своим обрывом на полуслове. Поскреб по амбарам, нашел черновик заметки по дообучению коллег от ур...

Написание ОС с нуля: Часть 3 — Терминал В предыдущей статье мы написали простейший загрузчик, печатающий на экран "Hello, World!" и завершающийся но нажанию клавиши. Сегодня напишем терминал, у которого будет несколлько команд, обновим библиотеку и сделаем ещё пару вещей. Читать

Звуковая карта USB на STM32. Часть 2: Используем встроенный АЦП Во второй части публикации речь пойдёт о реализации линейного входа описанной ранее звуковой карты USB на встроенном в MCU STM32F411CEU6 АЦП. В статье будут разобраны несколько неочевидных нюансов подобной реализации, а в финале мы сравним характеристики линейного входа на...

Услуги OpenVPN В современном мире развитие технологий происходит стремительно быстро и позволяет во многом расширить возможности работы в онлайн формате. Благодаря интернет сети, теперь можно реализовывать онлайн проекты мировых масштабов. Но, для осуществления таких работ необходимо испол...

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

Это моя любимая функция iPhone, которой нет у Android Помните функцию Dynamic Island в последнем iPhone, о которой многие говорили, а кто-то даже пытался скопировать? Так вот, в смартфоне от Apple спрятана гораздо более полезная функция, которая должна привлечь внимание фанатов технологий и тех, кто хочет более полноценно поль...

[Обновлено] WhatsApp перестал работать и не отправляет сообщения. Что случилось? Сегодня утром, около 10 часов утра по Москве, у многих пользователей перестал работать WhatsApp. Люди стали сообщать, что мессенджер — независимо от платформы, на базе которой его пытаются использовать — запускается, но не загружает информацию о контактах и не д...

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

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

B-Tree индекс и его производные в PostgreSQL Меня зовут Азат Якупов, я люблю данные и люблю использовать их в разных задачах. Сегодня хочу поделиться своим опытом относительно B-Tree индексов в PostgreSQL. Рассмотрим их топологию, синтаксис, функциональные B-Tree индексы, условные B-Tree индексы и включенные B-Tree инд...

Как мы продвигали Tinkoff Black в Telegram Ads Меня зовут Маша Реджепова, я специалист по таргетированной рекламе в Тинькофф. Занимаюсь продвижением дебетовой карты Tinkoff Black.В статье расскажу про успешный кейс по запуску рекламы в Telegram Ads. Реклама на этой площадке отличается от привычного формата— нет баннеров ...

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

Smart Forms: Наш опыт автоматизации сбора данных Привет, Хабр! Сегодня я хочу поговорить о проблеме автоматизации сбора данных. В этом посте мы обсудим, какие именно минусы несет сбор данных через файлы Excel, а также расскажем подробнее о наших собственных наработках по автоматизации сбора информации. Речь пойдет о практи...

[Перевод] «Оживляем» наше iOS-приложение с помощью Live Activity В то время как Android-устройства в целом ушли в направлении простых вырезов в экране под фронтальную камеру или даже подэкранных фронталок, Apple создала совершенно новый пользовательский опыт благодаря своему новому пространству для размещения камеры — «челке» (the notch)....

Почему не стоит занижать свои зарплатные ожидания — и как правильно определить свою стоимость Почему не стоит занижать свои зарплатные ожиданияНедавно мой знакомый Project повысил свой ценник в резюме до 300+ тыс. руб. И ему сразу начали поступать интересные предложения от крупных компаний. Год назад мы с ним занимались планированием карьеры и стабилизацией самооценк...

Кем работать в IT в 2022: UI/UX-дизайнер Рубрика «Кем работать в IT» — интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажерам она поможет больше узнать о том, что их ожидает на кар...

Топовый экран OLED, HarmonyOS 3.0, шесть динамиков, стилус и клавиатура. Топовый планшет Huawei MatePad Pro 12.4 выходит в сентябре В Сеть утекли изображения флагманского планшета Huawei MatePad Pro 12.4, который станет увеличенной версией недавно выпущенного 11-дюймового MatePad Pro. На изображении говорится, что устройство представят 7 сентября, а продажи начнутся 9 сентября. Цена будет стартоват...

Интерактивное ТВ: как всё работает и что оно умеет (часть 1) Привет! Меня зовут Евгений Гудкин, я руководитель группы спецпроектов в сейлс-хауcе ЭВЕРЕСТ, я хочу рассказать вам про интерактивное ТВ и изменения, которые мы вносили в ряд механик в этом году. Поговорим про специфику интерактивного ТВ, обсудим его элементы и метрики, а так...

Ты вовсе не мерило всех вещей Вы слышали о «Золотом Правиле»? Нет, не о том, которое можно свести к формуле «У кого золото, тот и правит», а о настоящем «Золотом правиле нравственности» — которое гласит: «Не делайте другим то, что вы не желаете для себя, и поступайте с другими так, как хотели бы, чтобы с...

[Перевод] Девять порочных практик React. Разбираем частые ошибки Слово React регулярно слышат разработчики во всем мире. С момента своего создания эта библиотека стала невероятно популярной. Одно из главных преимуществ React в том, что она крайне вариативна в использовании, и это при определенных подходах делает ее довольно мощной и прост...

Развиваемся за деньги работодателя В недавней статье я писал о том, что не всем нужно развиваться. Теперь встаёт вопрос: а как же развиваться тем, кто хочет развиваться?Даже если ты стремишься к развитию, это не означает, что ты должен учиться 24/7, читать что-то новое каждый вечер после работы, запускать по ...

В Китае сделали складной iPhone. И он даже работает! Согласитесь, выглядит симпатично. Пользователи уже не первый год ждут от Apple складное устройство. Причем некоторым уже не важно, что это будет: смартфон, планшет или ноутбук. Просто хочется увидеть прочтение сгибаемых устройств именно от компании из Купертино. Но Apple вся...

Книга «PyTorch. Освещая глубокое обучение» Привет, Хаброжители! А мы с очередной интересной новинкой издательства «Manning». Многие средства глубокого обучения используют Python, но именно библиотека PyTorch по-настоящему «питоническая». Легкая в освоении для тех, кто знаком с NumPy и scikit-learn, PyTorch упрощает ...

От стартапа до лоббиста: как Hive и Иннополис меняют будущее беспилотной авиации Привет, Хабр! Меня зовут Николай Ряшин, я генеральный директор компании Hive. Мы создаем, тестируем и устанавливаем дронопорты — автоматизированные станции для обслуживания беспилотников.Сегодня я хочу рассказать, зачем дроны бороздят просторы Иннополиса, почему в России до ...

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

Unity WebGL + React Всем привет. Меня зовут Григорий Дядиченко, и я технический продюсер. Сегодня хотелось поговорить про Unity, веб, как его дружить с мобильными телефонами, какие есть удобные трюки и приколы, и причём тут React. Если вам интересна тема веб проектов на Unity, добро пожаловать ...

Чат-бот для банка ДОМ.РФ: как автоматически обрабатывать 40% обращений Привет! Меня зовут Максим, я управляющий партнёр в KTS. Недавно мы автоматизировали общение пользователей с поддержкой в банке ДОМ.РФ. Мы внедрили чат-бота на основе своего конструктора Smartbot Pro, и за время работы вместе с командой банка выстроили логику по обработк...

Мифы и легенды современного Python Мы в Evrone часто сталкиваемся с легендой, что для задачи, которая встает перед программистами, есть какой-то волшебный, лучший инструмент. К примеру, если вы хотите сделать что-нибудь бэкендовое, вам обязательно нужен PHP. А если вы хотите создать крутой современный фронтен...

Какая клавиатура на iPhone лучше Сторонние клавиатуры можно использовать на Айфонах очень давно. Эта возможность появилась еще в iOS 8. С тех пор большое количество разработчиков выпустили свои варианты клавиатур на любой вкус. Кто-то просто пытается дать нечто похожее на стандартную с набором дополнительн...

Launcher iOS 16 — новый хит. Эту оболочку для Android скачали более 50 млн пользователей Launcher iOS 16 — это оболочка для операционной системы Android, которую скачали уже более 50 млн пользователей в магазине Google Play. Это приложение не является полностью новым, так как его автор в течение последних трех лет воссоздает возможности разных версий ...

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

Блэкаут в США 2003: как два сервера обвалили энергосистему Крупнейший в истории США блэкаут, случившийся в 2003 году, это один из тех случаев, когда едва ли не ведущую роль в развитии аварии сыграли неисправности ПО. Хотя хватает там и того, что все мы любим в любых авариях: халатность, нарушение протоколов или их отсутствие, несогл...

Tabletop Simulator — редактор колод Я занимался созданием стола для карточной игры в Tabletop Simulator (TTS) и ощутил нехватку удобного инструмента для управления колодами. Из того что можно найти на youtube есть два способа: первый - это вручную в любом графическом редакторе сеткой расставлять карточки; втор...

Программа адаптации – как помочь новичку стать «своим» в команде Хабр, привет! Меня зовут Екатерина Герт, я ведущий аналитик и ресурсный менеджер одной из групп аналитиков в КРОК. В этих двух ролях я много работаю с новичками. Как аналитик на уровне проекта знакомлю новичка с проектной командой и спецификой предметной области, а как руков...

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

Зачем нужен Поиск на экране Айфона в iOS 16 и как его убрать Знаете, что общего между iOS 16 и iOS 15? Обе системы имеют мелкие изменения, которые заметит далеко не каждый пользователь. Безусловно, в операционке, которая выйдет для всех уже в сентябре, внимание привлекают, в первую очередь, нововведения экрана блокировки, но если при...

#1 Нейронные сети для начинающих. Решение задачи классификации Ирисов Фишера На хабре было множество публикаций по данной теме, но все они говорят о разных вещах. Решил собрать всё в одну кучку и рассказать людям. Это первая статья серии введения в нейронные сети, «Нейронные сети для начинающих». Здесь и далее мы постараемся разобраться с таким пон...

Data Science Pet Projects. FAQ Привет! Меня зовут Клоков Алексей, сегодня поговорим о пет-проектах по анализу данных. Идея написать эту статью родилась после многочисленных вопросов о личных проектах в сообществе Open Data Science (ODS). Это моя третья статья на Хабре, до этого делал разбор алгоритма SVM ...

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

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

Write Once Run Anywhere Вспоминается мем, где человек говорит: «JavaScript — это круто, на нем можно делать роботов и мобильные приложения», а потом его душит собака. Я себя представляю таким человеком, но надеюсь, меня никто не задушит, потому что я делаю на JavaScript вещи, которые в принципе не ...

Как мы приложение факультета писали Привет! Меня зовут Рома и это моя первая статья на Хабр. Я так давно хочу написать сюда, что в поисках наиболее подходящей темы успел разочароваться в ИТ, окончить бакалавриат физического факультета, вновь проникнуться программированием и закончить магистратуру по системной ...

Что такое клиринг, как он работает и реализован на примере платёжной системы «Мир» Покупки с помощью карты стали неотъемлемым атрибутом современной жизни. В прошлом году жители нашей страны совершили более 21 миллиарда операций банковскими картами. На примере работы клиринговой системы ПС «Мир» рассмотрим, что делается, чтобы справляться с регулярно возрас...

Программа удаленного доступа JumpStart для систем H13 на базе процессоров AMD EPYC™ Компания Supermicro, являющаяся поставщиком комплексных ИТ-решений для облачных вычислений, искусственного интеллекта/машинного обучения, хранения данных и технологий 5G/Edge, объявляет о начале реализации своей программы раннего удаленного доступа JumpStart — Supermicro H13...

Использование GitHub в обучении студентов. Автоматизация проверок. Часть I В конце декабря 2020 года я написал несколько статей на Хабре по своему опыту использования GitHub в обучении студентов (ссылки на них будут в конце сей статьи).Сегодня же хочу рассказать об автоматизации проверки кода студентов. Примеры будут про C#, т.к. это мой основной я...

Маркетинговое планирование по модели SOSTAC Всем привет, меня зовут Николай Шипачёв. С 2014 года я занимаюсь комплексным интернет-маркетингом. Моя миссия: помочь клиентам решать бизнес-задачи, максимально эффективно использовать рекламный бюджет и увеличить прибыль компании за счёт комплексного маркетингового подхода....

Как переехать из Slack в Mattermost — личный опыт Как переехать из Slack в Mattermost — личный опыт Приветствую, уважаемые читатели Хабра. Меня зовут Иван, я руковожу направлением омниканальных решений в Лиге Цифровой Экономики. На старте одного из проектов около шести лет назад мы с заказчиком решили, что будем вести все п...

UseStdLibVars: используйте переменные стандартных библиотек Go-разработчики часто пишут свои собственные переменные или константы, а затем используют их в коде, который обращается к стандартной библиотеке. Поэтому наш Go-разработчик Саша Мелентьев создал линтер usestdlibvars, который определяет, можно ли повт...

[Перевод] Обработка изображений с помощью библиотеки Python Pillow Данный туториал является переводом статьи, написанной Stephen Grupetta. Все изображения и коды скопированы без изменений. В конце вы найдете примечания относительно данной информации, а также ссылку на github с работающим кодом. Если код, приведенный автором не запускается, ...

Как структурировать проект на Golang: гайд от backend-разработчика Всем привет, меня зовут Авксентий, я backend-разработчик в inDriver. Думаю, каждый начинающий разработчик сталкивался с проблемой, как правильно выстроить архитектуру и структуру проекта. Ведь организация кода проекта — постоянно развивающаяся проблема, а следование стандарт...

Как достичь производительного рендеринга в браузере Один великий китайский философ сказал: «каждый разработчик должен понимать, как исполняется его программа». Что ж, давайте разбираться. Говорить будем про рендеринг и его производительность.Меня зовут Глеб Михеев, я CTO Skillbox Holding, а также руководитель программного ком...

В сеть утекла ранняя версия обоев Bloom из Windows 11 Пользователь Windows Aesthetics в своём Twitter (запрещён в РФ) поделился ранними прототипами обоев Bloom из Windows 11, которые значительно отличаются от финального варианта. Это не удивительно, так как подобные продукты всегда проходят через несколько итераций и постепенн...

Типизация для Kafka-топиков в Юле Мы делаем Юлу уже 7 лет, из небольшого проекта она превратилась в сервис объявлений с аудиторией в 33 млн пользователей. За это время в Юле появилось значительное количество функций и настроек, реализованных в разных компонентах. Одна из трудностей, встающих перед разработчи...

Сравнение Snapdragon или Dimensity: какой процессор для смартфона лучше Процессор – основа любого смартфона. И то, на какой платформе вы выберите устройство, будет напрямую влиять на его производительность, качество съемки фото и видео, а также на автономность. До 2020 года в сравнении Qualcomm и MediaTek был явный лидер в лице американской ком...

[Перевод] REST API на основе Snake (Python, Mamba, Hydra и Fast API) Сегодня я хочу попробовать что-то новое и начну исследовать мир Python. В этой статье представлен пошаговый туториал по реализации простого REST API при помощи Python, Fast API, Hydra и Mamba. Более того, я вкратце опишу, как упаковать всех этих змей в один образ Docker и з...

[Перевод] Управление данными с помощью CI/CD Я вспоминаю свой первый день разработчиком-джуном, он свеж в моей памяти, как будто это было вчера. Я ужасно нервничал и понятия не имел, что делаю. Наверно, мой стресс был заметен, потому что одна добрая душа решила взять меня под свою защиту. В тот день я научился писать ...

[Перевод] Подтесты в Python Недавно я сделал опрометчивый твит, в котором намекнул на то, что у меня имеется глубоко продуманное мнение по одному важному вопросу. Я написал, что пакет pytest-subtests достоин того, чтобы им пользовалось бы больше программистов. Я даже дошёл до того, что, говор...

Популярная программа для майнинга биткойнов обновилась впервые за 10 лет. Подробности о Stratum V2 Как сообщает CNBC, программа для майнинга биткойнов Stratum получила значительное обновление впервые с 2012 года, из-за чего программное обеспечение было переименовано в Stratum V2. Это обновление может помочь открыть добычу биткойнов для большего числа участников, подд...

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

Summarization is all you need Привет! Меня зовут Станислав, я — дата-сайентист из команды Поиска в hh.ru. У нас в компании дата-сайентисты занимаются главным образом работой над рекомендательными системами. Если у вас есть резюме на hh.ru, то скорее всего вы хотя бы раз просматривали список подходящих ва...

Как работает Autoplay в онлайн-кинотеатре Привет! Меня зовут Алексей Мельников, я продакт в KION (онлайн-кинотеатр от МТС Digital), занимаюсь фичами, связанными с искусственным интеллектом. Весной мы писали о фиче пропуска титров. Судя по карме, статья хабровчанам понравилась и это мотивировало нас на написание...

Как отвечать в WhatsApp с Apple Watch Если вы не знали, то наши статьи помогают читателям определиться с выбором того или иного гаджета. Мы разбираем не только iPhone, AirPods и MacBook, но и Apple Watch. Авторов AppleInsider.ru ценят и благодарят за помощь в выборе гаджета даже после ухода из редакции! На днях...

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

Шутер Vortex 9 весит всего 100 Мб и предлагает отличный геймплей Мобильная игра Vortex 9 появилась в Google Play. Она настолько хороша, что Supercell надо взять её идеи на заметку. Vortex 9 — шутер на Андроид; к сожалению, информации о версии на iOS нет. Он весит всего 100 Мб, при этом предлагает много возможностей для оффлайн-схваток. ...

Что учесть в разработке супераппа. Рассказываем на примере приложения «Мой Beeline» Привет, меня зовут Санжар, я iOS-техлид в Beeline Казахстан. В iOS-разработке 6+ лет, сейчас занимаюсь развитием мобильного приложения «Мой Beeline». В статье поделюсь опытом становления супераппа «Мой Beeline». Это один из наших флагманских продуктов, мы уделяем ему мн...

Как оценивать свою работу на фрилансе Это глава из «Книги нормального фрилансера», в которой я делюсь опытом успешного проектировщика интерфейсов, работающего на себя.Нужно брать с клиента столько, чтобы он не отвалился.Где потом найдёшь другого? Лучше зря не рисковать!Совершай скорее сделку, не продумывай детал...

Черно-белый экран на телефоне Android: как включить и как выключить Производители смартфонов соревнуются в том, чей экран поддерживает больше цветов. Кто-то заявляет 6 миллионов оттенков, а кто-то — более миллиарда. А что, если экран в одночасье станет черно-белым? У многих людей это вызовет раздражение, ведь мы любим наблюдать за окружающи...

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

Онлайн-сервер для NFS Underground 2 своими руками. Часть 1 Привет, Хабр! Спустя 13 лет я решил рассказать как однажды начал писать dedicated-сервер для игры NFS Underground 2, как решил возродить функционал оригинального онлайн-сервера, закрытого ещё в 2007 году, и как получилось, что это всё ещё WIP, несмотря на килотонны написанно...

Как настроить Charles Приложение Charles Proxy - большой помощник и тестировщику, и разработчику. Мы хотим рассказать вам про функции «Чарльза», показать, как им пользуемся в своей работе. Но для начала поможем разобраться с приложением и правильно его настроить. Читать далее

В Минцифры хотят знать, какие VPN и для чего используют в «Роскосмосе», «Ростехе» и банках В Минцифры направили письма российским госкорпорациям, банкам и другим структурам с требованием сообщить, какие VPN-сервисы они используют или планируют использовать, зачем и в каких регионах. Также, по данным источника, нужно указать тип используемого сервиса, его наз...

Как создать игру в 2022. Моя история создания игр Привет. Меня зовут Саня и мне 14 лет, я учусь в 9 классе в Москве. В этой статье я расскажу, как создал свою игру и поделюсь своим опытом в разработке. А также расскажу, как создать игру новичку в 2022 году. Читать далее

SKR2 cжигает драйверы TMC2208/TMC2209 Эта проблема известна уже давно, но я о ней не знал. Расскажу вам свою историю, как я другу помог сжечь все драйверы TMC2209.Началось с того, что друг решил на своём стареньком 3д принтере поменять драйверы на более тихие, прочитал статьи в Интернете и выбрал самые классные ...

Самое подробное руководство по установке высокодоступного (почти ಠ ͜ʖ ಠ ) Kubernetes-кластера В предыдущей статье я рассказывал, как построить простой кластер Kubernetes с одним мастер-узлом. Прошло время, опали листья... и мне захотелось большего, поэтому решил позариться на высокодоступные кластеры. В интернете много статей о том, как построить подобное решение, и ...

Как мы в Brand Analytics разработали Детектор сбоев и как вы можете помочь его улучшить Привет, Хабр! Мы тут решили выйти из тени, на этот раз по-настоящему, технически, без маркетинговых текстов. А раз без маркетинга, то почитать про сам Brand Analytics можно на сайте или очень кратко под катом.Меня зовут Островский Григорий, я CTO Brand Analytics. Сегодня рас...

[Перевод] Пишем обёртку для API Токийской фондовой биржи на Golang Целевым REST API будет jquants-api, описанный в предыдущей статье. Я решил реализовать обёртку на Golang, что оказалось чрезвычайно быстро и удобно. В итоге я выполнил эту задачу за один вечер, а получившуюся Golang-обёртку с базовыми функциями загрузил на GitHub. В этой ...

Google надоело "упрашивать" Apple: компания сделает общение между платформами более раздражающим Вместо постоянных “упрашиваний” создателей iPhone ввести на устройствах протокол RCS, Google решила дать Apple “собственное лекарство”. Теперь, когда пользователи Android отреагируют на сообщение, отправленное с iOS с помощью эмодзи, пользователи iPhone получат раскрытое опи...

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

Принципы юнит-тестирования. Часть вторая Привет! А вот и вторая часть поста про принципы юнит-тестирования. Если в первой мы обсудили влияние тестов на разрабатываемые продукты и познакомились с теорией юнит-тестирования, то в этой обсудим некоторые практические моменты. Внутри поста — структура юнит-тестов, стили ...

Как дизайнеры тестируют, или Что такое дизайн-ревью Привет! Меня зовут Ксюша, я старший продуктовый дизайнер в Ozon: проектирую разделы возвратов для личных кабинетов покупателя (Ozon.ru) и продавца (Seller Center) и немного — админки. Дизайнеры на Хабре не частые гости, но статья будет полезна не только дизайнерам и дизайн-л...

Хаброконтент. С этим нужно что-то делать? Триггером для написания этой небольшой статьи послужил сегодняшний материал в разделе новостей «В Москве и Санкт-Петербурге откроют магазины беспошлинной торговли для дипломатов». Что интересно, его автором является пользователь @Travis_Macrifс учетной записью, имеющей отмет...

Алгоритмы для веб-разработчиков простыми словами Здравствуйте, друзья! Данным постом мы открываем цикл статей об алгоритмах и структурах данных.В этой статье мы поговорим о том, зачем вообще их нужно знать веб-разработчикам, и затронем тему оценки сложности алгоритмов и Big O нотации.Зачем мне алгоритмы? Я фронтендер!Вы на...

Почему iPhone переключается с LTE на 3G и что с этим делать Использование Интернета в Айфоне — важнейшая функция, без которой смартфон фактически становится бесполезным. В качестве экономии данных пользователи всегда могут выбрать, какую технологию передачи данных использовать — LTE, 3G или EDGE, известную как просто ...

Apple выпустила iOS 16.1 beta 5. Что нового и как обновиться, если вы не разработчик Сегодня, 11 октября, Apple выпустила пятую бета-версию iOS 16.1. Компания стабильно выпускает апдейты для разработчиков, а это значит что работа над iOS 16.1 ведется довольно кропотливая. Кроме того, вышла очередная бета-версия iPadOS 16.1, которая и вовсе станет релизной. ...

Как я делаю опенсорсную статусную панель «я занят» Прототип моего проекта светодиодной таблички, которая показывает что я занят — Busy StatusBar Мне надоело, что на работе меня постоянно отвлекают, сбивая фокус с задачи, так что техника помидора становится бесполезна. Я не нашел удобных способов быстро сообщить всем вокруг...

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

Путь стартапа. От идеи до рабочего бизнеса. 18 шагов опыта Привет, меня зовут Максим Кульгин. Написал из нашего опыта, как с минимальными вложениями (насчитал прямых затрат на 95 500 руб.) можно сделать ИТ-бизнес в России. В этой статье вы не найдете такие термины, как: 'выгорание', 'питч', 'custdev', 'ментор', 'product ma...

5 шагов до крупного заказчика: что сделать SaaS-приложению, чтобы начать работать с enterprise Привет, Хабр! Меня зовут Андрей, в Selectel я руковожу отделом продуктов клиентской безопасности. Мы предоставляем и развиваем защищенную IT-инфраструктуру, помогаем клиентам хранить данные в соответствии с лучшими практиками и стандартами. Мы видим, что число компаний, ра...

Лучшие 4G-модемы для дачи: выбор ZOOM За городом часто приходится пользоваться мобильным интернетом, и если смартфон и планшет поймают сеть сами, то для ноутбука и телевизора уже потребуется 4G-модем. Причем сегодня многие модели даже умеют раздавать Wi-Fi. Редакция ZOOM.CNews выбрала лучшие 4G-модемы с подключе...

Веб-сокеты в Django Channels. Сделаем простой чат Фреймворк Django представляет разработчику исчерпывающий набор функций для работы с базами данных, инъекцией зависимостей, обработке шаблонов и многим другим через механизм дополнений. Часто Django используется как решение для разработки динамического содержания сайтов, но т...

Все люди — НПС в компьютерной игре? Упомянув, несколько лет назад, в опубликованной на Хабре юмористической статье «12 способов» о том, что значительная часть населения Земли является НПС (от англ. Non-Player Character) я не собирался возвращаться к этой теме. Но идея оказалась прилипчивой — раз возникнув, она...

Apple просто издевается над нами, или Почему я не куплю Apple Watch Series 8 На презентации 7 сентября Apple показала нам сразу три модели часов. Это Apple Watch SE, Apple Watch Series 8 и Apple Watch Ultra. Модель Ультра — самая дорогая и самая прокачанная по своим возможностям. Мало того, что она имеет защищенный корпус, так еще и самый боль...

(Микро)фронтенды и микросервисы с помощью Webpack Привет! Меня зовут Максим, я фронтенд-разработчик компании Тинькофф, лид команды фронтендов, которые пилят международные проекты. Я работал как фронтом, так и бэкером — это дало мне релевантный опыт и в микрофронтендах в том числе.Статья будет о фронтендах, но сначала предла...

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

[Перевод] «Это просто мой стиль кода» Стиль кода. Я слышал эти слова, эту глупость в сотне разнообразных вариантов:«Это просто мой стиль программирования».«Все пишут код по-разному».«Так я лучше всего понимаю код».И так далее, и тому подобное...Честно говоря, меня бесит, когда я слышу, что разработчик использует...

Как айтишники делали настолки: творчество и экономика Однажды я (HR) и супруг (тогда еще программист) решили сделать настолку, чтобы играть в неё со своей дочерью. Начали с пазла-комикса «Иди в IT». За 4 года мы сделали 8 игр о современных профессиях: IT, энергетика, торговая сеть и еще несколько. Набили много шишек, но получил...

GUI Генератор паролей на Python Штош. В этой статье я научу вас делать кроссплатформенное приложение генератор паролей с графическим интерфейсом. Мы будем использовать язык Python и библиотеку PySide6 - привязку к инструментарию фреймворка Qt.Приложение умеет генерировать пароли, скрывать и копировать их в...

[Перевод] Перестаньте использовать SQLite в Unit-тестах TLDR; Использование Sqlite в Laravel (или любых других PHP приложениях) для Unit-тестирования может привести к false positive результатам тестов. Тот код который пройдет тесты, не заработает после переезда в production и использования других БД, например, MySQL. Вместо этого...

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

Роль аналитика в проекте по распилу монолита Привет! Меня зовут Виктория Кабыткина, я работаю старшим системным аналитиком в компании Lamoda. По своему опыту как в банковской сфере, так и в сфере e-commerce, могу заметить, что во многих компаниях существует тенденция избавляться от монолита и переходить на микросервисн...

[Перевод] Почему у разработчиков так много сайд-проектов — и это хорошо За последние два года я создал и запустил восемь небольших онлайн-проектов — от приложений до сайтов. Большинство из них провалились, но в целом мой разношерстный портфель проектов можно назвать прибыльным — на хлеб хватает. Мое последнее начинание, Paper Website, дает ...

Пишем собственный ColorWheel на основе представления (View) в Android Эта статья рассказывает о моём опыте создания пользовательских представлений под Android. Со временем это всё переросло в целую библиотеку.Как-то одним вечером мне в голову забралась идея о создании собственного настраиваемого View компонента для выбора цвета в обёртке уже г...

Неподатливые soft-skills: почему нам всё ещё нужен эмоциональный интеллект Привет, Хабр. Меня зовут София, я – разработчик, а ещё я любопытная и люблю наблюдать. А наблюдаю я сложность и диалектичность. Я люблю находить закономерности и совпадения, устанавливать причинно-следственные связи. Непредсказуемость и многозначность меня одновременно ...

Цветные функции: ищем плохие архитектурные паттерны Когда у языка нет цветовой дифференциации функций… то у языка нет цели?Я уже много лет занимаюсь компиляторами и языками в целом. Хочу поделиться интересной мыслью, которая когда-то пришла мне в голову. Почему-то такого я нигде не видел.Если немного расширить понятие функции...

Характеристики Samsung 990 PRO слили в сеть SSD-накопители Samsung 990 PRO нового поколения с протоколом PCIe Gen 5.0 M.2 еще раз подтверждены, на этот раз изданием PCI-SIG. Твердотельные накопители Samsung 990 PRO Gen 5 M.2 также были отмечены в корейском списке сертификации RRA ранее в этом месяце. В данной публикац...

Экспорт метрик в Prometheus из логов PostgreSQL с помощью Vector В этой статье я хочу рассказать о не совсем обычном использовании логов — о получении из лог-файлов метрик для Prometheus. Это может быть полезно, когда существующие экспортеры не предоставляют нужные метрики, а писать свой экспортер не хочется или очень затратно. Читать дал...

Луковичная архитектура в компоновке backend-приложения и куда в итоге класть маперы Как скомпоновать приложение? Какие в нём должны быть слои? Как назвать пакеты? Где расположить DTO, маперы, реализации интерфейсов? И нужны ли вообще интерфейсы? Когда новичок попадает в свою первую компанию, очень часто на эти вопросы у него нет однозначного ответа. Он смот...

Как разговорить айтишника: превращаем инженера в спикера Доброго времени суток, друзья. Меня зовут Константин Архипов, руководитель проектов в команде DocFlow МТС Digital, преподаватель IT-центра МАИ, амбассадор конкурса «Цифровой прорыв» АНО «Россия – страна возможностей». В этой статье я расскажу о том, как научить специалистов ...

От геймдизайнера до СЕО за 10 лет, уход в инди и запуск курсов Рад познакомиться, меня зовут Эдуард Кумыков и в этой статье я хочу поделиться с вами опытом, который я получил пройдя нелегкий путь от простого геймдизайнера до СЕО игровой студии и по итогу решил уйти в независимость.За десять лет работы в компаниях я руководил командами и...

Как я сделал полноценный проект из ничего от одной Bitcoin платёжки на Python В этой статье хочу рассказать, как можно из обычных вещей сделать нечто большее и новое используя python, qt и bitcoin библиотеки. Читать далее

Как настроить удобную синхронизацию между Notion и календарем через ICS на JS без сервера Реализация автоматического импорта событий из календаря Notion в свой Google Calendar. Также, под катом, ссылка на npm пакет, упрощающий данную процедуру и пример запуска данного решения без аренды своего сервера. Читать далее

Атака Базарова. Evil Twin поверх динамической маршрутизации Для подписчиковАтаки на домены динамической маршрутизации могут устроить настоящий хаос в сети, так как нарушают сам процесс маршрутизации. В этой статье я поделюсь своей модификацией атаки Evil Twin для перехвата данных в сетях на основе протокола OSPF. Также продемонстриру...

Как слушать Spotify в России бесплатно после санкций. Гарантированно рабочий способ Несмотря на то что Spotify официально зашёл на российский рынок только в 2020 году после множества сложностей и перипетий, уже в самом начале 2022-го сервис был вынужден покинуть его. Мы не будем рассуждать о правильности этого поступка и его возможного влияния на бизнес ко...

Model serving в Kubernetes: сравнение инструментов Доброго времени суток, дорогой читатель!Последние несколько лет в решении бизнес задач прогрессирует тренд использования Искусственного Интеллекта. Перед специалистами, отвечающими за инфраструктуру встают вопросы о том, какие решения они могут предложить ML-специалистам для...

Как мы удерживали нагрузку десятков тысяч подключений для Warface Всем привет, меня зовут Алексей Капустин, я старший программист в Allods Team. В этой статье я расскажу о серверной архитектуре Warface — как она устроена изнутри, как мы пришли к кроссплатформенному мультиплееру, про метагейм, масштабирование и многое другое. Читать далее

Мониторинг дисковых квот с помощью Zabbix Если постоянно не контролировать свободное пространство на дисках сервера, то рано или поздно диски переполнятся. В результате перестанут работать сервисы, и даже может получиться так, что вы не сможете подключиться к консоли сервера через SSH.В этой статье мы расскажем про ...

Переезд в США от визы О-1 до гринкарты: стоимость эмиграции, сроки, ошибки и советы Пять лет назад, в июле 2017 я впервые рассказал на Хабре свою историю переезда в США по визе для талантливых специалистов. В июле уже этого года эта история, наконец, завершилась получением гринкарты. Поскольку первая статья вызвала достаточно большой интерес, было много воп...

От кода «на коленке» к эффективному CI/CD: строим общий Pipeline as Code командой в 100+ человек Много команд, много продуктов, каждый автоматизирует релизный цикл, у каждого свой набор скриптов. Дублирование, отсутствие обмена практиками и повторное изобретение колеса приводит к тому, что команды тратят много времени на построение своего CI/CD. И все это поддерживает м...

Go, я создал: пишем тесты на Allure-Go Привет, Хабр!Вы можете помнить меня по предыдущей статье про Allure-Go, в которой мы коснулись самой макушечки нашей скромной наработки. Сегодня же мы накидаем пару тестов с нуля, разберём подробно примеры и посмотрим, чего же нам удалось в итоге добиться.Много коммитов утек...

Создание системы документирования, или как мы от «ворда» к docs as code за месяц переходили Привет, Хабр! Меня зовут Юрий Никулин, и я руководитель направления документирования Cloud. Сегодня расскажу, как мы перешли с документирования в Word на подход docs as code и почему в качестве языка разметки выбрали reStructuredText. Читать далее

Как не надо участвовать в хакатонах для системных аналитиков. Рефлексия после победы Раньше аналитиков звали разве что на хакатоны в составе команд. Но относительно недавно — наконец-то — стали появляться специализированные контесты и хакатоны для системных аналитиков. С 2021 года я ввязывалась в целых три: в первом заняла третье место, во втором седьмое, а ...

Чтение в фокусе: 5 золотых правил, которые мне помогли Книга — предмет настолько универсальный и всеобъемлющий, что у каждого найдётся свой уникальный и самобытный способ с ней взаимодействовать. Такие способы, правила и методы есть и у меня. С годами они накапливались и менялись, в результате все они сложились в своеобразную си...

7 причин не становиться тимлидом Как становятся тимлидами? Типичный путь в этот омут — “эволюционный”. Ты успешно выполнил кучу экспидайт-эпик-мамонтов, принёс в своё разработческое племя благодатный огонь метрик и мониторинга, показал, что тесты — это хорошо... И вот тебя уже назначают тимлидом — просто по...

МТС добавил «Строки» в МТС Premium Подписчики МТС Premium смогут выбирать и читать книги из библиотеки «Строк», слушать авторские и детские подкасты и получать новые знания в библиотеке «Строк» бесплатно до 10 часов в месяц.

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

Умные счётчики Великобритании Есть у Великобритании интересная мечта: сделать так, чтобы к середине 2025 года все счётчики электроэнергии и газа в стране были «умными». В принципе, весь их «ум» заключается в возможности передавать данные провайдеру (здесь их можно свободно менять в поисках лучшего тарифа...

Кем работать в IT в 2022: Backend-разработчик Рубрика «Кем работать в IT» — интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажерам она поможет больше узнать о том, что их ожидает на кар...

Meta* Quest 2 как фитнес-девайс. Мой опыт Судя по статьям на тему физо и обсуждениям под ними, далеко не все хабровчане любят упражняться (а кто-то вообще с детства ненавидит любые околоспортивные активности). А они нужны.Не буду писать почему, ибо тут достаточно статей на эту тему. Про влияние физнагрузок на когнит...

Использование Python в SQL Server Machine Learning Services В продолжение статей Приключения при настройке сервисов машинного обучения в MS SQL Server 2019 и Используем R lang в SQL Server разбираемся как работать с Python в сервисам машинного обучения. С Python ситуация несколько лучше, чем с R, так как достаточно много предустанов...

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

Что Java-разработчикам расскажут на Joker 2022 Какой способ бенчмаркать появился в 2022-м? Как эволюционировала вариантность типов от первых версий Java и до Kotlin? Как хранить JSON в базе данных, не привлекая внимания DBA?В программе конференции Joker нашлось место и этим вопросам, и многим другим. Сейчас в эту програм...

Откуда возникает TransactionTooLargeException, если я ничего такого не делал? Android-разработчиков часто спрашивают на технических собеседованиях, как запускать фрагменты, как передавать туда данные, почему нельзя класть много в аргументы, а много — это сколько, а что может пойти не так и т.д. Мы в Dodo тоже иногда такие вопросы задаём. Я думал, что ...

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

Чувак, где моя черепаха? Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом ко...

Как обезличить персональные данные Для ML-моделей не нужны (и даже вредны) персональные данные. Но пригодятся данные, которые описывают не отдельных людей, а их группы, то есть обезличенные. Как их получить и как с ними работать? Как убедиться, что права того, чьи данные были взяты за основу, не нарушены? И г...

Как включить переработанное диалоговое окно «Сбросить этот компьютер» в сборке Windows 11 Build 25231 Несмотря на то, что Microsoft удалила ползунок громкости в стиле Windows 8 из Windows 11, последняя по-прежнему полна пережитков предыдущих версий Windows. Приложение «Настройки», например, несмотря на новый пользовательский интерфейс с красивыми анимациями, содержит множест...

iPhone 14 Pro Max с 6 ГБ ОЗУ обходит топовые Android-флагманы по скорости работы Сколько себя помню, пользователи iOS и Android постоянно спорили, чья платформа лучше. Но, сколько бы они ни спорили, родить истину ни у тех, ни у других так и не получалось. Одни напирали на оптимизацию и плавность своей операционной системы, а другие уверяли, что определя...

«Если кто-то и может это сделать, то только они», — орбитальный запуск Starship и выпуск Tesla FSD состоится в этом году Генеральный директор SpaceX и Tesla Илон Маск на своей страничке в социальной сети Twitter назвал две главные целы, которые он установил для себя и своих компаний на этот год. Во-первых, он намерен осуществить первый орбитальный запуск гигантской ракеты Starship. А во-в...

Разработчики Brown Dust 2 показали второй геймплейный трейлер Brown Dust 2 — мобильная jRPG, которая получит глобальную версию в 2023 году. Также издание MMO Culture сообщило о появлении нового трейлера, где раскрываются главные герои данной части. Как и стоило ожидать, они будут собираться в группу и исследовать вместе всевозможные ло...

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

Как создать компанию за 7 дней и не сойти с ума Привет! Меня зовут Кристина Дмитриевых, я отвечаю за внешний PR и взаимодействие со СМИ в компании ITentika. Хочу поделиться нашей историей, рассказать и показать практически смертельный номер на собственном примере — как сохранить часть бизнеса компании, которая решила поки...

[Перевод] Устранение утечек памяти с помощью профилирования Если система работает длительное время, объём свободной памяти может уменьшаться, что может приводить к отказу некоторых сервисов. Это типичная проблема утечки памяти, которую обычно сложно спрогнозировать и выявить. Удобными инструментами для решения подобных проблем являю...

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

Как определять пользовательские намерения, о которых мы узнали 5 минут назад Привет! Меня зовут Даниил Цимерман, я R&D-инженер в NLP-отделе Тинькофф. Недавно я выступил на конференции DUMP и рассказал, как мы решали задачу определения интентов пользователей в чате в условиях быстро меняющихся запросов. Доклад можно посмотреть на Ютубе, а эта стат...

В России растёт популярность услуг по переносу и установке удаленных из App Store приложений На площадке «Авито» в последнее время появилось много объявлений от частных лиц и компаний, в которых предлагается установка или перенос приложений, удалённых из App Store. Это касается в первую очередь банковских программ, сообщает «Коммерсантъ»...

Приёмы высокоуровневой векторизации на примере Card Raytracer Хочу рассказать о том, как занимался оптимизацией card raytracer - минимального рейтрейсера, код которого умещается на визитке.Точнее, это развёрнутая для лучшей читабельности версия, которая в форумной ветке использовалась как тест скорости разных языков.Когда я наткнулся н...

“И все это из-за потеряшек!” или как ЦОД КРОК заинтересовался в нейронных сетях Привет, Хабр! Меня зовут Денис, и я занимаюсь интеграциями систем ЦОД и учетом оборудования клиентов. Сегодня я хочу рассказать, как мы автоматизировали выдачу пропусков в наши ЦОДы с помощью нейронных сетей. Расскажу немного о самой системе, из чего она состоит и как работа...

Кем работать в IT в 2022: Python-разработчик Рубрика «Кем работать в IT» — интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажерам она поможет больше узнать о том, что их ожидает на кар...

Как оформить ПМЖ в Парагвае самостоятельно, пошаговая инструкция ✅ Какие документы нужно для подачи в Миграсьон Парагвая?✅ Где собрать эти документы?✅ Зачем нужная российскому гражданину туристическая виза в Парагвай?✅ Где и как получить туристическую визу в Парагвай?✅ Пошаговое руководство по подаче документов в Мигрисьон Парагвая?✅ Сайт...

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

[Перевод] Вам нужен чистый код? Используйте правило шести Все хотят писать чистый код. Этому посвящены целые книги. Но вам не нужно читать книги, чтобы начать писать более чистый код прямо сейчас. Есть одна «хитрость», которой может научиться любой кодер, она делает код гораздо менее запутанным. Решение таково: Каждая строка де...

«Гигиенический минимум» в работе тимлида Привет, я Илья — Frontend Team Lead в Альфа-Банк. Отвечаю не только за команду, но также веду и техчасть. Как тимлид я часто задаюсь вопросом «В чем моя роль?», «Как измерить эффективность моей работы?» и «Какой профит от лидов для проекта в целом?»Для себя я вывел опре...

Цифровой баланс: часть 1 – Браузер и расширения Начинаю серию статей про то, как жить осознанно в нашем цифровом мире с потоками информации, бесконечным количеством экранов и уловками сервисов, которые хотят ваше привлечь к себе все ваше внимание. В этих статьях я сделаю обзор инструментария и техник, которые нашел и испо...

React hooks, как не выстрелить себе в ноги. Разбираемся с замыканиями. Совместное использование хуков По отдельности хуки могут быть относительно понятны, но у многих возникают вопросы, как их использовать вместе. Особенно часто возникают подобные вопросы при переходе от классовых компонентов к функциональным. В этой статье мы разберем несколько случаев:Как работать с запрос...

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

Как мы в Fix Price внедряли систему Keycloak Привет, Хабр! Сегодня расскажу о том, как мы в Fix Price закрыли проблему организации единой авторизации и аутентификации для наших сервисов с помощью Keycloak. Хотелось бы, чтобы эта статья оказалась полезной для всех, кто планирует внедрять это решение.Начнем с общих момен...

Привлекаем внимание технологов (и не только «Норникеля»)! Визуализация ML-модели на «архивных» данных Идет очередной этап работы датасаентиста… обучена ML-модель, которая снизит издержки, повысит эффективность, сделает жизнь лучше, ничего не изменит, зато звучит модно. И вот настало время презентовать результаты ее работы. Если вы, как и я, работаете в промышленности, т...

Steam Deck — тетрис «на стероидах» Несколько месяцев назад к нам в офис приехал Steam Deck. Мы его заказывали еще в прошлом году, в первую очередь — чтобы протестировать на нем наш флагман War Robots, который доступен в библиотеке Steam. Но, конечно, интерес к девайсу не ограничивался только этим, и хотелось ...

Где искать баги фаззингом и откуда вообще появился этот метод Подход фаззинг-тестирования родился еще в 80-х годах прошлого века. В некоторых языках он используется давно и плодотворно — соответственно, уже успел занять свою нишу. Сторонние фаззеры для Go были доступны и ранее, но в Go 1.18 появился стандартный. Мы в «Лаборатории Каспе...

«Купите маме iPhone». Глава Apple дал понять, что компания не собирается внедрять поддержку RCS в iOS Компания Google уже не раз заявляла, что Apple тормозит развитие функции отправки сообщений в смартфонах, так как не хочет переходить на протокол RCS. Из-за этого обмен сообщениями между устройствами с iOS и Android имеет ограничения. И Apple явно не собирается ничего м...

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

Памятка для UX-дизайнера на все случаи жизни: как взяться за задачу и довести ее до конца Всем привет, меня зовут Александр Никитин, я дизайнер интерфейсов в Pixonic. За время работы я вывел для себя несколько общих советов, которые могут пригодиться другим UI/UX-дизайнерам. В этой статье я расскажу, как берусь за задачу, на какие этапы делю свой рабочий процесс ...

Кем работать в IT в 2022: 1С-разработчик Рубрика «Кем работать в IT» — интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажерам эта рубрика поможет больше узнать о том, что их ожидае...

iPhone пишет: этот Apple ID еще не использовался в iTunes Store. Что делать iPhone во многом считается одним из лучших смартфонов именно за счет приложений. Модераторы App Store отсеивают неподходящие программы и те, что угрожают безопасности пользователей. Однако при использовании магазина приложений нужна учетная запись Apple ID: иногда она по не...

Призрак AGI. Записки читателя Хабра Поводом для статьи послужила публикация К AGI через самоорганизацию и структурную адаптацию / Хабр (habr.com), в которой автор замахнулся на святое и заявил, что нейросети - это тупик. Я попытаюсь поддакнуть коллеге в том смысле чтобы определить где тупик и почему тупик. Чит...

Security Week 2248: недобровольная геолокация устройств WiFi Можно ли определить координаты устройства с работающим WiFi, пользуясь исключительно штатными особенностями беспроводного стандарта? И если можно, что потом делать с этой полезной информацией? Ответы на оба вопроса попробовали дать исследователи из университетов США и Канады...

[Перевод] Как создать Star Rating виджет на React.js и оптимизировать его В этой статье я хочу затронуть еще одну задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Star Rating виджета.За последние пять месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других компаний.Вы ...

Повышаем качество сервисов и делаем пользователей счастливыми: как работают в команде QA ВКонтакте Привет, Хабр! Сегодня годовщина создания команды QA одного из самых нагруженных проектов VK — социальной сети ВКонтакте. Для нас это стало хорошим поводом поговорить о буднях тестировщиков. Сегодня о главных задачах команды, ее традициях и жизни вне работы расскажут три...

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

Яндекс практикум, отзыв мазохиста. Курс Аналитик данных В качестве прелюдии: мазохизм - получение удовольствия человеком от унижений, мучений или насилия над собой, производимых самим собой или другим лицом. В 2021 году имел «удовольствие» попасть на курсы от Яндекс Практикума, по гос программе от Цифровых Профессий. Теперь спус...

Управление доступом к операционным системам на серверах. Как и какие проблемы решает RBAC Всем привет! Про принципы работы Role Based Access Control (он же RBAC) слышали многие. Но реальное применение встречается довольно редко. Меня зовут Корняков Дмитрий, более 6 лет занимаюсь поддержкой инфраструктуры в команде Мир Plat.Form (НСПК). В статье расскажу про предп...