Социальные сети Рунета
Среда, 22 мая 2024

Итерируемся по enum'ам в C++ В этой статье я хочу поделиться простым и очевидным трюком в C++, о котором, не смотря на его простоту и очевидность, как оказалось, не все знают.Предположим, у вас есть enum class, и вы хотите пройтись по его элементам, то есть вызвать какую-то функцию для каждого из значен...

Сравнение utility types библиотек или тайпскрипт на стероидах Буквально за несколько лет typesctipt стал практически мастхэв в современной фронтэнд-разработке (и не только). Язык типов, работающих поверх языка javascript, который сам по себе является языком со слабой динамической типизацией со всеми вытекающими (отсутствие достойного т...

Сравнительный анализ методов аппроксимации на основе SQL-запросов При работе с данными часто приходится сталкиваться с ситуацией, когда имеется некоторая функциональная зависимость yi = f(xi), которая получена в результате эксперимента или сбора статистики. То есть исходные данные представлены набором точек (x1, y1), (x2, y2) … (xn, yn), г...

Как мы научили YandexGPT пересказывать видео Порой бывает сложно перематывать длинный ролик в надежде найти хоть что-то интересное или тот самый момент из Shorts. Или иногда хочется за ночь узнать, о чём шла речь на паре научных конференций. Для этого в Браузере есть волшебная кнопка — «Пересказать», которая экономит в...

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

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

Diátaxis: структура технической документации Это первая статья в корпоративном блоге компании documentat.io. Мы занимаемся заказной разработкой технической документации и помогаем компаниям настраивать процессы документирования.Многие разработчики сталкиваются с тем, что писать и поддерживать документацию трудно: непон...

Мой 2-х месячный опыт настройки Selenoid под Android за 10 минут Если вы читаете эту статью, то наверняка слышали о Selenoid. Это мощное решение написанное на Go от компании aerokube для управления Docker-контейнерами, в которых «завёрнуты» все необходимые программы и драйверы для тестирования в браузерах или на Android-эмуляторах.Как утв...

Поиск опечаток в проекте Ничего не нашёл на Хабре про CSpell, попробую исправить ситуацию.Для среднего проекта с документацией понадобился линтер для проверки опечаток. Одним из условий была локальная и быстрая проверка текста, без отправки на внешние сервера.Таким инструмен...

[Перевод] Эффект Монреаля: почему языкам программирования нужен Царь стилей Давайте представим нереалистичный сценарий, где вы выбираете язык программирования для проекта, который в перспективе станет очень большим. Допустим, это будет набор сервисов в монорепозитории, над которыми работает более 100 человек. Чтобы сделать этот сценарий ещё менее р...

Это один из лучших подходов к изучению английского, что я видел за последние годы — коллокации Значение слова – это его использование в языкеЛюдвиг Витгенштейн (сурс) Что это вообще за магия такая? Коллокация – это просто пара или группа слов, которые часто возникают вместе. Такие комбинации звучат естественно для носителей языка, однако, тем, у кого язык не родн...

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

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

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

Компилятор за выходные: таблицы символов Как водится воскресным вечером, снова я с моим компилятором. На этот раз я расскажу, как работают области видимости переменных и как перегружать функции. Это позволит нам скомпилировать демку про́клятого огня, а также я накидал фантазию на тему игрушки арканоид (скриншот на ...

Константность в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это седьмая статья из серии, список предыдущих статей приведен в конце в разделе 10. Серия ориентирована на программистов, им...

Honkai Star Rail: Все места с сундуками в Пенаконии В патче 2.0 для Honkai: Star Rail появился новый регион, Пенакония. В ней множество головоломок и наград, спрятанных в сундуках. Чтобы сэкономить вам время и нервы, вот список с обозначениями локаций и мест, где находятся сундуки. 1. Отель «Грёзы» (реальность) Это первый э...

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Найден новый способ убрать раздражающее красное подчеркивание в «Р7-Офис»  Оказывается, сделать это достаточно просто c помощью функции «Проверка орфографии». Иногда пользователи набирают текст и уверены, что печатают правильно, но программа подчеркивает все слова красным, как будто в них есть ошибки. Если офисный редактор ведет себя таким образом,...

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

Системная ошибка рынка труда или почему не хватает технических писателей со знанием языков разработки и API Hola, Хабр! Я — технический писатель и за свою длинную карьеру в ИТ, нигде и никогда не сталкивался с ситуацией переизбытка в командах технических писателей. Наоборот, почти повсеместно в компаниях есть множество продуктов и проектов, в которых документация неполная, неточна...

[Перевод] Регулярные выражения — это не трудно Регулярные выражения имеют дурную славу из-за присущей им сложности. Это справедливо, но я также считаю, что если сосредоточиться на определенном ключевом подмножестве регулярных выражений, то это не так уж и сложно. Большая часть трудностей возникает из-за различных «шорт...

Малоизвестные и интересные особенности C и C++ В C и C++ есть особенности, о которых вас вряд ли спросят на собеседовании (вернее, не спросили бы до этого момента). Почему не спросят? Потому что такие аспекты имеют мало практического значения в повседневной работе или попросту малоизвестны.Целью статьи является не освеще...

Разработка программного средства по обработке данных фонокардиограммы Медицинские исследования играют важную роль в понимании различных заболеваний и разработке эффективных методов лечения. Одним из инструментов, используемых в кардиологии, является фонокардиограмма (ФКГ).Фонокардиограмма - это метод диагностики сердечно-сосудистой системы, ко...

[Перевод] Учим ИИ играть в настолку Magic the Gathering За последние полгода я несколько раз писал о тонкой настройке (fine tuning). Fine tuning — очень соблазнительная технология, обещающая закрыть проблемы в функциях GPT-4, будучи при этом быстрее и дешевле. Однако как бы часто не обсуждали fine tuning, я нашёл на удивление мал...

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

Как выбрать и внедрить  OCR-систему для распознавания и сверки документов Приветствую, друзья! Меня зовут Александр Вихарев, и я работаю системным аналитиком в проектах для Fix Price. Одной из самых сложных задач при работе с документацией является сверка документов. Причем сверка трудна и с точки зрения программной реализации, если заниматьс...

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

Тонкости работы short-circuit routing в ASP.NET Core 8.0 В статье детально и с примерами рассказываю про short-circuit routing — новую фичу Minimal API в ASP.NET Core 8.0. Она позволяет игнорировать добавленные middleware при вызове отдельных endpoint-ов. Рассмотрим, как это работает, сравним методы и немного поговорим про то, как...

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR Привет, Хабр! Меня зовут Владислав Виноградов, я инженер группы исследований и разработки ПО глубокого обучения в YADRO. Моя команда создает и оптимизирует связанное с искусственным интеллектом программное обеспечение. Сегодня я расскажу, как можно разработать тензорный комп...

Байден: США помогают Украине, поскольку хотят избежать перерастания конфликта в войну в Европе Если украинские земли будут подконтрольны России, то НАТО выйдет на прямые границы с россиянами.

Z-test Привет, Хабр!Z-тест, известный также как z-критерий Фишера, представляет собой набор статистических методов для проверки гипотез, которые базируются на предположении о нормальном распределении данных. Эти методы используются для анализа, являются ли средние значения двух наб...

CRTP в C++ Привет, Хабр!CRTP — это метод в C++, при котором класс наследуется от шаблона класса, используя себя в качестве параметра шаблона. Это выглядит примерно так: класс X наследуется от класса-шаблона Y<X>. Этот паттерн позволяет базовому классу напрямую обращаться к метода...

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

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

Как подключить Yandex GPT к своему проекту на Python 6 декабря Яндекс открыл доступ к своим диалоговым моделям (моделям генерации) и векторного представления текста через API. API уже доступно в Yandex Cloud. Вчера мне потребовалось применить его в приложении, однако, не удалось найти руководства, как сделать это быстро. Докум...

Сервис проверки пользовательских файлов «powered by pytest»: нужно повозиться, но оно того стоит Возникла задача проверки нескольких типов пользовательских документов Excel. Проверка должна покрывать такие аспекты как корректность шаблона (наличие ожидаемых страниц, колонок таблиц) и корректность данных (присутствие обязательных значений, корректность значений точки зре...

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

Основные функции Apache Tomcat Привет, дорогие читатели! Apache Tomcat — это открытое программное обеспечение, реализующее спецификации Java Servlet, JSP и Java WebSocket, предоставляя таким образом платформу для запуска веб-приложений, написанных на языке Java. Разработанный и поддерживаемый Apache Softw...

Шпаргалка для алгособеса — алгоритмическая сложность, структуры данных, методы сортировки и Дейкстра Привет, Хабр!Так уж повелось, что любой уважающий себя работодатель перенимает передовые методики FAANG — по этой причине практически во всех IT-собесах есть она: секция алгоритмов. Кто-то ей рад, кто-то не очень, но секция есть и уходить пока не планирует. Поэтому нужно зак...

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

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

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

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

Async/Await из C#. Головоломка для разработчиков компилятора и для нас Я рискну все таки продолжить изложение своего понимания Поста: How Async/Await Really Works in C#, которое в предыдущей статье получило название “ортогональный взгляд”. Также, недавно мы познакомились (возможно несколько преждевременно) с изначальным определением концепции S...

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

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

Синкерим, хешайдим, терминируем: 6 утилит, чтобы ускорить ваши локализации Наша команда Mobile Doc&Loc «Лаборатории Касперского» занимается подготовкой документации и локализации B2C-продуктов компании для мобильных устройств. Основная сложность (и одновременно фишка) нашей работы заключается в том, что необходимо регулярно подготавливать перев...

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

Sphinx для автодокументирования на проекте Sphinx был разработан 21 марта 2008 года, и является генератором документации в Python. Сам он так же был написан Python и преобразует файлы reStructuredText в HTML-вебсайты и другие форматы, включая PDF, EPub, Texinfo и man. Sphinx позволяет автоматически генерировать докум...

Методы балансировки в А/Б тестировании Привет, Хабр! Как часто вы думаете о балансе? Балансе вселенной, личной жизни и работы, балансе БЖУ в своем рационе или балансе в банке. Мы в команде ad-hoc X5 Tech не только думаем о балансе, но и сталкиваемся с ним в работе. Сегодня поговорим о балансировке при анализе при...

LLM'ы в преобразовании запроса на естественном языке в SQL (text2sql) Привет, Хабр! На связи участница профессионального сообщества NTA Марина Коробова.Данные занимают центральное место в информационном обществе. Именно информация является основой для принятия решений, развития бизнеса и научных исследований. Многие организации инвестируют огр...

Как и зачем мы парсим XML Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML - достаточно типовая задача, но даже в ней можно выделить ...

Победить хаос в документации: почему мы создали свой продукт для Docs-as-a-Code Привет, Хабр! В 2020 году компания решила вывести на рынок линейку продуктов Platform V. Для них нужна была документация, которая на тот момент велась в Confluence. Нам предстояло проделать сложную и дорогую работу: собрать документы на нужные версии, привести тексты к едино...

[Перевод] Тестирование без моков: язык паттернов. Часть 2 Язык паттернов помогает избежать многих проблем: не использует широкие тесты, не использует моки, не игнорирует инфраструктуру и не требует архитектурных изменений. Он обладает мощью широких тестов, а также скоростью, надёжностью и удобством сопровождения, присущим модульным...

Язык Crystal и математика Если вам вдруг захотелось посчитать собственные значения матрицы, решить задачу линейного программирования или оптимизировать нелинейную функцию, то вы может взять питон со SciPy, можете взять R или Matlab\Octave, для любителей экзотики есть Julia, а те кому важен каждый тик...

Python и Excel глазами НСИ Всем привет! Меня зовут Алмаз. Я специалист по НСИ (нормативно-справочной информации) в компании Bimeister. Хотел бы поделиться своим небольшим опытом автоматизации некоторых рутинных задач при работе с различными файлами и Excel- базами данных.Python.Предыстория.Сейчас дово...

JetBrains выпустила новую IDE для работы с документацией Writerside Инструмент используется в JetBrains уже более 10 лет, и, по словам команды, продукты JetBrains, от языка программирования Kotlin до IntelliJ Platform SDK, используют Writerside для создания своей документации. Читать далее

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

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

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

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

Шкала масштабов вселенной (русский язык) Всем привет! Добавил русский язык к шкале масштабов вселенной.В интернете есть довольно занимательная шкала с относительными размерами разных объектов от мельчайших, до обозримой Вселенной. Сама шкала изначально была flash презентацией, а после прекращения Adobe поддержки sw...

[Перевод] Задача двумерной упаковки интервалов Упаковка интервалов — это классическая задача SQL, которая подразумевает переупаковку групп пересекающихся интервалов в соответствующие им непрерывные интервалы. В математике интервал — это подмножество всех значений данного типа, например целых чисел, между двумя некоторым ...

Топ-10 ошибок, найденных в C#-проектах за 2023 год За 2023 год разработчиками PVS-Studio было написано немало статей о проверке Open Source C#-проектов. По традиции мы делимся с вами 10-ю самыми интересными ошибками, найденными за этот год. Приятного чтения! Читать далее

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

Переводим документацию API из Markdown в OpenAPI Всем привет! Я Ира — тимлид команды, которая занимается развитием и поддержкой публичного API hh.ru.Несколько лет назад к нам пришли ребята из мобильной команды и сказали, что хотят документацию в OpenAPI формате. Для них это удобно, потому что можно генерировать DTO прямо и...

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

Глубина кроличьей норы: бинарная граница и ABI C++ Вопрос ABI (Application Binary Interface), бинарной границы и бинарной совместимости в C++, раскрыт на просторах интернета не так хорошо как хотелось бы. Особенно сложно в его изучении приходится новичкам, потому что эта тема связана со множеством деталей нарочно скрытой от ...

Rust — это не «memory safe C» TL;DR: 1) в Rust намного больше достоинств, чем просто скорость и безопасность 2) в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD 3) Rust не сложный язык, особенно если не гнаться за максимальной производительно...

[Перевод] Язык Janet для смертных. Часть 1 — Значения и ссылки Это первая глава перевода небольшой книги о языке Janet за авторством Иана Генри (Ian Henry). В этой книге раскрываются различные аспекты работы с языком, обьяснение синтаксиса и некоторых приемов программирования. Внимание, в этой публикации содержатся скобочки! Люди с неп...

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

Компиляция на этапе выполнения в C++: constexpr, consteval и constinit Сегодня мы поговорим о том, как constexpr, consteval, и constinit позволяют реализовывать компиляцию на этапе выполнения. Компиляция на этапе выполнения позволяет ускорить выполнение кода за счет выполнения расчетов на этапе компиляции, а не в рантайме.constexpr делает воз...

Как материалы расширяются при охлаждении и почему это очень странно? Никого не удивить тем, что при нагревании размеры физических тел увеличиваются, а при охлаждении - уменьшаются. Это прописная истина, которая откладывается в сознании, начиная с первых уроков физики.Но не нужно стараться искать универсальные решения. Так происходит дале...

Автодокументация Doxygen и её развертывание на GitHub Pages Наверняка вы создавали open source проекты и выкладывали их на GitHub, но я уверен, что очень немногие из вас создавали документацию для этих проектов. В этой статье я расскажу, как создавать и публиковать доки максимально просто. Документация будет создаваться на основе исх...

PIC32MZ и Быстрое Преобразование Фурье PIC32MZ и Быстрое Преобразование ФурьеМикроконтроллер от компании Microchip далеко не новый. Но пока нам дружественный Китай увы и ах, и такого (415 MIPS на частоте 252 MHz ядра) предложить не может. Ведущие производители микроконтроллеров в Китае - Artery, Nation Semiconduc...

Как улучшить английский в документации. Часть 3: мировая аудитория Мировая статистика говорит, что английским владеет примерно 1,4 миллиарда человек, но носителей среди них всего 380 миллионов. То есть статистически семь из десяти читателей англоязычной документации — не носители языка.Если мы хотим, чтобы наша английская документация хорош...

Динамический JIT компилятор C++ Когда-то давно я писал статью-наблюдение про использование Хабра в качестве площадки для архитектурных ревью технических решений практически любой сложности Хабр — ума палата, и продолжаю пользоваться этим способом на постоянной основе. А теперь, похоже, я нашел еще один оч...

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

Релиз Ruby 3.3.0: что появилось нового в языке программирования и что изменилось На днях появился новый релиз динамического объектно ориентированного языка программирования Ruby 3.3.0. Он вобрал в себя лучшие возможности многих других ЯП, включая Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. Что касается кода проекта, то он распространяется под лице...

Даешь поддержку IronRuby и IronPython в Visual Studio 2010! Как ранее утверждали менеджеры из команды Visual Studio 2010, поддержки динамических языков IronRuby и IronPython в ней не будет. Однако, судя по всему, появился шанс изменить это — на сайте Microsoft Connect проводится опрос: нужна ли разработчикам поддержка этих языков в н...

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

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

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

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

Релиз Ruby 3.3.0: что появилось нового в языке программирования и что изменилось  На днях появился новый релиз динамического объектно ориентированного языка программирования Ruby 3.3.0. Он вобрал в себя лучшие возможности многих других ЯП, включая Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. Что касается кода проекта, то он распространяется по...

И вновь KolibriOS! И вновь ассемблер!. В прошлой статье, я решил потестировать ассемблер на данной ОС. Но я ни когда не ищу лёгких путей и потому решил окунуться в мир KolibriOS и программировать используя только данную ОС. Всё что я смог выяснить, это то что давно когда-то что-то делали и на данный момент, увы, ...

Инструменты AutoML в 2024 Определимся с терминологией. Можно найти c десяток формулировок «AutoML- это…» с разной степенью детализации. Но все они сведутся к словам «AutoML — автоматизирует и упрощает работу с данными». И вот здесь как раз и начинаются сложности. Границы определения AutoML размыты. Е...

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

Quick & worldwide: как мы ускорили DocLoc-релизы и апдейты для 34 локализаций Наши потребительские мобильные продукты уникальны тем, что распространяются в более чем 100 странах на 34 языках — возможно, рекордное значение в российской IT-индустрии. В основном лишь считанные продукты отдельных компаний переводятся на десяток-другой языков; у нас же мас...

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

[Перевод] Rust 1.74.0: конфигурация проверки в Cargo, авторизация для приватных реестров, проекции возвращаемых типов Команда Rust рада сообщить о новой версии языка — 1.74.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.74.0 ва...

Открываем Adobe Flash в Docker в 2024-м Шарился я тут в по Интернету в поисках видео событий 15-летний давности и нашел что-то вроде искомого, но никак не смог посмотреть - требовался Adobe Flash. Погуглил я как мне открыть это видео, но рабочих вариантов не нашел. "Ладно" - подумал я: "Challenge accepted". А нам ...

Интерактивные и документированные диаграммы для сложных систем Мой первый on-call выдался нелегким. Недели тренингов и обучения не подготовили меня к тому что придется бегать по Slack каналам различных команд и искать того, кто может что либо знать о какой-то из частей системы. Оказалось что многие страницы в корпоративной Wiki уже не о...

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

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

[Перевод] Rust 1.78.0: Диагностические атрибуты, проверка предусловий unsafe и детерминированное повторное выравнивание Команда Rust рада сообщить о новой версии языка — 1.78.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.78.0 ва...

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

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

Нововведения Zig версии 0.12.0, которые стоит упомянуть По случаю выхода версии 0.12.0 языка Zig я снова решил написать статью об этом языке. И в этот раз о том, что изменилось в языке относительно версии 0.11.0. Сразу уточню, что я не буду описывать все изменения. Ссылка на примечания к выпуску под цифрой выше. Список изменений ...

Производительный ультрабук на базе Ryzen 5700U для разработчика: Обзор Ninkear A15 Plus После подробного материала с разбором и тестами N14 Pro, компания Ninkear предложила заслать мне их следующую модель - , которая построена на базе проверенной временем платформы Ryzen. Пожалуй, если сейчас зайти на любой онлайн-маркетплейс, можно найти сотни различных предло...

Когнитивные искажения у аналитика данных: найти и починить df.head() — с этого момента вы начинаете работу с данными и полагаетесь на увиденное? Я тоже. Так мы наступаем в феномен what you see is all there is («что вижу, то пою, что не вижу, не спою» — вольный перевод). У ограниченного набора данных, возможно, отсортированного, мы в...

«Алиса» Яндекса выучила казахский язык Команда Яндекса объявила о запуске новой полезной функции для своего фирменного голосового помощника. «Алиса» научилась понимать казахский и говорить на нём.  Пообщаться с виртуальным ассистентом Яндекса на национальном языке Казахстана уже можно в моб...

[recovery mode] Как заниматься английским языком самостоятельно: гайд по самостоятельному изучению грамматики для начинающих Вы хотите начать заниматься английским, но пока по какой-то причине не готовы записаться на курсы или найти преподавателя по английскому языку. Но вы готовы уделить какое-то время, чтобы изучать язык самостоятельно, в своем темпе, чтобы если вдруг где-то в будущем вам язык п...

Современные Hi-Tech методы реабилитации после инсульта. Часть 1 — как распознать и как лечить Сегодня поговорим о такой непростой теме как «молодеющий» инсульт, и о том, как выйти из него с минимальными потерями. Аудитории Хабра — молодая, и многие могут посчитать, что тема инсульта их не касается. Увы, касается — у всех есть пожилые родственники как группа риска. Мо...

Как улучшить английский в документации. Часть 2: ловушки двусмысленности Привет, Хабр! Я работаю техническим писателем в компании documentat.io, мы занимаемся заказной разработкой технической документации, в том числе на английском языке.В своей первой статье я разобрал, пожалуй, самые распространённые ошибки, которые допускают русскоязычные айти...

Язык программирования Mojo: что нового в версии 24.3? На днях была опубликована новая версия языка программирования Mojo, теперь это 24.3. Новинка получила несколько важных компонентов, которые требуются для создания приложений на этом языке. Например, компилятор, интерактивная REPL-оболочка для сборки и запуска программ, отлад...

[recovery mode] Разработка расширения для PHP на C++. Хуки встроенных функций и методов PHP - это мощный и широко используемый язык программирования для веб-разработки. Однако, иногда требуется расширение функциональности или модификация стандартного поведения PHP с использованием более низкоуровневых языков, таких как C++. В этой статье мы рассмотрим, как с...

Чем сейчас занимается научная голография Периодически на Хабре появляются новости о новых голографических устройствах. Одна из таких разработок, на которую мы обратили внимание, ― «голографический» дисплей, представленный на CES. Любопытно, что к голографии в научном понимании такие разработки имеют очень косвенное...

Многомерный анализ данных: исследование многомерных кубов и SQL OLAP-запросов Привет, Хабр!Многомерный анализ данных позволяет нам оперировать множеством измерений и атрибутов, создавая более глубокое понимание данных. Это важно для принятия обоснованных бизнес-решений, улучшения производительности и оптимизации процессов.Работая с данными, мы сталкив...

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

[Перевод] Как я снизил время инкрементных сборок Rust на 40% Я форкнул и модифицировал компилятор Rust rustc. Одна фича — кэширование расширения процедурных макросов — привела к снижению времени инкрементных сборок на 11-40% в различных реальных крейтах. Благодаря этому ускорились dev-сборки и меньше стал тормозить rust-analyzer (IDE ...

Как разобраться с любой ошибкой по методу трёх «П» Эта простая формула поможет избежать паники и быстро вернуться в нормальное рабочее состояние.

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

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

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

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

[Перевод] Как можно потерять контроль над оболочкой Пару недель назад я разбирался с поддержкой Language Server в редакторе Zed, пытаясь заставить его, обнаруживать исполняемый файл языкового сервера gopls в $PATH. В случае его присутствия система должна использовать этот файл, а не скачивать новый. Проблема: $PATH часто д...

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

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

Дескрипторы в Python Привет, Хабр!Дескриптор — это объектовый атрибут с поведением, определяемым методами в его классе. Если просто — это способ, с помощью которого объект может контролировать доступ к его атрибутам, используя специально определенные методы __get__, __set__, и __delete__. Если г...

Отладка в SQL Developer Привет! Меня зовут Алексей Маряхин, я разработчик на Oracle. В этой статье продолжим знакомиться с темой отладки PL/SQL-кода.  В предыдущей статье мы изучили возможности отладки в PL/SQL Developer. В этой предлагаю рассмотреть ещё один инструмент — SQL Developer (версия...

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

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

Postgresso за 2023 В прошлом году Postgresso 12 (49) и был обзором, пробегающим по 11 предыдущим номерам. В этом году мы решили, что эту задачу лучше выделить в отдельный выпуск.ЯНВАРЬPostgresso 1 за 2023 (50)ИгрушкиДа, мы любим рассказывать об игрушечных базах, самодельных базах для души. Бул...

[Перевод] Новое в SQL Server 2022: изменения в функции ISJSON SQL Server поддерживает работу с данными типа JSON, и имеет для этого необходимый функционал, в который входит функция ISJSON, для проверки, соответствует ли значение типу JSON. Она вернет 0, если это не правильный JSON, и 1, если JSON правильный. Если JSON содержи...

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

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

Вопросы по SQL, которые часто задают на собеседовании. Часть 1 SQL (Structured Query Language) – это язык программирования, используемый для управления реляционными базами данных. В этой статье я собрал вопросы по SQL, с которыми вы можете столкнуться на собеседовании. Их часто задают для проверки общих знаний и навыков. Читать далее

[Перевод] Отсечение и поиск / Prune and search Решал задачу на LeetCode (Word Search) и наткнулся на незнакомый мне термин "search pruning", либо "Prune and search". Немного погуглив, узнал, что это метод решения задач оптимизации, на Википедии есть соответствующая статья (ссылка). На русском языке я не нашел такого терм...

[Перевод] Релиз Bun Shell (новый shell для JavaScript) JavaScript — самый популярный скриптовый язык в мире. Так почему же так сложно запускать shell-скрипты на JavaScript?Этим вопросом задались создатели Bun (альтернатива Node.js - очень быстрый runtime для запуска JS-кода, а также менеджер зависимостей, тест раннер, бандлер дл...

Pandas в pandas'е: упаковываем документацию в датафрейм Документация к сложным библиотекам на питоне (напр. pandas) хранится в doc-строках и разбросана по сотням страниц сайта. В этой статье мы с помощью небольшого кода упакуем её (информацию из документации для каждого класса и метода) в... датайфрейм. Но зачем? Во-первых, это п...

От советских компиляторов до грязных трюков: что поведают на C++ Russia 2024 Завсегдатаи C++ Russia уже хорошо знают некоторых спикеров и ждут их новых докладов. Например, Антона Полухина @antoshkkaa): в 2020-м все смотрели его «Грязные трюки из такси», а недавно — «C++ трюки из userver». Из необычного — серия докладов Петра Советова об автоматизации...

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

Все места с 60 птицами-оригами в Honkai: Star Rail В Honkai: Star Rail появился регион Пенакония, в котором можно участвовать в разных ивентах. Например, собирать сундуки с наградами. Ещё можно искать птиц-оригами, которые хорошо спрятаны. Всего их 60 штук, поэтому на скриншотах указаны обозначения, чтобы быстро сориентирова...

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

Собираем DOCX из ADOC Статья про то, как можно собрать docx-файл из git(adoc)-дерева.По мнению автора, статья может быть интересна тем, кто хочет уйти от стандартных методов хранения документации. Ведь техническая документация всегда лежит на стыке кода, практик devops_а и нас, простых читателей....

Релиз Jmix 2.1: что нового? Готовы поделиться ключевыми обновлениями, которые вы найдете в свежем релизе Jmix 2.1. Для тех, кто хочет знать все, полную информацию об изменениях можно найти в документации Что нового.  Читать далее

Квоты в Kubernetes: очевидные, менее очевидные и совсем не очевидные Привет, Хабр! Я Виктор, техлид продукта CI/CD в Samokat.tech. А это, :(){ :|:& };: fork-бомба, которая создаёт свои дочерние процессы бесконечно. Запуск такой штуки в контейнере без ограничений роняет всю ноду. Не используйте в проде! Если запустить в WSL, то винду тоже ...

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

Release Timeline — визуализация GitHub релизов в вашей документации Данное приложение было создано для красивого и удобного показа изменений во Vue 3 проекте в его документации на VitePress. После оно было сделано универсальным, и может быть подключено в любой HTML странице как Web component или микрофронтенд.Попробовать - https://vuesence.g...

OpenAI GPTs: пошаговое руководство для создания с практическими примерами, ACTIONS и внешние API Я часто использую ChatGPT в повседневных задачах. Он реально помогает в обучении, разработке и решении небольших проблем, которые легко описать. Но с другой стороны бывает сложно дать ему нужный контекст, чтобы он начал делать то, что нужно вам, а не выдавал ложь за действит...

Тестирование UI в Compose Multiplatform Собираясь писать UI-тесты для приложения на Compose Multiplatform, я столкнулась с дефицитом туториалов и документации по этой теме. Из полезного были только пара статей (https://habr.com/ru/articles/674112/) и выступлений на недавних конференциях, а примеры в основном своди...

[Перевод] Как потерять управление оболочкой… Расследование Несколько недель назад я занимался хаком языковых серверов в Zed, пытаясь заставить Zed определять, когда заданный бинарник языкового сервера, например gopls, уже присутствует в $PATH. Если так, вместо загрузки нового бинарника Zed должен использовать его. Трудность: часто ...

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

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

Взлет и падение языка COBOL. Где и как язык программирования, которому 60 лет, применяется и в наше время? В 2023 году языку COBOL исполнилось уже 64 года. Это один из старейших языков программирования, которые применяются на практике. Кроме того, он же — один из лидеров по объему написанного кода. Язык не собирается умирать, наоборот, он развивается. Конечно, конкурентом популяр...

Как установить приложение для Android, если оно не поддерживается на вашем устройстве Пытаясь установить и или обновить уже имеющееся приложение через Google Play, люди сталкиваются с самыми разными проблемами. В частности, некоторые пользователи вместо заветной кнопки видят надпись «Не поддерживается на вашем устройстве». Хотя это информационное сообщение к...

Из пушек по воробьям. Генерация и решение лабиринта не самым обычным способом На уходящей неделе мне попалась симпатичная, хоть и не новая мини‑серия статей на Дзен‑канале @zdgzdgzdg про процедурную генерацию лабиринта методом «коллапса волновой функции». Пока я читал эти статьи и знакомился с кодом, меня осенило: ведь это&nbs...

Макгрегор: Если Путин захочет, на границе с Польшей будут стоять российские войска, но это не нужно Но возможность передумать всегда есть

Как настроить ETL с json’ами в Apache NiFi Привет, Хабр! Меня зовут Сергей Евсеев, сегодня я расскажу, как в Apache NiFi настраивается ETL-пайплайн на задаче с JSON’ами. В этом мне помогут инструменты Jolt и Avro. Пост пригодится новичкам и тем, кто выбирает инструмент для решения схожей задачи.Что делает наша команд...

Apple идет на уступки ЕС по делу об Apple Pay – законы ЕС ... Компания Apple предложила открыть доступ к системе бесконтактных платежей NFC, используемой Apple Pay, для конкурентов. Цель – избежать возможных регуляторных мер со стороны ЕС

Программа поиска эллипсов и определения их параметров МНК Привет! Я новичок на Харбре. Меня зацепила статья от 2011 года: «Детектирование эллиптических частиц на микрофотографии. Новый алгоритм поиска эллипсов на изображении». https://habr.com/ru/articles/135332/. Вот комментарий к этой статье (Mrrl 27 дек 2011 в 07:49): «А почему ...

Автоматическое создание карточек слов для изучения иностранного языка или интеграция google translate в google sheets Добрый день.Недавно сделал инструмент для автоматизированного создания карточек для изучения слов — подумал что может быть кому то пригодится и как инструмент, и как техническое решение.Немного вводной информации: один из способов запо...

Релиз Tokyo Debunker на iOS и Android. Игроки жалуются на малое количество ресурсов Мобильная игра Tokyo Debunker вышла 17 апреля на iOS и Android. В ней игроки выбирают один из факультетов аниме-студентов, а также своего аватара. Это нужно для того, чтобы путешествовать по Токио и сталкиваться со сверхъестественными явлениями. Сюжет раскрывается через отде...

Бруклинский мост. Зачем генерируем C++ на Kotlin Нелегко на рынке найти senior разработчика для конкретной сферы. Каждый из них имеет уникальные знания в своем языке и фреймворке, будь это Java, Kotlin, С++, JS или Swift. Каждый накапливал свои знания годами. Но найти senior разработчика, который одинаково хорош и C++ и в ...

Apache NiFi. Как быстро подружиться с LDAP и Registry Казалось бы, про Apache NiFi уже писали не раз. Но если ты только знакомишься с инструментом, разобраться в таких статьях бывает нелегко. Обычно с тобой говорят так, будто ты уже давно в теме, да и задачи чаще решают явно не твои. С официальной документацией тоже все сложно:...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами Часть 4 В предыдущей части был рассмотрен основной подход, применяемым для тестирования сложных цифровых устройств - constraint random testing. Мы узнали, как автоматизировать проверку корректности работы устройства с помощью сравнения его выходов с эталонной моделью. Тестовые окру...

Некоторым языкам программирования десятки лет — и они ещё в ходу. 5 старых, но актуальных ЯП Не так давно мы писали про язык COBOL, которому уже больше 60 лет. Он до сих пор актуален, поскольку на нём держится немало систем финансовых и банковских организаций. Но есть и другие старые ЯП, всё ещё применяемые в некоторых отраслях. О них сегодня и говорим, не обойдя и ...

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

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

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

MDM и CDP: различия систем. Как сделать выбор Любой компании, которая стремится сохранить конкурентоспособность на рынке, необходимо создание «золотой записи» (профиля) клиента во внутренних базах. Для этого многие используют системы управления мастер-данными (MDM, master data management), но сталкиваются с рядом пробле...

Теперь-то наконец блоки NPU в процессорах Intel станут полезными? Компания открыла исходный код своей библиотеки ускорения NPU Acceleration Library Компания Intel открыла исходный код своей библиотеки ускорения NPU Acceleration Library, позволяющей компактным моделям искусственного интеллекта работать непосредственно на блоках NPU в процессорах Meteor Lake.  Библиотека создана на языке Python и призвана помоч...

От «здравствуйте» до こんにちは: языки программирования не на английском языке Существует огромное количество самых разных языков программирования, их насчитывается несколько тысяч. Какие‑то — идеальны для работы, другие же созданы just for fun. К слову, есть ЯП, представленные программистами из неанглоязычных стран, в них...

Ускоряем работу python с numba Привет, Хабр!Numba — это Just-In-Time компилятор, который превращает ваш код на питоне в машинный код на лету. Это не просто мелкая оптимизация, а серьёзно ускорение.Если вы знакомы с интерпретируемыми языками, вы знаете, что они обычно медленнее компилируемых из-за необходи...

[Перевод] Всё ещё используете If/else валидацию в Spring 6.0+ / SpringBoot 3.0+? Чтобы избежать влияния несанкционированных параметров на ваш бизнес, в ваших веб-сервисах должна быть реализована проверка параметров на уровне контроллера! В большинстве случаев параметры запроса можно разделить на два следующих вида:— POST и PUT-запросы, использующие reque...

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

regexp — большие гонки Так или иначе сталкиваться с регулярными выражениями приходилось большинству разработчиков. Мое первое знакомство произошло с реализацией regex в STL std::regexp. Чаще всего регулярки используются в проверке входных данных, что-то вроде проверки корректности введенного польз...

Установка GCC в сборке MinGW Установка коллекции компиляторов GCC (GNU Compilers Collection) в Windows и первичная настройка для дальнейшей работы. Читать далее

Дайджест научпоп-новостей за неделю, о которых мы ничего не писали • Учёные нашли свидетельства взрыва близкой к нам килоновой, произошедшего 3,5 миллиона лет назад• Ключ к профилактике болезни Альцгеймера получен от пациента, который избежал заболевания, несмотря на генетическую предрасположенность• Расположение звёзд на древнем навигацион...

Google пометила приложения Samsung как «опасные» и попросила людей их удалить Служба Google Play Protect, занимающаяся проверкой Android на наличие вредоносных программ, недавно отметила популярные приложения Samsung - Samsung Wallet и Samsung Messages - как потенциально вредоносные.

PostgreSQL 16. Изоляция транзакций. Часть 2 Данная статья является продолжением первой части: "PostgreSQL 16. Организация данных. Часть 1".В этой части мы обсудим, как транзакции могут влиять друг на друга, вызывая "аномалии", а также рассмотрим различные уровни изоляции, которые помогают избежать подобных проблем. Чи...

Как изменить язык приложения на Android Одна из основных настроек Android — язык. Смартфоны позволяют нам взаимодействовать с системой хоть на русском, хоть на английском, хоть на китайском. Но получится ли изменить язык для отдельного приложения, если стандартный вариант вас по какой-то причине не устраивает? Да...

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

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

Project Loom. Не только виртуальные потоки Начиная с Java 19 нам доступны виртуальные потоки, которые отличаются от обычных, тем что умеют освобождать поток операционной системы во время блокирующих I/O операций. Для этого на уровне JVM был реализован механизм сохранения в хипе и восстановления из хипа стека вызова....

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

Использование маппера UNROM при разработке игр для Dendy на языке Си Приветствую всех любителей программирования всяческих ретро-железок. Могу предположить, что у большинства из читателей этой статьи была в детстве Dendy (а может и сейчас есть) или другой клон Famicom (клонов NES в СНГ я не встречал). Сегодня предлагаю обсудить особенности ра...

[Перевод] Погружение в компиляторы Kotlin Привет, меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS.Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2. По замерам JB, K2 ускоряет компиляцию на 94%. Также он позволит ускорить разработку новы...

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

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

От xWiki к static-HTML. Как мы документацию «переезжали» Документация в компании HOSTKEY состоит из двух частей: внутренней, которая ведется и дополняется как силами наших технических писателей, так и сотрудниками отделов, для которых она предназначена, и внешней, клиентской.До недавнего времени мы и для внутренней, и для внешней ...

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

Компиляция Record для Android В Android Developers Blog выходила статья Records in Android Studio Flamingo о том как компиляторы R8/D8 преобразуют классы java.lang.Record. В ней рассказывается как добиться минификации компонентов toString() у Kotlin data-классов. Меня заинтересовала эта тема и я решил чу...

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

Динамическая функция для генерации excel файла на Golang Привет! В данной статье рассматривается проблема генерации excel файла и возможности реализовать динамическую генерацию excel файла с использованием интерфейса. Читать далее

Как мы создавали self-service функционал проверки качества данных для ML-моделей Привет! Продолжу рассказ о том, как мы превращаем банк в "биг дата" - организацию. Очевидно, что чем больше данных использует компания, тем больше зависит от их качества. Но, зачастую, вопросам качества данных при разработке витрин уделяется недостаточно внимания. Это связ...

[Перевод] 8 углубленных вопросов на собеседованиях на роль сеньора в JavaScript JavaScript — это мощный язык, который является частью фундамента интернета. У этого мощного языка также есть некоторые свои особенности. Например, знаете ли вы, что значение 0 === -0 равно true, или что Number("") дает 0? Дело в том, что иногда эти причуды могут ...

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

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

12 GitHub записок Наверное, многие помнят детскую (или не очень) игру: "12 записок". В ней нужно последовательно искать записки, в которых есть подсказки, указывающие на место, где лежит следующая записка из цепочки в 12 элементов. Игра длится до тех пор, пока не будет найдена последняя запис...

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

Почему typeof null === «object» в современном прочтении Задача унарного оператор typeof возвращать строковое представление типа операнда. Другими словами, typeof 1 вернет строку "number", а typeof "" вернет "string". Все возможные значения типов, возвращаемых оператором typeof изложены в сп...

Статический анализ структуры базы данных (часть 2) Продолжим разбор проверок структуры базы данных, на примере PostgeSQL. Данная статья будет посвящена проверкам связанным с ограниением FOREIGN KEY (FK). Часть проверок целесообразно выполнять на регулярной основе, а некоторые позволяют лучше понять структуру проекта при перв...

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

[Перевод] Каково это, создавать язык программирования сегодня? «Эта книга – классика. Относитесь к ней бережно». Такую фразу произнёс архитектор из нашей команды, передавая мне The Dragon Book. Разработкой компиляторов я увлёкся где-то 15 лет назад ещё на заре своей карьеры. Как-то раз, читая эту книгу поздно вечером, я заснул, небреж...

Революция в клеточной биологии: Применение GPT-4 для РНК-секвенирования Одноклеточное РНК-секвенирование (scRNA-seq) – метод изучения экспрессионных профилей на уровне отдельных клеток, то есть определения, какие РНК присутствуют в каждой клетке и в каком количестве. Это позволяет ученым понимать, как функционирует каждая клетка и какие функции ...

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

Отключаем ненужный функционал плагина для Jira с помощью кастомной аннотации Spring Привет, Хабр! Меня зовут Игнат, в Samokat.tech я пишу плагины, автоматизации и интеграции для Jira. Как разработчик-самоучка, который до «вот этого всего» немного писал на Java, но не пользовался ни средствами сборки (привет, Maven!), ни фреймворками (привет, Spring!), ...

[Перевод] Я разработчик, а не компилятор Недавно у меня было телефонное собеседование, на котором мне задавали разнообразные вопросы по Java. Это стандартное собеседование и большинство вопросов тоже было вполне стандартным:Что такое полиморфизм?В чём разница между List и Set? Когда стоит использовать первое, а ког...

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

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

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

Приглашаем на Ozon Tech Community Design Meetup Все говорят, что дизайнер и продакт — креативная пара, но мало кто делится опытом, как выжить в этой паре: действовать проактивно и продуктивно, не мешая, а помогая друг другу улучшать продукт. Тесное взаимодействие и сильная вовлечённость может привести к пониманию с п...

Как рынок заставил нас сделать аналог Jira (расшифровка аудио записи) Всем привет! Это ламповая история от основателей компании – рассказ о хронологии замены Jira, а также о том, как собственные разработки помогают при создании будущих сервисов. Всё что идёт ниже – расшифровка аудио с небольшой редактурой, которая записана мной. Все совпадения...

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

Как автоматизировать переобучение моделей? Меня зовут Денис, я управляю разработкой и внедрением моделей машинного обучения в «Газпромбанке» в розничный бизнес. Наша команда ML-инженеров работает в связке с DevOps, мне помогает мой коллега Виталий VitaliyF. Он готовит инфраструктуру для обучения и переобучения моделе...

[recovery mode] Где изучать Python в 2024. Бесплатные курсы, книги и ресурсы Python является одним из самых популярных языков программирования в мире. Он широко используется в различных сферах, таких как веб-разработка, научные исследования, анализ данных, машинное обучение и многое другое. Изучение Python позволит вам получить полезные навыки и откр...

Покупка книг на www.betterworldbooks.com Как ни печально, но если ты технический специалист, или хочешь им стать, и тебе нужны актуальные книги по нужному предмету, то ты вынужден заказывать данную литературу на иностранном языке за рубежом. Так случилось и со мной. Читать дальше →

Мемоизация в React: я почитал документацию вместо вас В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за...

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

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

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

[Перевод] Continuations для взаимодействия асинхронных задач с синхронным кодом В Swift были представлены новые функции, которые помогают нам адаптировать старые API в стиле completionhandler к современному асинхронному коду.Например, эта функция возвращает свои значения асинхронно, используя обработчик завершения: Читать далее

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

ГМО-детектор: растение, меняющее цвет в ответ на токсин У моей бабушки был весьма своеобразный метод проверки степени испорченности продуктов. Если наш кот не ел, что ему на «дегустацию» давала бабушка, значит этот продукт был испорчен и его нельзя было есть и нам. Не самый научный или надежный метод, но в нем все же есть опред...

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

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

Чек-лист технического писателя при проверке документации Всем привет! Меня зовут Екатерина Мишинёва, я ведущий технический писатель с опытом работы в IT-компаниях более 10 лет.На заре моей карьеры у меня очень часто при написании документов вставал вопрос как максимально быстро и эффективно сделать так, чтобы документ соответствов...

ТЕСТ: Проверьте, сможете ли вы понять слова на языке жестов? Если вы никогда не сталкивались с этими знаками, попробуйте положиться на интуицию.

Обратная нормализация (денормализация) Привет, Хабр!Нормализация — это процесс организации данных в базе для минимизации избыточности и зависимостей. Она помогает нам избежать аномалий при вставке, обновлении или удалении данных и, конечно, упрощает схему базы данных. Но, как и все в этом мире, нормализация не ид...

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

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

[Перевод] Тестирование без моков: язык шаблонов. Часть 1 Автоматизированные тесты очень важны. Без них программистам приходится тратить огромное количество времени на ручную проверку и исправление кода. К сожалению, многие автотесты также тратят огромное количество времени. Простым и очевидным вариантом является создание широких т...

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

[Перевод] Полезные расширения VScode для работы с документацией Как правило, работа с документацией — это последний этап любого проекта, связанного с данными (data science, data visualization и т. д.), проектированием и разработкой ПО. Речь о создании и редактировании библиотек, файлов README, обучающих материалов и др. Среди всех преиму...

В App Store наконец вышли эмуляторы PSP и RetroArch. От этих игр из детства аж олдскулы сводит! С того момента, как Apple разрешила публиковать эмуляторы игровых консолей в App Store, успели появиться самые разные приложения. Поначалу некоторые из них размещались без особого успеха и удалялись из-за проблем с авторскими правами, но с тех пор ситуация кардинально измен...

Signal Integrity of DDR4 Доброго времени суток! Наверное, вы все знакомы с компьютерной оперативной памятью DDRx (где x - поколение). Я бы хотел вам рассказать о ней с точки зрения SI (Signal Integrity - целостность сигналов) и принципов трассировки этого интерфейса. Читая документацию на различны...

Быстрое пополнение словарного запаса при изучении иностранного языка методом «Ознакомление-забывание-вспоминание» Привет, Хабр!В этой статье мы описываем полную методику быстрого пополнения словарного запаса при чтении неадаптированной литературы на иностранном языке. Статья будет интересна тем, кто владеет иностранным языком на уровне B2-С1 и столкнулся с необходимостью увеличить слова...

[Перевод] Проведение Triforce встреч для определения критериев приемки Критерии приемки являются основой для определения «что» для любого бизнес-запроса. По сути они представляют собой серию функциональных условий, транслирующих, какое поведение мы хотим получить от фичи, а также связывают бизнес-запрос с разработкой. Тестировщикам они помогают...

«Где угодно работать, только не в локальных конторах» — у меня есть что сказать 23 года я работал в американских компаниях SAS и C3 AI. Это, если что, очень дорогой интеллектуальный анализ данных корпораций и производств. Причём SAS много лет занимал места с 1-го по 3-е в мире как лучший работодатель, поэтому некоторая избалованность присутствует. Пос...

документация android оффлайн Если для кого то будет полезным, выкачал Teleport'ом документацию по андроиду. рапида p.s. не говорю, что там все красиво, css немного дал о себе знать в меню, а во всем остальном нормально.

[Перевод] Svelte: Знакомство с рунами В 2019 году Svelte 3 превратил JavaScript в реактивный язык. Svelte - это фреймворк для создания веб-интерфейса, который использует компилятор для превращения декларативного кода компонентов в такой... Читать далее

Kubernetes 1.29: бэкенд на nftables, изменение атрибутов тома и другие фичи Сегодня ожидается выход очередной версии Kubernetes — 1.29. Среди главных изменений — бэкенд на основе nftables для kube-proxy, множественные CIDR для сервисов и функция QueueingHint, которая помогает решить, как повторно ставить поды в очередь. TaintManager стал отдельным к...

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

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

Знай, куда идёшь: 1С как кузница карьеры Годы идут, рынок меняется. Если ещё пару лет назад российский рекрутмент встречал новые волны джунов с горящими глазами, готовых бороться за место в стартапах, то сейчас мы всё чаще сталкиваемся с тем, что компании выходят на поиски – и, как ни странно, получают совсем немно...

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

Анонс Cut the Rope 3 — милый Кусь Ням, 3D и Apple Arcade Cut the Rope 3 — приключение с элементами из головоломок, которое выйдет на iOS 13 октября. Новая игра от ZeptoLab будет доступна только подписчикам Apple Arcade. Игроки Cut the Rope 3 отправятся в неизведанные земли на воздушном шаре. Вместе с ними будет Ам Ням и милый Кус...

Postgresso #11 (60) Лицензии и апокалипсис10-го августа сего года компания HashiCorp позволила себе нехороший - с точки зрения многих участников движения open source - поступок. Она поменяла лицензию своего любимого многими Terraform (инфраструктура как код - Infrastructure-...

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

Android. Принять себя или Cookie? Печенья, кеки, кукисы, ку-ку, кексы… нет, куки!– Cookie — это что? – Почему их не нужно принимать?– Безопасно ли это?– CookieJar, CookieManager, CookieStore… WebView?А также истории про то, как жить с cookie в большом приложении, и сколько эмоций вы испытаете, если в ва...

Как избавляться от ошибок в английском языке. Окаменелые ошибки Fossilized errors - "заученные" ошибки. Когда студент повторяет их вновь и вновь и не воспринимает их, как ошибку. Если это грамматическая ошибка, то правило может быть знакомым, но из-за того, что студента не исправляли, ошибка отложилась в памяти и осталась со студентом, н...

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

Apache Flink: динамическое определение выходного топика в Kafka Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей статье — «Apac...

Почему 4 базовых правила дизайна нужно знать всем, будь ты разработчик, верстальщик или копирайтер Есть на свете особо ценные приёмы и инструменты, применимые почти к любой профессии. И речь не о пресловутых софт-скилах, с ними всё достаточно очевидно. Куда интереснее поговорить о «жёстких» навыках, которые, за счёт своей универсальности, здорово прокачивают профессиональ...

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

Безымянная логика Почти две с половиной тысячи лет назад Аристотель положил начало науке логике, сформулировав три закона: тождества, противоречия и исключенного третьего. Закон тождества (кратко А=А) гласит, что всякая мысль (назовем ее А) в процессе рассуждения должна бы...

Huawei поставила крест на Android. Представлена HarmonyOS NEXT, и в ней нет ни строчки кода Android Сегодня состоялось очень важное событие: Huawei представила в Китае новейшую операционную систему HarmonyOS NEXT, которая, в отличие от обычной HarmonyOS, не базируется на Android AOSP. Более того, эта ОС вообще не совместима с Android и ее приложениями. Создатели назы...

ХабраЧеллендж или как мы запустили фабрику статей Уверены на все 100%, что каждый читатель Хабра в своей жизни сталкивался с непреодолимым чувством неизбежного, или, как его еще принято называть, сочинением по русскому языку или литературе. И вроде есть понятная и рабочая формула: «‎Главное ― начать, а дальше процесс пойдет...

Open Research Knowledge Graph: новый подход к научной коммуникации На сегодняшний день для представления и обмена результатами исследований мы используем методы, которые были разработаны много веков назад. С момента зарождения современной науки (публикации первого научного журнала "Transactions of the Royal Philosophical Society", 1665 г.) ...

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

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

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

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

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

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

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

Как исследование GlowByte помогает «Пятёрочке» анализировать персональные коммуникации на рынке Food Retail В современном мире, где конкуренция в сфере ретейла продолжает набирать обороты, держать руку на пульсе становится все более актуальным для каждой успешной корпорации. Борьба за потребителя никогда не была такой интенсивной, и в этой борьбе большое значение приобретает транс...

Ускоряем Dictionary в C# при помощи структур и CollectionsMarshal Если вы C# разработчик, то наверняка вам знаком класс Dictionary. В качестве значений вы, скорее всего, использовали классы. Но что если я скажу, что в Dictionary можно использовать структуры? Не стоит бояться того, что структуры копируются при передаче в метод или возврате ...

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

Как увеличить количество приложений на рабочем столе iPhone Экраны смартфонов Apple уже давно достигли размера в 6,7 дюйма, но, как и в самом начале, больше четырех приложений по ширине вы разместить не можете. По какой причине в Купертино не позволяют пользователям добавлять хотя бы пять разных значков в ширину, непонятно, но факт ...

[Перевод] Сравнение HTTP-библиотек В .NET приложениях часто приходится обращаться к внешним HTTP-сервисам. Для этого можно воспользоваться стандартным HttpClient, или какой-нибудь сторонней библиотекой. Мне приходилось сталкиваться с Refit и RestSharp. Но никогда мне не приходилось принимать решение о том, чт...

Подключаем умный поиск (GPT) к своей базе документов Есть отечественный файрвол (NGFW) и есть документация для пользователей powered by GitBook. В этой документации работает простой поиск — только по словам и словосочетаниям. И это плохо, потому что нет ответов на вопросы: "Какие алгоритмы шифрования ipsec поддерживаются у вас...

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

Где читать и скачать книги бесплатно: лучшие сервисы Сегодня не нужно идти в библиотеку, если вы захотели прочитать книгу. Быть пиратом и скачивать литературу с подозрительных сайтов мы тоже не советуем, ведь множество произведений доступны легально и бесплатно. Редакция ZOOM.CNews нашла несколько онлайн-библиотек, которые поз...

Гайд по установке эмулятора Vita3K на Android и скачиванию игр Vita3K — эмулятор PS Vita, который доступен на ПК и Android. Скачать его можно через официальный сайт на Windows, MacOS и Linux; для Android нужно воспользоваться ссылкой на GitHub, где лежит APK-файл. Далее устанавливаем APK-файл. В главном меню выбираем русский язык. ...

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

Зеркало Марафонбет, что это и где найти? Зеркало Марафонбет – это сайт, который позволяет пользователям получить доступ к ставкам на спортивные события и другим услугам букмекерской конторы Марафонбет. Зеркало Марафонбет является альтернативным адресом сайта Марафонбет, который обходит блокировки и ограничения, нал...

Библиотека Granite от elementary OS На данный момент существует множество различных операционных систем на базе ядра Linux. Буквально на любой вкус. Некоторые операционные системы пользуются уже готовыми графическими оболочками, а другие создают свои. В дистрибутиве elementary OS применяется свое окружени...

Какие бывают Cortex-M7 ARM-ы, периферия, шины, память, … DMA На рисунке приведена структурная схема современного, одного из самых навороченных (я подозреваю) 32-битного ARM процессора или микроконтроллера-microcontroller, в документации используются оба термина: high-performance Flash microcontroller (MCU) based on the 32-bit ARM Cort...

Как и почему я писал для Флиппера на Си-с-классами Мой Флиппер дошёл до меня больше полугода назад, но что-то под него написать я собрался только сейчас. Его API рассчитаны на язык С — а у меня с ним опыта не очень много. Но проблем с тулингом не возникло — у Флиппера есть своя система сборки, которая скачала мне нужный тулч...

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

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

Sennheiser представила наушники MOMENTUM True Wireless 4 Сегодня компания Sennheiser официально представила свои флагманские беспроводные наушники с шумоподавлением MOMENTUM True Wireless 4. Стоит сказать, что наушники MOMENTUM True Wireless 4 имеют стандартный дизайн TWS-модели с динамическими драйверами TrueResponse диаметром 7 ...

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

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

Велосипедим связанный список на Wolfram Возможно 11 подписчиков моего блога обратили внимание на тот факт, что все мои статьи касаются языка Wolfram, а несколько последних статей вышли довольно громоздкими. Одна из последних статей была помечена Хабром как требующая в среднем 32 минуты на прочтение. Я посчитал, чт...

Metatron — Open Source библиотека для генерации отчетов на языке Rust Год назад возникла идея переписать весь Java-бекенд на Rust, который я уже несколько лет разрабатываю и поддерживаю. Я нашёл все аналоги библиотек и фреймворков из мира Java в экосистеме Rust: Читать далее

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

Преобразование Уолша-Адамара На сайте hackerrank.com есть отличная задача.По заданному массиву short[] A; найти максимальное количество его подмассивов, xor элементов которых будет одинаковым. Сам этот xor тоже нужно найти.Максимальная длина массива равна 105, так что квадратичный алгоритм не укладывает...

Зачем в Scala трамплины и как их использовать В этой статье директор департамента разработки российской компании «Криптонит» и «скалист» Алексей Шуксто рассказывает о специфической технике функционального программирования, которая называется «трамплин» (trampoline).Если кратко, то «трамплин» — это постоянный вызов в цик...

Блокировать вызовы по региону — все, что нужно знать Статистика показывает, что нежелательные вызовы от мошенников и спамеров чаще поступают из ряда конкретных регионов. Так, чаще всего звонят с московских и ленинградских номеров, которые можно отличить по кодам (495, 499, 812 и 813). Нередко вызовы поступают и с иностранных ...

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

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

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

[Перевод] Rust против Go: практическое сравнение Rust против Go — тема, которая постоянно возникает, и о ней уже много написано. Частично это связано с тем, что разработчики ищут информацию, которая поможет им решить, какой язык использовать для своего следующего (веб) проекта.В конце концов, оба языка можно использовать д...

NASA тестирует летающий дрон Dragonfly для исследования Титана Dragonfly — космический дрон размером с автомобиль, он будет питаться от РИТЭГа (радиоизотопный источник электроэнергии) и искать потенциальные предшественники жизни на спутнике Сатурна, Титане. Но прежде чем Dragonfly сможет отправиться в реальную миссию, инженер...

In RISC-V Rust Превращаем простой пример распознавания нот из лабораторных работ Школы синтеза цифровых схем в Enterprise. Используем компилятор Rust для RISC-V микроконтроллера YRV-Plus. Читать далее

SwiftUI: архитектура State-Model-View В документации по UIKit компании Apple можно найти объяснение, что “структура приложений основана на шаблоне проектирования Model-View-Controller (MVC)”.В материалах Apple по SwiftUI объяснений и даже просто ссылок на паттерны проектирования, похоже, нет. Попробуем сначала р...

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

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

Перехват трафика мобильных приложений Часто случается так что на необходимом сайте установлена защита от ботов. Например: QRATOR, Cloudflare, Akamai Bot Manager и пр. Можно потратить множество ресурсов на обход этих систем, но если у вашего ресурса есть мобильное приложение, то можно пойти другим путём. В подавл...

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

[Перевод] Внутри картриджей Super Nintendo Одна из исключительных особенностей игровых картриджей Super Nintendo — это способность упаковать в микросхемы ПЗУ не только инструкции и ресурсы. Если открыть картридж и посмотреть на плату, можно найти чип защиты от копирования CIC, SRAM и даж...

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

Исследуем лицензирование Cockroach DB до Enterprise или не случившийся хард-реверс-инжиниринг Как известно java компилируется в байт-код, скомпилированные классы также богаты мета-информацией для обеспечения механизма рефлексии что в совокупности позволяет довольно легко декомпилировать java-приложения обратно в java-код. Смотря в окошко рандомного java-приложения, с...

Функция «Super Drag Drop» в Microsoft Edge позволяет быстро открывать ссылки в новой вкладке В актуальных сборках Microsoft Edge для канала Canary появилась новая экспериментальная функция под названием «Супер перетаскивание» («Super Drag Drop»), которая упрощает открытие ссылок и другого контента в новой вкладке браузера. Для этого достаточно просто немного перета...

[Перевод] Генератор случайных чисел, который можно запустить в голове Люди ужасно плохо справляются с придумыванием случайных чисел. Я хотел научиться быстро генерировать «достаточно случайные» числа. Мне не нужно было что-то совершенное, просто способ придумывания случайных цифр за полминуты. Поискав онлайн, я нашёл старый пост в Usenet, нап...

Как заставить смартфон автоматически включать музыку, когда надеваешь наушники Я часто слушаю музыку на телефоне через наушники, когда нахожусь в поездке или иду по улице в гордом одиночестве. При этом меня раздражает, что для воспроизведения недостаточно просто надеть гарнитуру. Нужно обязательно запустить приложение и нажать кнопку «Play», хотя лишн...

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

Обязательная сертификация электросамокатов в России Представлен проект Постановления Правительства, в рамках которого электросамокаты, электроскейтборды, гироскутеры, сигвеи, моноколеса и аналогичные устройства будут подлежать обязательной сертификации согласно Постановлению Правительства России № 2425.  ГОСТ ...

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

Xdebug в качестве интерактивной оболочки (REPL) в Phpstorm — чем заменить Python/JS консоль для Php Перешли с Python на Php, а привычной интерактивной оболочки из PyCharm нет? Пользуетесь JS-консолью в инструментах разработчика браузера, а для Php такого нет? Не беда, ведь в качестве интерактивной оболочки можно использовать консоль Xdebug! И мало того, что она интегрирова...

Typescript Generics Javascript - крутой язык со своими преимуществами и недостатками. И одно из его свойств - это динамическая типизация, которая одновременно может быть как преимуществом, так и недостатком. Очень много холиварных тредов на этот счет, но по мне так все просто. Для небольших и п...

Вызов пользовательских функций в API Gigachat Недавно в документации к API GigaChat появился раздел, посвящённый работе с функциями, аналогично тому, как это реализовано в ChatGPT. Идея заключается в том, что модели передаётся информация о доступных ей функциях, и в зависимости от запроса пользователя модель может ...

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

Sub-GHz во Flipper Zero и бесконечное множество внешних модулей Большинство владельцев Flipper Zero хоть иногда, но пользуются приложением Sub-GHz, чтобы взаимодействовать с различными приборами, работающими на частотах ±433 MHz: открыть шлагбаум или ворота, управлять устройствами умного дома или даже использовать флиппер для теста “пища...

«Винтажная» метавселенная Second Life с NASA, IBM и Dell: внезапное возрождение Если вы думаете, что метавселенные — это исключительно современная история, начавшаяся с Цукерберга, то вы сильно ошибаетесь. В этом году одна из самых старых метавселенных Second Life (SL) отметит свой 21-й день рождения. Да-да, %USERNAME% — эта метавселенная была запущена ...

5 способов прокачать Ватсап на Айфоне в 2024 году и сделать его круче Телеграма Несмотря на обилие фишек в Ватсапе, каждый пользователь может улучшить его самостоятельно, приблизив по функциональности к Телеграм. Самое удивительное, что такая возможность есть даже у пользователей iPhone, которые зачастую сталкиваются с различными ограничениями со сторо...

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

Задача «Получить значение у N url из списка» с собеседования на Go На данный момент нахожусь в активном поиске нового проекта, поэтому активно хожу на собеседования.Решил поделиться своими мыслями о решении задачи, которую (как мне кажется) часто дают на собеседованиях. ЗадачаНаписать функцию, которая принимает несколько url адресов, а отда...

[Перевод] Безымянный язык программирования без присваивания имён Придумывать имена сложно. Давайте посмотрим, как далеко мы можем зайти без них.Что это?Это язык программирования, основанный на трёх парадигмах:Бесточечном программированииСтековом программированииМассиво-ориентированном программированииОсновная «фишка» языка — избегание люб...

Этапы и принципы развития навыка говорения Статью пришлось переопубликовать с важными уточнениями. Кто уже читал, в конце после чёрточки внизу – совершенно новый текст.«ЗНАТЬ иностранный язык» и «УМЕТЬ на нём разговаривать» — это очень разные вещи. Профессиональные переводчики знают язык глубоко, но разговаривают нек...

Бесплатные курсы для изучения C++ в 2024 году В 2024 году в сети доступно множество бесплатных ресурсов для изучения C++, которые предлагают высокое качество обучения. Поэтому нет необходимости платить за курсы, если вы можете получить все необходимые знания бесплатно.Учить C++ в 2024 году по бесплатным курсам имее...

Решение на миллион: разбираем алгоритмические задачи с победителями True Tech Champ Привет, Хабр! Меня зовут Алина Ёжикова, я работаю в МТС Диджитал и делаю мероприятия для разработчиков. Сегодня расскажу, как мы организовали самый большой и сложный ивент в моей карьере — олимпиаду по программированию на восемь тысяч разработчиков.Я говорю про True Tech Cha...

Готовимся к собеседованию по Rust: 4 самых частых вопросов. Часть 1 Привет, Хабр!Rust — язык программирования с акцентом на безопасность, скорость и параллелизм. Rust решает многие проблемы, с которыми сталкиваются на других ЯП, например, управление памятью без сборщика мусора. Очевидно из-за многих преимуществ Rust выбирают все большей комп...

[recovery mode] Безопасность android-приложений. Реверсим OWASP MASTG Crackme 1 Всем привет! Меня зовут Максим и я занимаюсь исследованиями источников данных. В своей работе периодически приходится сталкиваться с исследованием android-приложений. В этой статье я хочу показать базовые методы реверс-инжиниринга и исследования android-приложений на примере...

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

Сложность алгоритмов. Разбор Big O Сложность алгоритмов - это ключевой аспект при проектировании и создании веб-приложений, особенно при работе с большим объемом данных или выполнении вычислительно сложных операций. Понимание, как оценивать сложность алгоритмов, помогает принимать обоснованные решения в выбор...

Renga STDL: краткий обзор языка для расширения функциональности программы Renga Renga - программа для проектирования зданий, с помощью которой можно создать трёхмерную модель, включающую инженерные конструкции, коммуникации и всю информацию о них. Затем из этой модели можно получить чертежи и спецификации. Renga работает под Windows и написана на C++.В ...

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

Nota, Typst и Evidence. Языки программирования для генерации документов Все настолько привыкли к Markdown, что считают его неким стандартом для оформления документов в вебе. Но это не конечная истина, высеченная на камне, а просто популярный язык разметки, как HTML и TeX. В то же время появляется всё больше новых языков, которые позиционируют...

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go Эта статья основана на истории об одном личном челлендже. Задача звучала так: помочь с реализацией взаимодействия компонентов в программном комплексе заказчика. Иными словами, понадобилось IPC для дальнейшего развития продукта. Вызов заключался в том, что в обязательных треб...

Эксперименты с Golden Ticket Пожалуй, одной из самых опасных и крайне нежелательных сущностей, которые могут завестись в скомпрометированной Windows-инфраструктуре, является Golden Ticket. Это абсолютно легитимный Kerberos-билет, содержащий специально созданные данные, позволяющие злоумышленнику обойти ...

Метод K-ближайших соседей (KNN). Принцип работы, разновидности и реализация с нуля на Python К-ближайших соседей (K-Nearest Neighbors или просто KNN) — алгоритм классификации и регрессии, основанный на гипотезе компактности, которая предполагает, что расположенные близко друг к другу объекты в пространстве признаков имеют схожие значения целевой переменной или прина...

Без холивара «переписать все на Go»: проблема переносимости в Python и ее решение На скриптовых языках удобно разрабатывать… И на этом удобство заканчивается. Вне машины разработчика начинаются проблемы. Особенно если вы пишете какой-то прикладной тулинг — cli-утилиты, вспомогательные приложения в вашем SDK и прочее. Вы даже не можете рассчитывать на то, ...

Объектно-ориентированный подход при проектировании цифрового офиса сотрудника На современных проектах объектно-ориентированные подходы могут стать универсальным средством построения API, а файлы  YAML — понятной всем нотацией при интеграции. В новой статье рассмотрены оригинальные объектно-ориентированные подходы для проектирования архитектуры ци...

Spring Security 6. Авторизация и аутентификация на основе Базы данных Привет. Меня зовут Кирилл, я Java-разработчик. Несмотря на то, что уже год я работаю в компании, по прежнему стараюсь находить время для собственных проектов, с помощью которых осваиваю интересующие меня технологии и подходы. Именно на таком проекте я решил разобраться, как ...

PaaS два года спустя. Обзор инструментов и какие задачи они решают Друзья, привет! Если у вас так же много разработчиков как у нас, то и им, возможно,  стало тесно стоять в очереди на deploy в монолите. А значит, вы можете решить перейти на микросервисную архитектуру и дать каждому игроку свой мяч каждой команде свой микросервис. ...

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

Илон Маск открыл доступ к документации первого электромобиля Tesla По решению Илона Маска и совета директоров Tesla открыла доступ ко всей технической документации своего первого серийного электрокара Roadster.

Основы Event Loop в JavaScript В JS Event Loop позволяет непрерывно проверять, есть ли в очереди задачи, и, когда стек вызовов пуст, передавать эти задачи на выполнение. Таким образом, долгие операции не мешают продолжению выполнения кода. Именно благодаря Event Loop приложение мо...

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

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

Для чего нужны закрытые чаты в Ватсапе и как их включить Многие пользователи iPhone переживают о тайне своей переписки с другими людьми. Для таких случаев популярные мессенджеры даже сделали возможность заблокировать приложение с помощью пароля и биометрии. Это позволяет установить дополнительную защиту и точно быть уверенным в т...

Ilta-Sanomat: Финляндия не откроет КПП на границе с Россией в феврале В Финляндии заявили о планах не открывать границу с Россией в феврале

[Перевод] Джун Ха: ход конём из поэта в великие математики В 2022 году Джун Ха был награжден медалью Филдса  за революционный вклад в области комбинаторики, особенно за мосты, которые он построил между комбинаторикой и алгебраической геометрией. Сложно поверить, что человек, получивший медаль за выдающиеся открытия в математике...

Postgresso #10 (59) PostgreSQL 16.1- а также PostgreSQL 15.5, 14.10, 13.13, 12.17 и 11.22 (эта версия последняя, которая будет поддерживаться в линейке 11). Обновление закрывает 3 проблемы безопасности:CVE-2023-5868: показ содержимого памяти в вызовах функций с агрегацией (memory disclosure in ...

[Перевод] Мягкое знакомство с дополнительным кодом Недавно, общаясь по видеосвязи с другом, я рассказывал ему о своих идеях по реализации нового продукта. В разговоре я упомянул добавление больших знаковых чисел в ассемблере с использованием дополнительного кода, на что получил от собеседника вопрос: «Что такое дополнительн...

От идеи к успеху: гипотезы в развитии продукта Когда ты работаешь над продуктом, всегда есть волнующие вопросы: как сделать его лучше? Что нужно изменить, чтобы пользователи были в восторге? Тут на помощь и приходят гипотезы! Это как загадка, которую ты решаешь, чтобы открыть новые возможности и улучшить свой продукт.Дав...

5 случаев, когда вас спасет установка APK на Android Подавляющее большинство владельцев смартфонов устанавливает приложения через Google Play, игнорируя свободу, которую предоставляет операционная система Android. В отличие от пользователей iOS, фанатам зеленого робота доступна ручная загрузка и установка программ. Но для чег...

На границе КНДР и РФ активизировалось железнодорожное движение На этой неделе значительно активизировалось железнодорожное движение вдоль границы между Северной Кореей и Россией. Всплеск показали спутниковые снимки. Это происходит на фоне обеспокоенности возможными поставками оружия после встречи лидеров стран Ким Чен Ина и Владимира Пу...

Документация как сервис: как мы генерируем документы независимо от стека разработки Привет, Хабр. Меня зовут Наталья Павликова, в YADRO я работаю в команде DocOps. У нас обширная инфраструктура вокруг задач документирования, которая немного напоминает ходячий замок Хаула. Сегодня я расскажу о небольшой ее части — процессе автоматической генерации и публикац...

Прокрастинация, youtube и горящий дедлайн — что мешает нам учиться? Всем привет! Меня зовут Лиза, я методолог обучающих программ в ЕДИНОМ ЦУПИС. Даже во время прохождения очень интересного и полезного курса сосредоточиться может быть крайне сложно. В мире, наполненном информацией, учиться мешает буквально любой внешний фактор. В статье я рас...

Что такое метрика ага-момента и как ее найти Всем привет! Меня зовут Сережа Казарян из команды CX-аналитики AI-центра Тинькофф. Мы используем ML-инструменты, чтобы кластеризовывать обращения клиентов, анализировать нотификации и ошибки, с которыми сталкиваются пользователи. Мы переводим их в понятные actionable-инсайты...

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

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

Продукт 2.0: разработать стратегию, чтобы в неё поверили, и не сойти с ума Я работаю в банке, и каждый год мои Product Owners разрабатывают и защищают перед руководством и заказчиками стратегию развития продукта на следующий год. Это обязательный ритуал, потому что без этого:а. Не будет денег на следующий год.b. Непорядочно в целом называть се...

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

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

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

Тестируем Microsoft Translator Widget Я рад сообщить, что мне пришел долгожданный инвайт на доступ к тестированию Microsoft Translate Widget. Возможно, вы уже сталкивались с такой вот панелькой на зарубежных сайтах: Это тот самый виджет. Он позволяет переводить ваш сайт на 13 других языков, совершенно автомати...

YTsaurus SPYT: помогаем планировщику Apache Spark быть ещё эффективнее В больших распределённых системах многое зависит от эффективности запросов: если на гигабайте данных неоптимальный запрос может выполняться за миллисекунды, то при увеличении массива в тысячи раз, сервер начнёт кряхтеть, пыхтеть и жаловаться. Чтобы избежать этого, помогут зн...

Симуляция высокоскоростных приёмопередатчиков с динамической реконфигурацией для ПЛИС Intel серии 10 В этой статье мы подошли к самому "свежему" поколению ПЛИС фирмы Intel, а именно 10 поколение. И теперь мы будем создавать проект в среде симуляции для Arria 10.Напомню, что высокоскоростные приёмопередатчики - это пара RX и TX, встроенные в ПЛИС, которые позволяют преобразо...

Программист с фигой в кармане: в чем причины? IT-сообщество давно уже изобилует людьми, которые работают, откровенного говоря, спустя рукава. Отлынивают, филонят, тихо саботируют. Такие сотрудники часто прогуливают работу, пользуясь удаленкой. Они коммитят в 2 раза реже и хуже, чем могли бы. Они не готовы править и даже...

Метод быстрого марша (Fast Marching Method) Пример реализации метода быстрого марша(Fast Marching Method) для создания полей расстояний(Distance FIeld) и поиска кратчайшего пути. Читать далее

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

[Перевод] Анализ «Пяти неправд» «Пять почему» — это распространённый метод исследования первопричин события. Он основан на предположении, что задав вопрос «почему» пять раз, можно найти ответ, который и будет являться первопричиной. Программист Сергей Целовальников* уверен: такая практика может оказаться п...

42 года BBC Micro и BBC BASIC: как появился этот образовательный инструмент и что с ним сейчас (спойлер — всё хорошо) Примерно полвека назад, где-то в начале 80-х годов XX века в BBC загорелись идеей образовательного проекта, цель которого — повышение компьютерной грамотности школьников, студентов и вообще всех желающих. А чтобы сделать проект масштабным, привлечь максимальное количество уч...

Одноплатный компьютер из камеры видеонаблюдения. Создаём WiFi-мобиль. Часть I Я уже рассказывал про то, как из телевизионной приставки можно сделать одноплатный компьютер (SBC — single board computer). Если же у вас завалялась ненужная или разбитая камера видеонаблюдения, не спешите её выбрасывать. Я покажу, как её можно использовать, даже если на н...

[Перевод] Все, что нужно знать для разработки с использованием LLM Цель данной статьи — простым языком объяснить ключевые технологии, необходимые для начала разработки приложений на основе LLM. Oна подойдёт как и разработчикам, так и специалистам по машинному обучению, у которых есть базовое понимание концепций...

Путь исследователя цифровых продуктов в «Магните»: проблемы и решения «Магнит» — это не только продукты съедобные, но и продукты цифровые: мобильные приложения, веб-сервисы. Команда пользовательского опыта старается делать их лучше: для этого есть исследователи, которые проводят исследования внутренних (для сотрудников) и внешних (для клиентов...

Зачем нам так много языков программирования? В мире насчитывают примерно 7 000 естественных языков и 9 000 языков программирования. Но, в то время как количество первых стабильно сокращается, число вторых продолжает уверенно расти. Сегодня поговорим о универсальном языке программирования «для всего» и причинах появлени...

Началась предзагрузка NFT-игры MIR2M: The Grandmaster Разработчики MIR2M: The Grandmaster открыли раннюю загрузку клиента игры. Скачать его можно через App Store и Google Play многих стран, включая РФ. Сервера откроют 1 февраля, в 12 обеда по МСК. Так как это NFT-игра в экосистеме WeMade, стоит ожидать хайп вокруг криптовалюты ...

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

Лучшие игровые движки 2024 для 2D разработки Defold - это бесплатный движок для создания 2D игр и других интерактивных приложений. Он разработан компанией King (известной по игре Candy Crush) и предлагает простой и эффективный способ создания кроссплатформенных проектов. 1. Язык программирования: Defold использует язык...

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

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

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

Python + pygame — небольшие оптимизации Приветствую IT-специалистов, решивших прочитать мою статью, я - python разработчик любитель (изучающий язык уже 5 лет, но не имеющий коммерческого опыта), который решил создать игру на очень медленном языке программирования. В процессе разработки я сталкиваюсь с различными п...

Мини-ПК GEEKOM Mini Air12: что это за система и какие у неё возможности? Миниатюрные персональные компьютеры — отличный выбор для любой категории пользователей, включая корпоративных. Такие устройства занимают минимум пространства на рабочем столе. Более того, большинство можно закрепить на задней крышке монитора. Есть девайсы, которые служат лиш...

Шпаргалки для сервера CS:GO Приветствую читателей данной статьи. Сразу хочу отметить, что статья не несет никакой профессиональной информации, но нацелена на аудиторию, которая имеет представление о том, что такое терминал и хостинг, и с чем это едят. Автор лишь делится своим опытом и оставляет это зде...

Ищете в беге управление гневом? Остановитесь Есть довольно распространенная теория, что когда ты злой, тебе нужно выплеснуть агрессию. Боевые виды искусств, качалка, пробежки, масса способов, чтобы выплеснуть плохую энергию. Однако не все так просто. Оказывается, если пойти на пробежку будучи уже злым, то в итоге – вы ...

Как одна случайная мутация помогла мне найти лечение для себя и собрать 342 миллиона для других В 2004 у меня родилась дочь с хрупкими костями. В 2 месяца медсестра сломала ей голень, когда измеряла рост. Всего у нее было 17 переломов. Когда я узнала диагноз своего ребенка, конечно, впала в депрессию. Я выходила на улицу и одного ребенка везла на инвалидной коляске, др...

Как лучше проводить one-to-one со своими сотрудниками: 5 лайфхаков из личного опыта Если вы занимаете руководящую должность, очень важно регулярно проводить индивидуальные встречи с сотрудниками из своей команды. “Зачем, если я и так вижу их каждый день, и мы обсуждаем все, что происходит?”. Эти встречи не только помогают понимать, как чувствуют себя коллег...

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

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

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

Книга «C++ для начинающих. 2-е изд." Привет, Хаброжители! Книга Герберта Шилдта начиная с таких базовых понятий языка, как типы данных, массивы, строки, указатели и функции, книга охватывает также важнейшие элементы объектно-ориентированного программирования — классы и объекты, наследование, виртуальные функц...

Проект «Мультиключ». Как мы побеждали контактные ключи Metacom и Cyfral Как и обещал в предыдущей статье, пишу о нашем опыте работы с контактными ключами Metacom и Cyfral.Эти ключи построены на микросхемах 1233KT1 и 1233KT2, которые не сильно друг от друга отличаются и имеют очень схожий принцип работы.При подаче питания ключ просто выдает свой ...

[Перевод] Функции ранжирования: RANK, DENSE_RANK, and NTILE В предыдущей статье обсуждалась функция ROW_NUMBER. Сейчас же мы рассмотрим другие функции ранжирования: RANK, DENSE_RANK и NTILE. Начнем с RANK и DENSE_RANK. Эти функции по функциональности и реализации аналогичны ROW_NUMBER. Разница в том, что ROW_NUMBER присваивает уникал...

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

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

Как мы реализовали кнопку со свайпом на Jetpack Compose Привет, Хабр! Меня зовут Женя Мельцайкин, я работаю в команде мобильной разработки Контура.Мы разрабатываем экосистему для бизнеса, которая оптимизирует рутинные задачи: работу с маркировкой, проверку контрагентов, товароучет, документооборот, отчетность. И в одном из продук...

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

Как я за месяц написал интерпретируемый язык программирования на Python Привет, Хабр! В этой статье я хотел бы поделиться опытом создания своего языка программирования.ПредысторияМне 14. Обучаясь на втором году Яндекс Лицея, нужно было написать несколько проектов. Первым из них стал проект на PyQT5. Я долго думал над идеей и вспомнил, что летом ...

Открыта запись на бета-тест Duet Night Abyss Разработчики Duet Night Abyss опубликовали пост на официальном сайте, где объявили набор игроков на предстоящий технический тест. Есть 3 способа принять участие. Первый это заполнить анкету, для которой сначала требуется зарегистрировать аккаунт от Hero Games. Второй вариант...

Account Abstraction: что это такое и зачем нужно криптомиру Привет всем! Меня зовут Паша, я web3 разработчик в команде MetaLamp, мой основной стек – Solidity. Последнее время я часто сталкивался с задачами, требующими применения технологии Account Abstraction, поэтому я решил собрать базовые знания о ней в одну статью. Эта статья пом...

Эволюция оценки программиста на интервью Я более десяти лет жизни писал код в одной российской компании и активно собеседовал-нанимал людей. За это время успел пообщался с четырьмя сотнями кандидатов. На моих интервью было все – от алгоритмических задач до разговоров о «жизни». Но форма вторична – я рассматриваю ин...

Изучение языков без труда: Puzzle-English и промокоды Изучение нового языка может быть увлекательным приключением, но оно также требует времени, усилий и постоянной практики. Однако с появлением современных образовательных платформ, таких как Puzzle-English, изучение иностранных языков стало гораздо проще и увлекательнее. В это...

Тимлид, которого не любят Есть у нас такая традиция – начальство не любить. А как быть, если начальство – ты сам? Хочется ж быть хорошим, всегда и для всех. Но получается так, увы, редко.Как понять, что про вас думают сотрудники, как повлиять на эти мысли, что нужно делать, чтобы помимо оценок “не бе...

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

Релизная версия Potion Permit заняла топ-20 App Store Издатель Playdigous выпустил мобильный порт игры Potion Permit. Она доступна в App Store и Google Play многих стран, включая Россию. Разработчики приготовили скидку в 30%, поэтому купить игру можно за 340 рублей. Несмотря на свою премиальность, проект занял топ-19 место сред...

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

[Перевод] Жизнь могла появиться в первые секунды после Большого взрыва Жизнь обрела свой дом на планете Земле около 4 миллиардов лет назад. Это значительная часть истории Вселенной, насчитывающей 13,77 миллиарда лет. Предположительно, если жизнь возникла здесь, то она могла появиться где угодно. А при достаточно широком определении жизни возмож...

Фонетический словарь. Пет-проект в полезное приложение У меня есть хобби — изучение английского языка, и последнее время я увлекся фонетикой британского английского языка, но почти все словари дают транскрипцию «‎Королевского английского», на котором говорят, по данным Гугла, около 3 процентов жителей Соединённого Королевства....

Как прокачать профессиональную репутацию без публичных выступлений Самые ходовые способы получить известность в статусе эксперта — публичные выступления и статьи.Как быть, если хочется проявить экспертность, но страшно выступать и нет достаточной уверенности, чтобы писать статьи? Я DevRel-специалист в Тинькофф, и за время работы часто сталк...

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

Популярные расширения на PostgreSQL В чем сила, бр..Постгреса? Сила PostgreSQL во многом заключается в его расширяемости, которая позволяет открыть больше функциональности.В статье рассмотрим четыре популярных расширения на PostgreSQL на 2024 год. Читать далее

Путевые заметки: как люди находили путь домой. Часть 1 В эпоху новейших технологий найти дорогу из точки А в точку Б можно, просто введя адрес в GPS-навигатор или смартфон. Однако люди всегда стремились к ориентированию и прекрасно определяли свое местоположение и до появления GPS-навигаторов и смартфонов. В этой серии статей мы...

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

5 незаметных функций Сообщений в iOS 17, которые сделают их удобнее Каждый год с выходом новой версии iOS Apple обновляет приложение “Сообщения”. В iOS 17 компания из Купертино немного изменила его дизайн и добавила новые возможности, некоторые из которых даже не получится обнаружить, если не поставить себе такую цель. Например, появилась в...

Арктический исследовательский институт откроет свою магистратуру Арктический и антарктический научно-исследовательский институт (ААНИИ) объявил о намерении открыть собственную магистратуру в 2025 году. Директор учреждения, Александр Макаров, сообщил, что в настоящее время ведется работа по разработке необходимой документации и подготовке ...

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

Как пополнить Apple ID и платить в App Store в 2024 году. Лучшие способы в России Несмотря на то, что в iOS 17.4 появились альтернативы App Store, воспользоваться ими могут только европейские пользователи. У них также есть уникальная возможность оплачивать покупки сторонними методами, которые не предусмотрены в каталоге Apple. К сожалению, пока в России ...

Рубрика «Сделай сам»: корпоративный портал своими руками Привет, Хабр!Наверняка большинство из вас знает, что такое "Интранет" (далее — "Интра"), а многие так и вовсе видели своими глазами и даже щупали курсором. Для тех, кто в танке все же не в курсе, уточню: это такой корпоративный портал, локальный сетевой ресурс для своих. Как...

[Перевод] Построение архитектур для обработки данных в режиме реального времени при помощи Apache Kafka, Flink и Druid Командам, которые занимаются обработкой данных (поступающих пакетными партиями в рабочих потоках) сложно соответствовать современным требованиям по обработке данных в режиме реального времени. Почему? Потому что пакетный поток данных – от доставки данных до их дальнейшей о...

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

Правительство США разрабатывает регуляторную среду для развития космических полётов: департаменты транспорта и коммерции получат полномочия по регулированию космоса Белый дом представил возможную регуляторную рамку для будущих космических частных станций. Обязанности будут разделены между двумя ведомствами: Министерством транспорта и Министерством коммерции. 15 ноября Национальный космический совет США NSC представил проект закона,...

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

ARR: что это такое и чем он полезен бизнесу Работая в условиях жесткой конкуренции и турбулентной экономики, бизнесу постоянно необходимо искать новые методы и подходы для увеличения дохода. Для тех, кто работает с клиентами по подписочной модели, одним из таких инструментов является ARR (Annual Recurring Revenue), ко...

Развитие RISC-V & мультиклеточная архитектура Рост популярности RISC-V с момента его появления в 2010 году позволяет говорить, что архитектура состоялась.Пока успех архитектуры RISC-V — это, в первую очередь, ее открытость. Все остальные факторы вторичны. Минимализм системы команд, ее стандартизация, программная инфраст...

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

Microsoft нужны ваши деньги: найдены следы платной версии ИИ Copilot Pro Microsoft планирует ввести подписку Copilot Pro, расширяя границы использования своего ИИ. Это открытие было сделано благодаря анализу кода браузера Edge на Android, где были найдены упоминания о Copilot Pro.

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

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

Xdebug в качестве Php REPL  —  чем заменить Python/JS консоль в Phpstorm | Запуск Xdebug после установки за 30 секунд Перешли с Python на Php, а привычной интерактивной консоли из PyCharm нет? Пользуетесь JS-консолью в инструментах разработчика браузера, а для Php такого нет? Не беда, ведь в качестве интерактивной оболочки можно использовать консоль Xdebug! И мало того, что она интегрирован...

[Перевод] 4. Nix в пилюлях: Основы языка Четвёртая часть из цикла статей Люка Бруно, посвящённой пакетному менеджеру и языку программирования Nix.Здесь мы знакомимся с основами языка. Читать далее

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

В поисках ПАК: импортозамещаем немецкое «железо» в российском ЦОД Привет, Хабр! Меня зовут Артем Золотарев, я инженер по виртуализации в Oxygen Data Centres & Clouds. Любой облачный провайдер и оператор ЦОД может столкнуться с задачей проброса USB-портов виртуальным машинам, которым нужен доступ к определенным устройствам. И чем с...

Оцениваем RAG-пайплайны RAG (Retrieval Augmented Generation) - это популярный подход, объединяющий извлечение данных из баз и генерацию текста, позволяя моделям AI давать ответы на вопросы, основанные на информации, которую они не видели в процессе обучения. Важным этапом в развитии RAG является ег...

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

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

Как создать PWA из любого сайта на компьютерах Apple с macOS Sonoma Последние годы нововведения в операционных системах Apple можно пересчитать по пальцам. Однако некоторые из них оказываются невероятно полезными, главное — просто найти им правильное применение. Так, в macOS Sonoma появилась возможность создавать практически из любого сайта...

Разница между pool.map и pool.map_async в Python Еще одна статья-шпаргалка о модуле multiprocessing в Python, без воды, от новичка для новичков многопроцессорного программирования.pool.map и pool.map_async являются методами модуля multiprocessing.Pool в Python, которые позволяют параллельно выполнять функции на нескольких ...

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

[Перевод] Кодируем крестики-нолики в 15 битах Недавно я наткнулся на пост Алехандры Гонсалес (@blyxyas), в которой рассказывается о попытке сжать игру крестики-нолики в минимальное количество битов. Она пришла к решению из 18 битов. Это заставило меня задуматься: а можно ли улучшить этот результат?Как говорит Алеха...

[Перевод] Почему реактивность без VDOM (с реальным DOM) лучше, чем реактивность с VDOM? Всем привет! В этой статье я хотел бы поделиться своими мыслями о том, почему виртуального DOM можно избежать при создании реактивности сегодня. Я работаю со всем этим уже около полутора лет, создавая фреймворк Cample.js, и у меня есть некоторые соображения по этому поводу. ...

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

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

Проектирование REST API: спорные вопросы с проектов и собеседований на системного аналитика (и не только) Проектирование REST API - это процесс создания дизайна методов обмена данными. Дизайн - это субъективное. У одних "так", у других "сяк". А кто прав? Иногда все, а иногда нет. Можно ли сделать в проекте все методы POST? Как правильно именовать эндпоинты - ед. число или мн. ч...

Спецификация уникальных идентификаторов UUIDv7 для ключей баз данных и распределенных систем по новому стандарту RFC9562 Долгожданный стандарт RFC9562 "Universally Unique IDentifiers (UUID)" с тремя новыми версиями идентификаторов UUID (6, 7 и 8) вместо малопригодного RFC4122 наконец-то вступил в силу. Я участвовал в разработке нового стандарта. Обзор стандарта можно посмотреть в статье.Введен...

Современный язык международного общения БредисловиеПоводом для написания этого поста стал топик на этом же подсайте https://habr.com/ru/articles/781798/В нем автор восхваляет иероглифы, считая их "силой". Прочитав пост, я начал писать комментарий, который дорос до отдельного поста об идеальном языке международного...

Trait-объекты и полиморфизм в Rust Привет, Хабр! Полиморфизм - это принцип в программирование, который позволяет нам писать гибкий, масштабируемый и поддерживаемый код. В Rust, как и во многих других языках программирования, полиморфизм позволяет одному интерфейсу представлять множество реализаций.Один из спо...

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

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

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

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

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

Как настроить сбор статистики и автоматическое отключение пользователей WireGuard в ispmanager с помощью Python и API Привет! Меня зовут Вячеслав, и я руководитель отдела маркетинга. Я поднял VPN-туннель по подписке на базе ispmanager. Однако мне этого было мало: нужно было, чтобы по окончании подписки туннель автоматически отключался и статистика по каждому пользователю собиралась ежедневн...

[Перевод] Рулетка онбординга: ежедневно удаляем аккаунты сотрудников Я большой поклонник автоматизированных тестов и достаточно дисциплинированный их автор. Проектирование ПО крайне сложно реализовать функционально корректно и ещё сложнее избежать регрессии в дальнейшем. Как сказал Майкл Фезерс, «легаси-код — это весь код, у которого нет тест...

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

Хабргорода У меня возникла идея сделать список упоминаний названий городов в статьях Хабра за 2023 год и карту по которой можно найти статьи. Когда можно найти статьи, где упомянается конкретный город. С первого взгляда задачка простая, но это как всегда дьявол кроется в деталях! Для э...

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

Временные ряды с Julia с библиотекой TimeSeries.jl Julia позволяет достигать скорости, сравнимой с C, что делает её хрошим выбором для временных рядов.Пакет TimeSeriesпредоставляет удобные методы для работы с данными временных рядов в Julia. Читать далее

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

For the rest of us Здравствуйте уважаемый хабражитель, В этом коротком посте я хотел бы поведать Вам о ресурсе, за которым я с большим удовольствием наблюдаю уже не первый год. Это серия подкастов про стартапы с незатейливым названием: startupsfortherestofus.com — что переводится на русский ...

Не сканируется QR-код со смартфона — почему и что делать? Сканирование QR-кодов помогает быстро выполнять переходы на сайты и другие действия. Но почему со смартфона иногда не сканируются QR-коды и как это исправить? Необходимость отсканировать QR-код часто появляется не только в общественных заведениях, чтобы подключиться к Wi-Fi...

QA-тестировщикам — рецензия на книгу «Тест-дизайн. Практическое руководство» Ольги Назиной Это вторая книга из трилогии Ольги Назиной по тестированию ПО. Про первую книгу автор рассказала в своем блоге на Хабре, третью мы осветили в предыдущем посте. Мультяшный авторский стиль изложения с сотнями картинок-комиксов необычен для компьютерной литературы, но почему бы...

Наблюдаемость качества разработки: от субъективных суждений к объективным данным Привет, Хабр! Я — Алексей Диянов, технический директор Nedra Digital. Мы — IT в нефтегазовой отрасли. Компании чуть больше трёх лет. Мы быстро выросли как в численности персонала, так и в количестве проектов, но не избежали классических проблем в виде трудностей внутренней к...

[Перевод] Когда целый день программировал на Zig: впечатления Rust-энтузиаста Я — большой фанат Rust, так как в этом языке предоставляется отличное инструментальное оснащение, и, когда я пишу на этом языке, я могу быть вполне уверен, что этот код будет работать надёжно. Но иногда Rust ненавистен. Чтобы написать код на Rust, требуется немало времени,...

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

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 8 Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья — мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Сегодня мы рассмотрим следующие...

Релиз NBA 2K24 MyTEAM — лучшей игры про баскетбол на смартфонах Мобильные игры из серии NBA 2K24 нельзя назвать симуляторами баскетбола, так как игроки в основном открывают наборы с редкими карточками, участвуют в матчах по стритболу и мечтают о временах, когда NBA 2K24 будут выпускать одновременно для ПК, консолей и смартфонов. Отчасти...

Samsung DEX в 2024 году: есть ли смысл? В далёком 2017 году в Samsung для своих флагманов (на тот момент S8/S8+) на базе Android 7 добавили особый режим DeX. Он позволяет работать на внешнем мониторе в похожем на десктопное окружении, и подключать периферию (в частности, клавиатуру/мышь). Альтернативы тоже были и ...

KMP перешёл в stable. Что это значит? 1 ноября состоялся релиза Kotlin 1.9.20, beta компилятора k2. Но для нас интереснее глобальное изменение статуса KMP. Мы используем эту технологию в мобильной разработке и написали про неё несколько статей.В статье подробнее рассмотрим, что изменилось в технологии с пер...

[Перевод] Анонс Asserts Представляем вам Asserts — платформу для анализа и отслеживания метрик. Сканируя метрики вашего приложения в любой совместимой с Prometheus базе данных временных рядов (time-series database, TSDB), Asserts в реальном времени: — создаёт карту архитектуры приложения и инф...

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

Сложности роста Ruby-приложений Привет! Меня зовут Валентин Бритвич, я Unit Lead интеграций в СберМаркете. Когда СберМаркет был стартапом, мы начинали с одного Rails-монолита, но бизнес рос, и стали появляться сотни партнёров на подключение, кастомные интеграции, которые нужно поддерживать, а с ними и проб...

Privacy Manifest: что нужно о нём знать для внедрения в проект На работе я столкнулся с задачей внедрения Privacy Manifest в проект. Изучение вопроса началось с прочтения документации Apple, а продолжилось просмотром WWDC-сессии на тему конфиденциальности. После внедрения оказалось, что для корректной работы над задачей нужно изучить бо...

Зеркалирование топиков Kafka по-бруклински Буквально на секунду представьте, что у вас есть парочка здоровенных кластеров Apache Kafka, каждый из которых держит по нескольку миллионов rps. И тут вас попросили зеркалировать топик из одного кластера в другой. Максимально близко к реалтайму, да ещё и с некоторыми специф...

Какие ML-платформы нужны бизнесу, и кто их может сделать Привет, Хабр! Меня зовут Виктор Кантор, я директор Big Data МТС. Около 14 лет я работаю с технологиями, связанными с Machine Learning, Big Data, Data Science. Но есть одна проблема, с которой я постоянно сталкиваюсь. Например, поставлена задача, которую нужно решить при помо...

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

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Новые открытия марсохода Perseverance: что нового мы узнали о Марсе. Часть 1 Марсоход Perseverance до сих пор успешно работает на Красной планете, выполняя свою цель — изучение кратера Jezero. Учёных интересует всё, а особенно возможные признаки существования жизни на Марсе в прошлом либо же какие-то признаки, указывающие на то, что жизнь там существ...

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

Книга «Kali Linux в действии. Аудит безопасности информационных систем. 2-е издание» Привет, Хаброжители! В этой книге рассматриваются методы обхода систем безопасности сетевых сервисов и проникновения в открытые информационные системы. Информационная безопасность, как и многое в нашем мире, представляет собой медаль с двумя сторонами. С одной стороны, мы ...

[Перевод] Как устроено автоматическое удаление мёртвого кода в Meta* В фреймворке Systematic Code and Asset Removal Framework (SCARF) компании Meta* есть подсистема выявления и удаления мёртвого кода. SCARF использует статический и динамический анализ программ для выявления кода, мёртвого с точки зрения как бизнеса, так и языков программиро...

Инсайдеры разошлись во мнениях, вырастет ли биткоин до $40 тысяч или упадёт на 40% Биткоин начал расти, отчасти благодаря возможному признанию ETF со стороны SEC. И аналитики считают, что уже в 2023 году BTC может побить рекорд.

Хеш-функция Стрибог. Особенности аппаратной реализации на System Verilog На просторах интернета есть несколько статей об алгоритме получения хеш-функции Стрибог (ГОСТ 34.11-2012), в том числе и на Хабре. Однако везде в качестве примера приводится реализация на языках программирования C, C#, Python и других. То есть идет последовательное выполнен...

А ты хорошо знаешь Go? Держи пару полезностей по оптимизации кода Привет, Хабр!Эта статья — моя подборка приёмов и техник, которые помогут писать лаконичный и производительный код на Go без лишних костылей и велосипедов.Речь пойдёт о:полезностях для конкурентного программированияприёмах в Go в целом, таких как использование iota, работа с ...

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

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Что стоит почитать по Python в 2024 году? Пять хороших книг Литературы никогда не бывает много — ни художественной, ни технической. Это касается и книг по языкам программирования, включая Python. Разработчикам, как начинающим, так и опытным, нужны надёжные руководства для того, чтобы повышать свой профессиональный уровень. В сегодняш...

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

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

Настройка CI/CD для самых маленьких разработчиков Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позв...

Готовимся к вопросам по вёрстке на интервью Frontend-разработчика: значения свойства display Привет, Хабр. Я продолжаю отвечать на вопросы из собеседований на должность фронтендера. Сегодня я отвечу на следующий вопрос: «В чём отличия между значениями block, inline, flex, inline-flex, grid и inline-grid для свойства display?» Прошу внимания. Мой ответ будет основ...

Albumentations: XYMasking Короткая версияПосле длинного вступления, будет туториал по применению аугментации XYMasking к спектрограммам от ЭЭГ. Кто экономит время - код с примерами можно найти по ссылке в документации библиотеки. Длинная версияAlbumentations - это Open Source библиотека для аугментац...

[Перевод] Rust 1.75.0: API адресной арифметики, async fn и impl Trait в трейтах, уcкорение rustc Команда Rust рада сообщить о новой версии языка — 1.75.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.75.0 ва...

Я мыслю MOV EAX, 1 Чем больше усилий ты прикладываешь, тем лучше это у тебя получается. Программирование не исключение, и чтобы с уверенностью сказать: "Я могу написать это" нужно много работать. Эта статья о том с какого языка начать путь в программировании и о том как понять принципы работы ...

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

Elegoo Neptune 4 PRO - мой опыт осваивания и допиливания принтера Всем привет. Не так давно стал счастливым (по началу) обладателем neptune 4 pro, который пришел на замену нептуну 3 про, хотелось печатать быстрее, иметь возможность дистанционного управления через интернет, ну и клиппер.К сожалению, информации по принтеру в русскоязычном се...

Что учесть при портировании приложения на Аврору Привет, Хабр! Меня зовут Дмитрий Мозер, я Flutter Team Lead в Friflex и участник бета-тестирования ОС Аврора. Занимаюсь, в том числе, созданием приложений на Flutter для ОС Аврора.Мы специализируемся на Flutter и активно участвуем в развитии фреймворка на ОС Аврора. Мы уже п...

Найден оригинальный метод борьбы с рекламой на YouTube На помощь приходит новое расширение Ad Speedup — Skip Video Ads Faster, доступное для Chrome и Edge и позволяющее свести пользовательский «контакт» с рекламой на YouTube к минимуму.

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

На эти каналы в Telegram подписываются без раздумий. Но я объясню, почему они настолько крутые Вот уже несколько лет мы живем в реальности, где каналы в Телеграме являются самостоятельными медиаресурсами. Новости, образование, развлечения, скидки — все это можно найти внутри одного мессенджера, если правильно сформировать свою ленту. А посильную помощь окажет подборк...

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

Диск – это лава. Исследуем методы выполнения пейлоада в памяти Ни для кого не секрет, что во время пентестов атакующим приходится использовать готовые инструменты, будь то нагрузка для Cobalt Strike, серверная часть от поднимаемого прокси-сервера или даже дампилка процесса lsass.exe. Что объединяет все эти файлы? То, что все они давным-...

Wubuntu: Linux с интерфейсом Windows 11 и возможностью запускать «виндовый» софт. А ещё и Windows 95 Дистрибутивов Linux достаточно много — на любой запрос, вероятно, можно найти подходящий вариант. Не так давно появился ещё один дистрибутив, который внешне является почти полной копией Windows 11. Также он способен запускать Windows-программы и работает на относительно стар...

[recovery mode] Тайм-менеджмент — это про приоритеты, а не про время Необходимо понимать вещь, от которой вообще отталкивается любой тайм-менеджмент: у нас в сутках одинаковое количество времени и в любом случае время работы четко ограничено. Но при этом времени достаточно, чтобы успеть многое. Так почему же что-то мы успеваем, а в других дел...

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

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

[Перевод] Result builders in Swift Конструктор результатов можно рассматривать как встроенный предметно-ориентированный язык (DSL) для сбора деталей, которые объединяются в конечный результат. Конструкторы результатов в Swift позволяют создавать результат, используя "блоки сборки", расположенные в ряд друг за...

Метод опорных векторов (SVM). Подходы, принцип работы и реализация с нуля на Python Метод опорных векторов (Support Vector Machine или просто SVM) — мощный и универсальный набор алгоритмов для работы с данными любой формы, применяемый не только для задач классификации и регрессии, но и также для выявления аномалий. В данной статье будут рассмотрены основные...

Multilabel-классификация знаний школьников Привет, Хабр! Меня зовут Егор, сейчас я учусь на четвёртом курсе кафедры математических методов прогнозирования (ММП) ВМК МГУ и изучаю машинное обучение, в том числе, обработку естественных языков (Natural Language Processing). Этим летом я стажировался в Лаборатории искус...

Лексикографический симлекс-метод Лексикографический симлекс-метод.Решение задачи линейного программирование симлекс-методом и лексикографическим симлекс-методом на Python! Читать далее

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