Социальные сети Рунета
Вторник, 23 апреля 2024

Динамичный экран с быстрыми обновлениями: разбираем плюсы и минусы Server driven view на примерах Всем привет, я Дима Авдеев, работаю в Туту и хочу рассказать про один из подходов, благодаря которому мы можем быстро добавлять в приложение важный для пользователей контент и обновлять его, не проходя повторные ревью в сторах. Например, если хотим быстро доносить до людей н...

[recovery mode] Gitlab CI «Smart» Pipeline: родители и дети За более 3х летний срок существования продукта у нас собралось более чем 20 репозиториев со spark проектами. Процесс CICD был реализован на Jenkins. С определенного момента у GitLab CI появилась возможность создавать собственные CICD. Но долгое время я совершенно не восп...

Знакомство с p-адическими числами. Часть 1 Изображение с сайта Mathematical Art Galleries В этой серии из двух статей я приглашаю вас заглянуть в один любопытный и не самый популярный уголок математики, в котором обитают необычные создания — p-адические числа, а попутно хочу рассказать о написанной мной Haskell-библ...

Перевод аудио-сообщений в текст в telegram при помощи Wit Я абсолютно уверен что скоро в telegram - перевод аудио-сообщений в текст будет функцией по-умолчанию, ну а пока хотел бы показать простенький пример как реализовать такой функционал в telegram-боте (которых уже сотни, но почему бы не посмотреть как это работает на примере)....

Погружаемся в работу со скроллом в Jetpack Compose В этой статье я хочу поделиться опытом работы со скроллом в приложении, написанном на Jetpack Compose.Какое-то время назад я решил, что надо попробовать Compose в деле и начал делать pet project приложение Хотелки, суть которого в записи своих желаний и возможности делиться ...

Альтернатива MapReduce при поиске в распределенной БД Привет, меня зовут Сатбек, я работаю в команде Tarantool. Расскажу, как реализовать в шардированном кластере поиск, скорость которого не зависит от количества мастеров и объёма хранимых данных. Условно назову этот способ индексным слоем:- Опишу общую схему построения по...

Танцы без бубнов или как я реализовал автомат на ПЛИС Всем привет, дорогие хабровчане! Сегодня я хочу поделиться своей «больной» идеей реализовать калькулятор на ПЛИС на основе конечного автомата. Почему больной? Потому что уж очень мудрёно получается: всё-таки реализация автоматов на ПЛИС – дорогая практика в смысле ресурсов. ...

Custom view на Compose В июле Google выпустил стабильную версию Compose. Это вызвало большой интерес в сообществе. Все вокруг стали поговаривать, что эта технология захватит Android-разработку, и скоро все будут писать на Compose.Я принялся за изучение, заглянул на developer.android.com и нашел ра...

Модуль ACME-клиента для Tarantool Ссылка на GitHub. Подробнее о работе алгоритма и модуля можно посмотреть здесь.Клиент ACME-протокола используется для автоматического получения сертификата безопасности для вашего сайта. Для бесплатного получения сертификата и автоматического его продления в основном все исп...

Как в Hazelcast добавляли распределенный SQL Чтобы разработать свой распределенный SQL-движок, можно написать свой SQL-оптимизатор для построения движков. Вам придется сделать парсер, семантический анализатор и придумать правила трансформации и оптимизации. Всё протестировать, а потом как-то интегрировать в свою систем...

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

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

Фантастические формулы и как они работают В прошлой статье я рассказывал о том, как мы реализовали на основе Google Sheets собственную диаграмму Ганта для работы над игровыми проектами. Если вам зашла такая реализация или просто интересно глубже понять принципы устройства таблиц и формул, сейчас мы будем разбирать и...

[Перевод] Знакомство с трансформерами. Часть 1 Трансформеры (transformers) — это очень интересное семейство архитектур машинного обучения. Существует много хороших учебных материалов по этой теме (например — вот и вот), но в последние несколько лет трансформеры, в основном, становились всё проще. Поэтому с...

Masscan с поддержкой HTTPS Masscan — быстрый сетевой сканер, который хорошо подходит для сканирования большого диапазона IP-адресов и портов. Мы немного доработали его, адаптировав под свои нужды.Больше всего неудобств оригинала было связано с невозможностью собирать баннеры с ...

Node.js: шаблон сервера для аутентификации и авторизации Привет, друзья! На досуге разработал шаблон Node.js-сервера для аутентификации/авторизации, которым хочу с вами поделиться. Надеюсь, кому-нибудь пригодится. Обратите внимание: шаблон — это всего лишь хорошая отправная точка, с которой можно начать разработку собственного с...

[Перевод] Принципы проектирования SOLID с примерами на Python Эффективный алгоритм – основа работы эффективного программного обеспечения. Когда алгоритм уже есть, следующая задача – сделать так, чтобы ПО было разработано с использованием лучших методов проектирования и лучшей архитектуры. Специалисты, исследователи и эксперты определил...

Unity: 8 причин отказаться от Coroutine в пользу Async Когда речь заходит об асинхронных операциях в Unity, на ум первым делом приходит coroutine. И это не удивительно, так как большинство примеров в сети реализованы именно через них. Но мало кто знает, что Unity поддерживает работу с async/await еще с 2017 версии.Так почему же ...

Выбираем инструмент для разметки текста (и не только!) Рано или поздно перед любой компанией которая хочет внедрить системы машинного обучения в свою инфрастуктуру встает вопрос разметки данных. Чистые данные в достаточно большом количестве - залог хорошей модели, все мы прекрасно знаем правило "Garbage in - garbage out". Т...

Удаленный доступ к IP камерам. Часть 2. Мобильное приложение В предыдущей статье я рассказывал о простом сервере для работы с камерами видеонаблюдения, но для оперативного просмотра RTSP потоков использовал мобильное приложение VLC, которое меня не вполне устраивало по нескольким причинам. Под катом вы найдете описание и листинги про...

[Перевод] Блокчейн на Python Когда я читал статью про блокчейн на JavaScript, мне было интересно познакомиться с идеями о блокчейн-разработке, которые отличаются от тех, что мне уже известны. А как только я начал читать код, мне захотелось сопоставить его с аналогичным Python-кодом, чтобы ещё и разобрат...

[Перевод] Как собрать зловредный компилятор А вы знали, что бывает такая атака на компилятор через бэкдор, защититься от которой невозможно? В этом посте я покажу вам, как реализовать такую атаку менее чем в 100 строках кода. Кен Томпсон, создатель операционной системы Unix, рассказывал о такой атаке еще в 1...

[Перевод] Простое объяснение симуляции жидкости в реальном времени Эта статья представляет собой простой и интуитивно понятный разбор симуляции жидкостей для программистов и технических художников. Вместо сложных математических выражений я постараюсь дать вам простое геометрическое понимание физики жидкостей. Реализация выполнена на вычисл...

Локальные репозитории пакетов Всем привет! Сегодня хочу поделиться нашими мыслями относительно того, как защититься от санкций палок в колёсах в современных условиях. Собственно, что мы имеем ввиду? Речь идёт о том, что в крупных проектах часто есть единые точки отказа в процессах CI/CD, это может быть к...

[Перевод] DevOps, SRE и Platform Engineering В течение своей карьеры мне приходилось работать в командах и компаниях, где в качестве разработчика я помещал код в репозиторий и просто надеялся, что все будет хорошо, когда какой-нибудь мифический сисадмин в конце концов не запустит его в продакшн. Случалось и то, что мне...

Игровой код, который сам себя программирует На сегодняшний день у меня выпущены четыре игры в Steam, и все они написаны на языке Haxe. Мне нравится по-максимуму автоматизировать свою работу, и сегодня я поделюсь некоторыми приёмами, которые я использую при программировании своих игр.Для непосвящённых: Haxe — это язык...

WireGuard клиент для Windows на основе BoringTun В начале 2019 года компания Cloudflare представила BoringTun, реализацию WireGuard протокола, написанную на языке Rust. Код проекта распространяется под лицензией BSD-3-Clause и включает в себя библиотеку, которая может использоваться для интеграции функц...

Как мы СМ 3.0 запускали Привет, меня зовут Виктор, я руководитель продукта сайта Спортмастер, точнее — его новой версии. Я работаю в компании с 2019 года и пришёл на проект системным аналитиком. В то время проект только стартовал. Мы выбрали архитектуру нового приложения, технологии, тактику тестир...

Основные приемы работы с Canvas [Part 1] Привет! Сегодня я хотел бы начать цикл статей на тему того, как работать с canvas в HTML5 и как применять знания в области матанализа для реализации необычных и интересных эффектов.Все навыки и умения, которые мы получим здесь, являются фундаментальными принципами и могут бы...

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

Jooq 3.15+. Сравнение R2DBC и JDBC подходов к разработке Приветствую! На протяжении нескольких лет моего опыта в качестве разработчика ПО, не раз сталкивался с ситуацией, когда нужно было выполнить не самый простой SQL-запрос по производительности. Несмотря на то, что не всегда здорово большие аналитические запросы генерить и отд...

OverScript — язык программирования, написанный на C# Привет! Меня зовут Дмитрий, я написал на C# свой интерпретируемый язык программирования, который назвал — OverScript. Это си-подобный язык со статической типизацией. Сразу скажу, что это не прототип, а готовый проект. Весь код на 100% мой. Я подробно не интересовался, как на...

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

Умеют ли в России разрабатывать и строить электрогитары? Привет, Хабр! Расскажу о своём опыте заказа отечественной электрогитары, на примере Рыбки Holst-60 — подписной модели основателя и гитариста группы Ария Владимира Холстинина, разработанной к его 60-летнему юбилею с его деятельным участием. Несмотря на то что спецификации м...

Dart, Flutter и кроссплатформа: небольшой разбор на практике Кто-нибудь пробовал использовать Dart / Flutter как на клиенте на нескольких платформах, так и в качестве сервера? Кто-то, конечно. пробовал, хотя далеко не каждый за этим приходил к Flutter. Я на своём pet-проекте провёл такой эксперимент, и хотел бы поделиться результатами...

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

Пошаговое руководство, как создать собственный Kubernetes оператор В статье разберет базовые понятия, которые нужны для создания оператора (CRD - Custom Resource Definition, контроллеры) и покажем на практике как можно написать собственный оператор с использованием инструмента Operator SDK без единой строчки кода. Читать далее

Реализации машины в qemu В процессе обратной разработки прошивок возникает задача по эмуляции прошивки, например для фаззинг тестирования или детального изучения поведения в динамике. На практике обычно для этого хватает фреймворков avatar2, unicorn, qling и подобных. Однако они поддерживают далеко ...

[Перевод] Синхронные и асинхронные стектрейсы: опыт использования в Facebook Здесь мы подробно поговорим о том, каковы технические отличия между реализацией асинхронных стектрейсов по сравнению с реализацией традиционных стектрейсов, а также с какими сложностями можно столкнуться, реализуя такие асинхронные стектрейсы поверх корутин C++. Читать далее

Узнать за 60 минут В этой статье я хочу поделиться рецептом качественного собеседования продолжительностью 1 час. При этом критерий качества исключительно практический: потратив не более часа я готов рекомендовать или не рекомендовать соискателя к найму.Я поделюсь своим опытом набора людей «по...

[Перевод] Go: рендеринг изображений в 2D-играх на примере Ebiten В статье речь идет о Ebiten 1.10.Ebiten — это хорошо продуманная библиотека для создания 2D-игр, написанная Хадзиме Хошем на языке Go. С ее помощью созданы движки ряда мобильных и десктопных игр, как например зарелиженная в Apple Store Bear's Restaurant, или OpenDiablo2 — ре...

Из медицины в машинное обучение и не только: как люди приходят в IT Так сложилось, что если мы пишем о людях, то почти всегда — о сделавших некий прорывной проект. Сегодня в определённом смысле не исключение. Мы расскажем о ребятах, которые реализовали крупные проекты в своей жизни — сменили сферу деятельности и пришли в IT через «Школу 21»....

Разглядывая JTAG: что внутри? Ознакомившись с работой JTAG в общих чертах и написав файл BSDL для воображаемой микросхемы в предыдущей статье, можно рассмотреть работу модуля JTAG внутри микросхем более детально. Для этого мы напишем прошивку для микроконтроллера и для ПЛИС (на «Си» и на «SystemVerilog»...

[Перевод] Повышение производительности в Unity. Как я поднял показатель FPS с 15 до 60 Я делаю ремейк своей старой игры Loca Deserta: Sloboda Первая версия была написана на Flutter, но сейчас в качестве движка для игры я выбрал Unity.Я начал работу с нуля и реализовал множество новых функций, но заметил, что даже мой Galaxy S21 Ultra подлагивал во время игры. ...

«Слабые» ссылки в CPython Модуль weakref позволяет создавать "слабые" ссылки на объекты."Слабой" ссылки не достаточно, чтобы объект оставался "живым": когда на объект ссылаются только "слабые" ссылки, сборщик мусора удаляет объект и использует память для других объектов. Однако, пока объект не удалён...

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

Kubernetes: трансформация к SecDevSecOpsSec Данная статья — взгляд на то, как Kubernetes способен повысить уровень безопасности, упростив управление ею и ускорив внедрение механизмов безопасности с точки зрения специалиста по ИБ, который большую часть своей карьеры занимался наступательной безопасностью. Сейчас на при...

[Перевод] Минимальная реализация Lua на Rust После того, как вы освоите это руководство, в вашем распоряжении окажется минимальная реализация Lua (парсер, компилятор, виртуальная машина), написанная на Rust с чистого листа. Этот проект получил название Lust, его код можно найти на GitHub. Читать дальше →

Service Mesh на стероидах: как построить управляемое взаимодействие между сотнями микросервисов Сталкивались ли вы с задачей построить Enterprise-grade-приложение из десятков приложений, слабо связанных друг с другом, разрабатываемых разными командами, с разными моделями релиза? Мы хотим поделиться опытом, как решили эту задачу в Netcracker. Как в этом помогла концепци...

[Перевод] C++20 Ranges — Полное руководство C++20 Ranges, также известная как STL v2, представляет из себя более эффективную замену существующих алгоритмов и технических средств STL. В этой статье мы пройдемся по изменениям, введенным Ranges (диапазоны/интервалы), обсудим представления (views), которые представляют со...

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

Синтезируем SystemVerilog код в OpenSource среде Yosys/NextPNR В предыдущей статье я поделился опытом работы с ПЛИС фирмы Lattice через инструменты с открытым исходным кодом Yosys и NextPNR. Как я отмечал, освоить их меня заставило не столько любопытство, сколько требования Заказчика. В том проекте у меня просто не было выбора. И та ста...

Прячем секреты в репозитории с помощью helm-secrets, sops, vault и envsubst Привет, Хабр! Меня зовут Евгений Симигин, я занимаюсь внедрением DevOps-практик в Центре компетенций по разработке облачных и интернет-решений МТС Digital. А еще я – куратор практикумов docker и kubernetes на платформе rebrainme.com. Практика показывает, что далеко не все ...

Qualcomm сделает это последней. Поддержка кодека AV1 будет реализована в Snapdragon 8 Gen 2 Компания Qualcomm готовится реализовать в своих будущих платформах аппаратную поддержку декодирования кодека AV1. AV1 является преемником VP9, обходя последний по эффективности сжатия на 30-40% и более.  Источники утверждают, что Qualcomm добавит поддержку AV1 в с...

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

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

Интеграция amoCRM с сайтом API AmoCRM одна из самых популярных CRM, при этом ее API один из самых странных, по моему субъективному мнению. Понадобилось передавать формы с сайта в crm. Использовать CRM Формы вместо своих дизайнерских не хочется. Было бы здорово открыть статейку в гугле, подставить ключ и н...

Разбираем алгоритмы компьютерной графики. Часть 2 — «Туннель из демо «Second Reality»» В 1993 году на демопати Assembly, которая проходит в Финляндии, команда Future Crew презентовала свою новую работу «Second Reality».(хороший разбор исходников этой демо можно найти здесь же на Хабре, по этой ссылке «Анализ кода демо Second Reality»)Графические эффекты исполь...

Security микросервисов с помощью Spring, OAuth2, JWT и Service Account Не так давно я начинал свой первый проект с микросервисами и не знал как реализовать security. Сейчас информации по этому вопросу уже больше однако она не всегда актуальна и как правило не раскрывает проблему security межсервисного взаимодействия. Поэтому я решил написать ка...

Первый хакатон ВСК — от идеи до реализации В конце 21-го года состоялся первый хакатон в истории ВСК! Точнее - это был не совсем хакатон. А почему - читайте далее!Что еще вы найдете в этой статье:• все подробности организации;• цифры и сложности;• как создать почву для решения бизнес-задач;• как повысить лояльн...

Яндекс.Практикум: самый подробный отзыв Хочу поделиться личным опытом (об/м)учения в Яндекс.Практикуме на курсе "Веб-разработчик", и почему, вернувшись на год назад в прошлое, я бы никогда не стал там учиться даже за бесплатно.Для начала расскажу о причинах, по которым я решил войти в IT (спойлер: и в итоге всё-та...

Яндекс.Маркет реализовал работу с возвратами в личном кабинете Яндекс.Маркет реализовал работу с возвратами в личном кабинете - теперь там можно просматривать детали по конкретному возврату, принимать по нему решение и связываться с покупателем. Все заказы, которые покупатели хотят вернуть, находятся в разделе Заказы → Список возвратов....

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

Как мы перестали плодить шаблонный код при работе с табличными представлениями в iOS Девять из десяти экранов любого iOS-приложения имеют табличный вид. Неважно, как реализовано это представление — на UITableView или UICollectionView, но для его реализации необходимо каждый раз писать шаблонный код:1) реализация табличного источника данных (UITableViewDataSo...

Двигаем биты — или как реализовать свой стандарт UUID Я работаю над открытой реализацией предложенного стандарта идентификаторов UUIDv7. На данный момент спецификация существует в виде IETF черновика. Черновик уже пережил два переиздания, и мы постоянно обновляем спецификации. Но сам документ — это дело простое. Для того чтобы...

Держи свой трафик в тайне. SSL Pinning — ещё раз о том же самом Всем привет! Меня зовут Юрий Шабалин, я один из основателей компании Stingray Technologies. Мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android. Сегодня я хотел бы снова затронуть тему безопасности сетевого взаимодействия между приложением и ег...

Московские экспортеры представят свои товары на WeChat Об этом сообщила Наталья Сергунина, заместитель Мэра Москвы.WeChat - универсальная цифровая площадка, которая объединяет функции соцсети, мессенджера, маркетплейса и платежной системы. Число ее активных пользователей превышает 1,2 миллиарда человек."На этой площадке буд...

[Перевод] Корутины в C++20 — что это и как с ними работать Прим. Wunder Fund: В статьи описаны базовые подходы к работе с корутинами в 20м стандарте С++, на паре практических примеров разбораны шаблоны классов для промисов и фьючеров. По нашему скромному мнению, можно было бы реализовать и поизящнее. Приходите к нам работать, если и...

Разбор задачи Титаник на Kaggle (Baseline) В статье я покажу как искать зависимости и проверять гипотезы. Мы познакомимся с данными и реализуем предсказание на основе одной логики=) Читать далее

[Перевод] О типах Автор оригинального материала — Роберт С. Мартин (Uncle Bob), 25 июня 2021Я написал свою первую программу в 1964 году. Программа называлась «Компьютеризированные ворота мистера Паттерсона» и была реализована на маленьком пластиковом компьютере под названием DIGICOMP-I, котор...

Мал золотник, да дорог: ученые из НИТУ «МИСиС» предлагают создать облачный супер-ПК из миллионов смартфонов В идее распределенных вычислительных систем нет ничего нового. Идея реализована уже давно, плюс примеров таких реализаций множество, включая SETI, Folding@Home и другие. Идея в том, что специальное программное обеспечение использует незадействованные ресурсы локальных систе...

Экспорт статей Хабра в html, markdown До меня было написано 4 статьи по экспорту статей с хабра в FB2 и pdf: Экспорт избранного Хабра в FB2 Экспорт избранного Хабра в FB2 — скоростная PHP-версия Экспорт Хабра в FB2 Экспорт Избранного на Хабре в PDF Я же хотел получить исходники своих статей. Читать дальше &r...

Добавление функции передачи в SDR# с HackRF Эта библиотека добавляет возможность использования HackRF One, совместно с приложением SDR#, в качестве трансивера. Это реализовано внедрением промежуточного слоя между SDR# и библиотекой HackRF.DLL, который подготовлен с таким же интерфейсом, что и стандартная библиотека H...

Отправка SMS кириллицей с AT-модема Оперативное информирование клиентов, когда их достаточно много для ручного обзвона, но недостаточно много для подключения массового сервиса, вроде sms.ru (на самом деле сервис хорош, но недавняя политика некоторых мобильных операторов создала определённые финансовые сложност...

С++: работа с таблицами Хочу предложить к обозрению небольшую коллекцию функций, для удобной работы со списком структур. Такие списки представляются как таблицы, к ним со временем у меня приработался своеобразный функционал. Читать далее

Как самостоятельно выучиться на дата-саентиста — адаптированная подборка "Cтоит ли тратить деньги на тот или иной дорогой курс с codename «Стань DS за два месяца» или все же выучиться на дата-саентиста самостоятельно и бесплатно, и в таком случае, с чего начать?" такие вопросы я получаю от аудитории своего блога. Меня зовут Айра, я делаю про...

[Перевод] Cron — лучшие практики Планировщик задач cron(8) существует с 7 версии Unix, а его синтаксис crontab(5) знаком даже тем, кто нечасто сталкивается с системным администрированием Unix. Это стандартизированный, довольно гибкий, простой в настройке и надёжно работающий планировщик, которому пользовате...

Как подружить Wi-Fi Mikrotik и TP-Link с помощью RADIUS Хочу поделиться опытом использования нового User Manager в Mikrotik ROS 7 для Wi-Fi. Многое в статье типично, но есть моменты, найденные опытным путем.Задача - покрыть Wi-Fi трехэтажное здание, подключить около 100 пользователей поэтапно с небольшими вложениями.Все начиналос...

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

Разбираем алгоритмы компьютерной графики. Часть 1 — «Starfield Simulation» Этой небольшой заметкой я хочу начать цикл статей посвященных алгоритмам компьютерной графики. Причем, не аппаратным тонкостям реализации этой самой графики, а именно алгоритмической составляющей.Действовать буду по следующему принципу: беру какой-либо графический эффект (из...

[Перевод] Пишем эмулятор Game Boy на OCaml Введение Последние несколько месяцев я работал над проектом под названием CAMLBOY — эмулятором Game Boy, написанным на OCaml, который работает в браузере. Протестировать его можно на следующей странице демо: Страница демо Я добавил в демо несколько неофициальных ROM, поэт...

Чистые транзакции в гексагональном Go В современной микросервисной разработке очень популярна чистая архитектура (она же луковая). Этот подход ясно отвечает на много архитектурных вопросов, а также хорошо подходит для сервисов с небольшой кодовой базой. Другая приятная особенность чистой архитектуры состоит в то...

Подведены итоги реализации проектов, получивших президентские гранты Координационный комитет Фонда президентских грантов подвел итоги своей деятельности за прошлый год: было реализовано более 4 тысяч проектов, из которых 79% были оценены как выполненные успешно, почти 17% — как умеренно успешные. Лишь около 3% проектов признали неудовле...

Автоматизация наполнения Changelog через CI В этой статье я постараюсь рассказать, как на моей работе я реализовал автоматическую генерацию Changelog из коммитов и создание тегов на их основе. Читать далее

Tegrus модернизировал компьютерное производство iRU Все работы были реализованы за 2 месяца. По результатам реализации проекта компания iRU получила современную и надёжную инженерную инфраструктуру для своего производства, что позволило нарастить производственные мощности и повысить экономическую эффективность работы предприя...

OpenLDAP в качестве центра аутентификации для Nextcloud и ProFTPD Привет, Хабр! На связи Холодаев Алексей, младший системный администратор Cloud4Y. Сегодня хочу поделиться опытом использования OpenLDAP в качестве центра аутентификации для Nextcloud и ProFTPD.В ходе работы над одним из проектов возникла задача по созданию нескольких сотен п...

Как вести учет криптовалютного портфеля в Гугл Таблицах Введение«Деньги любят счет» - это пословица, как никакая другая, очень точно описывает всю суть успешного распоряжения своими деньгами.На сегодняшний день существует множество инструментов и сторонних сервисов (Blockfolio, Coinmarketcap, Cryptocompare и т.п.) для ведения уче...

Bluetooth для андроида. Портируем с Linux на Android драйвер USB-адаптера Для подписчиковНе все USB-устройства начинают работать на Android сразу после подключения. В этой статье я покажу, как решить проблему, на примере широко распространенного Bluetooth-адаптера CSR 4.0. Нам понадобится собрать из исходников ядро Linux и покопаться в интерфейсно...

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

Как я перестал беспокоиться и полюбил тестирование React-компонентов Как тестировать React-компоненты? Какую библиотеку использовать? Как тестировать компоненты, которые берут данные из Redux, а не из пропсов? Как тестировать компоненты, в которых используется роутинг с помощью React-router-dom? Что делать, если в компоненте есть асинхронный ...

DevSecOps by Swordfish Security. Часть первая Меня зовут Юрий Сергеев, я основатель и управляющий партнер в Swordfish Security. С 2017 наша компания активно занимается проблематикой построения процессов разработки защищенного ПО (Secure Software Development Lifecycle). За прошедшие годы нам посчастливилось реализов...

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

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

Fuckup’ы на работе. Как с ними жить, бороться, не допускать и предупреждать Всем привет. Меня зовут Александр Наумов, и последние 5 лет я занимаюсь тестированием сайта Утконос ОНЛАЙН — руковожу группой QA.Идея написать эту статью пришла ко мне пару месяцев назад. Я возвращался с работы домой, когда мне позвонил коллега: «Привет, тут хотят катить одн...

RabbitMQ Streams для сбора и обработки телеметрии умного дома Традиционно для сценариев поточной обработки с использованием Map-Reduce рассматриваются такие решения как Hadoop/Spark, либо используются конвейерные системы (например Kafka), для которых есть возможность реализовать концепцию потоков (streams) с помощью дополнительных инст...

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

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

JavaScript: разрабатываем чат с помощью Socket.io, Express и React с акцентом на работе с медиа Привет, друзья! В данной статье я хочу показать вам, как разработать простое приложение для обмена сообщениями в режиме реального времени с использованием Socket.io, Express и React с акцентом на работе с медиа. Функционал нашего приложения будет следующим: при первом за...

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

[Перевод] Python и чистая архитектура в 2021 году Прошло уже почти 3 года с тех пор, как я впервые воспользовался чистой архитектурой на практике. С тех пор я побывал на многочисленных конференциях, где выступал с докладами на эту тему (вот, например, доклад Clean Architecture in Python с конференции PyGotham 2018...

Age of Empires IV: о Столетней войне и истории через игровое повествование Не так давно — 28 октября 2021 года - в свет вышла стратегия Age of Empires IV — игра, в лучшую сторону выделяющаяся своим подходом к тому, как следует рассказывать аудитории об истории и явно лучшая из игр, в которых действие происходит во времена Столетней войны. Конечно, ...

Таков путь или как я познавал Ruby Многие из тех, кто прочитает эту статью, уже давно "вошли в IT", а кто-то даже уже успел покинуть наши ряды. Но будут и те, кто только думает о том, чтобы начать свой путь. И я хочу поделиться своим опытом, так как помню, как сложно делать первые шаги и вообще решить, с чего...

Пять историй про командное лидерство Привет, Хабр! Я работаю в сфере IT около 15 лет. За свою карьеру успел побывать support-агентом, QA-специалистом, техническим писателем, Linux-админом, DevOps-инженером и DevOps- тимлидом. Именно опытом работы в роли последнего я хотел бы поделиться. Я расскажу про методики,...

Совместимость блокчейнов: небольшая справка Всем привет! Меня зовут Валерий, я junior developer. Недавно я попал в команду западного стартапа, развивающего финансовую экосистему в сфере блокчейн. До этого я поверхностно интересовался миром криптовалюты, но непосредственно в этой отрасли никогда не работал. А тут все т...

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

FSNotes 5 для iOS — заметочник для гиков Привет, Habr! Больше 4 лет я пишу программу заметочник под macOS и iOS. Я уже упоминал вскольз о нюансах разработки, сегодня время пришло написать о самой программе.Если кратко, то FSNotes это программа для написания, каталогизации и хранения заметок в максимально открытом в...

Nintendo Swich догоняет Wii и PlayStation. Компания продала почти 93 млн приставок, но тоже страдает от дефицита комплектующих Компания Nintendo также столкнулась с дефицитом комплектующих для консолей. За прошедший квартал японский гигант реализовал лишь 3,83 млн приставок Switch, что намного меньше результатов прошлого года, когда было реализовано 6,86 млн консолей.  В итоге на дан...

Кто проживает на дне океана: дата-центры погружаются на глубину 3000 м Насколько можно понять, первыми, кто не только предложил опустить серверы на дно моря, но и реализовал проект подводного дата-центра, стали инженеры из Microsoft. Затем, увидев, что у американцев вроде бы все получается, стали работать с концепцией подводного дата-центра к...

Как расти быстрее подчинённых. Вширь и вглубь Много лет руковожу программистами, при этом продолжая писать код, придумывать архитектуру, управлять проектами и т.д. Короче, я как все, только ещё хожу на совещания.Рядом много других команд программистов, и у них тоже есть свои начальники. И вот странное дело - сильно они ...

JavaScript: ускоряем загрузку изображений с помощью Imgproxy, Cache API и Service Worker API Привет, друзья! В этой статье я хочу поделиться с вами результатами небольшого эксперимента, связанного с ускорением загрузки изображений с помощью Imgproxy, Cache API (далее — кеш) и Service Worker API (далее — СВ). Мы с вами разработаем простое приложение на React, в ко...

Scrum в госкомпании: миф или реальность? SCRUM закрепился и в стартапах, и в IT-гигантах, но что на счёт скрама в крупной госкомпании? Попытаемся дать ответ на примере одной из команд разработки Россельхозбанка, а в конце статьи поделимся чек-листом в помощь начинающему скрам-мастеру. Читать далее

Как поделиться видео YouTube с определенного момента на iPhone, iPad и Mac Разбираемся, как вставить видео с таймкодом на iPhone. YouTube смотрят все. Однако далеко не все знают о многих его фишках. Одна из них — возможность поделиться видео YouTube с определенного момента. В последнее время я заметил, что на этой площадке ролики становятся в...

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

А вы знаете, где используется Haskell? Всем привет! Мы хотим продолжить серию постов на тему “где используются эти ваши странные языки программирования”. В прошлый раз мы рассказали про Лисп, а сегодня продолжим разговор про функциональные языки и обратим внимание на Haskell.  Он является основным языком раз...

Элегантный вопросительный знак В этой заметке я хочу поделиться элегантным решением одной задачи с сайта-хрестоматии RosettaCode. Речь пойдёт о программе, вычисляющей функцию Минковского — одного из инструментов теории чисел и динамических систем. Несмотря на то, что реализовать эту функцию относительно н...

Как подключить Андроид к Маку. Мой любимый способ Можно сколько угодно говорить, что компьютер Mac и Android-смартфон вещи несочетаемые, но пользователи так не считают. Компьютеры Apple хороши по многим параметрам: компактный корпус, качественная сборка, высокая скорость работы. Правда есть у таких машин маленький нюанс &#...

Автоматизация тестирования микросервисов: плюсы и минусы тестов на Go Микросервисы можно тестировать по-разному. У каждого подхода есть свои плюсы и минусы, поэтому, чтобы выбрать свой путь и избежать на нём «граблей», лучше всего учиться на чужом опыте. А ещё лучше — на конкретных примерах.Я занимаюсь тестированием в Ozon и хочу рассказать пр...

Что вы читали и комментировали в этом году Привет! До Нового года еще полторы недели, но мы решили подвести небольшие итоги уже сегодня. Во-первых, вряд ли в саму новогоднюю ночь вы будете читать подобный пост. Во-вторых, ещё менее вероятно, что 30 декабря мы бы осилили выгрузить статистику, чтобы 31-го написать пост...

Пишем чат под Android на Websocket'ах Привет Хабр!Во время локдауна я решил поупражняться в разработке под Android. Начать решил с простой гиперказуальной игры с элементами дуэли. Взаимодействие игроков решил реализовать через отдельный сервер и websocket'ы, но пока читал про все это дело, понял, что простого ту...

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

Ускоряем работу с графами в 20000 раз Использовать стандартные библиотеки и общеизвестные реализации алгоритмов — признак хорошего тона. Вместо изобретения своего алгоритма шифрования данных или своей хэш функции лучше взять уже готовое решение. Избегаем ошибок и не изобретаем велосипед заново. Но что если готов...

Делаем PICDuinaNano своими руками Небольшой проект, в котором реализована маленькая и простоя плата для изучения микроконтроллеров PIC18, выполненная по образу и подобию Arduino Nano. Читать далее

Разбираемся с библиотекой лексического анализа ANTLR4 У нас в SberDevices разрабатывается платформа по управлению рекомендациями, которая взаимодействует с разными ML-движками. Со временем их станет много, и, когда пользователь умных устройств Sber будет запрашивать контент – искать фильмы, музыку, спрашивать о чём-то виртуальн...

Поисковик новостей (RSS), написанный на Java + SQLite Вы скорее всего подумаете: "Зачем десктопная программа, если можно, как минимум, загуглить?". А затем, что моя программа автоматически "гуглит" за тебя! Причём не только по одному ключевому слову, а по нескольким, которые вы, само собой, можете редактировать. А результат пои...

Вангеры 3D: пример использования Emscripten в Rust Вангеры в 2022 году продолжают удивлять, прежде всего людьми которые когда-то полюбили эту игру, но сегодня не забывают и вкладывают много сил, делая её лучше, современнее. Оригинальная игра получила обновление с поддержкой полноценного 3D, да не абы какого, а кросс платформ...

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

Что у ECS под капотом Всем привет, это моя первая статья на Хабр. Давно хотел попробовать что-то написать, но всё никак не решался, да и темы подходящей не было. Наконец тема подвернулась, и пришло время закрыть этот гештальт =)В данной статье я опишу общий принцип "подкапотной" работы ECS фреймв...

Почему мы решили делать сервис облачного гейминга на видеокартах AMD Рынок облачного гейминга в России развивается ударными темпами. Здесь у нас и Loudplay, и MY.GAMES Cloud (ех. Playkey), GFN.ru. Мобильные операторы связи тоже находят свою выгоду и заключают партнерские соглашения с перечисленными сервисами, запуская собственные проекты. Так...

Девять лучших камер 2021 года для портретной съёмки Эксперты портала DPReview поделились списком фотоаппаратов, которые точно понадобятся тем, кто предпочитает портретные снимки всем другим жанрам фотографии.

Почему наш стартап переехал с Flask на FastAPI Как так оказалось, что стартап решил поменять стек? Это же затраты и все возникающие при этом сложности переезда. Но если хочешь получить короткий, эргономичный, хорошо читаемый код, приходится идти на жертвы. Но давайте по порядку.Алекс Морозов, co-founder & CTO в компа...

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

Instagram запустила функцию Playback — она позволит поделиться своими лучшими историями за 2021 год Instagram запускает функцию Playback, которая позволит пользователям социальной сети поделиться десятью лучшими историями за 2021 год со своими подписчиками. Сервис самостоятельно сгенерирует подборку, однако пользователи смогут редактировать её, удаляя или добавляя истории ...

Blazor: SPA без джаваскрипта для SaaS на практике Когда в любой момент времени стало понятно, что такое this... Когда неявное преобразование типов осталось только в былинах аксакалов эпохи зарождения веба... Когда умные книжки по Javascript нашли свой бесславный конец в мусорках...Всё это случилось когда мир фронтенда спас ...

Изучаем протоколы со Scapy Статья расскажет, как можно использовать Scapy для создания пакетов UDP и TCP протокола, так же попробуем реализовать взаимодействие по сети, отправив короткое сообщение с использованием каждого из протоколов. Читать далее

[Перевод] Знакомство с трансформерами. Часть 2 Публикуем вторую часть материала о трансформерах. В первой части речь шла о теоретических основах трансформеров, были показаны примеры их реализации с использованием PyTorch. Здесь поговорим о том, какое место слои внутреннего внимания занимают в нейросетевых архитектурах, и...

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

Ремарки в Cisco IOS ACL Недавно встретил среди своей команды некоторое непонимание принципов работы ремарок в списках доступа. Ремарки расценивались, как еще еще одна строка с правилом. Не было понимания, как работать с блоками правил под одной ремаркой и т.п.Хотел найти внятное описание по этой те...

Elementary: новый взгляд на архитектуру Flutter-приложений Elementary — это архитектурный пакет, который создали в Surf на основе опыта разработки приложений на Flutter и лучших практик современной разработки. Решение позволяет чётко разделить слои согласно ответственностям, сделать код прозрачнее, а тестирование проще. На примере р...

Сферические практики в Godot Написал некоторый разбор того, как внутренне устроена конкретная игра для джема на движке Godot. Читать далее

Музыка как код — опробовать концепцию можно прямо в браузере Существует множество языков для музыкального программирования. О некоторых из них, например, Sporth или ORCA, мы рассказывали в блоге. Сегодня поговорим о проекте Harmonicon — браузерном DAW, реализующем концепцию music-as-code. Читать далее

Что необходимо знать, чтобы написать свою Embedded RTOS (часть 1) Хотел бы написать небольшой цикл статей посвященных тому, как я написал свою RTOS с какими трудностями столкнулся и зачем вообще писать свою RTOS если уже есть FreeRTOS, RTX, embOS и т.д. список достаточно большой. Начнем с того, что по мере работы я сталкивался с тем, что ...

Lada Niva — самый популярный внедорожник в России. Продажи в сегменте резко упали Последние данные Ассоциации европейского бизнеса указывают на то, что бестселлером в сегменте кроссоверов и внедорожников на российском рынке в марте стал внедорожник Lada Niva. Совокупные продажи семейства Lada Niva Travel и Niva Legend в прошлом месяце составили 2898 ...

[Перевод] Звёздный рейтинг: решение с использованием SVG Для некоторых веб-сайтов и платформ в интернете важно предоставлять пользователям звёздный рейтинг для возможности выставить оценку материалу. Недавно мне довелось реализовать для одного проекта компонент звёздного рейтинга. Я решил использовать SVG и не пожалел об этом. В д...

Бекапер Figma Предыстория. В свое время я очень долго сопротивлялся переходу на Figma. Причиной была  жесткая политика vendor lock-in, серьезная итоговая цена и невозможность нормально хранить исходники макетов у себя. Кроме того, в сети были описаны несколько случаев, когда люди тер...

[recovery mode] Оконные функции SQL простым языком с примерами Привет всем!Сразу хочется отметить, что данная статья написана исключительно для людей, начинающих свое путь в изучении SQL и оконных функций. Здесь могут быть не разобраны сложные применения функций и могут не использоваться сложные формулировки определений - все написано м...

Bare-metal kubernetes-кластер на своём локальном компьютере Привет, я Кирилл Шаталаев, инженер инфраструктуры и автоматизации в X5 Tech. Я в курсе, что статей на эту тему достаточно, в том числе и на Habr. И когда у меня возникла задача поднять кластер, я их все перечитал. Где-то очень подробно рассказывается, как ставить виртуалки с...

[Перевод] Разработка настоящих компонентов: блок сообщения Facebook Messenger Смесь любопытства и тяги к исследованиям снова привели меня к системе обмена сообщениями Facebook. Я уже изучал компоненты Facebook и писал об этом. Сейчас я обратил внимание на то, что в одни только блоки для вывода сообщений чата вложена огромная работа. На первый взгляд м...

Импакт-анализ на примере Android-проекта Одной из самых дорогих по времени операций на CI-сервере является прогон автотестов. Есть множество способов их ускорения, например, распараллеливание выполнения по нескольким CI-агентам и/или эмуляторам, полная эмуляция внешнего окружения(backend/сервисы Google/вебсокеты), ...

Архитектура на «микросервисах» в монолите: примеры из практики В Skyeng есть команда коммуникаций. Она предоставляет инструменты для связи оператора с пользователем. Например, ученику плохо слышно преподавателя на уроке и он хочет пообщаться с поддержкой, чтобы решить проблему. Мы помогаем. На старте было просто: связаться с нами м...

Изолируем микросервисы с помощью Feature toggles в ASP.NET Core. Теория и подготовка Привет, Хабр! Если вы работаете с микросервисами, то знаете, что они имеют свойство образовывать некоторую связанность. Хорошо, когда связи между микросервисами однонаправленные, но всё становится сложнее, если возникают циклические зависимости.Такие зависимости приводят к с...

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

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

Карты, деньги, два букета. Как мы пришли к собственному сервису доставки Привет, Хабр. Меня зовут Андрей, я бэкенд-разработчик в команде Flowwow. Я довольно давно работаю в компании и хочу рассказать об истории создания  собственного сервиса доставки (не без боли) и интеграциях с крупными игроками, которые нам удалось реализовать. ...

Изолируем микросервисы с помощью Feature toggles в ASP.NET Core. Практика Снова привет, Хабр! В первой части статьи мы разбирали, что такое изоляция микросервисов, как в этом помогают переключатели функциональности, и как создать простое ASP.NET приложение в с поддержкой feature toggles, которое будет показывать прогноз погоды. В этой части з...

Как устроено карьерное развитие разработчиков в Альфа-Банке Всем привет. Меня зовут Иван, я руководитель направления “Единый фронт”, сегодня мы с вами поговорим про то, как можно развиваться в Альфа-Банке. Не только профессионально, но и карьерно, про то, какие вообще есть пути и возможности для разработчиков в Альфа-Банке.Я – бывший...

СheckKarlMarx: утилита для поиска уязвимостей в продовых сборках Всем привет! Меня зовут Дмитрий Терёшин, в СберМаркете я занимаюсь Application Security — безопасностью веб- и мобильных приложений.Во время аудитов мобильных приложений я часто натыкался на плавающие уязвимости: они появляются только в конечной сборке, которая отправляется ...

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

WoG уже 20 лет… Все это уже история... И я даже писал об этом (не на habr). Поэтому, возможно, кому-то это знакомо. Не думал, что тут стоит писать подобное, но, вижу, что фанаты Героев 3 (и вообще серии HoMM) тут очевидно присутствуют, поэтому рискну... Время: 20 лет назад. Место: Ээээ… ...

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

Сколько ты стоишь? Метод анализа вакансий с HR-агрегаторов Конечно, когда мы решаемся сменить работу, мы исходим из своих личных побуждений и мотиваций; и очевидно, что увеличение своего материального положения — не последняя из причин. Но при ответе себе лично на вопрос «сколько я хочу получать» обычно оперируем своим собственным п...

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

Flink для самых маленьких Привет! Меня зовут Юля, я работаю в дирекции больших данных Билайн, недавно я познакомилась с фреймворком Flink и хочу рассказать о своих впечатлениях на примере простой с первого взгляда задачи.Итак, что же такое Flink? Apache Flink – это фреймворк и движок для statefu...

Вам посылка, или Как мы доставляем сообщения с сервера на клиент в реальном времени Меня зовут Алексей Комаров, я — старший frontend-разработчик в SuperJob. Хочу поделиться опытом реализации механизма обновления данных в реальном времени у нас на сайте. Под катом — подробности о выборе подхода, о проблемах, с которыми мы столкнулись при разработке, о наших ...

Опыт переезда в облако VKCS (IaC, IaC и в продакшн) Дисклаймер: Я написал такую статью, какую сам хотел бы прочитать полгода-год назад, когда мы стартовали миграцию в облако. Мне бы она здорово помогла сэкономить силы, время и нервы – надеюсь, теперь поможет кому-то ещё. Здесь нет исчерпывающей экспертизы, только немного моег...

Оформляем README-файл профиля на GitHub Летом 2020 года GitHub позволила пользователям создавать персональные README-файлы и с их помощью кастомизировать свои профили. Сама платформа при создании подобного файла предлагает уже готовый шаблон, в который можно вписать свои данные. Но о какой кастомизации м...

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

Автоматизация глазами разработчика: Github Actions для стартапа Основное преимущество работы в стартапе – разнообразные задачи, с которыми приходится разбираться в крайне короткие сроки за минимальный бюджет. И такие условия позволяют находить и придумывать интересные решения, которые не приняты за стандарт большими компаниями.Сегодня по...

Знакомство с .Net Compiler Platform .Net Compiler Platform, или Roslyn - это высокоуровневый API для анализа и рефакторинга кода, написанного на  С# и VB (языках .Net). С помощью Roslyn можно как создавать независимые инструменты анализа и рефакторинга, так и писать расширения, встраиваемые в Visual Studi...

Пишем без Retrofit'а, Gson'a и Kotlin Coroutines Android приложение Порой нам хочется написать код без лишних библиотек, чтобы более глубоко понять основные принципы или просто ради интереса.В качестве примера я написал простое Android приложение, которое позволяет юзерам найти значение русского слова.Давайте остановимся на каждом моменте по...

Расчет ППМ для АФАР В данной статье хочу поделиться своим опытом расчетов ППМ для АФАР. Читать далее

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

Установка Nextcloud на Synology. Настройка OnlyOffice и External storage В данном посте я хотел бы рассмотреть способ установки персонального облака на домашний сервер Synology при помощи Docker, поделиться своими ошибками и опытом использования в повседневной жизни. Я буду признателен, если более опытные пользователи habr также поделятся своим о...

Работа с аудио в Unity — трассировка и облачные вычисления Всем привет! В этой статье мы рассмотрим пример работы с объемным аудио в Unity для консольных и ПК проектов. На данном примере будет описан пайплайн работы с аудио на крупном проекте с множеством источников звука, HRTF и др. Читать далее

Калькулятор инвестиций и скринер ценных бумаг: как мы проводили свой первый хакатон BCS Coding Days Привет! Я Люба Давыдова из компании БКС. Занимаюсь развитием ИТ бренда в компании. Расскажу об одном из наших последних мероприятий.В декабре мы с партнерами из «Сколково» провели свое первое онлайн-соревнование для разработчиков. Мы решили поделиться опытом организации меро...

5 фишек Google Docs, которые пригодятся в работе Вы замечали, что в последнее время все больше пользователей отказывается от работы в Microsoft Office в пользу Google Docs? В целом, их понять можно: сейчас главное — работа с файлами в онлайн-режиме, и Документы от Google с этим справляются на порядок круче, чем дети...

Ускорение производительности Python в 3.11 Всем привет! Сегодня хочу поделиться с вами хорошими новостями, которые связанны с производительностью python в грядущем релизе 3.11 и то что нас ожидает в будущем! Читать далее

SwiftUI туториал слайдер контроллера Рассмотрим, как реализовать ползунок для переключения между страницами с красивой анимацией. Читать далее

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

Один из Samsung Galaxy S22 может получить очень необычный корпус Когда Samsung отказалась от применения в своих телефонах (даже флагманских) стекла на задней стенке, многие вздохнули с облегчением, мол, теперь не разобьется при падении. Другие, наоборот, оскорбились решением компании. ”Как так можно? Смартфон стоит 100 000 рублей, а корп...

[Перевод] Kotlin, обрабатываем исключения в корутинах правильно Возможно вы думаете обработка таких исключений происходит как обычно в Kotlin/Java коде. К сожалению, при использовании вложенных корутин, все может работать не так как ожидается.В этой статье я попробую показать ситуации, в которых требуется осторожность и расскажу про лучш...

Как подружить Юлу и ВКонтакте Осенью прошлого года перед нами стояла задача объединить крупнейшую социальную сеть и многомиллионный сервис объявлений в одну площадку для продажи — Объявления ВКонтакте. Похожую задачу уже решил Facebook, реализовав внутри своей соцсети Facebook Marketplace, и в результате...

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

Как научиться работать в Blazor, делая что-то полезное. Часть I Когда я вижу, как кто-то учит кого-то языку программирования, то частенько замечаю тенденцию показывать новичкам примитивные примеры в виде ToDo list. Помимо того, что подобные примеры не учат ничему полезному в программировании, они очень однобоки и не позволяют оценить вс...

Ох уж эти QR коды Пандемия, осеннее обострение, зима близко и QR коды на каждом шагу, роботы наступают, рутина работы затягивает. Хочешь покушать покажи картинку. Скучную и квадратную, для робота, не для человека. Читать далее

Apple вернула себе второе место, но Xiaomi всё ещё висит на хвосте. Появился отчёт о рынке смартфонов в прошедшем квартале Аналитики Canalys опубликовали отчёт о рынке смартфонов по итогам третьего квартала. Поставки снизились на 6%, до 348 млн аппаратов.  Лидером осталась Samsung, реализовав 69,4 млн смартфонов, но у неё поставки просели на 13%, то есть сильнее, ч...

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

Создаем аналитическое хранилище данных командой из 2-3 спецов Всем привет! Сделать хорошее аналитическое хранилище (DWH), когда в команде десяток-другой крутых специалистов и пара лет времени — не сложно. Проекты по созданию DWH, Data Lake и BI обычно очень ресурсоёмки и под силу только большим компаниям. Мне интересно искать и применя...

Jetpack Compose в проектах на React Native: плюсы, минусы и интеграция Привет! Меня зовут Сергей Курочкин, я руковожу Android-разработкой в СберМаркете. Сегодня я расскажу, зачем нужен Jetpack Compose в проектах React Native, и поделюсь опытом интеграции фреймворка в наши приложения. В конце на примере простого компонента разберем весь процесс ...

[Перевод] Как миграция с Oracle на PostgreSQL в облако влияет на сторадж? Вы когда-нибудь задумывались о том, чтобы перенести крупномасштабное программное решение с Oracle на PostgreSQL, а затем развернуть его в общедоступном облаке? Если Вы планируете реализовать подобное, возможно, Вам поможет наш опыт. Данная статья подробно рассказывает о наше...

Создание API на основе протокола MTProto В уже  далеком 2019 Telegram объявил конкурс на создание веб-версии своего мессенджера, в котором мне удалось поучаствовать. По итогу у меня осталась библиотека, которая может работать с API Telegram по протоколу MTProto. Полученный опыт вдохновил меня реализовать прото...

ИТ-книга от идеи до выпуска. Часть 0: как начать и не бросить В конце прошлого года я выпустила свою первую книгу по тестированию — «Курс молодого бойца». Это было нелегко и долго =) Книгу я писала… 3 года! Потом ещё год искала художников и доделывала картинки. Потом искала издательства, проходила редактуру и т.д. Итого — 4.5...

В России создали уникальную операционную систему «Фантом». Это не очередная версия Linux В мире стало на одну операционную систему больше. Российский разработчик Дмитрий Завалишин объявил о скором завершении разработки уникальной, как говорит источник, микроядерной ОС «Фантом», работы над которой велись 12 лет.  Операционную систему р...

Умный дом на основе API Telegram Как реализовать рабочую IoT систему на API Telegram, создавать устройства, предусмотрев масштабируемость и развитие проекта. Читать далее

Текстовые игры — новый старый инструмент для автора или «Сделаем Текстовые Квесты снова Великими!» Про текстовые игры написано довольно много как на Хабре, так и на просторах интернета. Это один из самых первых жанров интерактивных развлечений с использованием ЭВМ и даже без него (просьба поделиться опытом НЕэлектронных текстовых игр в комментариях). В данной статье я хоч...

Реализация Smart Pointers в Delphi, и еще немного В последних версиях Delphi, появилось много новых, интересных возможностей. Сейчас попробуем сделать, с их помощью, что-нибудь полезное. Конкретно, создадим тип, который владеет объектом, ведет себя как этот объект, но при этом автоматически освобождается, когда на него боль...

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

JavaScript: делаем селфи с помощью браузера Привет, друзья! В этой статье я покажу вам, как делать селфи в браузере. Мы разработаем простое приложение со следующим функционалом: при инициализации приложение запрашивает у пользователя разрешение на захват медиапотока (далее также — поток) из видеокамеры его устройс...

Xiaomi представляет «Чистый режим» в своем MIUI 13 В сентябре 2021 года Xiaomi начала набирать бета-тестеров для своего «чистого режима», который есть в китайской версии MIUI. Однако до недавнего времени Xiaomi не сообщала о ходе разработки «Чистого режима». Первоначально предполагалось, что MIUI будет отменено, но один поль...

[Перевод] Лучшие тренды веб-дизайна и UI на 2022 год Осторожно, статья очень «тяжелая», в ней много анимации (да, это один из трендов). Кликать на свой страх и риск! Был ли 2021 год лучше 2020-го? Однозначно да — если мы говорим о UI/UX дизайне. Были созданы новые крутейшие сайты и приложения, выпущено новое ПО для гра...

… И убрать 99 из 100. Как разгрести последствия мозгового штурма Как-то раз я поставил себе задачу придумать сто тем для диплома. О чем и написал в этой статье. Время расплаты. Сейчас я расстанусь с большинством из них. Если вам лень читать все, хотя бы ознакомьтесь со списком в конце и скажите, что думаете о нем. Вполне возможно, что им...

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

Datalore Enterprise 2021.3: ячейки SQL, подключение Jupyter-ноутбуков к БД, интерактивные отчеты и многое другое Привет, Хабр!Datalore Enterprise — это data science платформа для совместной работы с Jupyter-ноутбуками. Ее можно установить в частное облако или на приватный сервер компании.Новая версия 2021.3 позволяет специалистам по анализу и обработке данных работать с базами данных и...

10 лучших бесплатных OSINT-инструментов по версии компании T.Hunter Приветствую Хабр. На связи T.Hunter. Недавно у нас в офисе разгорелся спор – наберется ли хотя бы 10 сносных и, самое главное, БЕСПЛАТНЫХ инструментов для проведения OSINT? Ну и оказалось, что наберется. Это, разумеется, не топ инструментов, а просто наш небольшой список. Он...

Старт Недели молодежных спортивных обменов проекта «Один пояс и один путь» в Цзянсу НАНКИН (Китай), 9 декабря 2021 г. /PRNewswire/ — 5 декабря в Нанкине начала свою работу Неделя молодежных спортивных обменов в рамках инициативы «Один пояс и один путь», реализуемой в провинции Цзянсу. 209 молодых людей из 62 стран-партнеров инициативы, которые учатся ...

28 Атрибутов Хорошей Блок-Схемы для PCB В этом тексте написал о забытом понятии: блок-схемы для разработки электроники. В ГОСТ(е) их называли Э1 (Схема структурная). Блок-схем это хороший уровень абстракции при анализе электронного устройства или PCB. Представил несколько атрибутов, которые сформировались при созд...

Алиса научилась звонить по списку контактов Когда в списке есть два контакта с одинаковым именем, Алиса уточнит, кому именно нужно позвонить и по какому из номеров, если в карточке контакта указано несколько телефонов.

Что считать счастьем покупателя? По запросу [форма] мы должны угадать, что именно нужно покупателю: выпечка, наращивание ногтей, косплеить медсестру или калибратор кубов бетона. Задача — быстро понять, кто перед нами и что сделает человека счастливым. Я работаю над качеством поиска в Яндекс.Маркете. И кач...

Нужен ли скрипач или приключения кандидата наук в кровавом энтерпрайзе Мысль написать этот текст у меня появилась после того, как я прочёл статью уважаемого 3dvideo. В статье среди прочих автор поднимает тему оттока исследователей с кафедр университетов в коммерческие компании реального сектора экономики, когда “кровавый энтерпрайз” выгребает п...

Туториал для туториалов. Как написать пользовательскую документацию Есть устоявшеёся мнение, что для хороших продуктов руководство пользователя не нужно. Очередной холивар на эту тему разгорелся в нашем рабочем чате. Я не до конца согласен с этим утверждением. Хороший интерфейс действительно должен помогать пользователю быстро понять пр...

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

О Thread и ThreadPool в .NET подробно (часть 2) В предыдущей публикации мы рассмотрели некоторые базовые вопросы относительно потоков и пулов потоков и готовы двигаться дальше. Давайте проведём эксперимент и найдём правильный объём работы для пула потоков. Чтобы его издержки не давлели над объёмом полезной работы⚠️ М...

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

[Перевод] Война или мир: используем MATLAB и Python вместе Если вы студент, работаете в академической сфере или на производстве, вы, вероятно, сталкивались с ситуациями, когда вам нужно было объединить работу с более чем одного языка программирования. Это обычное дело в инженерных и научных приложениях, особенно когда они связаны с ...

MergeQueue и зелёный Master: часть 1-я В работе над проектом Образовательной Платформы Сбера мы столкнулись с ситуацией, когда интенсивность влития изменений в центральную ветку репозитория git существенно превысила время прохождения Quality Gate (статический анализ, сборка, автотесты) внесённых изменений. В стат...

Чем Universal Control отличается от Sidecar О том, как работает экосистема Apple можно слагать легенды. Большинство всех гаджетов настолько круто дополняют друг друга, что отказаться от одного из них уже практически невозможно — не то. Одна из самых крутых фич связки двух устройств — функция Sidecar. Став...

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

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

Отказоустойчивые Unbreakable кластеры в VMmanager Меня зовут Александр Гришин, и я работаю продакт-менеджером платформы виртуализации VMmanager. Недавно мы выпустили автономные Unbreakable кластеры, с их помощью можно организовать инфраструктуру высокой доступности и обеспечить непрерывность бизнес-процессов компании. Если ...

Разворачиваем Golang приложение в Kubernetes В этой статье я хочу поделиться примером, как можно развернуть простое приложение на Golang в Kubernetes, с помощью helm чартов и skaffold скриптов. Думаю, данная статья может быть полезной тем разработчикам, которые только знакомятся с Kubernetes, а возможно и более опытным...

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

Spotify хочет конкурировать с TikTok Spotify тестирует новый видеопоток в стиле TikTok в своем бета-приложении для iOS, которое показывает полноэкранные видеоклипы во время воспроизведения песен, сообщает информационное издание TechCrunch. Разработчики из Spotify подтвердили тест новой функции, но отказались ко...

Кейс интеграции IoT & Metaverse. Удаленное управление гирляндой реальной елки и стриминг видео В этой статье показан наш опыт интеграции интернета вещей (IoT) и метавселенной Decentraland. В ней вы найдете список необходимых навыков и мини-инструкцию, чтобы попробовать самим. В конце мы добавили видео-презентацию, что в итоге получилось.  Изучить подробнее

Немного об отладке C/C++ приложений Приветствую, С/С++ разработчики, те, кто только изучает эти языки и просто интересующиеся! В этом посте речь пойдет об отладочном расширении Stack Scopes для Visual Studio Code. Отладка важная часть разработки, но нужно признать, что не очень любимая большинством разработчи...

[Перевод] Как написать «Пятнашки» на Flutter Возможно, вы уже читали о конкурсе Flutter Puzzle Hack и думаете о том, как проявить максимум творческих способностей. И мы вам в этом поможем, рассказав о том, как структурирована кодовая база нашего примера головоломки. Подробностями делимся к старту авторского курса по ве...

Зачем писать ботов ВК на C++? Постараюсь поделиться своей библиотекой для работы API VK. Читать далее

Мой друг Netmiko. Часть 3: один скрипт для разных устройств Huawei Мы уже разобрали в прошлых частях как накатить на сетевые устройства Huawei список команд из внешнего файла. И это работает, если у нас сеть состоит из одинаковых устройств. Конечно, в реальной практике такое встречается редко. В этой работе мы рассмотрим как использовать ра...

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

Представляем trdl — Open Source-решение для безопасной и непрерывной доставки обновлений trdl (сокр. от “true delivery”) обеспечивает безопасный канал доставки обновлений от Git-репозитория до хоста пользователя. В состав trdl входят три ключевых компонента, которые помогают защищать систему обновления от потенциальных атак: HashiCorp Vault, TUF-репозиторий и Gi...

Уменьшение трафика за счёт сжатия изображений. На примере Laravel Как уменьшить трафик к вашему сайту в 200 раз? Возможно ли это? В этой статье рассмотрено динамическое создание превьюшек для графических файлов и последующее сохранение результатов такого преобразования для последующего более быстрого доступа к ним.Пример реализации на Lara...

Приглашаем QA-инженеров на One Night Offer Привет!Мы расширяем команду IT-специалистов и на этот раз приглашаем QA-инженеров уровня middle/senior пообщаться в новом формате — One Night Offer.Мы не будем тратить время на на найм «по всем правилами» — с долгими согласованиями и десятком собеседований. Предлагаем уложит...

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

[Перевод] Как реализовать DDD в Go С помощью микросервисной архитектуры можно построить масштабируемое и гибкое приложение. Однако, если команда бессистемно использует этот подход в своей работе, то скоро столкнется с разочарованием и неконтролируемой сложностью. Избежать этого поможет DDD (Domain-Driven ...

Как можно тестировать платформенные сервисы PaaS (Platform as a Service) — внутренняя платформа для запуска и разработки приложений. Если коротко, то наш PaaS позволяет легко и, можно сказать, при нулевом знании внутренней кухни создать свой сервис и начать пилить продуктовые компоненты. Более длинное объяснение — в э...

Шейдеры в Unity — это не сложно. Часть 3 — добавляем блеска Всем привет! Благодарен всем за замечания и комментарии к предыдущим статьям. Благодаря всем нам мы наполняем интернет доступными знаниями и это действительно круто.Сегодня продолжаем разбираться с шейдерами, а именно с работой с освещением. В прошлой части мы разобрали тип ...

Моя система физического и ментального здоровья гика Мне 39 лет и с 19 работаю разработчиком и руководителем проектов, женат, есть ребенок. Всё норм, единственный нюанс – тело досталось с начальными параметрами гораздо хуже средних. Когда ребенок рождается, его состояние оценивается по шкале Апгар 0-10. 7-10 – это норма, 0-2 б...

[Перевод] Обзор — ConvNet для 2020 В последние годы трансформеры, которые изначально были разработаны для обработки естественного языка, становятся все более важными в таких областях компьютерного зрения, как обнаружение объектов, сегментация изображений и т.д., опережая традиционные архитектуры, основанные т...

Как мы создаем микросервисные проекты с нуля Считается, что запуск микросервисов изначально затратнее по времени, чем монолит, и наш опыт это подтверждает. Однако, если следовать проверенным процессам, эти затраты можно минимизировать. Делюсь лучшими практиками и составляю чек-лист запуска. Читать далее

Моя первая игра — Picross.io Всем привет, я инди разработчик, но когда то я им не был :) За всё время своих скитаний я успел сменить много различных профессий, от грузчика и продавца консультанта, до сотрудника торгового зала в "Ленте", но в итоге пришёл в геймдев, и, в этой статье я поделюсь своим опыт...

Аналитика vs Data Science: как я ускорил поиск себя в профессии и нашел те самые задачи Мне 26 лет, я сменил направление карьеры с прикладной аналитики на Data Science. В моей истории не было кардинальной смены профессии, но я последовательно искал задачи «под себя».Мой опыт может быть полезен тем, кто пытается найти себя в аналитике и смежных областях, но неко...

Load as a Service: нагрузочное тестирование в inDriver Всем привет, я Никита Мунтян, QA Load Engineer в inDriver. Пришел в компанию в 2020 году развивать направление нагрузочного тестирования. В первую очередь познакомился с коллегами, выстроил план работы и начал планомерно выстраивать процессы и технические решения. Тогда пере...

5 причин купить смартфон Xiaomi Топ за свои деньги, лучше не найдешь — как только не говорят пользователи про смартфоны Xiaomi. В принципе, сложно с ними не согласиться. Китайцы предлагают кучу разных функций, которые делают их гаджеты лучшими на рынке. Стоит только заикнуться по поводу Samsung, как...

Поход выходного дня, митапы в баре и 30 тысяч на блины. Истории городских PHP-сообществ В крупных городах можно найти десятки ИТ-сообществ. Ребята собираются на митапы, делают трансляции, запускают чаты. А кто-то занимается этим много лет. Но зачем? Спросила у организаторов PHP-сообществ из 9 городов. Заодно узнала истории комьюнити, фейлы и советы — с чего нач...

WorldSkills VR как пример того, как нельзя организовывать олимпиады по современным направлениям Привет! Хотелось бы поделится своими впечатлениями о проведении одного из самых популярных технических соревнований в России и проблемами применения классического олимпиадного подхода к современным направлениям. Читать далее

В каналах Telegram появятся опции для отключения рекламы Основатель Telegram Павел Дуров сообщил о планах по внедрению ряда опций, которые позволят отключать официальные рекламные объявления в каналах мессенджера. Источник изображений: Telegram Собственную рекламную платформу Telegram представил в конце октября нынешнего года. Рек...

«Только экстренная и неотложная медицинская помощь» — что это значит По данным mos.ru, стоматологии, похоже, уже не медицинские организации В Москве и ещё паре регионов (например, в Санкт-Петербурге, Хакасии) сделали новую замечательную фишку: с 28 октября по 7 ноября в стоматологиях будет оказываться только экстренная и неотложная медицинс...

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

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

Whoosh — минималистичный менеджер состояний React Привет, Хабр! Разрешите поделиться своим велосипедом. Речь пойдет о минималистичном менеджере состояний React, интерфейс которого состоит из одной функции — createShared(). GitHub репозиторий проекта Читать дальше →

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

[Перевод] Многомодульность в Android и Dagger: пошаговый пример Наше мобильное направление продолжает делиться собственным опытом, а также переводить те статьи, которые могут сослужить разработчику хорошую службу. Эту статью по Android, написанную в 2020 году, мы выбрали, изучая вопросы оптимизации внедрения зависимостей на проекте, и пе...

Балансируем нагрузку в Jenkins В Arenadata мы используем Jenkins для CI. Почему? Как бы банально это ни звучало — так исторически сложилось. Мы хранили код в GitHub, когда там ещё не было Actions, и продолжаем хранить, потому что много работаем с Open Source. За три года работы с Jenkins мы неплохо разобр...

[Перевод] Игры прямо в Jupyter Notebook Практика в Jupyter Notebook — это основа нашего курса по Data Science. Но интерактивный блокнот можно использовать не только для работы. За подробностями из блога разработчиков Jupyter Notebook приглашаем под кат. Читать далее

Node.js: Heroes of Worker Threads ― C++ Addon Node.js имеет несколько способов исполнения CPU-bound заданий:1. Просто запустить CPU-bound задачу в одном процессе, блокируя event loop. Кто-то может возразить, что это совсем не вариант, но если этот процесс был специально создан для этой задачи, то почему бы и нет. Правда...

Разбор алгоритмических задач с собеседований в Google, Facebook, Amazon Всем привет! В данной статье пройдемся по двум задачам, взятым с leetcode.com из списка часто встречаемых задач на собеседованиях в FAANG:1. Guess the word2. Number of Good Ways to Split a StringЯ надеюсь на то, что вам понравятся задачки, и возможно, вы напишете свое лич...

[Перевод] Шаблоны C++: как итерировать по std::tuple — std::apply и еще пара приемов В предыдущей статье, посвященной перебору элементов кортежей, мы рассмотрели только основы. В результате нашей работы мы реализовали шаблон функции, который принимал кортеж и мог красиво вывести его в консоль. Мы также реализовали версию с оператором <<.Сегодня мы пойд...

Альтернативный подход к динамическим окружениям: использование Octopod Как Octopod помогает сделать динамические окружения доступными для всехПривет, Хабр! В этой статье я хочу рассказать как мы в Typeable используем динамические окружения (review- или preview-окружения) в нашей работе, какие проблемы нам удалось решить, почему и как мы применя...

[Перевод] git bisect: путешествие по времени и багам Добрый день, меня зовут Павел Поляков, я Principal Engineer в каршеринг компании SHARE NOW, в Гамбурге в

Выявление технических методов повышения уникальности текста с помощью PHP (в рамках создания собственной СДО). Часть 3 В процессе своей профессиональной деятельности мне приходится достаточно много работать с текстовыми документами, подготавливаемыми другими лицами. Одной из задач проверки качества документов является определение степени уникальности текста. Конечно, можно проверять каждый д...

Почему DevOps и Agile не работают в России, часть первая, Enterprise Пару лет назад, человек из Wrike написал серию статей про красную корпоративную культуру, причём во второй части буквально в 3 абзацах был весь смысл 4 статей. Было написано очень завуалировано и мягко, я же сегодня распишу, по сути, этот абзац в целую статью на примере круп...

Пишем свой плагин для IDEA для поддержки нового языка (часть 1) В статье рассмотрено как создается языковой плагин для IDEA на примере учебного языка Monkey. Приведены примеры из других плагинов. Пишем на Java и Kotlin. Читать далее

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

Установка Windows 10 с работающим звуком на старые MacBook и iMac Столкнувшись с проблемой не работающего звука при установке Windows на свой MacBook 11го года обнаружил, что материала по данной теме в русскоязычном сегменте интернета крайне мало, можно сказать что его нет вообще. Эта статья написана в помощь всем столкнувшимся с такой же ...

Фаззинг Linux через WTF Недавно появился фаззер What The Fuzz, который (кроме названия) интересен тем, что это: blackbox фаззер; snapshot-based фаззер. То есть он может исследовать бинарь без исходников на любом интересном участке кода. Например, сам автор фаззера натравил WTF на Ida Pro и нашел...

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

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

Как показаны дата-центры в кино и как они выглядят в жизни? 6 примеров из фильмов и сериалов Привет, Хабр! Чтобы этот понедельник прошел веселее, предлагаем прочитать наш мини-обзор на ЦОДы в кино. Собрали в подборку шесть эпизодов и комментируем, что показано точно, а что — совсем нет. Кстати, если захотите пополнить наш список фильмов и сериалов, оставляйте идеи...

Новую версию своего приложения на iOS выпустила компания ЛидерТаск Компания ЛидерТаск выпустила новую версию своего приложения на iOS. Самым примечательным обновлением стала интеграция голосового помощника Siri. Теперь с помощью фразы “Покажи задачи в приложении LeaderTask” пользователи могут легко просмотреть свои планы на любой день недел...

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

363 дня одного года на Хабре. Что лежит в Pocket у модератора? Парадоксальная ситуация: я просматриваю практически все статьи на Хабре и читаю все в Песочнице, но при этом у меня не остаётся времени, чтобы в течение рабочего дня с удовольствием и полным погружением прочитать то, что мне интересно. Поэтому я поступаю точно так же, как мн...

Как я решил стать трейдером и проигрался, а потом отыгрался, потому, что я программист. Мой опыт Таким я себя видел в своих мечтах. Freepik Здравствуйте дорогие хабровчане, в этом небольшом посте я хочу рассказать про свой опыт в торговле на бирже. Под катом я написал о том, как я пошёл тем же путём, что и все, и как и все (или как подавляющее большинство) проигрался,...

Как заинтересовать 120+ HR всего за месяц. Или как захантить к себе аналитика данных За месяц поиска работы собрал много полезной информации и хочу с вами ею поделиться.В начале немного статистики по прохождению этапов отбора в компанию:1 этап "Собеседование с HR-ом": 120+ HR-ов (рекрутеров) написало мне за месяц2 этап "Собеседование с руководителем" (знаком...

Доказательство Тьюринг-полноты однострочников на Python Однажды я заинтересовался - а любой ли алгоритм возможно реализовать всего в одну строчку Python кода? Оказалось - да! Читать далее

Как выложить свою первую библиотеку в open source Привет. Меня зовут Роман Аймалетдинов, я разрабатываю под Android в inDriver. Сегодня я решил поделиться своим небольшим знанием о том, как выложить в open source свой проект. Приятного чтения! Читать далее

Как мы лажали, открывая очередное юрлицо — на этот раз в США Я тут открывал юрлицо в США и сделал всё по инструкции «как не облажаться», но облажался. Уже в новых местах, не предусмотренных инструкцией. Главная инструкция вот тут, она написана не юристом, но сами юристы подтверждают, что получилась хорошая и на неё же ссылаются, к...

Платформа HMS Core официально представлена на MWC 2022 На выставке MWC 2022, проходящей с 28 февраля по 3 марта в Барселоне, официально представлена платформа HMS Core, демонстрируемая на трех стендах в зале №1 по улице Fira Gran Via. На этих трех стендах демонстрируются новейшие открытые возможности, реализованные в HMS Core 6....

Российские компании для разработчиков: куда и почему стоит устроиться на работу в 2022 году Несмотря на очевидные проблемы для IT-сектора в России в текущих условиях, потребность в IT-специалистах продолжает расти. По данным Минцифры, в различных сферах информационных технологий в РФ дефицит квалифицированных кадров составляет от 500 тыс. до 1 млн человек. Речь иде...

От чего PET-G теряет свои свойства со временем? В предыдущей статье я рассказывал о воздействии вибраций на PET-G пластик и считал, что тема будет на этом исчерпана. Но через некоторое время после публикации со мной связался Юнах Анатолий - автор youtube-канала Prozhektor8kvt и поделился интересующей его проблемой изменен...

Flutter: простыми словами про ассинхронность и параллельность Всем привет, читатели Хабра! В этой статье я хочу простыми словами рассказать про асинхронность и параллельность в Dart/Flutter. Многие новички сталкиваются с непонимаем того, что это и когда что использовать. Я сам столкнулся с этой проблемой в начале своего карьерного пути...

Сто раз сломай, один раз поправь или как мы улучшали тестирование отказоустойчивости и восстановления API Привет, хабровчане!Меня зовут Нурыев Асхат, я ведущий инженер по автоматизации в DINS. За время работы в компании я участвовал в решении множества сложных задач. В этой статье я поделюсь историей улучшения процесса и автоматизации тестирования высокой доступности и восстанов...

Борьба с  TOAST или будущее JSONB в PostgreSQL В PostgreSQL есть два типа данных: JSON и JSONB. Первый формат является текстовым хранилищем, в котором json хранится "as is",  второй — бинарным, в нем ключи отсортированы  (сначала по длине ключа, а потом по его названию), дубликаты удалены, а пробелы удалены. Т...

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

«Право на забвение» или как просто удалять персональные данные по запросу пользователя Удалять персональные данные пользователя по его запросу, чтобы продукт соответствовал законам CCPA или GDPR, можно по-разному. Хоть вручную каждую заявку на почте разбирать. Главное — сделать процесс максимально простым и понятным для пользователя. А это уже хороший повод за...

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

[Перевод] Пишем чистый код при помощи деструктуризации объектов в JavaScript Сравниваем традиционный способ извлечения значений и деструктуризацию (ES6) в JavaScriptВ этой статье мы рассмотрим традиционное присваивание значений из объектов в переменные и новый синтаксис деструктуризации в ES6. Материал адаптирован на русский язык совместно с тимлидом...

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

Куо: AR-шлем Apple получит два процессора и выйдет до конца 2022 года Известный аналитик TFI Securities Минг-Чи Куо поделился своими новыми прогнозами относительно шлема дополненной реальности Apple. Эксперт полагает, что купертиновцы могут показать подобное устройство уже в конце 2022 года.Читать дальше... ProstoMAC.com.| Постоянная ссылка |...

Выиграйте пластики для 3D-печати от REC в мини-конкурсе на Хэллоуин! В честь самого жуткого праздника предлагаем поделиться своими 3D-печатными работами и получить в подарок фирменные филаменты REC, а заодно воспользоваться страшно привлекательными скидками на пластики для 3D-принтеров.

Какие задачи не решаются bat-файлами? Бат-файлы ведут свою историю со времен MS-DOS. Новые фичи добавлялись с сохранением обратной совместимости. Из-за этого многое в языке bat-файлов, как мы увидим далее, нелогично и неудобно.Вместе с тем, в bat-файле можно использовать переменные, условия, циклы и подпрограммы...

Go-контексты и микросервисы. Как решить проблему с соединениями к базе при помощи контекстов Всем привет! В статье расскажу:— Как и почему у нас возникла необычная проблема, вызвавшая поток 400-ых ошибок. — Как реализовали полноценную поддержку отмены операций в микросервисе.— Как реализовали свой пул подключений к базе для переиспользования подключений к базе ...

Proof Of Concept на Python или как портировать С/С++ Язык программирования Python существует уже 31 год. Это полностью объектно-ориентированный язык. За все время существования на нем стало возможно применять разные парадигмы. Сейчас этот язык может поддерживать:- объектно ориентированную парадигму- структурное программрование...

Однократные подписки При создании разных сервисов очередей часто возникает вопрос: «А как лучше реализовать систему уведомлений о событиях в очереди?» Она часто бывает сложнее в реализации, нежели сам сервис очереди. Система распространения уведомлений встречается во многих программных комплекс...

Как я через ioBroker шлагбаумы в поле шатал Расскажу свой опыт работы с ioBroker для управления шлагбаумами на ферме и интеграции их в голосовые ассистенты Алису и Siri. А также, познакомлю с контроллером JetHome D1 и особенностями его использования для ioBroker. Рассказывать буду не разжевывая, но указывая на методы ...

Отключить всё! Ускоряем работу Windows 11 на старом железе Для подписчиковЯ люблю смелые эксперименты. В качестве одного из них я решил водрузить Windows 11 на старенький ThinkPad x200S. Пришлось разбираться, как заставить систему крутиться быстро и без лагов на морально устаревшем железе. Этими способами я хочу поделиться с тобой —...

Захотели мы свой классифайд сделать на Vue и что у нас получилось Как обычно и бывает, долго мы не думали, появилось желание написать свою доску объявлений (классифайд или маркетплейс) каждый называет как хочет. Думали напишем за 1-2 месяца и выпустим, но все оказалось намного сложнее чем мы думали.Стек выбрали тот, с которым нам было комф...

Управляем подсветкой клавиатуры при смене языка ввода Недавно я купил себе клавиатуру от Corsair модели K55 RGB Pro. У нее есть модная нынче RGB-подсветка, а чтобы ее настраивать, производитель предлагает скачать программу iCUE. На сайте написано, что некоторые игры могут управлять подсветкой совместимых устройств. Я заинтересо...

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

Actions: как в GitHub, но в GitLab Привет! Меня зовут Артемий Окулов, я lead центра компетенций CI/CD в X5 Group.То, чем мы с командой занимаемся, можно отнести к области под названием Developer Experience. В какой-то момент ИТ в компании достигает такой зрелости, что появляются tools team, enabling team и ин...

В Telegram вопреки обещаниям появилась реклама Впервые о готовящемся появлении рекламы в Telegram стало известно 26 октября 2021 г., когда Павел Дуров сообщил об этом через свой личный Telegram-канал. Он заявил, что спам будет размещаться в публичных каналах от 1000 читателей и будет ограничен 160 символами. Также он зав...

Ментор в беде не бросит: как онбордить новичка, чтобы он тестил в свое удовольствие Всем привет. Меня зовут Ильмир, я QA Manual Engineer в inDriver. В статье расскажу о своем опыте менторства. Я занимаюсь этим уже больше 2 лет и хочу поговорить про этапы, которые могу выделить как основные. В статье будут затронуты не проблемы методик и инструментов дл...

MoreliaTalk — безопасный мессенджер с открытым исходным кодом Привет, Хабр! Сегодня я хочу рассказать вам о проекте, над которым я и ещё несколько разработчиков трудимся уже около полугода. Этот проект называется MoreliaTalk. Что это же он из себя представляет? MoreliaTalk - это мессенджер с открытым исходным кодом, построенный на клие...

Как Apple накручивает рейтинг своим приложениям Когда Apple разрешила ставить оценки своим родным приложениям в App Store, пользователи сразу же начали писать о большом количестве проблем, связанных с Apple Music, Подкастами, Переводчиком и прочим. С ними сложно не согласиться, некоторые ошибки порой делают софт настольк...

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

[recovery mode] Как тестировать gradle-плагины Когда я писал свой первый gradle-плагин, я проверял его работоспособность следующим образом:1. Опубликовал версию n в plugins.gradle.org2. Проверил опубликованный плагин вручную на тестовом проекте3. Нашел ошибку/доработал, увеличил версию n=n+1, затем снова пункт 1Такой во...

Когда очень хотелось получить работу в Америке или в бою все средства хороши Привет, Хабр! И я та самая HR из HazelCoders из статьи, которая помогает в поиске разработчиков в Американские компании

«Почему Apple делает такой уродливый вырез в экране своих ноутбуков?» Создатели Gnome троллят Apple выпуском оболочки с «чёлкой» Разработчики Gnome — свободной среды рабочего стола для UNIX-подобных ОС — решили поучаствовать в шумихе вокруг «чёлки» в новых MacBook Pro.  На GitHub они выпустили оболочку iNotch. Лозунг у неё говорит с...

Не гляди назад: считаем свои ачивки и предвидим будущее ИТ в 2022 (там местами не очень) Когда я итожу то, что про́жил, я роюсь в постах... «Я не считаю в истинном смысле этого слова корпоративными блоги вроде Ruvds [...], просто скупающих любых авторов независимо от темы. Не говорю, что это плохо, но это не корпоративный блог», — написал в одном из комментарие...

[Перевод] Работа с API на языке R, введение в пакет httr2 Цель этой статьи - показать вам основы httr2. httr2 - переосмысленная реализация пакета httr, т.е. интерфейс для работы с HTTP запросами на языке R.Из статьи вы узнаете, как создавать и отправлять HTTP-запросы и работать с полученными HTTP-ответами. httr2 разработа...

Обфускация трафика своими руками. Часть первая — OBFS4 Гайд о том, как на практике применить обфускацию, используемую в TOR для обхода DPI или непрозрачных прокси-серверов (причем, не только на уровне провайдера/государства, но и корпоративного уровня) без сильного замедления трафика засчет self-hosted. Читать далее

Как UIView мешал слоям анимироваться Эту часть я хотел посвятить анимациям, но понял, что это очень большая тема и для нее тоже нужен контекст. Поэтому сначала расскажу, что же лежит под капотом тех методов, которые мы обычно используем для анимаций. Заодно разберемся с таким понятием, как неявные анимации...

«День с̶у̶р̶к̶а̶ Redux» — как бороться с рутиной, применяя автоматизацию "Ух-ты! Какая интересная задача! И оценка времени на разработку хорошая! ..." 2 часа спустя: "Какой же это ужас, ещё 10 редьюсеров создать, ещё 10 раз описать зависимости состояний. Типы, компоненты... Сколько же бесполезной рутины... Вот бы можно было писать только декларат...

[Перевод] Нет такого понятия — чистый код Кажется, все сейчас стремятся к «чистому» коду. Нет почти ни одной статьи в блогах, где автор не скажет о том, насколько «чист» его подход. Команды собираются обсудить, какое из возможных решений самое чистое. Разработчики вокруг заверяют, что практикуют «чистый код».Тем не ...

Стейт-машины в iOS Бизнес-логика – это сложно. Сложная бизнес-логика — ещё сложнее. А описать всё это в коде – просто жесть. Мы с вами каждый день реализуем тонну разных сценариев с огромным количеством веток развития. Каждую ветку нужно запрограммировать, потом суметь быстро поправить, а когд...

Toyota придумала руль с изменяемым диаметром. У него попросту будет надуваться обод Компания Toyota запатентовала технологию изменения диаметра рулевого колеса автомобиля.   Идея компании вовсе не в том, чтобы пользователь мог настроить диаметр руля согласно своим предпочтениям. Технология нужна в качестве системы оповещения.  Фактически это...

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

Новые сервисы для создания идеальных приложений показывает HMS Core на MWC 2022 На выставке MWC 2022, проходящей с 28 февраля по 3 марта в Барселоне, официально представлена платформа HMS Core, демонстрируемая на трех стендах в зале №1 по улице Fira Gran Via. На этих трех стендах демонстрируются новейшие открытые возможности, реализованные в HMS Core 6....

[Перевод] Как выбрать подходящий Go-роутер? (с блок-схемой) Когда вы начинаете разрабатывать веб-приложение с применением Go, один из первых вопросов, которым вы, вероятно, зададитесь, — “Какой роутер мне следует использовать?”.И это не такой простой вопрос, как может показаться сначала. Доступно более 100 различных роутеров с разным...

Как мы (не сразу) сделали онлайн-квиз для ЦК аналитики Привет! Мы уже написали несколько постов про наш центр компетенций аналитики — про онбординг джуниоров, про рабочие процессы и прочее. Сегодня я хочу рассказать про то, как проводить тимбилдинги, которые не будут казаться команде чем-то обязательным, нужным и скучным.У нас в...

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

[Перевод] Сравниваем async/await и then/catch с примерами  В JavaScript есть два основных способа обработки асинхронного кода: Promise (ES6) и async / await (ES7). Эти синтаксисы дают нам равные базовые функции, но по-разному влияют на читаемость и область видимости. В этой статье мы увидим, как один синтаксис помогает, а друг...

7 правил от опытного тимлида, которые помогут добиться успеха не только в IT Привет. Меня зовут Андрей Костылев. Я работаю в IT более 15 лет.  За это время вырос из рядового программиста в тимлида и CEO проектов. Сейчас наш основной стартап — система автоматизации X24:ERP, которая помогает довести производственные процессы до совершенства.Сегодн...

Доводим распределённые действия до конца с использованием простейшего паттерна Saga Привет! Меня зовут Иван, я занимаюсь бэкенд-разработкой в Ozon: пишу микросервисы на Go для личного кабинета продавца. В прошлом году мы запустили новый процесс регистрации продавцов, в котором задействовано сразу несколько микросервисов. В нём стало больше шагов, при этом к...

[Перевод] Объектно-ориентированный анализ BABOK Рассмотрим ситуацию, когда вы являетесь бизнес-аналитиком, который планирует работу над проектом в соответствии с рекомендациями BABOK. Руководитель проекта хочет спланировать свое время, затрачиваемое на деятельность по бизнес-анализу. Вы составляете отчет BABOK, в котором ...

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

Пишем свой плагин для IDEA для поддержки нового языка (часть 2) Продолжение статьи о создании языкового плагина для IDEA на примере учебного языка Monkey. Приведены примеры из других плагинов. Пишем на Java и Kotlin. Начало Читать далее

Открытые возможности на MWC 2022 демонстрирует HMS Core На выставке MWC 2022, проходящей с 28 февраля по 3 марта в Барселоне, официально представлена платформа HMS Core, демонстрируемая на трех стендах в зале №1 по улице Fira Gran Via. На этих трех стендах демонстрируются новейшие открытые возможности, реализованные в HMS Core 6....

Игра в «Было/ не было»: как делать бэкапы, чтобы не стать грустным админом «Когда-то я был админом, который не делал бэкапы. Теперь я очень грустный, но бэкапы делаю», — цитата одного сисадмина. Сегодня международный день резервного копирования. Повод вспомнить, какие промахи в настройке и хранении бэкапов зацементировали ваши нервные клетки и ост...

Static Reverse engineering для web Львиная доля всех статей, которые посвящены вопросу обратной разработки посвящены темам анализа низкоуровневого представления приложений и работы прошивок устройств. Только ли в этих областях можно применять подходы, которые использует обратная разработка? Попробуем разобрат...

Я понял только то, что ничего не понял На тему услуг написано довольно много самых разных статей, т.к. оказание услуг – самый распространенный вид человеческой деятельности. Банковские услуги, гостиничные услуги, юридические услуги, логистические услуги; парикмахер, курьер, айтишник – все это деятельность в сфере...

JNI Часть 2: Примеры Всем привет! Меня зовут Роман Аймалетдинов, я разрабатываю клиентское приложение Ситимобил. Продолжаю свою серию статей по JNI, так как технология используется редко, но иногда она бывает очень полезной (или просто интересной). В этот раз я покажу примеры решений на JNI, кот...

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

Чтение книг, просмотр фильмов и еще 4 вещи, которые не стоит делать на смартфоне Смартфон давно перестал быть просто средством связи: подумайте сами, что вы делаете с ним чаще? Уверен, смотрите сериалы, YouTube и просто изучаете что-либо. Звонки отошли на второй план, и в этом нет ничего странного. Несмотря на то, что смартфон теперь является карманным ...

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

Играть в игры PlayStation на ПК или смартфоне. На Android 12 приложение PS Remote Play поддерживает новые функции геймпадов Android 12, кроме прочего, принесла пользователям расширенные функции работы с геймпадами. Компания Sony уже реализовала их в приложении PS Remote Play.  Теперь владельцы смартфонов с Android 12 могут как пользоваться всеми возможностями геймпа...

В Solar inRights 3.1 реализована модель управления рисками Компания «Ростелеком-Солар» выпустила новую версию платформы управления доступом Solar inRights 3.1. В обновлении реализована модель рисков, позволяющая управлять уровнями риска сотрудников компании, а также реализовано хранение истории всех ...

[Часть 1] Математика в АБ-тестах. Что такое z-score и p-value? Приветствую тебя, дорогой друг! Эта публикация была создана для тебя, если ты хотел бы разобраться с этими непонятными словами из заголовка раз и на всегда. Как с идейной, так и с математической стороны. Признаюсь сразу, в свое время в универе частенько прогуливал семинары п...

Мозгоувеличитель для программистов и кусочек ЗОЖа Как-то, в очередном приступе прокастинации, сидел я и думал, чего бы такого понажимать, что бы нажималось. И еще раз нажималось.И решил я из своих древних архивов достать свою программку-тренажер для прокачивания памяти на основе принципа n-back, но адаптированную под програ...

Сокеты в Python, чат в 50 строк На очередной практике по Java, не предвещающей ничего необычного, преподаватель ворвался в аудиторию и с порога заявил: "Сегодня мы с вами познакомимся с сокетами и напишем прототип собственного чата"."А вечер-то перестаёт быть томным" - подумал я и не ошибся. Чёрт возьми, э...

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

Camunda: тестируем модели процессов Привет! Продолжаем делиться опытом о том, как можно автоматизировать бизнес-процессы в банке с помощью Camunda. В прошлой статье мы рассказали об одном из проектов, который создали на базе Spring Boot с подключенной Camunda в качестве библиотеки. В этом материале расскажем о...

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

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

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

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

AMD может реализовать в FSR 2.0 временное масштабирование и сглаживание без ИИ Возможно, о технологии расскажут в конце марта.

Windows 11 станет более экологичной. ОС будет устанавливать обновления тогда, когда в энергосеть будет поступать больше электричества из возобновляемых источников Microsoft сильно озаботилась экологичностью Windows 11. Ранее компания тестировала эко-рейтинги для ПК под управлением Windows 11, а сейчас Microsoft хочет сделать так, чтобы обновления в системе устанавливались в часы, когда в энергосеть дома или квартиры пользователя ...

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

Извлечение NTLM hash пользователя из процесса lsass.exe с помощью уязвимого драйвера Приветствую вас, дорогие читатели! Сегодня я хочу рассказать о том, как с помощью уязвимого драйвера получить NTLM hash пользователя. NTLM hash находится в памяти процесса lsass.exe операционной системы Windows. Процесс lsass.exe отвечает за авторизацию локального пользовате...

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

Градиентный бустинг с CatBoost (часть 2/3) В первой части статьи я рассказал про понятие градиентного бустинга, библиотеки, с помощью которых можно реализовать данный алгоритм и углубились в одну из этих библиотек. Сегодня продолжим разговор о CatBoost и рассмотрим Cross Validation, Overfitting Detector, ROC-AUC, Sna...

[Перевод] Акторы Swift под капотом Акторы (Actors) — это фича, являющаяся частью структурированного параллелизма (Structured Concurrency) Swift, которая предлагает совершенно новый формат для написания и обработки асинхронного кода. Хотя они и являются чем-то инновационным для языка Swift, сама технология нов...

Слон в посудной лавке, или как сохранить сроки производства в эпоху перемен В геймдеве только и разговоров, что о ремастерах. Уже на протяжении долгого времени мы рассказываем о том, как они создаются, на примере своего опыта с War Robots: о разных аспектах от препродакшна до внешних тестов и нового пайплайна разработки карт. Логично предположить, ч...

Valve рассказала о самых успешных играх Steam в уходящем году Valve в рамках проходящей сейчас масштабной зимней распродажи Steam рассказала о самых прибыльных и популярных играх в своём сервисе цифровой дистрибуции за уходящий год. Источник изображений: Steam Бестселлеры Steam определялись по объёму выручки с 1 января по 15 декабря. В...

Kia показала электрический кроссовер Concept EV9 Корейская компания Kia опубликовала первые подробности о своём электромобиле будущего — кроссовере Concept EV9.  Международная премьера Kia Concept EV9 запланирована на 17 ноября. Она состоится на автосалоне AutoMobility LA в Лос-Анджелесе. Презентация ...

QA и Support: как не усложнять друг другу жизнь Привет. Меня зовут Маша, я — тестировщик в команде мобильной платформы. Когда-то для нас была актуальна проблема взаимодействия QA и Support. Сложностей было предостаточно, как и неприятных последствий. Но со временем мы успешно разобрались во всем. Хочу поделиться нашим опы...

Nokia встаёт с колен? Продажи смартфонов бренда ощутимо выросли Продажи смартфонов Nokia после возрождения бренда никогда не были ощутимыми для рынка. Однако в последние пару лет они зачастую только и делали, что снижались. Последние пару кварталов ситуация улучшается.  Как сообщает источник, ссылаясь на данные Counterpoi...

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

Просто о сложном — move в языке C++ Здравствуйте уважаемые читатели. Данная публикация адресована начинающим разработчикам С++ которые только становятся на путь высокой производительности и "отстрелянных конечностей". Опытные разработчики найдут здесь скорее повторение тех вещей, которые сами мучительно осваив...

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

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

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

Термоядерный синтез [своими руками] В этой статье я хочу рассказать подробнее о фузоре Франсуорта-Хирша. Впервые об этом творении я узнал из видео с канала "Физика от Побединского" и мне сразу же захотелось повторить показанный в видео продукт. Собственно само видео. Читать далее

Английский — это просто Меня зовут Денис, я являюсь Sysadmin/DevOps в небольшой шведской компании. Работаю удаленно 3 года. В Otus преподаю курс, связанный с мониторингом в Linux. Очень часто я слышу вопрос: «на работе на английском общаетесь? Как у тебя с языком?» Я думаю понятно, что не...

Платформа «Гостех» позволит разработчикам продавать свое ПО госорганам без тендеров Об этом 9 ноября 2021 г. сообщил глава Минцифры Максут Шадаев во время своего выступления на ежегодном "CNews FORUM. Информационные технологии завтра".Напомним, развивающийся сейчас в пилотном экспериментальном режиме "Гостех" представляет собой облачное ...

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

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

Асинхронное программирование в однопоточных средах JavaScript Асинхронное программирование в однопоточных средах JavaScript Моя прошлая обучающая статья Введение в Redux & React-redux набрала больше 100к просмотров. Что же это не может не радовать меня. И поэтому я решил порадовать и вас написав очередную статью по JavaScript. Хотя...

Из грязи в RPKI-князи-2. Имплементация RPKI на сетевом оборудовании В предыдущей части я рассказывал, почему для ИБ важна валидация маршрутов в ВGP и как каждый клиент сервис-провайдера может обезопасить протоколы маршрутизации с помощью RPKI.  Но если у вас своя АС с несколькими пирингами, как это бывает у многих банков или ИТ-компан...

[Перевод] Сериализуемость транзакций В этой статье рассмотрим, что такое "Сериализуемость" (Serializability) и какие гарантии она предоставляет.В реляционных СУБД уровень изоляции Serializable (сериализуемость), как следует из названия, обеспечивает сериализуемость транзакций. Однако, как вы увидите далее, в не...

Мой опыт с Webpack 5 Module Federation Всем привет. Меня зовут Михаил, я - фронтенд-разработчик в Лиге Цифровой Экономики.В последнее время я пробую себя в должности руководителя направления фронтенд-разработки, однако я хочу с вами поделиться опытом разработки приложения с применением Webpack Module Federation, ...

Мой опыт технического собеседования: как не превратить его в экзамен и найти профпригодного сотрудника Привет, Хабр! Меня зовут Леонид Титов, я бэкенд разработчик в #CloudMTS. Так уж сложилось, что я не только пишу код, но и иногда собеседую кандидатов. Мне нравится процесс, и, думаю, у меня это получается. Начал я этим заниматься ещё на предыдущем месте работы, где мы с ...

[Перевод] Чувствуете запах? Пахнет утечкой ваших данных Привет, на связи Денис Генералов, младший системный администратор Cloud4Y. Сегодня хочу поделиться статьёй, которая актуальна в связи с выходом Windows 11 и обязательным требованием вендора о наличии TPM для защиты данных владельцев устройств. Выражаю своё почтение автору ст...

Проектирование сложных систем. UX-Марафон Коллеги из Яндекса, Сбера, Тинькофф, Вконтакте, Мой Склад, Solit Clouds расскажут про свой опыт проектирования сложных систем, типичные ошибки, инструменты и подходы. Вы узнаете, как проектируют продукты, которыми пользуются миллионы людей, и сможете внедрить лучшие практ...

Генерируем Rust обёртку для FMOD Rust — хороший выбор для разработки игр. Хотя экосистема языка еще молода, с помощью FFI можно использовать готовые решения написанные на другом языке. Но написание и использование FFI может быть не тривиальной задачей, когда дело доходит до чего-то большего, чем вызов одной...

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

Вышла новая версия PrusaSlicer 2.4.0 На гитхабе стала доступна новая версия PrusaSlicer 2.4.0 https://github.com/prusa3d/PrusaSlicer/releasesМногое изменено или улучшено. Основные изменения коснулись настроек печати, а именно настроек печать мостов и поддержек, а так же режима двухцветной печати. Кому интересно...

[Перевод] Подгон под MNIST-овский датасет В интернете можно найти 1000 и 1 статью по тренингу мнистовского датасета для распознавания рукописных чисел. Однако когда дело доходит до практики и начинаешь распознавать собственные картинки, то модель справляется плохо или не справляется вовсе. Преобразуем произвольное и...

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

5 нейросетей для создания уникальных фотографий и рисунков Изображение, созданное нейросетью DALL-E 2 В апреле 2022 года американская компания OpenAI представила обновленную версию нейронной сети DALL-E 2, которая самостоятельно создает реалистичные картинки по текстовому описанию. Например, если написать ему «Астронавт едет на лоша...

Использование Jetpack Compose в продакшне: первые впечатления Мы в МТС Банке давно ждали релиза Jetpack Compose, чтобы использовать его в продакшне. В прошлом месяце такая возможность наконец появилась — мы решили обновить дизайн одного из экранов нашего приложения «МТС Банк для бизнеса» для Android. В статье я хотел бы поделиться н...

Очиститель воздуха Kitfort KT-2825: чистый воздух и минимум шума Для работы в жилых помещениях воздухоочиститель должен хорошо справляться с мелкими частицами пыли и органическими примесями — и делать это тихо. Kitfort KT-2825 соответствует обоим этим критериям. А заодно и симпатично выглядит.

99+ бесплатных инструментов для анализа зловредов Знай своего врага ― одна из максим, которой руководствуются специалисты по информационной безопасности. Она касается и зловредов. Существуют сотни инструментов, которые помогают исследовать вредоносное ПО. К счастью, многие из них бесплатны и имеют открытый исходный код.&nbs...

Собираем «Тревожный чемоданчик». Мнение спортивного туриста Когда началась война, все произошло так быстро, что я не могла ни понять, что происходит, ни подумать о том, что хотела бы взять с собой, когда мы убегали. (из интервью сирийской беженки) Мне почему-то не хочется делать вид, что ничего не происходит. Потому что нынешняя вое...

Портируем код C/C++ на Python В первой части нашего небольшого цикла статей мы исследовали возможность использования структур данных в Python, которые были созданы с помощью языков программирования C/C++. Для этого мы рассмотрели библиотеку Ctypes.В этой статье попробуем разобраться, какие еще есть подхо...

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

QR за QR: новый принцип безопасности социальных взаимодействий Ходил я давеча на оффлайн-конференцию. На входе меня попросили показать QR-код и паспорт. Все прошло хорошо, однако, вопрос: “а кто вообще, эти люди, которым я должен показать свой основной документ, свои персональные данные?”, меня не оставил.  Желающие узнать как я пр...

Зачем и как хранить объекты на примере MinIO Наша биг дата проанализировала Telegram-чаты, форумы и разговоры в кулуарах IT-мероприятий и пометила объектные хранилища как инструмент, который ещё не все осмеливаются использовать в своих проектах. Хочу поделиться с вами своим опытом в формате статьи-воркшопа. Если вы ...

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

Rainbow Six Siege Mobile могут показать в апреле Ubisoft работает над Rainbow Six Siege Mobile совместно с Tencent. Анонс в первых числах апреля и это не первоапрельская шутка. Rainbow Six Siege Mobile — командный шутер для iOS и Андроид, который покажут 6-го апреля 2022 года. Релиз игры намечен на 2023 год, пока неясно в...

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

В России разработают технологию, которая на порядок повысит скорость передачи данных со спутников Холдинг «Российские космические системы» (РКС), входящий в государственную корпорацию «Роскосмос», разрабатывает специальный математический алгоритм, который позволит в разы повысить скорость передачи данных со спутников дистанционного зондирования Земли (ДЗЗ). Источник изоб...

Бюджетная реализация Modbus TCP в серии Simatic S7-300/400 при помощи Logo Классические линейки контроллеров Siemens, а именно — Simatic S7-300 и Simatic S7-400, поддерживают протокол Modbus TCP как в качестве клиента, так и в качестве сервера. Эта поддержка не лишена одного существенного недостатки, она платная, и стоимость лицензии весьма высока....

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

Ускоряем java-рефлексию в 2022 После прочтения заголовка у среднестатистического читателя наверняка возникнет весьма логичный вопрос: «Кто такая эта ваша рефлексия и зачем её ускорять?»И если первая часть будет волновать только совсем уж откровенных неофитов (ответ тут), то вторая точно нуждается в поясне...

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

Huawei может решить проблему отсутствия 5G в своих смартфонах оригинальным способом – при помощи аксессуара Как пишет источник, смартфоны Huawei, обделенные поддержкой 5G, в скором времени могут ее обрести. Причем речь и о новых моделях, и о тех, которые уже выпущены. Достигнуто это будет при помощи дополнительного аксессуара – специального чехла. Напомним, проблема со...

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

SpaceX начала тестирование спутникового интернета Starlink в самолётах Компания SpaceX, принадлежащая Илону Маску, и реализующая грандиозный проект создания сети интернета Starlink, приступила к реализации тестирования доступа к ней в салонах самолетов. Для испытаний задействовано несколько авиалайнеров.

Новое слово в расчётах систем видеоконференцсвязи — часть №2: расчёт диагонали ТВ и VR-визуализация 360˚ В прошлой статье Часть №1: подбираем видеокамеру, используя 3D-моделирование мы показали удобные современные инструменты для подбора оптимальной камеры для переговорной комнаты или конференц-зала.Этому проекту посвящается цикл статей:Часть 1: Подбираем видеокамеру, используя...

Jetpack Compose оптимизация производительности списка Я в своем время наткнулся на довольно интересное поведение composable функций в списках, тогда мне помогла статья с медиума и чтение книги по compose internals, ссылки на них я приложу в конце статьи. Решил поделиться, возможно кому-то это поможет) Отображение списков рас...

Google упростила жизнь владельцам телевизоров с Android TV, добавив возможность установки приложений со смартфона Компания Google упростила жизнь владельцам телевизоров с Android TV. Теперь такие пользователи могут устанавливать приложения на свои телевизоры прямо со смартфона.  Для установки достаточно зайти со смартфона в Google Play и выбрать из выпадающего списк...

Автоматизация разработки конструкторской документации средствами VBA При выполнении проектов, в которых требуется разработка конструкторской документации соответствующей ГОСТам ЕСКД или СПДС, возникает много задач, связанных с ее корректным изготовлением. Часть этих задач связана с непосредственным оформлением документов – заполнением основны...

[Перевод] Практические рекомендации по работе с Docker для Python-разработчиков Прим. Wunder Fund: в этой длииинной статье вы найдете ряд полезных советов по работе с Docker, как общего характера, так и Python-специфичных. Хоть мы и давно используем Docker в работе, про некоторые советы мы подумали "а что, так можно было?". Советуем вначале пролистать с...

Убедитесь, что ваш пароль не входит в этот список из 200 самых распространенных комбинаций Еще используете простые пароли? Считайте, что оставляете входную дверь незапертой. А если найдете один из своих паролей в ежегодном списке из 200 самых часто используемых паролей, то вы практически держите дверь нараспашку. От «123456» до «qwerty» – если вы обнаружили свой п...

[Перевод] Пишем Python-расширение на Ассемблере (зачем?) Прим. Wunder Fund: в жизни каждого человека случается момент, когда ему приходиться позаниматься реверс-инжинирингом. В статье вы найдёте базовые особенности работы с ассемблером, а также прочитаете увлекательную историю господина, который решил написать Питон-библиотеку на ...

Так может выглядеть Xiaomi 12 Ultra. Смартфон показали на схематичном изображении Работа над перспективными устройствами в Xiaomi идет постоянно, и большинство их проходит обязательный этап патентования. А изображения, сопровождающие патент, часто становятся первоисточником информации о дизайне той или иной модели. Обычно по внешнему исполнению можно...

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

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

7 вопросов о компьютерной томографии Привет, Хабр! Спустя много лет режима ReadOnly, решила зарегистрироваться, чтобы рассказать о своем опыте работы с промышленным томографом. Когда люди узнают, что я занимаюсь компьютерной томографией, то обычно задают два вопроса: первый - «Это неопасно? Там же излучени...

Зачем нужен сервис VK Музыка В последний день ноября социальная сеть «ВКонтакте» решила порадовать пользователей, запустив сервис VK Музыка, который заменил Boom. Суть в том, что у социальной сети наконец есть свой стриминговый сервис с логичным названием, а не Boom. Тем не менее, мне пришлос...

В Москве растет конкурс инвесторов на новые участки В 2021 году Москва увеличивает объем площадей, которые продает или сдает инвесторам. За 11 месяцев город реализовал на торгах 111 участков общей площадью свыше 40 гектаров, конкурс со стороны инвесторов составил по 5 участников на лот. Это на 20% выше, чем в прошлом году и н...

Молодым везде у нас дорога, везде ли старикам почет? Привет Хабр!В этой статье я хочу поделится своими соображениями по поводу перспектив роста и развития «пожилых» (в возрасте более 40 лет) разработчиков. Статья будет полна субъективизма и антитолерантности, так что всем желающих похоливарить – добро пожаловать в комментарии....

[recovery mode] Spin FV-1. Железный ревербератор своими руками. Часть 1, вводная Статья пригодится для тех, кто хочет сам разработать и собрать педаль пространственных эффектов для гитары/синтезатора и, заодно сделать первые шаги в области цифровой обработки звука. Читать дальше →

«Я больше не могу»: 5 причин эмоционального выгорания программиста и что с этим делать  Андрей Н. начал кодить 8 лет назад, и готов был работать сутками напролет, набирая «шабашки» на выходные, а в свободное от работы время изучая новые фреймворки. Работа приносила удовольствие, он наконец-то нашел себя! Спустя 8 лет Андрей с трудом заставляет с...

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

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

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

[Перевод] 7 характеристик хороших тестов Очень редко люди задумываются что определяет хорошие тесты. Если тесты отличные то их просто невидно - они прозрачно растворяются в процессе и про них только вспоминают когда они ловят баг. Читать далее

Resident Evil 2, 3 и 7 получат бесплатные обновления следующего поколения в конце этого года В этом году Capcom выпустит бесплатные графические обновления для своих ремейков Resident Evil 2 и Resident Evil 3, а также Resident Evil 7, которые представят трассировку лучей, режим с высокой частотой кадров и 3D-звук на PS5, Xbox Series X и ПК. Если у вас уже есть коп...

Представлена умная настольная лампа Google dLight Компания Google представила умную настольную лампу, которая получила название dLight. Корпус окрашен в чистый белый цвет, лампа имеет круглое основание, а также светящуюся часть овальной формы, которую можно повернуть под разными углами. Дизайнер Google Бен Голд, предст...

Раскопки, MindMap и читерство: как составить цепляющее УТП и не сойти с ума Одни говорят, что уникальное торговое предложение (УТП) – чуть ли не главное понятие маркетинга. Доносит до потребителя ценность продукта, его отличие от конкурентных товаров и все такое. Другие возражают, что на УТП уже никто не смотрит. Мол, если компания/продукт известны ...

Пересел с AirPods на проводные наушники. Вот что я думаю Ни у кого нет сомнений в том, что AirPods совершили революцию в мире наушников. Именно благодаря наушникам от Apple пользователям получилось привить мысль о том, что от проводов пора отказываться. Отрицать этот факт просто бессмысленно. Но немногие помнят, что в смысле звук...

Как начать писать программный код Си в ОС Linux (Руководство для совсем начинающих) Этот материал рассчитан на людей, будущих программистов, которые только начинают разбираться в программировании под ОС Linux, или может быть долго были пользователями ОС Windows. Я попробую здесь показать прямое руководство к действию на примере ОС Ubuntu и тех простых инстр...

СБП C2B. Снаружи и изнутри Мы все уже освоились с «переводами по телефону» друг другу, но пришла пора поговорить про оплату через СБП. Тем более что эту функцию реализовали уже больше 60 российских банков, то есть новый инструмент для платежа смартфоном есть теперь у большинства жителей страны.В этой ...

Процесс создания мультфильма. Первый опыт Привет всем. Это мой первый пост на Хабре. Уже много лет я слежу за некоторыми публикациями на этом ресурсе. И вот сейчас появилась тема, с которой я готов сам поделиться :) Уже лет 20 работаю в области компьютерной графики, практически во всех областях. От разработок сайтов...

Свой VPN в два простых шага. Инструкция Лучший VPN - когда свой, и тому есть ряд причин: сторонние VPN могут мониторить ваш трафик и хранить логи, скорость серверов бывает медленной, возникают проблемы с оплатой и блокировкой зарубежных сервисов, спорная репутация IP адресов публичных VPN и частые капчи с доказыва...

Порт Тяньцзинь, Huawei и China Mobile становятся обладателями премии GLOMO Awards На церемонии награждения премии GLOMO Awards решение Smart Port, реализованное совместными усилиями порта Тяньцзин и компаний Huawei и China Mobile, было признано лучшим мобильным нововведением для подключенной экономики. Эта премия присуждается за инновации на базе мобильны...

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

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

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

Продажи «АвтоВАЗа» обрушились в 2,7 раза, при этом Lada — самая популярная автомобильная марка в России Согласно свежим данным, «АвтоВАЗ» в марте этого года реализовал на российском рынке 12289 автомобилей Lada, что в 2,7 раза меньше, чем было в марте прошлого года. Если же оценить продажи за первые три месяца, то они упали более, чем на треть (-37%) и состави...

В iPhone 15 могут отказаться от слота для карты SIM. Джобс хотел, чтобы таким был ещё самый первый iPhone Согласно многочисленным слухам, смартфоны линейки iPhone 15 могут стать первыми моделями Apple, в которых компания откажется от слота для обычных карт SIM. То есть они полностью перейдут на eSIM. Как оказалось, отказаться от SIM Apple хотела ещё в самом первом iPhone.&n...

[Перевод] Обновление Node.js Как и всегда, участники сообщества усердно работают над добавлением новых функций в Node.js, перечисленных в виде pull requests на GitHub. Далее мы подробно расскажем о нескольких привлекательных дополнениях, которые ожидают нас уже очень скоро. А также обсудим, чт...

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

Идеальный каталог, пример использования Я разрабатываю библиотеку для работы с Entity Attribute Value (репозиторий), сокращенно EAV (структура базы данных для хранения произвольных данных). В конце прошлой статьи я спросил у вас о чём мне ещё надо написать, вы попросили показать пример использования и сделать заме...

Как переориентировать продуктовый подход облачного провайдера на быстрые изменения Привет, Хабр! Меня зовут Николай, я работаю менеджером по продукту в ИТ.  В прошлом году я перешел из компании поменьше в DataLine, где как раз начались интенсивные изменения в управлении продуктами.  В этой статье вместе с нашим операционным директором @abagaev ...

Microsoft Gaming приветствует невероятные команды и легендарные франшизы Activision Blizzard Наша команда стремится предоставить радость и чувство причастности к игровому сообществу всем жителям планеты. Мы знаем, что игры – одна из самых живых и динамичных форм развлечений в мире. Кроме того, каждый из нас точно знает, насколько интересными и сильными бывают общени...

Как не надо индексировать Развитие происходит по спирали: когда-то люди не умели правильно индексировать, потом (в основном) научились, потом пришли noSQL и все снова забыли знание древних. Что вы будете делать, когда последние из старых DBA отплывут в Валинор? Снова и снова и сталкиваюсь с полным на...

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

Dart Code Metrics — мой первый pull request В статье рассмотрел инструмент для анализа кода Dart Code Metrics и о том, насколько полезно его использовать. Постарался поделиться своими знания в создании нового правила для анализатора. Автоматизировали проверку имени класса и названия файла не только для своего проекта...

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

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

Google представит новый Android и многое другое 11 мая Каждый год компания Google проводит свое традиционное мероприятие для разработчиков. Для простого пользователя это звучит скучно, но на этом мероприятии нам официально показывают новую версию Android и говорят, когда начнется публичное бета-тестирование.  Обычно Google I/O ...

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

Почему приложения для Android хуже, чем для iOS Ассортимент приложений для iOS и Android примерно одинаков. Несмотря на то, что и тут, и там есть свои эксклюзивы, они являются скорее исключением, чем правилом. А все основные программы и сервисы вроде YouTube, Gmail, Сбербанк Онлайна, Google Карт и т.д. доступны для обоих...

Как подключить айфон к телевизору. 2 любимых способа Думаю, что многие из пользователей хоть раз испытывали необходимость в подключении своего смартфона к телевизору. Показать фотографии из отпуска или транслировать личное видео на широкую публику. Apple давно просекла фишку и выкатила для этих целей приставку Apple TV, котор...

[Перевод] Зачем вам может понадобиться собственный DNS-сервер? Одна из сложностей в понимании DNS заключается в его децентрализованности. Существуют тысячи (а может, сотни тысяч?) авторитетных серверов имён и по крайней мере 10 миллионов резолверов. На них работает множество разного ПО! Из-за того, что на разных серверах выполняется св...

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

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

PCIExpress 1.0 2.5GT/s analyzer на базе ПЛИС своими руками На работе я занимаюсь созданием PCIExpress устройств на ПЛИС. Некоторые из ПЛИС имеют встроенное PCIExpress ядро, позволяющее работать с этим интерфейсом на уровне пользовательского приложения. ПЛИС серии ECP5UM фирмы Lattice использует Soft-IP Core для реализации протокола,...

Дилемма моделирования в рамках Data Vault/Anchor Modeling: объект или событие Всем привет :) Меня зовут Голов Николай, я строю платформу данных на основе Snowflake и Anchor Modeling в ManyChat.В этой статье я уже подробно рассказывал, как решал аналогичную задачу  в Авито, используя Vertica и методологию Anchor Modeling. В комментариях ...

[Перевод] Создавая непредсказуемость. Примеры использования генераторов случайных чисел Привет, Хаброжители! У нас вовсю продолжается распродажа «Старый Новый год»Кто пытается арифметическими методами генерировать случайные числа, тот, конечно, живет во грехе. Поскольку, как указывалось уже неоднократно, нет такого феномена, как случайное число  —  есть только ...

Совершенно новое приложение WhatsApp для Windows уже доступно для скачивания Разработчики мессенджера WhatsApp уже довольно давно работает над совершенно новым настольным приложением для Windows. Теперь же вышла его можно загрузить в магазине приложений Microsoft для Windows. Само приложение основано на универсальной платформе Windows (Universal...

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

Личный ТОП приложений, которые стоит скачать на Android «Только не ТикТок» — первая мысль большинства пользователей, которые находятся в поисках крутых приложений на Андроид. Действительно, современные подборки софта, представленные в интернете не отличаются уникальностью. Несмотря на большое количество крутых ст...

Роутер Keenetic Peak KN-2710 на новой платформе: флагманская модель с большим числом портов Представленные более трех лет назад роутеры Keenetic вполне способны составить конкуренцию по скорости работы в определенных сценариях даже более мощным современным конкурентам. Но время не стоит на месте, и предъявляемые к домашним сетевым устройствам требования постоянно р...

Apple поделился новыми функциями iMovie, которые появятся в апреле После завершения мероприятия «Peek Performance» Apple представила две новые функции для iMovie, которые называются Magic Movie и Storyboards. С помощью Magic Movie вы можете быстро создавать видео, выбирая медиафайлы или альбомы из своей библиотеки и позволять пакету автомат...

Cloud Imperium выпустила обновление Star Citizen Alpha 3.17 Cloud Imperium выпустила новое обновление Star Citizen Alpha 3.17. Star Citizen Alpha 3.17 добавляет игрокам возможность продавать предметы инвентаря. Это включает в себя добычу, найденную в заброшенных местах, и оружие, «приобретенное» у других игроков. Более того, в Alph...

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

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

Открытая дверь Всем привет. Я –Валера Черепенников, бывший генеральный директор Intel R&D в России, а с2020 года VP Нижегородского исследовательского центра Huawei. Но сейчас я не от лица компании говорю, а хочу своей человеческой позицией поделиться. Те кто меня читают на других ресур...

[Перевод] Табличные тесты в Go с использованием Gomock Чтобы эффективнее тестировать работу программы, можно использовать табличные юнит-тесты. В этой статье пошагово рассказываем, как писать такие тесты с помощью фреймворка Gomock.Этот текст написал Golang-разработчик Арек Ностер. С разрешения автора мы перевели статью. Читать ...

Игра с null: проверка MonoGame статическим анализатором PVS-Studio Анализатор PVS-Studio уже не раз был использован для анализа кода библиотек, фреймворков и движков для разработки игр. Пришло время добавить к их списку MonoGame – низкоуровневый gamedev-фреймворк, написанный на языке C#. Читать далее

Ещё одна статья про дизайн-системы (в продуктовом дизайне) Привет. Меня зовут Костя, и я отвечаю за дизайн в Агиме. И да, я решил написать ещё одну статью по дизайн-системам, в довесок к 7 млн уже существующих. Я думаю, эта статья будет бесполезна для любого, кто сталкивался с ДС вживую. Но с другой стороны, мне регулярно ...

Technored запускает программу разработки отечественных промышленных роботов Российская компания Technored, занимающаяся робототехникой, сообщила о запуске программы разработки отечественных промышленных роботов. Как утверждается, эти роботы смогут заменить человека при выполнении «любых повторяющихся и опасных производственных операций&ra...

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

Из грузчика в QA без регистрации и смс Привет, меня зовут Павел Купцов, я —  QA в Петровиче. До QA я добирался несколько лет окольными путями: через техникум, работу грузчиком и «эникейщиком», упорное обучение, когда курсы нужно было искать, а не они находили тебя, через отчаяние и уныние. Но в итоге я добил...

Как приручить DDD. Часть 1. Стратегическая DDD — одна из моих основных рабочих методологий, я применяю её больше пяти лет. Хотя она довольна сложная, в том числе потому что это верхнеуровневый набор практик. DDD - это не фреймворк, когда нет опыта, его немного сложно применять. Тем не менее мы переводили на DDD работ...

Создание Native Images со Spring Native и GraalVM В этой статье я хочу исследовать возможности технологии Java Native Image, поделиться опытом взаимодействия с ней и со средствами Spring для генерации нативных образов. Читать далее

[Перевод] Простая система ветровой эрозии на основе частиц Полный исходный код этого проекта, а также объяснение того, как его использовать и читать, можно найти на Github [здесь]. Проект рендерится при помощи моего собственного [TinyEngine]. В прошлом году я много экспериментировал со способами реализации эрозии на основе частиц ...

Эквалайзер, защита от влаги и 10 часов без подзарядки от футляра. Стартовали продажи недорогих беспроводных наушников Sony WF-C500 в России Компания Sony начала продажи своих новых беспроводных наушников Sony WF-C500 в России.  Эта недорогая модель дебютировала на международном рынке в самом конце сентября по цене 100 долларов. Она позиционируется производителем как модель для новичков — тех, кт...

DevOps + Data: Синергия двух миров = DataOps Что-то последнее время становится много Ops-ов: DevOps, MLOps, DataOps. ЧТО ты такое ?Последнее время работа с большими данными становится все более доступной и распространенной, а самих данных становится все больше и растут они с огромной скоростью. Инженерное мышление люби...

Анализ синтаксиса, который всегда с тобой Всем привет, меня зовут Денис Лимарев, я разработчик платежной системы Delivery Club. И сегодня я расскажу, как мне надоели однообразные ошибки и собственная невнимательность, и как я с этим борюсь. Недавно я написал статью о нашем линтере, где вскользь затрагивал ...

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

[Перевод] Как я написал алгоритм сортировки, который быстрее std::sort. Часть 3 Публикуем третью часть перевода материала о быстром алгоритме сортировки. Вот, на всякий случай, ссылки на первую и вторую части. В тех материалах мы говорили о теории сортировки, об особенностях работы нового алгоритма, разбирали тесты его производительности. Сего...

Книга «Изучаем C# через разработку игр на Unity. 5-е издание» Привет, Хаброжители! Изучение C# через разработку игр на Unity — популярный способ ускоренного освоения мощного и универсального языка программирования, используемого для решения прикладных задач в широком спектре предметных областей. Эта книга дает вам возможность с нуля и...

Картридж с The Super Shinobi 2 На самом деле эта мини-статья была написана ещё в 2018-м году, задолго до моего появления на Хабре. И я решил выложить её здесь, чтобы, во-первых, она получила большую аудиторию, а во-вторых потому что недавно мне пожаловались, что давненько я ничего не писал. А так как моя ...

Запущен первый в России участок серийной сборки спутниковых CubeSat-платформ Sitronics Group запустила первый в России участок серийной сборки спутниковых CubeSat-платформКомпания "СПУТНИКС", входящая в SITRONICS Group, ввела в эксплуатацию первый в России участок серийной сборки спутниковых платформ малых космических аппаратов, который рас...

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

Кто нанимает в русскоязычные команды вне РФ и Беларуси? (апрель 2022) После 24-го февраля появились десятки каналов в Телеграме, постов на VC, Хабре, страничек в Notion, которые собирают компании с удаленкой и релокацией. Но я не нашел ресурсов или каналов, которые концентрируются на одном аспекте: русском языке общения в командах.На мой взгля...

Как мы используем фича-флаги в мобильном приложении QIWI Кошелек Привет, Хабр! Меня зовут Василий Материкин, я — Android-разработчик в QIWI. В этом посте я расскажу о применении фича-флагов в QIWI Кошельке.Внедрение Trunk-Based Development и Feature FlagsВ процессе работы над большими приложениями, в которых много фич и над которыми ...

Первый iPhone X с разъёмом USB-C уже можно купить. Создатель опубликовал бесплатную инструкцию для всех желающих В прошлом месяце Федерального политехнического института Швейцарии Кен Пиллонель (Ken Pillonel) представил всем миру свой iPhone X с полностью работающим портом USB-C. Он опубликовал видео, в котором iPhone X с портом USB-C нормально заряжается и работает в связке с ком...

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

Страх и ненависть в RouterOS: что такое сетевое соединение в ядре Linux (часть 1 — теория) В статье рассмотрено понятие «соединение» для TCP и UDP протоколов в ядре операционной системы Linux на примере работы оборудования MikroTik. Дополнительно рассматриваются особенности работы технологии NAT в указанном контексте. Материалы носят в основном теоретический хара...

Получите доступ к видеозаписям выступлений Dell Technologies Forum, чтобы быть в курсе актуальных направлений в ИТ Цифровая трансформация в последние месяцы была особенно интенсивной. Во всех отраслях экономики компании продолжают вливаться в тренд ИТ-инноваций с точки зрения гибридных решений для работы, модели потребления aaS («как сервис»), использования массивов д...

DataDome построил ЦОД для ГК «Ключевые Системы и Компоненты» в Твери В ноябре 2021 года интегратор инженерных систем DataDome завершил работы по созданию дата-центра для группы компаний "Ключевые Системы и Компоненты". Работы длились на протяжении трех месяцев. В ходе реализации проекта была разработана проектная документация стадии...

РВК и ОАО «РЖД» подписали соглашение о сотрудничестве в сфере инноваций Взаимодействие будет проходить по нескольким основным направлениям:Развитие корпоративного акселератора ОАО "РЖД" до отраслевого акселератора, в котором планируется финансовое участие крупных отраслевых предприятий. Это позволит РЖД создать платформу, объединяющую ...

MEDIAPIPE – AI инструмент для Computer vision Не секрет, что задача по поиску человека на видео или фото всегда была актуальна. Но что если один инструмент объединяет в себе, помимо просто детектирования человека, еще и поиск полной маски человеческого лица, расположение рук и пальцев, да и вообще полностью позу человек...

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

Чай СБЕРгамотом: хакатон глазами участника Наш рынок растет и развивается. Компании, помимо традиционных кадровых процедур, ищут новые ищут новые пути поиска лучших специалистов. В свою очередь, разработчики, которые креативны по своей природе, готовы презентовать и проявить себя не только в рабочих задачах. Участие ...

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

История внедрения SRE в Dodo Engineering Татьяна Гребенюкова, продакт-оунер курса Слёрм «SRE: внедряем DevOps от Google», собирает интересные кейсы внедрения SRE в российских компаниях. Некоторые истории мы используем для развития курса, а другими рады поделиться со всеми.Сергей Бухаров, SRE из Dodo Engineering, ра...

Генеральный директор GitHub Нат Фридман покидает свой пост Генеральный директор сервиса Microsoft GitHub Нат Фридман (Nat Friedman) объявила об уходе с этой должности. С 15 ноября его место займёт Томас Домке, который в настоящее время является директором по продукту GitHub. Соответствующая информация опубликована в блоге GitHub. П...

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

От КАМАЗа до природного газа. Самые интересные статьи про дата-центры за год Привет, Хабр! В прошлом году мы много писали про дата-центры. Статьи про необычные локации ЦОД, новые технологии и личный опыт. Будем рады, если вы найдете материалы, которые еще не читали, и поделитесь мнением в комментариях. Приятного чтения! Читать да...

Коллекционную карточку с покемоном продали за 900 000 долларов Рынок коллекционных карточек продолжает стремительно набирать обороты. Ранее на этой неделе аукцион Goldin объявил о продаже голографической карточки покемона Пикачу 1998 года за 900 тыс долларов США.

Минцифры предлагает давать программистам льготную ипотеку и не призывать в армию В министерстве подтвердили, что список предложений из 10 пунктов был передан в правительство. Как сообщил TAdviser представитель Минцифры, меры были разработаны с учетом мнения ИТ-отрасли. После одобрения правительством, предложения будут реализованы в кратчайшие сроки.28 фе...

Blue Origin построит космическую станцию Orbital Reef, способную заменить МКС Космическая станция Orbital Reef Летом 2021 года основатель Amazon Джефф Безос ушел с поста генерального директора своей компании. Освободившееся время он решил уделить своему другому проекту — компании Blue Origin, которая занимается производством космической техники и отп...

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

DIY VSCode плагин для Clojure На энном году работы с использованием Clojure/Clojurescript в качестве основных языков разработки, я наконец-то дошел до стадии, когда «больше терперть уже нельзя», и написал таки свой плагин для этой цели. Это явилось результатом многолетних поисков, лишений и страданий. ...

Несмотря на огромные наценки и дефицит видеокарты всё равно продаются намного лучше, чем год назад. Появилась статистика за третий квартал Аналитики Jon Peddie Research оценили рынок настольных дискретных видеокарт по итогам третьего квартала. Сюда же источник отнёс решения для рабочих станций и прочие подобные адаптеры.  Несмотря на тотальный дефицит, рынок вырос, причём вырос на 10,9...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)