Социальные сети Рунета
Пятница, 21 января 2022

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

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

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

Джон Мюллер о каннибализации ключевых слов На прошлой неделе сотрудник Google Джон Мюллер поделился своим мнением по такой теме, как каннибализация ключевых слов. Так, один из вебмастеров задал следующий вопрос: «Я хотел бы прояснить, как работает каннибализация ключевых слов… Например, если страница ранжируется на п...

Ещё одна статья «Как я сдавал PMP». Online. Лайфхаки Привет! Меня зовут, Дмитрий, и я сдал экзамен PMP в 2020 г., онлайн. В своей статье я хочу поделиться субъективным мнением про методику подготовки к экзамену и тех мелочах, которые я хотел бы знать до начала подготовки. Без воды. Статья не содержит неэтичных способов подго...

Совещания — это просто. Три совета из практики на каждый день Согласно PMI 90% времени руководитель проекта тратит на общение с заинтересованными сторонами. Цель такого общения — обсудить и принять решение по ряду вопросов. Собрание посвященное обсуждению каких-либо вопросов является определением совещания. Продолжая логическую цепо...

[Из песочницы] Вступление в работу с возвратом пользователя: советы для Hooked-модели Всем привет! Я — Сергей, R&D officer в Genesis. В этом тексте хочу поделиться своими знаниями и опытом по созданию привычки использования продукта, рассказать о том, как это влияет на прибыльность бизнеса и почему предпринимателей встречают по возврату. Читать дальше &...

Как обучить нейронную сеть DeepPavlov на ноутбуке с использованием GPU В этой статье я хочу поделиться своим опытом использования данной open-source библиотеки на примере реализации одной задачи с парсингом файлов PDF/DOC/DOCX содержащих резюме специалистов. Здесь я также опишу этапы реализации инструмента для подготовки датасета. После чего м...

Зачем (не)нужны геттеры? Прошлая статья про сеттеры/геттеры как способ работы с сущностью (на примере Symfony в PHP) получила бурное обсуждение. В данной статье попробую выразить свои мысли отдельно по поводу геттеров: зачем и когда что-то получать, какую ответственность они решают и когда их уместн...

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

Логи в Kubernetes (и не только) сегодня: ожидания и реальность Шёл 2019 год, а у нас всё ещё нет стандартного решения для агрегации логов в Kubernetes. В этой статье мы хотели бы, используя примеры из реальной практики, поделиться своими поисками, встречаемыми проблемами и их решениями. Однако для начала оговорюсь, что разные заказчи...

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

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

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

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

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

5 публикаций, изменивших мир «Чего рассуждать, делать надо!», «Нечего бумагу марать», «Это всё хорошо только на словах» – многим пишущим людям не раз приходилось сталкиваться с таким пренебрежительным отношением к своему труду. А зря. Порой слово – это вполне себе действие, а точнее импульс к тому, чт...

[Перевод] SAML простыми словами Что такое SAML? SAML — сокращение от Security Assertion Markup Language (Язык разметки декларации безопасности). Его ключевой ролью в обеспечении сетевой безопасности заключается в том, что он позволяет получить доступ в несколько приложений, используя один набор учетных дан...

Как энергетик изучал нейросети и обзор на бесплатный курс «Udacity: Intro to TensorFlow for Deep Learning» Всю свою сознательную жизнь, я был энергетиком (нет, сейчас речь не идет о напитке с сомнительными свойствами). Я никогда особо не интересовался миром информационных технологий, да и даже матрицы я вряд ли на листочке смогу перемножить. Да и не нужно мне это было никогда, ...

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

PHP и регулярные выражения: азы для новичков В преддверии старта нового потока по курсу «Backend-разработчик на PHP», а также смежного с ним курса «Framework Laravel», хотим поделиться статьей, которую подготовил наш внештатный автор. Внимание! данная статья не имеет отношения к программе курса и будет полезна только ...

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

Унифицируй это: как Lamoda делает единообразными свои Go сервисы Мы широко используем микросервисную архитектуру, хоть и не считаем ее панацеей, и чуть больше 2 лет назад начали переходить на язык Go. Он сравнительно прост и, на мой взгляд, очень хорошо подходит для создания простых, небольших и быстрых микросервисов. Эта простота имеет и...

Как «готовить» nullable reference types с добавлением appsettings.json В данной статье хочу поделиться своими размышлениями о том, можно ли на современном C# писать код, безопасный от NullReferenceException. Этот зловредный тип исключения не говорит разработчику, в каком конкретно месте у него null. Конечно, от отчаяния можно?.начать?.писать?.о...

[Перевод] Планирование редакции Rust 2021 Мы рады объявить третью редакцию языка Rust — Rust 2021, которая выйдет в октябре. Rust 2021 содержит несколько небольших изменений, которые, тем не менее, значительно улучшат удобство использования Rust. Что такое Редакция? Релиз Rust 1.0 установил "стабильность без за...

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

[Из песочницы] Получение разрешения на полёт дрона (БВС, БПЛА) в Российской Федерации Данная статья написана мной с целью облегчить прохождение по пути официального оформления своего вылета тем моделистам-любителям, кто сомневается в выполнимости для себя данной процедуры и не знает с чего начать. В первую очередь хочу выразить благодарность автору статьи «...

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

Opennebula. Короткие записки Всем привет. Данная статья написана для тех, кто до сих пор мечется между выбором платформ виртуализации и после прочтения статьи из серии «Поставили proxmox и вообще все отлично, 6 лет аптайм не единого разрыва». Но после установки того или иного коробочного решения, воз...

[Из песочницы] Получение meterpreter сессии внутри NAT сети, с помощью Chrome и Pivot машины Вводная Всем привет, в этой статье я хочу поделиться своим опытом в эксплуатации уязвимости Chrome FileReader UAF, проведении техники pivoting, ну и написать свою первую статью конечно. Так как я являюсь начинающим Pentest инженером, то потратил на освоение и понимание этой...

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

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

[Перевод] Вывод типов в TypeScript с использованием конструкции as const и ключевого слова infer TypeScript позволяет автоматизировать множество задач, которые, без использования этого языка, разработчикам приходится решать самостоятельно. Но, работая с TypeScript, нет необходимости постоянно использовать аннотации типов. Дело в том, что компилятор выполняет большую раб...

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

[Перевод] Что такое «this» и с чем его едят Автор фото — Sebastian Herrmann. Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Daniel James «What is 'this'? Why is that?». Что такое «this» и с чем его едят Когда я начинал изучать JavaScript, концепция this показалась мне крайне запутанной. ...

Какие возможности предоставляет Spring для кастомизации своего поведения Всем привет. На связи Владислав Родин. В настоящее время я являюсь руководителем курса «Архитектор высоких нагрузок» в OTUS, а также преподаю на курсах, посвященных архитектуре ПО. Помимо преподавания, я занимаюсь написанием авторского материала для блога OTUS на хабре и се...

[Перевод] Swift Property Wrappers Если вы использовали SwiftUI, то наверняка обращали внимание на такие ключевые слова, как @ObservedObject, @EnvironmentObject, @FetchRequest и так далее. Property Wrappers (далее «обёртки свойств») — новая возможность языка Swift 5.1. Эта статья поможет вам понять, откуда же...

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

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

Подготовка к Ludum Dare Мероприятие Ludum Dare, регулярно проводимое 2 раза в год (а чуть ранее 3 раза в год) скоро не за горами и уже сейчас, за несколько недель до старта, можно настраиваться на нужный лад, обмениваться планами и идеями на грядущий 46-ой LD (официальная дата на сайте — 18-21 апре...

Let vs where в Ocaml/Haskell Языки Ocaml и Haskell ведут родословную из языка ISWIM, описанного в знаменитой статье Питера Лендина "The next 700 programming languages". В ней автор, отталкиваясь от языка LISP, создаёт новый язык программирования и, в частности, вводит ключевые слова let, and и where, ко...

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

Добавление своих полей в отчет Pytest Столкнулся с задачей модификации html-отчета при работе с pytest, в результате чего нашёл удобное для своей задачи решение, хочу им поделиться — возможно кому-то пригодиться. * Все картинки кликабельны Читать дальше →

[Из песочницы] Базовые команды Linux для тестировщиков и не только Предисловие Всем привет! Меня зовут Саша, и я больше шести лет занимаюсь тестированием бэкенда (сервисы Linux и API). Мысль о статье у меня появилась после очередной просьбы знакомого тестировщика подсказать ему, что можно почитать по командам Linux перед собеседованием. Обы...

Zabbix. Что делать, если принтер не делится информацией по SNMP? Доброго времени суток! КДПВ Данная статья – небольшой мануал, написанный в несколько художественной форме. В статье много картинок, заботливо упрятаных в спойлеры. Для кого написана эта статья? Для начинающих сисадминов, еще слабо знакомых с UNIX-системами, Zabbix’ом, но ...

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

14 практических советов по использованию Tableau Всем привет, меня зовут Меркурьев Михаил, я продуктовый аналитик в ManyChat. Год назад мы решили использовать Tableau как основной BI инструмент в компании и столкнулись с рядом проблем, касающихся того, что нужно наладить эффективную работу с инструментом для аналитиков, ме...

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

[Из песочницы] Учимся разворачивать микросервисы. Часть 1. Spring Boot и Docker Привет, Хабр. В этой статье я хочу рассказать о своем опыте создания учебной среды для экспериментов с микросервисами. При изучении каждого нового инструмента мне всегда хотелось его попробовать не только на локальной машине, но и в более реалистичных условиях. Поэтому я ре...

Какая асинхронность должна была бы быть в Python В последние несколько лет ключевое слово async и семантика асинхронного программирования проникла во многие популярные языки программирования: JavaScript, Rust, C#, и многие другие. Конечно, в Python тоже есть async/await, они появились в Python 3.5. В этой статье хочу обсу...

Используем Gradle и Github Actions для публикации Java проекта в Sonatype Maven Central Repository В данной статье я хочу подробно рассмотреть процесс публикации с нуля Java артефакта через Github Actions в Sonatype Maven Central Repository используя сборщик Gradle. Данную статью решил написать ввиду отсутствия нормального туториала в одном месте. Всю информацию приходил...

[Перевод] Корутины C++20 в примерах Одним из наиболее важных нововведений C++20 являются корутины. Корутина — это функция, которая может быть приостановлена ​​и после этого возобновлена. Функция становится корутиной, если она используете что-либо из следующего: - оператор co_await, чтобы приостановить выполнен...

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

Мониторинг ошибок и событий в журнале PostgreSQL (grok_exporter) Доброго дня, коллеги и хаброчитатели! Сегодня, хотел бы поделиться с Вами небольшой заметкой о том, как можно организовать оперативный мониторинг ошибок и событий появляющихся в журнале PostgreSQL используя Prometheus и экспортер метрик grok_exporter. Сразу оговорюсь, что э...

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

[Из песочницы] Адекватное MVC для начинающих и не только Небольшое вступление Всем 404! Большинство IOS-разработчиков не понимают как работать с Apple-MVC. Из-за чего появляется необоснованная критика, маленькие проекты стараются писать на архитектурах для этого не предназначенных, ViewController'ы становятся огромными, не читаемы...

Пишем простейший GitHub Action на TypeScript Недавно я решил немного привести в порядок несколько своих .NET pet-проектов на GitHub, настроить для них нормальный CI/CD через GitHub Actions и вынести всё в отдельный репозиторий, чтобы все скрипты лежали в одном месте. Для этого пришлось как следует изучить документацию,...

В iOS 14 добавили то, что давно есть на Android. Это поиск смайликов Обновления для iOS 14 и iPadOS 14, представленные вчера вечером, включают еще одну функцию, о которой Apple просто не успела рассказать на презентации. Речь идет о поиске смайликов или эмодзи. Да, в iOS 14 и iPadOS 14 наконец появится возможность поиска эмодзи, которая ...

Опыт сдачи Spring Professional Certification 5 Всем привет. Для тех, кто желает сдать Spring Professional Certification 5 от Pivotal хотел бы поделиться опытом. Читать дальше →

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

Можно ли сделать деревянный стеллаж без инструмента используя только отвертку и 3D-принтер? Легко!. Приветствую! Я хочу поделиться с вами очередной своей разработкой, которая позволяет сделать надежную, крепкую мебель и при этом без необходимости иметь инструмент, пылить в доме/квартире и собрать её буквально за один день. Эта статья для аудитории Хабра, которая любит DI...

[Перевод] Понимание CSS Grid (2 часть): Grid-линии Приветствую! Представляю вашему вниманию перевод статьи «Understanding CSS Grid: Grid Lines» автора Rachel Andrew В первой статье из серии "Понимание CSS Grid" мы рассмотрели, как создавать родительский grid-контейнер и различные свойства, применяемые к данному эл...

Как мы использовали айтрекер для количественного эксперимента Привет, Хабр. На связи UX-лаборатория Авито. Сегодня хотим рассказать об опыте использования айтрекера для проведения количественного эксперимента. Серьёзных инсайтов и уроков не обещаем, просто поделимся своими мыслями. Расскажем, что вышло из идеи эксп...

Вызов кода Go из Dart с использованием cgo и Dart FFI на простом примере Ключевой мотивацией для написания данной статьи является факт сильного недостатка информации (особенно в русскоязычном сообществе) по использованию cgo и Dart FFI для использования Go из языка Dart.Язык Dart, не смотря на свою возрастающую популярность, на данный момент до с...

[Перевод] DRY CSS: Как использовать каждое объявление только один раз Использование DRY в CSS — это способ максимально избегать повторения в таблицах стилей. Этот подход не панацея, но он достаточно эффективен и является одним из основных методов оптимизации. Поскольку я использовал и изучал его почти 10 лет, в этой статье хочу поделиться сво...

[Из песочницы] Некоторые тонкости injection'а коллекций в Spring'е Всем привет! Меня зовут Владислав Родин. В настоящее время я преподаю на портале OTUS курсы, посвященные архитектуре ПО и архитектуре ПО, подверженного высокой нагрузке. Сейчас в OTUS'е открыт набор на новый поток курса Разработчик на Spring Framework. В преддверии старта к...

[Перевод] Как pod в Kubernetes получает IP-адрес Прим. перев.: эта статья, написанная SRE-инженером из LinkedIn, в деталях рассказывает о той «внутренней магии» в Kubernetes — точнее, взаимодействии CRI, CNI и kube-apiserver, — что происходит, когда очередному pod'у требуется назначить IP-адрес. Одно из базовых требований...

[Из песочницы] Unity — Enable Multidex или слишком много методов С чего все началось Всем привет. На определенном этапе разработки игры под Android на движке Unity я столкнулся с одной проблемой при билде. После добавления в проект таких плагинов как Appodeal и Google Play Games количество используемых методов превысило 65K и во время бил...

Временные ограничения для внешних интерфейсов ПЛИС Здравствуйте. В данной статье я хочу по возможности максимально просто и понятно рассказать о том, как рассчитываются временны́е ограничения (timing constraints) на синхронные интерфейсы ПЛИС. Просто — не значит коротко, но зато простыми словами, которые вы сможете легк...

Типизированные запросы OData в TypeScript Традиционно запросы OData к данным выражаются в виде простых строк без проверки типов при компиляции или без поддержки IntelliSense, кроме того, разработчику приходится изучать синтаксис языка запросов. Данная статья описывает библиотеку TsToOdata, которая превращает запрос...

[Из песочницы] Анатомия каналов в Go Привет, Хабр! Представляю вашему вниманию перевод статьи "Anatomy of Channels in Go" автора Uday Hiwarale. Что такое каналы? Канал — это объект связи, с помощью которого горутины обмениваются данными. Технически это конвейер (или труба), откуда можно считывать или ...

[Перевод] Чего не видит беспилотный автомобиль: анализ сырых видеоданных Могут ли современные системы беспилотной езды обнаруживать и распознавать окружающие объекты, а затем предсказывать их поведение? Могут ли они понимать значение спонтанных событий и действовать безопасно и решительно (как водитель-человек)? Это вопрос на 64 миллиарда долл...

Kubernetes: мониторинг c помощью Prometheus Привет, Хабр! Меня зовут Радик, Head of DevOps of AGIMA! В этой статье я постарался показать, как можно использовать Prometheus в качестве системы мониторинга для микросервисной архитектуры. Подробно рассмотрел архитектуру Prometheus и взаимодействие его компонентов. О...

Создаем калькулятор на Swift 5 В преддверии старта базового курса «iOS-разработчик» публикуем статью, которую написал наш внештатный автор. Всем привет! Прошло уже больше года с того момента, как появился релиз Swift 5, который принес разработчикам много нового. В этой статье я хочу поговорить о мобиль...

Sysmon теперь может записывать содержимое буфера обмена О релизе 12 версии Sysmon сообщили 17 сентября на странице Sysinternals. На самом деле в этот день вышли также новые версии Process Monitor и ProcDump. В этой статье я расскажу о ключевом и неоднозначном нововведении 12 версии Sysmon — типе событий с Event ID 24, в который л...

TensorRT 6.x.x.x — высокопроизводительный инференс для моделей глубокого обучения (Object Detection и Segmentation) Больно только в первый раз! Всем привет! Дорогие друзья, в этой статье я хочу поделиться своим опытом использования TensorRT, RetinaNet на базе репозитория github.com/aidonchuk/retinanet-examples (это форк официальной репы от nvidia, который позволит начать использовать в ...

Варианты использования конфигурации в ASP.NET Core Для получения конфигурации приложения обычно используют метод доступа по ключевому слову (ключ-значение). Но это бывает не всегда удобно т.к. иногда требуется использовать готовые объекты в коде с уже установленными значениями, причем с возможностью обновления значений без п...

[Перевод] Пишем приложение на Flutter в связке с Redux Привет всем! В этой статье я хотел бы показать вам, как создать Flutter приложение, используя Redux. Если вы не знаете, что такое Flutter, то это — SDK с открытым исходным кодом для создания мобильных приложений от компании Google. Он используется для разработки приложений...

Как подготовиться, чтобы защитить свое цифровое наследие после смерти Меня зовут Владислав Чернов, я основатель Creative Motion Development. В этой статье я решил затронуть то, что многим покажется деликатной темой, но в то время как многие страны продолжают бороться с пандемией COVID-19, эта информация наиболее актуальна. Читать дальше &rarr...

Взаимодействие SwiftUI с Redux Всем привет. В данной статье мы будем говорить о фреймворке SwiftUI в связке с Redux, эта связка позволяет нам быстро и просто создавать приложения. SwiftUI служит для создания пользовательского интерфейса в декларативном стиле в отличии от UIKit. В свою очередь Redux служ...

Стажировка в Parallels, когда тебе 14 лет Привет, Хабр! Меня зовут Тимофей. Мне 14 лет. Недавно я ездил в московский офис Parallels навестить своего ментора. В этой статье я хочу поделиться с вами своими впечатлениями о предшествующей этому событию стажировке и о самой поездке в офис. Читать дальше →

CodeView: редактор для кода CodeView — Android-библиотека, чтобы упростить создание редактора кода или IDE для любого языка программирования. Представление легко настраивается по ключевым словам языка и другим атрибутам, вы можете изменить тему CodeView во время выполнения, чтобы упростить поддер...

Пишем тренажер слепой печати на чистом JavaScript. Часть 1 Здравствуйте! В преддверии старта курса «Fullstack разработчик JavaScript» один из наших авторов решил поделиться своим опытом создания тренажера для слепой печати. А мы же, в свою очередь, хотим показать вам данный материал. Всем привет! Сегодня я решил показать, как нап...

[Перевод] Вражеский ИИ: преследование игрока без Navigation2D и поиска пути A* Создаёте игру, в которой враги должны преследовать игрока? Всё начинается с простого — заставим врага бежать к игроку. Но что произойдёт, если он находится за деревом, или за углом стены? Ну, теперь враг будет выглядеть довольно глупо — упрётся в объект, перебирая ногами на ...

Опыт использования MobX в большом приложении Всем привет! Меня зовут Сергей, я работаю в команде разработки приложений контроля качества Tinkoff. Поделюсь опытом нашей команды в использовании библиотеки Mobx и расскажу о деталях работы с ней в связке с React. В этой статье не будет описания базовых концепций. Я расск...

Собеседуем кандидата на должность Senior Software Developer Я провел не одну сотню собеседований как с одной стороны, так и с другой. В этой статье я хотел бы поделиться своими опытом, наблюдениями и интересными моментами. Возможно, кого-то это убережет от ошибок, неверных выводов и потерянного времени. Читать дальше →

[Перевод] Автоматизация рабочего процесса Java-проекта с помощью модифицированной модели ветвления Gitflow Автоматизация рабочего процесса Java-проекта с помощью модифицированной модели ветвления Gitflow Ключевые выводы Gitflow — это совместная модель ветвления, которая пытается использовать мощность, скорость и простоту ветвления Git. Этот метод хорошо работал в ситуации, котор...

Системный подход к переменным в Ansible ansible devops codestyle Hey! Меня зовут Денис Калюжный я работаю инженером в отделе автоматизации процессов разработки. Каждый день новые сборки приложений раскатываются на сотнях серверов кампании. И в этой статье я делюсь опытом использования Ansible для этих целей. Этот ...

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

Код в одну строку или проверка Nethermind с помощью PVS-Studio C# для Linux Данная статья приурочена к старту бета-теста PVS-Studio C# для Linux, а также плагина для Rider. По такому прекрасному поводу с помощью данных инструментов была проведена проверка исходного кода продукта Nethermind и в данной статье мы посмотрим на интересные, а иногда и за...

[Перевод] Результаты голосования комитета C++ по асинхронному программированию Данный текст является переводом недавнего поста Бена Крейга - одного из членов комитета С++. TL;DR для нетерпеливых: Networking TS/Asio (P2444) не получает общего одобрения комитета, модель Senders/Receivers (P2300) становится основным направлением развития асинхронного прог...

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

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

Приглашаем на Live-Вебинар — Автоматизация процессов с GitLab CI/CD — 29 Окт., 15:00 -16:00 (MST) Расширяем знания и переходим на следующий уровень Вы только начинаете изучать основные принципы Continuous Integration / Continuous Delivery или написали уже не один десяток пайплайнов? Вне зависимости от уровня Ваших знаний, присоединяйтесь к нашему вебинару, чтобы на пра...

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

Грядёт важное изменение Google Фото: пользователи смогут искать фотографии по нескольким ключевым словам одновременно Известный блогер Джейн Вонг (Jane Manchun Wong) сообщает, что Google работает над важным улучшением системы поиска своего сервиса Google Фото. В данный момент пользователи могут искать фотографии по ключевым словам, указывая, например, животных, автомобили, места, ...

[Из песочницы] Пишем автодополнение для ваших CLI проектов Приветствие Всем привет! Хочу поделиться своим опытом написания кроссплатформенного проекта на C++ для интеграции автодополнения в CLI приложения, усаживайтесь поудобнее. Читать дальше →

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

Горизонтальный блог Всё больше новостные сайты и блоги превращаются в длинную портянку которую от статьи к статье надо долго мотать по вертикали. Чтобы облегчить прокрутку одни сайты скрывают часть статьи под спойлером. Другие сайты отображают часть статьи в ленте а для прочтения её заставляют...

Применение искусственного интеллекта с Microsoft SharePoint Syntex Всем привет! Сегодня мы с Вами познакомимся с новым сервисом из линейки Microsoft 365, который называется SharePoint Syntex. Данный сервис входит в ряд технологий Microsoft под названием Project Cortex. Технологии Project Cortex направлены на применение искусственного интелл...

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

[Перевод] Распознавание мелодии путем изучения языка тела музыканта Перевод статьи подготовлен в преддверии старта нового набора на курс «Computer vision». Инструмент распознавания музыкальных жестов на основе искусственного интеллекта, разработанный в MIT-IBM Watson AI Lab, использует движения тела, чтобы различать звуки отдельных музык...

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

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

Catchain: алгоритм консенсуса блокчейна TON В предыдущем обзоре наша команда R&D рассказала о структуре Telegram Open Network и особенностях функционирования ключевых узлов (валидаторов) TON Blockchain, а также поделилась опытом Mercuryo, как валидатора сети. Эта статья посвящена одному из ключевых вопросов, отве...

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

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

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

Стратегия своими руками Он стратег, он даже тактик, словом — спец, Сила, воля, плюс характер — молодец! В. Высоцкий Никогда не писал статей для Хабра, даже комментариев. И на тематические порталы не выкладывал ничего лет 5. Но недавно прочитал на Хабре материал об отсутствии стратегий у компаний...

Интересная форма Хабр, привет. Эта статья не претендует на большую серьезность, я просто хочу поделиться новой формой, которую я открыл. Это такой круг, цвет точек которого равен сумме квадратов координат заданной точки. Другими словами pixel_color=(pixel_x^2+pixel_y^2).toString(16). Читать ...

[Перевод] Простая интеграция RabbitMQ и Spring Boot Перевод статьи был подготовлен в преддверии старта курса «Разработчик на Spring Framework». Всем привет! Я хотел бы поделиться с вами библиотекой с открытым исходным кодом, которая облегчает интеграцию RabbitMQ с приложениями на Spring Boot. Кроме того, эта библиотека пре...

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

Уродливый API В этой статье хочу рассказать о проблемах, с которыми столкнулся в процессе интеграции с API по HTTP протоколу, и поделиться опытом их решения.При разработке фронтенд приложений (mobile/web), часто сталкиваешься с тем, что API на бэкенде еще не реализован. Приходится ждать р...

[Перевод] Код-ревью в IDE: интеграция между Space и IntelliJ IDEA 2021.1 Привет, Хабр! Вчера вышло обновление IntelliJ IDEA 2021.1. В него вошла интеграция с JetBrains Space, которая позволяет использовать любую IDE на платформе IntelliJ для код-ревью: назначать ревью и управлять ими, просматривать и добавлять комментарии, принимать изменения. Ка...

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

Как в линуксе подключиться к корпоративному VPN с помощью openconnect и vpn-slice Хотите использовать линукс на работе, но корпоративный VPN не даёт? Тогда эта статья может помочь, хотя это не точно. Хочу заранее предупредить, что вопросы администрирования сетей я понимаю плохо, поэтому не исключено, что я всё сделал неправильно. С другой стороны не исклю...

Готовый шаблон для тестирования с использованием Spring Представляю вам — готовый шаблон для тестирования с использованием Spring. Введение Цель этой статьи показать, что писать автотесты со Spring проще нежели на чистой Java. Так же хочу продемонстрировать, насколько Java + Spring упрощает жизнь тестировщикам. Для кого эта ...

Джон Мюллер об исследовании ключевых слов и намерений Недавно глава команды основного поиска Bing Фредерик Дубут в качестве совета на 2020 год призвал вебмастеров отказаться от оптимизации под ключевые слова, а вместо этого заняться исследованием намерений. На днях своим мнением на эту тему также поделился сотрудник Google Джон...

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

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

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

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

Bus-фактор в работе аналитика. Как экстренно погрузиться в проект и не перегореть от объема задач Привет, Хабр! Меня зовут Екатерина Герт. Вот уже больше 10 лет я работаю системным аналитиком в проектах по заказной разработке ПО для компаний из разных отраслей и госсектора. Это всегда работа над большими проектами. Однажды я оказалась в непростой ситуации, когда мне...

[Перевод] Канбан метод: Понимание вашего процесса как процесса Коллективного накопления знаний – Часть 1 (рецепты) С этим постом я возвращаюсь к теме визуализации процессов в профессиональных сервисах. Как я писал ранее, что мы можем трактовать такие процессы, как совместное накопление и обогащение знаний, и привел некоторые примеры. Их ключевой частью является акцент на накоплении знани...

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

Как мы уменьшили время простоя курьеров. Логистика в Яндекс.Еде Всем привет! Меня зовут Роман Халкечев, я руковожу отделом аналитики в Яндекс.Еде. Одно из ключевых направлений этого сервиса — логистика. Эффективность алгоритмов логистики во многом и определяет само существование сервисов доставки. Сегодня я расскажу читателям Хабра о на...

Как (и зачем) бесплатно парсить ключи и объявления конкурентов из Яндекс.Директ и Google Ads Перед запуском контекстной рекламы полезно посмотреть на ключевые слова и объявления конкурентов. Так вы пополните семантику и получите новые идеи для текстов объявлений. На примере интернет-магазина детской мебели разбираем бесплатный инструмент от PromoPult для парсинга о...

Повторяем когортный анализ, выполненный в Power BI, силами Python Добрый день уважаемые читатели! Поводом для написания данной публикации послужил вебинар, который я посмотрел на Youtube. Он был посвящен когортному анализу продаж. Автор использовал для работы с данными платформу Power BI Desktop. Ссылку на указанное видео приводить не буду...

Запуск тестов JMeter в OpenShift, используя Jenkins Pipeline Всем привет! В этой статье хочу поделиться одним из способов запуска тестов производительности JMeter в OpenShift'e с использованием Jenkins'a в качестве автоматизации. Сначала мы проделаем все необходимые действия (создание ImageStreams, BuildConfig, Job и проч) в ручном р...

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

Локализация своих скриптов на BASH Создание меню на BASH — задача сама по себе не сложная: "case тебе в руки и echo в спину". Решая её в очередной раз, мне захотелось добавить возможность отображать текст на других языках. Осталось решить, как сделать сам процесс локализации меню более удобным. Если...

Илон Маск поделился успехами в Cyberpunk 2077 Многие знают, что Илон Маск не прочь поиграть в видеоигры в свободное от работы время. За игровой индустрией он очень пристально наблюдает и в курсе ключевых событий. Ну а одной из последних новинок инженера стала Cyberpunk 2077, где он поделился своими успехами. Читать...

Разбираем ресурсы Twisted Metal 4 (PSX) в Ghidra. Часть 1 Всем привет, В данной статье я расскажу о реверс-инжиниринге ресурсов игры Twisted Metal 4 для первой Playstation. В качестве основного инструмента я буду использовать Ghidra. Наверняка вы слышали об игровой серии Twisted Metal. А кому-то, наверное, довелось и поиграть (мне...

Непрерывная интеграция в Unity: как сократить время сборок и сэкономить ресурсы + пайплайн в подарок Всем привет, на связи Александр Панов, техлид из Pixonic. В компании я отвечаю за межпроектные решения и околопроектную периферию и сегодня хочу поделиться своим опытом и наработками. Платформы непрерывной разработки и интеграции, или CI/CD, сейчас используются повсеместн...

Ключевые характеристики складного смартфона Samsung Galaxy Z Flip Известно, что анонс второго складного смартфона Samsung Galaxy Z Flip состоится 11 февраля, наряду с флагманами серии Galaxy S20. Дизайн смартфона уже известен. А на этот раз инсайдер Ишан Агарвал (Ishan Agarwal) в своём Twitter поделился ключевыми характеристиками будущей н...

Шифрование TLS-трафика по алгоритмам ГОСТ-2012 c Stunnel В этой статье я хочу показать, как настроить Stunnel на использование российских криптографических алгоритмов в протоколе TLS. В качестве бонуса покажу, как шифровать TLS-канал, используя алгоритмы ГОСТ, реализованные в криптоядре Рутокен ЭЦП 2.0. Но для начала давайте вооб...

Коммуникация в удалённой команде Многие компании отправили своих сотрудников работать из дома. Люди, которые имели мало подобного опыта, столкнутся с проблемами коммуникации и прокрастинации. Я работаю из дома с 2013-го года, потому я хотел бы поделиться опытом в данной статье. Читать дальше →

[Перевод] Обзор статьи — AdderNet: Действительно ли нам нужно умножение в глубоком обучении? (Классификация изображений) Вашему вниманию представлен обзор статьи AdderNet: действительно ли нам нужно умножение в глубоком обучении?, Ключевые моменты статьи:AdderNet, использующая сложение, в качестве выходного результата берет l1-меру стандартного отклонения между фильтрами и входным признаком.По...

[Из песочницы] Flask-DJ: Django (mvc) структура для проекта на flask Всем привет! Когда я впервые столкнулся с Flask, у меня сразу возник вопрос по построению архитектуры проекта. Прочитав пару статей на Хабре (https://habr.com/ru/post/275099/ и https://habr.com/ru/post/421887/), я вспомнил свой опыт создания проектов на Django, и решил сде...

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

[Из песочницы] Игра с открытым API: Swagger Play В данной статье я хочу рассказать, как использовать Swagger модуль для Play Framework, с примерами из реальной жизни. Я расскажу: Как прикрутить последнюю версию Swagger-Play (модуль Play, позволяющий использовать аннотации swagger-api и генерировать на их основе документ...

[Перевод] Взгляд на технологии последнего десятилетия Прим. перев.: Эта статья, ставшая хитом на Medium, — обзор ключевых (за 2010-2019 годы) изменений в мире языков программирования и связанной с ними экосистемы технологий (особое внимание уделяется Docker и Kubernetes). Её оригинальным автором является Cindy Sridharan, котора...

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

Раскрыты характеристики защищенного смартфона Samsung Galaxy XCover 5 Инсайдер Судханшу Амбхоре поделился со своими читателями информацией о ключевых характеристиках защищенного телефона Galaxy XCover 5.По данным инсайдера, Samsung Galaxy XCover 5 получит 5.3-дюймовый дисплей с разрешением HD+ (1600 x 900 пикселей), 4 ГБ ОЗУ, 64 ГБ встроенной ...

Цифровой коронавирус — комбинация Ransomware и Infostealer В сети продолжают появляться различные угрозы, использующие тематику коронавируса. И сегодня мы хотим поделиться информацией об одном интересном экземпляре, который наглядно демонстрирует стремление злоумышленников максимизировать свою прибыль. Угроза из категории “2-в-1” та...

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

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

Укрощаем динамику в задаче о палиндромах Я уже давно не студент, но в свободное время изучаю материалы по Computer Science. Мне нравится получать знания и делиться ими. Недавно я наткнулся на любопытную задачу в известном учебнике "Алгоримы: Построение и Анализ". В этой статье я продемонстрирую принципы д...

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

Полезные сайты для доменного бизнеса Доменные эксперты Эндрю Аллеман, Шейн Култра и Адам Стронг вместе выступили в новой социальной сети Clubhouse. В числе рассмотренных тем были полезные ресурсы, которые могут помочь доменному инвестору. Вот сайты, которые упоминались в том обсуждении: ExpiredDomains.net - и...

Заметки по книге «Философия разработки ПО» Возможно, вы понимаете как писать хороший код, как придерживаться хорошего дизайна. Но структурировать эти знания не получается. Книга Джона Оустерхаута “A philosophy of software design” может помочь исправить это. Она позволила структурировать знания, накопленные мною за ...

Google Ads прекращает поддержку новых ключевых слов с модификатором широкого соответствия С конца июля рекламодатели Google Ads больше не смогут добавлять новые ключевые слова с модификатором широкого соответствия

[Перевод] Визуализация работы сервис-воркеров (Service Workers) Доброго времени суток, друзья! Вероятно, многие из вас слышали о таком новшестве в экосистеме JavaScript, как сервис-воркеры, которые являются ключевым элементом современной веб-разработки. Сервис-воркеры становятся все более востребованными, в первую очередь, благодаря п...

[Перевод] Трассировка Python GIL Есть много статей, объясняющих, для чего нужен Python GIL (The Global Interpreter Lock) (я подразумеваю CPython). Если вкратце, то GIL не даёт многопоточному чистому коду на Python использовать несколько ядер процессора. Однако мы в Vaex исполняем большинство задач с инте...

[Перевод] Тактика Red Team: продвинутые методы мониторинга процессов в наступательных операциях И снова здравствуйте. В преддверии старта курса «Пентест. Практика тестирования на проникновение» перевели для вас еще один интересный материал. В этой статье мы собираемся разобраться в возможностях широко известных утилит мониторинга процессов и продемонстрировать, как ...

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

Заметки стартап-предпринимателя или истории о том, что я хотел бы знать когда переезжал и открывал компанию в России Всем привет! Хочу поделиться опытом переезда в Россию из стран СНГ и ведения своего ИТ бизнеса. Часть данной истории будет полезна в том числе и тем, кто хочет переехать в Россию чтобы работать по найму. Читать далее

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

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

Штатив для подводной съемки. Безумно люблю Дайвинг и Сноркелинг. Пока жена загорает на пляже, я поднимаюсь только для того, чтобы сделать новый глоток воздуха. И вот в отпуске столкнулся с такой проблемой, что не смог установить камеру на дне в нужном мне положении. У камеры очень малый вес и под водой ...

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

[Перевод] С чего начать изучение Flutter в 2021 году Как и многие мобильные разработчики, мы с нетерпением ждали презентации Flutter и теперь хотим поделиться с читателями Хабра переводом статьи Tadas Petra о том, как можно выстроить свое обучение, если вы хотите познакомиться с Flutter и кроссплатформенными приложениями в 202...

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

Мониторинг СХД IBM Storwize при помощи Zabbix В данной статье мы немного поговорим о мониторинге СХД IBM Storwize и других СХД, поддерживающих протоколы CIM/WBEM. Необходимость такого мониторинга оставлена за скобками, будем считать это аксиомой. В качестве системы мониторинга будем использовать Zabbix. В последних ве...

Swagger в RBK.money — про наши внешние API Хочешь сделать что-то полезное и рабочее — сделай его так, чтобы другие люди могли этим полноценно пользоваться, нормально это ревьювить, да и вообще вспоминать тебя добрым словом, а не темной стороной своего словарного запаса. Для этого, кроме того, чтобы просто хорошо дела...

[Из песочницы] В одной лодке с «ублюдком»: 11 продвинутых советов по использованию Git *"ублюдок" — вольный перевод слова "git" — "an unpleasant or contemptible person", "неприятный или презренный человек". В комментариях к статье 15 базовых советов по Git для эффективной работы каждый день развернулась дискуссия на тем...

Технология PoE в вопросах и ответах В статье в популярной форме вопрос-ответ рассказывается о ключевых моментах при использовании питания посредством PoE (Power over Ethernet). Приводятся различия между стандартами, даётся информация о защите устройств от импульсов перенапряжений и о других полезных вещах. Чи...

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

Горячая новость Intel Arch Day 2020: техпроцесс 10нм SuperFin На прошедшем 13 августа (то есть вчера, а с учетом разницы во времени почти сегодня) Intel Architecture Day 2020, как и в прошлые годы, руководством компании были озвучены ее ключевые достижения и приоритеты на ближайшее будущее. Мы хотели бы поделиться по горячим следам с...

Восемь цветов радуги: о цвете с точки зрения математики Больше пяти лет мы публикуем на Хабре статьи на различные темы компьютерного зрения. Чаще всего они связаны с распознаванием документов, потому что нам всегда очень не терпится поделиться с вами всем крутым и новым, что мы сделали в Smart IDReader. Хотя мы честно стараемся ...

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

Дизайнерский Multiselect на протеинах Те из верстальщиков кто часто клепает формы регистрации или обратной связи обязательно столкнутся с задачей по выводу множественного выбора результатов - multiselect. К сожалению, не все элементы тега <select> все ещё можно из коробки стилизовать по желанию дизайнера. ...

ANTUSDT Coin Mixer: продолжающаяся война за конфиденциальность Сделайте цифровую валюту неотслеживаемой Coin Mixer — это сервис, который скрывает путь транзакции посредством перетасовки монет, тем самым скрывая личность участников. Люди не хотят раскрывать данные об имуществе и транзакциях. С помощью Coin Mixer люди могут скрывать...

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

Как я попала в большую корпорацию: ожидания и реальность Для начала — пара слов о себе. Меня зовут Надя, в Dell Technologies я пришла в качестве QA-стажёра почти два года назад. С тех пор я успела окончить университет (СПбПУ) и вырасти до мидл-инженера. В этой статье хочу поделиться некоторыми наблюдениями о работе в большой компа...

Microsoft анонсировала новое приложение Journal для Windows 10 Компания Microsoft анонсировала новое приложение Journal для Windows 10. Сообщается, что оно разработано командой подразделения Microsoft Garage, занимающейся «созданием следующего поколения технологий компьютерного взаимодействия», и ориентировано на использование рукописн...

Освободи свой Android — алаверды О чём это? Данная статья написана в качестве продолжения статьи Освободи свой Android. Зачем? Очень просто — та статья очень подробно и хорошо описывает, как перешить смартфон на LineageOS. Но она просто требует продолжения о том, как потом с этим перешитым смартфоном жить. ...

Простой зомби-шутер на Unity Всем привет! Скоро стартуют занятия в первой группе курса «Разработчик игр на Unity». В преддверии начала курса прошел открытый урок по созданию зомби-шутера на Unity. Вебинар провёл Николай Запольнов, Senior Game Developer из Rovio Entertainment Corporation. Он также написа...

Я 20 лет наслаждаюсь разнообразием архитектур и хочу поделиться мыслями Сначала хотел написать комментарий к статье "Я десять лет страдал от ужасных архитектур в C#...", но понял две вещи: Слишком много мыслей, которыми хочется поделиться. Для такого объёма формат комментария неудобен ни для написания, ни для прочтения. Давно читаю...

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

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

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

Парсинг сайта кинотеатра на Golang Всем привет, в этой статье мы рассмотрим небольшой пример кода, написанный для сбора данных с сайта на популярном сегодня языке программирования Go. Эта статья будет особенно интересна тем, кто много слышал о Go, но пока еще не попробовал его самостоятельно. Для одного из...

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

Fluentd: почему важно настроить выходной буфер В наше время невозможно представить проект на базе Kubernetes без стека ELK, с помощью которого сохраняются логи как приложений, так и системных компонентов кластера. В своей практике мы используем стек EFK с Fluentd вместо Logstash. Fluentd — это современный универсальный ...

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

Google начнет объяснять, почему результаты поиска релевантны именно для вас «Об этом результате» - хороший способ узнать, как искать по ключевым словам и находить нужную информацию в Интернете

Архитектура и дизайн Android приложения (мой опыт) Хабр, привет! Сегодня я хочу рассказать об архитектуре, которой я следую в своих Android приложениях. За основу я беру Clean Architecture, а в качестве инструментов использую Android Architecture Components (ViewModel, LiveData, LiveEvent) + Kotlin Coroutines. К статье прил...

[Из песочницы] Подборка полезной информации для начинающих во Flutter Всем привет! Я создатель канала Flutter For Dev и в данном посте я хотел бы помочь тем людям, которые часто задают вопросы подобного типа: «Привет, я новичок в Flutter, что посоветуете почитать?», «А какие курсы по Flutter лучше пройти и какие из них бесплатные?». На все ...

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

Intel Ethernet 800 Series — 100G от Intel Совсем недавно мы вспоминали, что, помимо всего хорошо известного прочего, Intel славен своими сетевыми разработками, технологиями и устройствами. Как выяснилось, вспомнили вовремя, будто почувствовали выход нового поколения серверных сетевых контроллеров и карт Intel Ether...

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

Обзор ADATA XPG Spectrix D50 DDR4-3600 (AX4U360038G18A-DT50). Тесты и разгон памяти Линейка оперативной памяти ADATA XPG Spectrix D50 за время своего существования получила несколько именитых наград. Она сейчас включает решения от 3000 МГц до 5000 МГц. С объемами одной планки 8, 16 и 32 Гбайт. Разные варианты комплектации в зависимости от количества модулей...

[Из песочницы] Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer. Angular — отличный фреймворк. Мы все его любим <3. Одна из вещей, которая делает Angular успешным и прекрасным в...

[Из песочницы] Шизофрения: взгляд после Грани безумия В те далекие времена, когда я чувствовал себя получше, я частенько заходил почитать хабр. Теперь почти полная потеря интереса к ИТ — одна из самых незначительных моих проблем. Заранее прошу прощения за исковерканные слова и знаки препинания, тут уже давно во вс...

Управление уязвимостями (Vulnerability Management) — чего больше: управления или уязвимостей? В этой статье мы хотим поделиться с вами случаями, которые происходили у наших заказчиков, и рассказать/показать/ответить на вопрос, почему управление уязвимостями – это почти всегда не про уязвимости, и простого — «мы за вас отфильтруем из 1 000 000 уязвимостей до реально...

Как лицензируется и чем отличаются лицензии Elastic Stack (Elasticsearch) В этой статье расскажем как лицензируется Elastic Stack, какие бывают лицензии, что туда входит (ключевые возможности), немножечко сравним Elastic с OpenDistro от AWS и другими известными дистрибутивами. Читать дальше →

ВКонтакте попытался ранжировать сообщества в поиске по описаниям и столкнулся с SEO-спамом. Администратор сообщества SMM-платформы "Церебро Таргет" обнаружил, что если указать ключевые слова в описании сообщества, можно попасть в результаты ВК-поиска по ним, даже если ключевые слова не имеют отношения к сообществу, а оно не релевантно запросу. После чего сообщество...

ВКонтакте попытался ранжировать сообщества в поиске по описаниям и столкнулся с SEO-спамом. Администратор сообщества SMM-платформы "Церебро Таргет" обнаружил, что если указать ключевые слова в описании сообщества, можно попасть в результаты ВК-поиска по ним, даже если ключевые слова не имеют отношения к сообществу, а оно не релевантно запросу. После чего сообщество...

Как на Андроиде включить Т9 Клавиатура может по праву считаться одним из наиболее используемых инструментов современных смартфонов. С её помощью мы пишем сообщения в месседжерах, набираем поисковые запросы в Google, ищем видео на YouTube, комментируем публикации в Инстаграме и делаем много чего ещё. Н...

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

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

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

[Перевод] Как выучиться на Data Scientist: наиболее востребованные технические навыки Какие технические знания становятся наиболее популярными у работодателей, а какие теряют свою популярность. В своей первоначальной статье 2018-го года я рассматривал спрос на общие навыки – статистику и коммуникацию. Также я рассматривал спрос на Python и язык программиро...

Принцип единственной ответственности: глубокое погружение Про принцип единственной ответственности (The Single Responsibility Principle, SRP) уже было написано множество статей. В большинстве из них даётся лишь поверхностное его описание мало чем отличающееся от информации в википедии. А те немногие статьи что затрагивают ключевые ...

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

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

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

Чужой код — потемки: чем опасно скачивание «безобидного» софта с GitHub Наверное, каждый из тех, кто читает эту статью, хорошо знаком с GitHub — крупнейшим веб-сервисом для хостинга IT-проектов и их совместной разработки. Здесь можно найти почти любой open source-проект. Для компиляции проекта может быть нужен какой-то специфический софт, кото...

Как вырастить веб-разработчика от стажера до архитектора. Матрица компетенций Вместо эпиграфа Когда в 2004 году я окончил университет, в нашем городе почти не было команд разработчиков. Где работать, у кого набираться практического опыта? Выбор был прост: “админом” или “в Москву”. Или уйти из профессии. Сейчас я преподаю веб-разработку в местных ВУЗ...

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

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

[Перевод] Как QA-команда GitLab использует GitLab Performance Tool Перевод статьи подготовлен в преддверии старта курса «DevOps практики и инструменты». Мы запустили ряд инициатив по улучшению производительности GitLab и нам нужен был новый инструмент для бенчмарков. Тестирование производительности — это сложный процесс, отличающийся от...

Эффективен ли TDD? Во время интересной дискуссии, один очень уважаемый человек «козырнул» «неубиваемым» аргументом:Есть полно исследований, демонстрирующих эффективность TDD Действительно. Если зайти на Google Scholar, забить ключевые слова «TDD» и «Эффективность» — будет много научных статей,...

Создаем приложение для ANDROID быстро и просто Сегодня я хотел бы поделиться с Вами, как быстро и просто можно создать приложение для Android с базовыми знаниями HTML CSS и JS. По данному примеру код на Java для Android будет минимальным. Благодаря платформе XAMARIN приложения для мобильных телефонов можно делать в Visu...

Как стать программистом за 60 секунд или «Яндекс.Практикум» — НЕ ковчег судьбы В данной статье я не хочу пытаться что-то доказать или опровергнуть, моя цель и мотивация лишь поделиться своими впечатлениями от сервиса по On-line образованию от «Яндекса» по направлению «WEB-разработчик», но суть статьи, как мне кажется, в целом о сервисе «Яндекс.Практику...

[Из песочницы] Angular: понятное введение в NGRX Цель этой статьи — дать чистое и ясное представление о ngrx. Для этого я объясню, что нужно знать и понимать о ngrx, а затем мы увидим это в действии с простыми и понятными примерами кода. Вот список тем, которые мы будем обсуждать в этой статье: Что такое ngrx Преимущес...

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

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

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

База данных на SharedPreferences — Android Kotlin Для хранения большого количества информации в Android используется DataBase (SQLite, FireBase и т. п.), а для простого хранения настроек SharedPreferences. Вопрос, можно ли использовать SharedPreferences как своего рода Базу Данных и как это сделать? Статья написана об учеб...

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

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

[Из песочницы] О декодировании протокола погодных датчиков Oregon Scientific Лет десять назад как-то по случаю я купил простенькую погодную станцию Oregon Scientific BAR208HG. Радовала она домочадцев достаточно долго, и продолжает радовать до сих пор. Мне же со временем стало не хватать её функционала и захотелось расширить свои возможности наблюдени...

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

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

Как я участвовал в IOCCC-'19 (и проиграл). Часть 2: «Симулятор NOR» Это вторая часть цикла статей о том, как я участвовал в IOCCC'19 Как я участвовал в IOCCC-'19 (и проиграл). Часть 1: «Крестики-нолики» Как я участвовал в IOCCC-'19 (и проиграл). Часть 2: «Симулятор NOR» Я надеюсь, что данная статья поможет вам при разборе чужого кода и...

Как я познавал ci/cd, Гитхаб экшены Гитхаб экшены, как я познавал ci/cd   Всем Алоха. Все слышали про ci/cd, про то что он должен быть в каждой компании и то что он упрощает нам жизнь. У всех свой ci/cd.    Кто-то предпочитает Jenkins. Особенно если у вас куча микросервисов, команд и п...

Web в Китае умер. Почему так произошло и что пришло вместо него? На эту тему меня натолкнули слова одного знакомого, который сказал «такое ощущение, что китайский интернет застрял в 90-х». С ним многие согласятся — вырвиглазный дизайн страниц, плохо работающий(или вообще не работающий) функционал, невозможность найти нужную информацию и т...

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

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

Основные тренды при работе с мобильными Хотите узнать экспертное мнение о ключевых трендах мобильных Бенни Чжэна, Эдвина Нга, Эммануэля Синки, тогда не пропустите интервью. Они поделятся своими мыслями о мобильной коммерции, как ее можно эффективно использовать себе во благо. Также вы узнаете о следующем: какие тр...

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

[Перевод] Руководство по инструментарию управления Windows (WMI): основные сведения о WMI-атаках Инструментарий управления Windows (WMI) — это подсистема PowerShell, которая обеспечивает администраторам доступ к мощным инструментам системного мониторинга. Этот инструментарий задумывался как быстрое и эффективное средство системного администрирования, однако далеко не ...

Xiaomi поделилась первыми успехами Redmi K30 Xiaomi порадовала своих поклонников информацией об успехах одной из ключевых моделей из своего текущего ассортимента – Redmi K30. Согласно официальным данным, за первые три месяца жизненного цикла этого смартфона его тираж составил 1 млн экземпляров.

«На чём корпорации вертели вашу приватность», Артур Хачуян (Tazeros Global) День защиты персональных данных, Минск, 2019 год. Организатор: правозащитная организация Human Constanta. Ведущий (далее – В): – Артур Хачуян занимается… Можно сказать «на тёмной стороне» в контексте нашей конференции? Артур Хачуян (далее – АХ): – На стороне корпораций – д...

[Перевод] Задача, которую предлагали разработчикам на собеседованиях в Reddit: разбор и решение от сотрудника компании Впервые я столкнулся с техническими собеседованиями еще в 2012 году, когда искал свою первую работу в IT. Я выслушал условия задачи, нацарапал решение на доске, ответил на несколько вопросов и ушел, весь перепачканный черный маркером. В то время я совершенно не представлял, ...

Real-time мониторинг тормозящих запросов PostgreSQL своими руками за полчаса В моей практике не раз были ситуации, когда хотелось посмотреть, какие именно запросы долго тупили в базе в определённый (конкретный) момент времени. А может, запросы не тупили, но каких-то запросов было слишком много. Ключевое слово — в конкретный момент времени. Например...

Реализация автодополнения кода в Ace Editor Ace (Ajax.org Cloud9 Editor) — популярный редактор кода для веб-приложений. У него есть как плюсы, так и минусы. Одно из больших преимуществ библиотеки — возможность использования пользовательских сниппетов и подсказок. Однако, это не самая тривиальная задача, к тому же не ...

Настройка CI/CD скриптов миграции БД с нуля с использованием GitLab и Liquibase Добрый день, уважаемые читатели. Совсем недавно мне пришлось осваивать новую для себя область CI/CD, настраивая с нуля доставку скриптов миграции базы данных в одном из проектов. При этом было тяжело преодолеть самый первый этап "глаза боятся", когда задача вроде бы ясна, а ...

Разработка плагинов для Zabbix Agent 2 На последнем Zabbix Summit 2019 вместе с выходом Zabbix 4.4 был анонсирован новый Zabbix Agent 2, ключевая фишка которого — возможность написания плагинов к нему на языке Go. И многие сразу стали спрашивать: а как же, собственно, эти плагины писать, как они устроены? Где взя...

Архитектура in-memory СУБД: 10 лет опыта в одной статье База данных в оперативной памяти — понятие не новое. Но оно слишком плотно ассоциируется со словами «кэш» и «не персистентный». Сегодня я расскажу, почему это не обязательно так. Решения в памяти имеют гораздо более широкое поле применения и гораздо более высокий уровень н...

Как же всё-таки не ошибаться? Всем привет! Меня зовут Виктория Головнева, я работаю джуниор аналитиком. Как и любой джун, я постоянно прохожу какие-то курсы, читаю статьи и книги по рабочей (и околорабочей) тематике, чтобы прокачивать мой уровень знаний в SQL, статистике, методах визуализации данных и мн...

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

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

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

Майнкрафт для геологов: 3D-рендеринг миллиарда ячеек на встроенной видеокарте (часть 1) В одной из прошлых статей с подозрительно похожим заголовком мы показали, как построить модель месторождения и посчитать свойства пласта глубоко под землёй, используя крохи информации о породе, полученной со скважин.В этой статье мы расскажем, как отобразить модель месторожд...

Взломать, чтобы перевести: Resident Evil 4 Всем привет! Так уж выдалось, но я являюсь ромхакером в команде Russian Studio Video 7, которая когда-то занималась фанатскими переводами игр на наш великий и могучий. И, в одно время, мы пытались взломать множество игр, либо для того, чтобы перевести самим, либо на заказ,...

[Перевод] Коды Рида — Соломона в RAID 6 В интернете много статей о восстановлении информации в массиве RAID-6 и о том, как сделать собственную реализацию такого массива. Но большинство этих статей напичканы математическими формулами. Чтобы понять реальный алгоритм, приходится тратить очень много времени. В этой с...

[Перевод] Как создать свой первый open source проект на Python (17 шагов) Каждый разработчик ПО должен знать как создать библиотеку с нуля. В процессе работы Вы можете многому научиться. Только не забудьте запастись временем и терпением. Может показаться, что создать библиотеку с открытым исходным кодом сложно, но Вам не нужно быть потрепанным ж...

Ржавеем дальше. Как появился Rust и можно ли на нём WEB? Моя предыдущая статья про rust вызвала положительную реакцию и большое количество обсуждений о том что да как с rust. Мне исключительно приятно видеть что вам понравился этот материал. В комментариях я встретил много вопросов типа «А можно ли использовать rust для WEB?» Лако...

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

Разработка первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations Всем привет! Меня зовут Таня, я тимлид группы разработки Axapta в компании Lamoda. В этой статье речь пойдет про разработку нашего первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations. Я расскажу про подходы, которые мы использовали, про ошибки,...

[Из песочницы] Mikrotik RouterOS в Docker Всем доброго времени суток! В данной статье я хочу рассказать об одном OpenSource проекте под названием Docker RouterOS, изначально он был создан в качестве полигона для прогонки интеграционных тестов и ничего более, но со временем, по просьбе пользователей, был добавлен ряд...

Metal Revolution: Издатель YOOZOO поделился новой информацией по крутому файтингу Пока мы ждём информации о том, когда выпустят Metal Revolution по всему миру, издатель YOOZOO решил заполнить тишину и рассказал больше о местной вселенной. Начнём с сюжета: он начинается спустя 500 лет после катаклизма, из-за которого мир покрылся радиацией. К счастью челов...

Per aspera ad astra, или как я строил ракету. Часть 2. Собираем альтиметр на STM32 и BMP280 Всем привет!  В предыдущей части я остановился на том, что мои ракеты удачно взлетели и приземлились, а на одной даже был установлен альтиметр. В этой статье я и расскажу о том как сделать простой высотомер на основе STM32 Nucleo L031K6 и датчика давления BMP 280 , кот...

Вжух, и прогоны автотестов оптимизированы. Intellij IDEA плагины на службе QA Automation Привет, Хабр. Я работаю QA Automation инженером в компании Wrike и хотел бы поговорить о том, как нам удалось оптимизировать процесс код-ревью для репозитория с 30 000+ автотестов при помощи IntelliJ IDEA плагина. Я расскажу о внутреннем устройстве плагина и о том, какие п...

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

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

Что почитать на праздниках Длинные праздники впереди, а это значит, что будет время вернуться к закладкам в Read later или еще раз перечитать важные статьи уходящего года. В этом посте мы собрали и подготовили для вас список из самых интересных материалов из нашего блога за 2019 год и надеемся, что ...

Сертификации в Agile. Пара слов для HR и для коллег-разработчиков Я хочу сразу оговориться что не преследую цели ни пропагандировать сертификации для IT, ни предавать их анафеме. Этот выбор каждый должен сделать для себя. Но как бы то оно ни было — сертификации существуют, сертификации придается значение «за рубежом», и в резюме сотруднико...

[Перевод] Можно ли доверять медицинским советам ботов? Доктора пока не уверены в этом Компания Babylon Health, капитализация которой оценивается в $2 млрд, предлагает услуги чатбота, дающего медицинские советы на основе описываемых симптомов. Его использовали уже 1,7 млн раз. Однако эксперты волнуются, что он работает не совсем так, как обещают в рекламе. Хэ...

Оценка RISC-ов: когда ожидать серверы на ARM в дата-центрах Игнорировать влияние ARM-архитектуры на рынке современных процессоров уже невозможно. Технология, созданная для малопроизводительных смартфонов, стала реальной угрозой гегемонии x86, которая царит на рынке последние «дцать» лет. Amazon запускает в облаке собственные серверы...

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

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

Настройка GUI WSL Kali Linux & Ubuntu. Выход в графическую оболочку Здравствуйте. Установив WSL и скачав из Microsoft Store Kali Linux & Ubuntu я столкнулся с тем, что передо мной терминал, а я абсолютно ничего не понимая в Linux, хотел бы хоть как-то ориентироваться в системе через графическую оболочку. Я неделями гуглил команды и в и...

«Google Поиск» получил масштабное обновление в России Google Поиск стал умнее благодаря технологии BERT Интуитивность – это то, чего мы в первую очередь ждём от любого продукта. Если пользователь покупает смартфон, он не должен самостоятельно что-то прошивать, чтобы устройство заработало как надо, или искать, где бы скачать ну...

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

Не дай теплу пропасть: как и для чего дата-центры используют «мусорное» тепло Оборудование, установленное в дата-центрах, выделяет большое количество тепла, которое нужно куда-то отводить. Способов сделать это немало. Чаще всего тепловая энергия просто «выбрасывается», ее никак не используют. При этом дата-центры, по разным данным, потребляют 3-5% о...

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

JAM-стэк — нищета на стероидах Создавая сайты для малого бизнеса я сталкиваюсь с двумя крайностями. Но только я, как программист. Пользователи не сталкиваются, ведь нельзя столкнуться с тем чего для тебя не существует. Первая крайность — это когда клиент покупает за 50$ в месяц очередной хостинг для Wordp...

Новинки Dell и Alienware на CES 2020: коротко о главных анонсах Чуть больше недели назад завершилась международная выставка Consumer Electronics Show 2020. Для производителей компьютеров и компьютерной техники (то есть и для нас тоже) – это фактически главное мероприятие года. Но так уж вышло, что в России в это время происходит нечто ещ...

Создаем свою CRUD API на Express и MySQL: часть первая Всем привет. В преддверии старта курса «Fullstack разработчик JavaScript», хотим поделиться небольшим материалом, который был написан нашим внештатным автором. Express один из самых популярных веб-фреймворков, который поддерживает роутинг, миддлвейрс и систему шаблонов. Д...

Инфографика средствами Excel и PowerPoint «Какой толк в книге, — подумала Алиса, — если в ней нет ни картинок, ни разговоров?» Льюис Кэрролл, «Алиса в Стране чудес» Всем привет! Мы уже привыкли к тому, что все чаще информацию нам стараются подать с элементами инфографики. Визуальные материалы воспринимаются и запом...

[Перевод] Facebook Prophet + Deep Learning = NeuralProphet Изучая прогнозирование временных рядов, рано или поздно вы наткнетесь на чрезвычайно популярную модель Prophet, разработанную Facebook. Она приобрела свою большую популярность благодаря тому, что обеспечивает хорошие показатели с точки зрения точности, интерпретируемых резул...

[Перевод] C и C++: межъязыковые интерфейсы Как известно, C и C++ — это родственные языки, между которыми есть много общего. Но их пути, с годами, расходятся всё сильнее. В общих чертах дело обстоит так: код, написанный на одном из этих языков, не может быть скомпилирован под видом кода, написанного на другом. Этому м...

Сколько оперативной памяти (RAM) нужно для компьютера, планшета или ноутбука в 2019 году Random Access Memory, он же RAM или попросту «оперативка» – один из ключевых параметров, влияющих на быстродействие любого компьютера. Но сколько её на самом деле нужно? ♥ ПО ТЕМЕ: Как установить видеозаставки с Apple TV на Windows и Mac. Для того, чтобы ответить на этот воп...

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

Фичи JavaScript. Часть 1 Доброго времени суток, друзья! В этой статье я хочу поделиться с Вами некоторыми находками, сделанными мной в процессе изучения JavaScript. Возможно, Вы найдете для себя что-то интересное. Данная часть серии будет посвящена, преимущественно, работе с DOM. Рекомендую прим...

Организация автотестов на примере мобильного приложения для СЭД + более качественная, но менее смешная версия обложки Рано или поздно все приходят к АТ. Ситуация, когда это происходит поздно, понятна, а когда рано? И как понять, что уже можно? Статья основана на опыте одной команды: расскажу про наши предпосылки и поводы внедрения ав...

[Из песочницы] 9 ключевых алгоритмов машинного обучения простым языком Привет, Хабр! Представляю вашему вниманию перевод статьи «9 Key Machine Learning Algorithms Explained in Plain English» автора Nick McCullum. Машинное обучение (МО) уже меняет мир. Google использует МО предлагая и показывая ответы на поисковые запросы пользователей. Netflix...

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

Архитектура S3: 3 года эволюции Mail.ru Cloud Storage Storage Corridor by St-Pete Всем привет! Я Mons Anderson, архитектор платформы Mail.ru Cloud Solutions, расскажу, как мы построили наше S3-хранилище, как оно работает, какие решения оказались удачными, а какие стоило изменить, если бы мы начали такой же проект с нуля сейчас...

Яблочный CI Введение Мы — команда Platform в Playrix, у нас большая и сложная билд-ферма, использующая возможности всех платформ и облачных решений и успешно применяющая их на практике. В этой статье я бы хотел поделиться с вами особенностью работы с платформой MacOS. Читать дальше &r...

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

Сводная статистика по CPM в мире по Facebook и Instagram. Дашборд Google Информация по всем ключевым рынкам, в том числе и по России.

[Перевод] Что JavaScript-разработчику следует знать о Curl Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «What JavaScript Developers Should Know About Curl» автора Valery Karpov. Curl — это популярный инструмент командной строки, часто используемый для отправки HTTP-запросов. Curl поддерживает большое...

ruCLIP — мультимодальная модель для русского языка Известно, что глубокие нейронные сети (DNN) и модели компьютерного зрения, в частности, хорошо справляются с конкретными задачами, но зачастую не могут сделать обобщение при работе с новыми. Так, модель, которая хорошо работает с данными о продуктах питания, может показать с...

Samsung Electronics планирует инвестировать в завод и оборудование для серийного выпуска панелей micro-LED По данным источника, компания Samsung Electronics планирует в первой половине следующего года инвестировать средства в завод и оборудование, чтобы развернуть серийное производство микросветодиодных панелей (micro-LED). Источник уточняет, что южнокорейский производитель ...

[Перевод] Transformer в картинках В прошлой статье мы рассматривали механизм внимания (attention) – чрезвычайно распространенный метод в современных моделях глубокого обучения, позволяющий улучшить показатели эффективности приложений нейронного машинного перевода. В данной статье мы рассмотрим Трансформер (T...

Ключевые детали OnePlus 9 и 9 Pro В сети распространяет информацию о грядущей серии смартфонов OnePlus 9. Отчеты показали, что линейка будет включать три модели, такие как OnePlus 9 Lite, OnePlus 9 и OnePlus 9 Pro. Теперь в сети поделились ключевой информацией о телефонах OnePlus 9 и 9 Pro. Смартфоны OnePlu...

Как спланировать открытие кафе, или пишу свой планировщик открытия заведений Хочу поделиться с вами, как я при помощи «молота и наковальни» делал проект для планирования открытия заведений в сфере общепита, эдакий to-do планировщик. Почему «молота и наковальни»? Так это потому, что я только год назад начал программировать, и сейчас использовал только...

Более 80% пользователей не хотят делиться с рекламными сетями своими данными Одной из ключевых особенностей iOS 14.5 стали новые правила приватности, согласно которым приложения должны запрашивать у пользователей разрешение на отслеживание их действий в других программах и на сайтах. По данным аналитиков Flurry Analytics, подавляющее большинство влад...

Все, что вы хотели узнать об LDPC кодах, но стеснялись спросить (наверное) Предисловие С кодами малой плотности проверок на чётность, которые дальше мы будем именовать коротко LDPC (Low-density parity-check codes), мне удалось познакомиться более или менее близко, работая над семестровым научным проектом в ТУ Ильменау (магистерская программа CSP)....

Quasar — швейцарский нож для Vue Некоторое время назад (года два с половиной) чувак по имени Razvan Stoenescu собрал команду Vue-разрабов и начал пилить с ними свой фреймворк. Свечку не держал, но я твёрдо уверен что в первоначальном документе было что-то типа «Хотим свой фреймворк, чтобы в нём было вообщ...

[Из песочницы] Как уменьшить количество и увеличить читаемость кода в react-redux, redux-saga В этой статье я хотел бы поделиться своим опытом использования связки react-redux и redux-saga, а точнее, какой «велосипед» я использую, для уменьшения количества однотипного кода и упрощению его восприятия. Читать дальше →

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

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

Дневник Samsung Galaxy Note 20 Ultra: производительность, как ее повышать (и зачем) Производительность наряду с автономностью (временем работы от одного заряда аккумулятора) является одной из ключевых характеристик смартфонов, которая влияет на впечатления от использования. В этой теме плодится и размножается много мифов и заблуждений, которые порождаются в...

[Из песочницы] 1С-Битрикс и попытка его внедрения Привет, друзья! Меня зовут Петр, я представитель малого белорусского бизнеса со штатом чуть более 20 сотрудников. В данной статье хочу поделиться негативным опытом покупки 1С-Битрикс. Читать дальше →

DLR RMC — часть 1. Путь из космоса на Землю Ссылка на первоисточник: http://www.robotexnik.info/publ/robotics/dlr-rmc-part1/1-1-0-13. Здесь больше порядка с оформлением, особенно, для видеороликов. Заходите! Содержание Введение Ничего необычного: один из лучших центров робототехники в мире Оберпфаффенхофен Просто ко...

Не хочется ждать в очереди? Напишем свой диспетчер для SObjectizer с приоритетной доставкой SObjectizer — это небольшой фреймворк для C++, который дает возможность разработчику использовать такие подходы, как Actor Model, Communicating Sequential Processes и Publish/Subscribe. Одной из ключевых концепций в SObjectizer являются диспетчеры. Диспетчеры определяют где...

Добавляем modbus в Embox RTOS и используем на STM32 и не только Нас часто спрашивают, чем Embox отличается от других ОС для микроконтроллеров, например, FreeRTOS? Сравнивать проекты между собой, конечно, правильно. Но параметры, по которым порой предлагают сравнение, лично меня повергают в легкое недоумение. Например, сколько нужно памя...

Парочка интересных консольных команд (заметка) Доброго времени суток, друзья! В этой небольшой заметке я хочу поделиться с Вами информацией о некоторых консольных командах, которые можно использовать наряду с console.log(). Полный список консольных команд можно посмотреть здесь. От слов — к делу. Да, для работы будет...

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

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

[Перевод] 25 лучших репозиториев GitHub для разработчиков Python Согласно опросу разработчиков на StackOverflow в 2020 году*, Python — один из самых любимых языков в мире. Что еще более интересно, Python — это язык, который разработчики больше всего хотят попробовать в своей работе. Если вы один из тех, кто использует Python и хочет прока...

Производительность приложений, работающих с Video и Audio В этой статье будут рассмотрены 3 практических вопроса, с которыми я столкнулся при разработке приложения. Как работать с Video и Audio с максимальной точностью. Как оптимально обрабатывать данные с такой скоростью. Как оптимально обрабатывать данные, приходящие по websoc...

[Перевод] Вставка реальных объектов в Unity с помощью Meshroom Из этой статьи вы узнаете, как использовать фотограмметрию для фотосканирования и вставки объектов реального мира в проекты Unity при помощи Meshroom. В контексте 3d-моделей фотограмметрия — это процесс создания 3D-моделей из отсканированных объектов. Вам нужны реалистичн...

SSL сертификат для Docker web-app В данной статье я хочу поделиться с вами способом создания SSL сертификата для вашего веб-приложения работающего на Docker, т.к. в рускоязычной части интернета — подобного решения я не нашел. Подробнее под катом. Читать дальше →

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

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

Samsung Electronics планирует инвестировать в завод и оборудование для серийного выпуска панелей micro-LED По данным источника, компания Samsung Electronics планирует в первой половине следующего года инвестировать средства в завод и оборудование, чтобы развернуть серийное производство микросветодиодных панелей (micro-LED). Источник уточняет, что южнокорейский производитель ...

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

[Перевод] Отслеживание лиц в реальном времени в браузере с использованием TensorFlow.js. Часть 6 Вот и финал этой серии статей (ссылки на предыдущие части — в конце этого материала), в которой мы создавали в браузере фильтры в стиле Snapchat, обучая модель ИИ понимать выражения лиц и добились ещё большего, используя библиотеку Tensorflow.js и отслеживание лиц.Было бы зд...

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

Взлет и падение стартапа по аренде электровелосипедов Jump. Два года назад его за $200 млн купила Uber Photo: Bikeshare Museum В 2018 году такси-сервис Uber купил стартап по аренде электросамокатов Jump за $200 млн. Однако всего спустя два года дела у проекта идут плохо. Создатель Jump и ключевые члены команды проекта покинули Uber еще в январе, а большинство сотрудников с...

ANTUSDT Coin Mixer: продолжающаяся война за конфиденциальность Сделайте цифровую валюту неотслеживаемой Coin Mixer – это сервис, который скрывает путь транзакции посредством перетасовки монет, тем самым скрывая личность участников. Люди не хотят раскрывать данные об имуществе и транзакциях. С помощью Coin Mixer люди могут скрывать...

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

Управление зависимостями JavaScript Всем привет! Меня зовут Слава Фомин, я ведущий разработчик в компании DomClick. За свою 16-ти летнюю практику я в первых рядах наблюдал за становлением и развитием JavaScript как стандарта и экосистемы. В нашей компании мы используем JavaScript, в первую очередь, для продви...

Записи докладов ок.tech: Frontend Meetup #2 26 ноября в петербургском офисе Одноклассников состоялся ок.tech: Frontend Meetup #2. Вместе с коллегами из Одноклассников, ВКонтакте и Hazelcast поговорили про новый фронтенд OK.RU, сделанный на связке React + Graal, обсудили может ли “Lifting State Up” – один из двенадца...

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

Что такое псевдоним e-mail, для чего он нужен и как его создать на Gmail Электронная почта является универсальным инструментом, которым с разными целями пользуются почти все пользователи Интернета. Но многие люди хотят сохранять свою личность инкогнито и скрывать реальный адрес своего ящика. ♥ ПО ТЕМЕ: Как в Gmail отправлять самоудаляющиеся письм...

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

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

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

[recovery mode] PM2: подходим к вопросу процесс-менеджмента с умом Буквально пару часов назад у меня завязался спор на тему того, что Node.JS слишком медленная для крупных проектов и ей стоит предпочесть Golang, Rust, PHP, etc. Основным аргументом противоположной стороны в этом споре был факт однопоточности JavaScript. Якобы при разработке ...

[Из песочницы] Особенности установления соединения между участниками сетевой игры типа «равный к равному» Это сборник информации, которая мне понадобилась, чтобы реализовать этап установления соединения между участниками сетевой игры типа «равный к равному» (peer-to-peer) с использованием протокола UDP. Статья расчитана на начинающих разработчиков игр. Попытался написать такую ...

[Из песочницы] Долгий DNS resolve в Kubernetes Эта статья посвящена проблемам работы DNS в Kubernetes, с которыми столкнулась наша команда. Как оказалось, иногда проблема лежит гораздо глубже, чем кажется изначально. Вступление Всегда наступает момент, когда в уже отлаженную работу вмешиваются обстоятельства, заставляя н...

Книга «Экстремальный Cи. Параллелизм, ООП и продвинутые возможности» Привет, Хаброжители! Для того чтобы овладеть языком C, знания одного лишь синтаксиса недостаточно. Специалист в области разработки должен обладать четким, научным пониманием принципов и методик. Книга «Экстремальный Cи» научит вас пользоваться продвинутыми низкоуровневыми в...

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

О том как написать и опубликовать смарт-контракт в Telegram Open Network (TON) О том как написать и опубликовать смарт-контракт в TON О чем эта статья? В статье я расскажу о том, как поучаствовал в первом (из двух) конкурсе Telegram по блокчейну, не занял призовое место и решил зафиксировать опыт в статье, чтобы он не канул в Лету и, возможно, помог ко...

Наш опыт миграции Cassandra между Kubernetes-кластерами без потери данных Последние ~полгода для работы с Cassandra в Kubernetes мы использовали Rook operator. Однако, когда нам потребовалось выполнить весьма тривиальную, казалось бы, операцию: поменять параметры в конфиге Cassandra, — обнаружилось, что оператор не обеспечивает достаточной гибко...

Как найти то, чего нет в тексте В преддверии намеченного на 10 сентября онлайн-форума Russian Enterprise Content Summit 2020 редакция itWeek обратилась к ключевым спикерам конференции с предложением поделиться своим видением ситуации и трендов на отечественном рынке средств управления ...

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

[Из песочницы] Редизайн приложения — взгляд изнутри Mobius bike — это сервис по прокату велосипедов и самокатов, разработанный для Таллина (на данный момент запланировано расширение географии). Гипотеза первого релиза — «приложение по прокату велосипедов, будет востребовано на рынке Европы». В декабре 2019 была пересмотре...

Microsoft Edge получает новую функцию, отсутствующую в большинстве браузеров На своей конференции Build в мае Microsoft объявила, что в конце этого года в ее браузере Edge появится новая функция поиска на боковой панели. Как и ожидалось, новая функция поиска на боковой панели теперь развертывается в Microsoft Edge в стабильном канале (производственна...

Дай таблетку, программист. Как в прошлый раз Не судите строго, но я в выходные, совершенно случайно, посмотрел телевизор. Канал «Россия 1». Всего несколько минут. Наткнулся на доктора Мясникова, который поздравлял своих коллег с днём медицинского работника (кстати, присоединяюсь к поздравлениям!).Доктор Мясников не про...

JIRA: правила своевременного приготовления вкусного ПО. TLDR 2: управление требованиями Ранее в статье «JIRA: правила своевременного приготовления вкусного ПО. TLDR 1: границы возможностей» была  предпринята попытка унификации общих требований по применению JIRA в случае управления несколькими проектами по разработке заказного программного обеспечения в одном и...

Salt. О славном pillar'е замолвите слово В одной из наших прошлых статей Just add some Salt мы рассказывали, как мигрировали 700+ серверов на Salt. Мы поделились нашим опытом оптимизации Salt: как его применить и настроить без лишних усилий. Тогда мы только затронули тему пилларов, а сегодня хотели бы остановиться ...

Магия 2-х строк на Lua или как донести исходные заголовки HTTP Authorization header-авторизации до web-сервиcа Статья будет полезна тем: кому необходимо задействовать несколько видов авторизации в одном запросе к серверу; кто хочет открывать сервисы мира Kubernetes/Docker в общий интернет, не задумываясь о способах защиты конкретного сервиса; думает, что всё уже кем-то сделано, ...

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

[Перевод] А вы можете решить эти три (обманчиво) простые задачи на Python? С самого начала своего пути, как разработчика программного обеспечения, я очень любил копаться во внутренностях языков программирования. Мне всегда было интересно как устроена та или иная конструкция, как работает та или иная команда, что под капотом у синтаксического сахара...

[Перевод] Контрольный список для ревью кода в распределенных системах points of view by sanja Микросервисная архитектура широко распространена в разработке программного обеспечения. Но организации, которые ее используют, помимо сложностей в реализации бизнес-логики сталкиваются еще и с распределенными сбоями. Ошибки распределенных вычислений...

Собираем недорогой 9.7" E-Ink дисплей для отображения чего угодно Всем привет. Давно хотел собрать большой E-Ink дисплей, который можно поставить на стол и отображать на нем полезную информацию (погоду, календарь и т.д.) В этой статье расскажу, как можно собрать такое устройство на базе ESP32 и дисплея от Kindle DX значительно дешевле, чем...

Поворотная камера на raspberry pi zero c web-интерфейсом(DIY) Родилась идея сделать бюджетную web камеру, используя доступные ингредиенты. Желательно, чтобы у нее был готовый web-интерфейс, чтобы можно было управлять ею удаленно, вращая в разные стороны, чтобы можно было настройки менять, чтобы делать фото-/видео-, скачивать записанн...

«Нюансы» использования TeamCity Всем привет. Статья написана в простом стиле "DevOps для домохозяек" от таких же домохозяек. В ней будет описано с какими неожиданностями можно столкнуться при настройке проекта в TeamCity. Также приведу рекомендации как эти проблемы можно обойти. Нижеописанное ос...

[Перевод] Катастрофы, с которыми я столкнулся в мире микросервисов Прим. перев.: автор этой статьи — engineering manager из Испании, работающий в цифровой торговой площадке Adevinta, представленной в 16 странах, — делится своими наблюдениями о частых проблемах, которые он встречал у создателей микросервисов. Об этих вызовах стоит знать зара...

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

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

Малышка на миллион. Сковиллей Или, на что годятся монстрики Meklon'а? Пишу эту заметку по мотивам инженерного мануала Гидропоника. Выращиваем сверхострый чили и заставляем всех его есть. Так получилось, что я один из тех, кого Meklon счел своим долгом «накормить и посмотреть что с ними станет». Я же, в...

Мой топ книг о Python Привет, Хабр! Я Слава, руководитель команды «Профессиональные инструменты» в Циане и член core-команды авторов в Яндекс.Практикуме. Вместе с ребятами мы развиваем курс «Мидл python-разработчик», и сегодня я хочу поделиться моим личным списком книг, которые помогут вам струк...

Обработка Пластика Солью. Укрепляем PETG, PLA, SBS Всем привет! На днях провел масштабный эксперимент по обработке пластика в духовке. Вы наверное спросите, но  причем тут соль? А она играет ключевую роль в этом эксперименте. Но давайте обо всем по порядку! Нужна обычная кухонная соль (чем мельче соль, тем лучше будет заполн...

[Перевод] Поколение, выросшее вместе с Google, заставляет учителей менять структуру преподавания Астрофизик Кэтрин Гарланд впервые столкнулась с этой проблемой в 2017-м. Она преподавала инженерное дело, а её ученики использовали симуляторы для моделирования турбин реактивных самолётов. Она чётко сформулировала задачу, но один за другим студенты просили её помочь им. В...

Хакеры SolarWinds размазали свои байты в HTTP-трафике через регулярные выражения Валидная цифровая подпись на DLL со встроенным бэкдором Практически по всем профильным СМИ прошла новость о взломе программного обеспечения SolarWinds в рамках глобальной кампании кибершпионажа. Здесь нужно понимать масштаб атаки: этот софт для мониторинга IT-инфраструктур...

Как зарабатывать на фотографиях Данная статья является логическим продолжением этой статьи на Хабре о выдаче регистратором Р01 моих персональных данных. Пришлось дожидаться, пока закончатся суды (частично), чтобы описать, кому было интересно запросить мои персональные данные у доменного регистратора Р01 и...

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

[Из песочницы] Новый взгляд на code style Как знания нейропсихологии могут помочь программисту в стилизации кода? До того как заняться программированием, я очень долго и глубоко изучал нейропсихологию. Впоследствии, эти знания помогли мне добиться высоких результатов в разработке, за короткий промежуток времени. В...

[Перевод] Y Combinator: Привлечение финансирования — это не ключевые моменты жизни компании Майкл Сибель — основатель Twitch, ex-CEO YCombinator Встречаясь с основателями впервые, я часто слышу «Мы компания серии А». Порой выпускники YC рассказывают, что их бизнес-ангелы постоянно задают им вопрос «Когда вы собираетесь поднимать Серию А?» Я бы хотел подчеркнуть...

[Перевод] Как управлять вашими секретами с git-crypt Большинство программных проектов используют секреты – обычно, как ключи к удаленному API или данные для доступа к внешнему ресурсу, например к базе данных. Вашему приложению необходимы эти ключи во время работы, поэтому вам нужно предоставить их при развертывании приложения ...

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

Зависимое поведение. Порнозависимость, зависимость от игр, зависимость от фастфуда Всем привет!Хотелось бы рассказать вам о том, как зависимое поведение любого плана влияет на ваше состояние на своем примере. Немного расскажу про то, как я боролся с зависимостью к просмотру порнографических роликов, избавлялся от пристрастия к "junk food" и много чего инте...

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

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

Amazon ищет специалиста по блокчейну и цифровым валютам Компания Amazon ищет эксперта в области криптовалют и блокчейна для развития направления Amazon Digital Currency (англ. — цифровая валюты Amazon). Соответствующее объявление о поиске специалиста появилось на сайте вакансий компании, сообщает информационное издание CNBC. Глав...

Объединяем закрытый WhatsApp и открытый SIP – Часть 1 Предыдущая статья «Как избежать блокировки в WhatsApp», хотя и получила много минусов, но тем не менее в течении 2 суток была самой читаемой статьей на Хабре – набрала более 20 тыс просмотров. Поэтому я решил что нужно продолжать с хакингом монстров рассказывать о различны...

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

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

Телефонное мошенничество – по горячим следам Намедни моих тестя и тещу телефонные мошенники развели на 350 000 (триста пятьдесят тысяч) рублей. Я не смог им помешать, хотя очень пытался, и деньги заслуженных пенсионеров пополнили общак в какой-нибудь колонии под Челябинском, зато у меня получилось по горячим следам пол...

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

Новая библиотека для уменьшения размерности данных ITMO_FS — зачем она нужна и как устроена Студенты и сотрудники лаборатории Машинного обучения Университета ИТМО разработали библиотеку для Python, которая решает ключевую задачу машинного обучения. Расскажем, почему появился этот инструмент и что он умеет. Читать дальше →

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

[Перевод] Data Science для гуманитариев: что такое «data» Размышления об информации, памяти, аналитике и распределениях Все, что воспринимают наши чувства, — это данные, хотя их хранение в наших черепушках оставляет желать лучшего. Записать это немного надежнее, особенно когда мы записываем это на компьютере. Когда эти записи хорош...

На вершине мира. Промышленные пластики FDM с выдающимися характеристиками: ключевые особенности, критерии эффективной 3D печати, применение Всех приветствую!Данной статьей я хотел бы завершить небольшой цикл статей, посвященных вопросам 3D печати промышленными пластиками на специализированном FDM оборудовании. Речь в ней пойдет о самом востребованном в настоящее (и ближайшее будущее) время классе полимерных мате...

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

Хакатоны. Как выжать максимум и выжить Доброго всем времени суток! Меня зовут Александр Михалин — я .NET разработчик в компании “Рексофт”. За моей спиной 7 хакатонов, причем один в качестве члена жюри. Я не спал 8 ночей, выпил 52 чашки кофе, 15 банок редбулла, со мной в команде побывали 24 человека. Сегодня я х...

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

Илон Маск объявил об успешном «чипировании» обезьяны. Что она теперь умеет? Илон Маск объявил, что компании Neuralink удалось чипировать обезьяну В 2016 году глава Tesla Илон Маск (Elon Musk) объявил об открытии компании Neuralink. Она занимается созданием технологии для подключения человеческого мозга к компьютеру и дела у нее, судя по всему, идут ...

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

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

[Личный опыт] Как специалисту по Data Science с тремя годами опыта устроиться в Google и переехать в Лондон Привет, Хабр! Продолжаем делиться с вами историями IT-эмиграции. После Амстердама, Риги, Сиднея настала очередь Лондона. Анастасия Манохина – Cloud-инженер в Google, поделится своим опытом прохождения собеседований и переезда в британскую столицу. Передаем ей слово! Всем ...

iPad mini 6 может лишиться кнопки Home и получить встроенный в экран Touch ID Инсайдер Дэвид Ковальски, который ранее делился достоверной информацией о смартфонах Google Pixel 5, Samsung Galaxy Note20 и iPhone 12 Pro, рассказал о некоторых особенностях пока неанонсированного iPad mini 6. По словам Ковальски, ключевой фишкой новинки станет сканер Touch...

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

[Перевод] Представляем Contour: направляем трафик к приложениям в Kubernetes Спешим поделиться новостью, что Contour размещён в инкубаторе проектов от Cloud Native Computing Foundation (CNCF). Если вы еще не слышали о Contour — это простой и масштабируемый ingress controller с открытым исходным кодом для маршрутизации трафика к приложениям, запущен...

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

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

Перезагрузка текстур OpenGLESv2 через DMABUF В этой статье я хочу рассказать, как просто можно обновлять текстуры OpenGLES через DMABUF. Поискал по Хабру и к своему удивлению не обнаружил ни одной статьи на эту тему. В Хабр Q&A тоже ничего такого не нашел. И это для меня немного странно. Технология появилась довол...

Работа с базами данных глазами разработчика Когда вы разрабатываете новый функционал с использованием базы данных, цикл разработки обычно включает следующие этапы (но не ограничивается ими): Написание SQL миграции → написание кода → тестирование → релиз → мониторинг. В этой статье я хочу поделиться некоторыми практ...

Настраиваем и автоматизируем развёртывание Active Directory В этой статье я бы хотел предложить вам пошаговый туториал по развёртыванию контроллера домена Active Directory на Windows Server 2016 (с графической оболочкой), а также по вводу рабочей станции в получившийся домен. Чем этот туториал может выделиться на фоне других: Вмест...

[Перевод] Память на магнитных сердечниках в ракете Сатурн 5 Компьютер, работавший в ракете-носителе (Launch Vehicle Digital Computer, LVDC), сыграл ключевую роль в лунной программе «Аполлон», управляя ракетой Сатурн 5. Как и большинство компьютеров того времени, он сохранял данные в крошечных магнитных сердечниках. В этой статье Clo...

[Из песочницы] Используем passwordstore.org — менеджер паролей в стиле KISS Всем привет. В этой статье я хотел бы поделиться своим опытом настройки и использования pass — менеджера паролей для Linux и не только, примечательного своей простотой, использованием уже присутствующих в системе инструментов и возможностью работать исключительно из консоли....

Как SFP, SFP+ и XDP делают нашу жизнь проще Для чего нужны эти порты, трансиверы, пачткорды? Как во всем этом разобраться? И вообще, надо ли это или проще обойтись «подручными средствами» вроде «хорошо обжатого RJ45»? Читать дальше →

«Раз, два, три – ёлочка гори!» или мой первый взгляд на контроллер CANNY 3 tiny «Новый год» это мандарины, оливье, выходные и конечно же подарки. Как вы, уже наверняка догадались я неожиданно стал обладателем микроконтроллера CANNY 3 Tiny. Правда я особо DIY электроникой не увлекаюсь и последний раз сам пытался что-то подключить к контроллеру почти сем...

Использование российских облачных сервисов очередей на C# Данная статья будет полезна тем, кто хочет начать работать с очередями сообщений или хочет перевести работающий проект с зарубежных облачных сервисов, либо с сервисов обслуживаемых собственными силами. В данной статье не будут затронуты вопросы: "Что такое очереди сообщений?...

Внедри это полностью. DI-in-JS Всем привет! Сегодня я попробую поэкспериментировать с Dependency Injection на чистом JavaScript. Тех кто не в курсе, что это за дичь и как ее готовить, приглашаю ознакомиться. Ну а у тех кто в курсе будет повод написать важный и полезный комментарий. Итак, погнали… Читать ...

[Из песочницы] 3 года программирования вслепую. Часть 1 Всем доброго времени суток! Хочу поделиться своим опытом из разряда «Войти в IT». Тем более, что он происходил в полностью невизуальном режиме. О незрячих людях в нашем обществе знают мало, а о незрячих программистах еще меньше. И эта статья предлагает проследить за тем, как...

Аутентификация в .NET Core gRpc с помощью JWT В этой статье я расскажу об особенностях аутентификации API в gRpc сервисах с помощью JWT. Я предполагаю, что вы знакомы с JWT и заголовками HTTP, с их использованием в .NET Core WebAPI, поэтому не буду обсуждать эти детали. Когда я пытался реализовать аутентификацию в gRpc,...

1000 и 1 пост: с Днём рождения, Хабр ❤ 26 мая — День рождения Хабра. А ещё вышла наша 1000-ая публикация, которой могло бы не быть, если бы Хабр не был тем, который он есть. В этой статье мы расскажем о нашем пути и о наших выводах, которые удалось сделать за 4 года ведения блога. Но это ниже, под катом. А здесь ...

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

Топ-7 хард скиллз дизайнера Привет, Хабр! Меня зовут Костя, я отвечаю за дизайн в AGIMA. В предыдущей статье я рассказывал про свой опыт развития софт скиллов. В этой я хочу затронуть хард скиллы, потому что без них не стать мощным дизайнером. Напомню, откуда ноги растут: мы с «Нетологией» провели...

[Из песочницы] Docker-образ для раздачи Single Page Application Single-page Application (SPA) – это набор статических JavaScript и HTML файлов, а так же картинок и других ресурсов. Поскольку они не изменяются динамически, опубликовать их в интернете очень просто. Для этого существует большое количество дешёвых и даже бесплатных сервисов,...

Что нам стоит чип построить? Об экономике создания микропроцессоров В вопросе развития отечественной микроэлектронной индустрии один из ключевых вопросов – экономический. Ведь разработка микропроцессоров – удовольствие  не из дешевых. В данной статье я попытаюсь на базовом уровне разобрать сколько стоит разработка современного general-p...

Война с тормозами. Оптимизация количества рендеров компонентов в React Native Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь React Native разработкой в Profi.ru. Если вы решили воспользоваться технологией React Native для быстрой доставки продуктовых фич и сосредоточились на скорости разработки, то, скорее всего, столкнётесь с проблемами производи...

Использование SEH в 32 разрядных приложениях Windows с компилятором Mingw-W64 Что такое SEH Из всех механизмов, предоставляемых операционными системами семейства Windows, возможно наиболее широко используемым, но не полностью документированным, является механизм структурной обработки исключений (он же Structured Exception Handling, или просто – SEH). ...

[Из песочницы] Как начать писать микросервис на Spring Boot, чтобы потом не болела голова Привет! Меня зовут Женя, я Java-разработчик в Usetech, в последнее время много работаю с микросервисной архитектурой, и в этой статье хотела бы поделиться некоторыми моментами, на которые может быть полезно обратить внимание, когда вы пишете новый микросервис на Spring Boot....

[Перевод] Понимание CSS Grid: Создание Grid-контейнера Перевод «Understanding CSS Grid: Creating A Grid Container» Рейчел Эндрю Хотя технология CSS Grid стала поддерживаться некоторыми браузерами еще в 2017 году, у многих разработчиков пока не было возможности использовать её в своих проектах. Технология CSS Grid привносит множ...

Почему Мистер Робот — лучший сериал про IT-индустрию Доброго времени суток, уважаемые читатели Хабра! 23 декабря 2019 года в свет вышла заключительная серия одного из самых популярных сериалов про IT — Мистер Робот. Посмотрев сериал до конца, я твёрдо решил написать статью о сериале на Хабре. Выход этой статьи приурочен к мое...

[Из песочницы] B2B продажи в США. Подводные камни, о которые разбивается большинство Чтобы продавать бизнесу в США необходимо принять простую вещь. Продажа в США это не набор волшебных слов, бездумного спама и давления. Это очень органичный для обычного американца, но такой непривычный для многих процесс “ построения отношений”. Построение отношений — эт...

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

Основные тренды при работе с мобильными Хотите узнать экспертное мнение о ключевых трендах мобильных Бенни Чжэна, Эдвина Нга, Эммануэля Синки, тогда не пропустите интервью. Они поделятся своими мыслями о мобильной коммерции, как ее можно эффективно использовать себе во благо. Также вы узнаете о следующем: какие тр...

Основные тренды при работе с мобильными Хотите узнать экспертное мнение о ключевых трендах мобильных Бенни Чжэна, Эдвина Нга, Эммануэля Синки, тогда не пропустите интервью. Они поделятся своими мыслями о мобильной коммерции, как ее можно эффективно использовать себе во благо. Также вы узнаете о следующем: какие тр...

Как я начал выступать на конференциях и не могу остановиться Современный мир разработки, по-своему, прекрасен. Хорошей практикой считается свободное распространение своих знаний и разработок. Стремление к знаниям создает спрос, а habr, toster (ныне qna), github, митапы, конференции и прочее являются отличным предложением. О митапах и ...

Автоматизация задач администрирования API VMware vSphere с использованием Ansible В предыдущей статье мы рассмотрели взаимодействие с VMware с помощью Python. В этой же обсудим взаимодействие с VMware с помощью Ansible. Ansible — система управления конфигурациями, написанная на языке программирования Python с использованием декларативного языка разметки ...

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

Создаем CRUD API на Express и MySQL: часть вторая Всем привет. В преддверии старта курса «Разработчик Node.js», хотим поделиться продолжением материала, который был написан нашим внештатным автором. Всем еще раз привет. Мы возвращаемся к созданию приложения на Node.js и MySQL для небольшого todo — приложения на Node.js ...

ANTUSDT Coin Mixer: продолжающаяся война за конфиденциальность Сделайте цифровую валюту неотслеживаемой Coin Mixer — это сервис, который скрывает путь транзакции посредством перетасовки монет, тем самым скрывая личность участников. Люди не хотят раскрывать данные об имуществе и транзакциях. С помощью Coin Mixer люди могут скрывать...

Почему ты не будешь доволен результатами твоего performance review Syn ack, хабр!Если ты зашел сюда, то скорее всего уже знаешь, что такое performance review и скорее всего ты недоволен его результатами:According to Gallup, only 14% of employees strongly agree their performance reviews inspire them to improveКак видишь ты не один и в этой с...

ASUS ZenFone 8 Mini – все характеристики накануне анонса В преддверии официального дебюта серии смартфонов ASUS ZenFone 8 в сети появились ключевые характеристики одного из гаджетов новой линейки – Zenfone 8 Mini. Информацией поделился инсайдер Мукул Шарма. ХарактеристикиСообщается, что ASUS Zenfone 8 Mini будет обладать…

AMD назвала ключевую характеристику, позволившую поднять тактовые частоты на процессорах Ryzen 5000 Один из руководителей AMD поделился с пользователями информацией о температурных характеристиках новых процессоров, весьма озадачив их неожиданными новостями

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

[Перевод] Мой второй год в качестве независимого разработчика Иллюстрация Лорейн Йоу. Суслик-талисман языка Go адаптирован из работ Рене Френч Два года назад автор этой статьи Майкл Линч (Michael Lynch) уволился с должности инженера-программиста в Google, чтобы начать собственный бизнес (см. статью «Почему я ушёл из Google и начал ра...

«Социальный мониторинг». Счёт 1:0 в нашу пользу Введение Приложение вышло -> увидели тихий ужас -> начали писать отрицательные отзывы -> разобрали по полочкам -> приложение удалили (отправили на доработку). Всем привет, в данной статье, когда всё миновало, я хочу рассказать Вам о двух ключевых стадиях из пере...

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

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

[Перевод] Будущее Prometheus и экосистемы проекта (2020) Прим. перев.: это перевод статьи, подготовленной по мотивам недавнего выступления Richard Hartmann — заметного представителя команды разработчиков Prometheus, директора по сообществам из Grafana Labs, основателя проекта OpenMetrics и председателя группы SIG Observability в C...

[Из песочницы] Использование Camunda для удобной оркестровки на основе REST и Workflow Engine (без Java) Привет, Хабр! Представляю вашему вниманию перевод статьи «Use Camunda as an easy-to-use REST-based orchestration and workflow engine (without touching Java)» автора Bernd Rücker. 07.07.2020 г., перевод статьи Bernd Rücker Я часто обсуждаю микросервисную архитектуру с люд...

Мини Термометр & гигрометр с E-PAPER на nRF52 — или о том, что пока не выпустили производители Приветствую всех читателей Habr! Хочу поделится с вами своим новым опенсорс проектом. Из названия статьи понятно что речь пойдет о датчике температуры и влажности с дисплеем на электронных чернилах. Уже достаточно давно я попробовал сделать проект датчика температуры с таким...

Темная Вселенная. Часть 2 И вновь доброго времени суток! Данная статья является продолжением ранее опубликованной статьи о нашей «темной» Вселенной. В данной части мы продолжим рассмотрение различных интересных особенностей в космологии, над объяснением которых бьются множество ученых. В целом я пос...

Viber: 64% опрошенных пользователей мессенджера считают конфиденциальность данных ключевым аспектом, но при этом 52% не используют доп. функции для более приватного общения Сегодня, 4 февраля 2020 года, традиционно отмечается День безопасного Интернета, целью которого является проинформировать онлайн-пользователей об ответственном использовании всемирной паутины. В преддверии этой даты компания Viber провела опрос среди пользователей своего мес...

Quartet 9: Allegro | TypeScript Когда создавалась библиотека для валидации данных quartet были поставленны следующие цели-ориентиры: TypeScript Краткость и простота Производительность В этой статье я хотел бы рассмотреть ориентированность quartet на TypeScript. Читать дальше →

[Перевод] Как создаётся изображение формата RAW? Рис. 1: фото на Nikon D610 с объективом AF-S 24-120mm f/4 и параметрами 24mm f/8 ISO100 Каковы базовые шаги создания изображения формата RAW на низком уровне? В данной статье я опишу, что происходит «под капотом» цифровой камеры, где необработанные данные превращаются в пр...

Как портировать модуль с Node на Deno Я верю, что когда-нибудь Deno мог бы стать следующим стандартом после Node, как TS постепенно заменяет JS. Экосистема ноды уже достаточно разрослась, чтобы стало сложно вносить глобальные изменения в ядро, выход 15 версии тому пример. Помните, какое там ключевое изменение?...

[Перевод] Учимся читать научные статьи у Эндрю Ына из Стэнфорда Мудрость является не продуктом обучения, а пожизненной попыткой ее приобрести.Альберт Эйнштейн Каждому, кто серьёзно занимается машинным обучением, необходимо научиться понимать то, что публикуется в научных статьях. Подобные публикации делают учёные, находящиеся на передне...

Оконные функции с «форточкой» или как пользоваться фреймом Всем привет. 26 февраля в OTUS стартовали занятия в новой группе по курсу «MS SQL Server разработчик». В связи с этим я хочу поделиться с вами своей публикацией про оконные функции. Кстати, в ближайшую неделю еще можно записаться в группу ;-). Оконные функции прочно вошл...

Как подключить пару рольставней по трём проводам и управлять ими голосовым ассистентом Всем привет! В этой статье я расскажу, как мне пришлось исправить ошибку строителей, которые заложили в штробу всего один 3-х проводной кабель, идущий к двум рольставням, тогда как нужно было проложить два таких кабеля. А так же про недорогой WiFi + RF433 МГц блок управлен...

7 Кругов SPM или как сделать модульное приложение на Swift Package Manager Думаю, многие разработчики сталкивались с задачей, когда нужно разбить проект на модули. В этой статье нет информации о том, как решать циклические зависимости или выделять по слоям функционал, подразумевается, что это уже реализовано. Цель статьи — описать проблемы с которы...

Grafana+Zabbix: Визуализация работы производственной линии В этой статья я хочу поделиться опытом использования open source систем Zabbix и Grafana для визуализации работы производственных линий. Информация может быть полезна тем, кто ищет быстрый способ визуального отображения или аналитики собранных данных в проектах промышленной ...

Record-and-Replay тестирование — сочетание достоинств юнит и интеграционных тестов ВступлениеПривет, Хабр. Сегодня я расскажу вам про Record-and-Replay подход к тестированию т. к. я его понимаю. Оговорка про мое понимание не случайна. Про этот подход не так много общедоступных материалов, чтобы иметь некий common agreement относительно значения этого терми...

Онлайн-соревнование для авторов: лучшие «корпоративные» статьи 2020 Привет, Хабр! Хочу поделиться информацией об онлайн-конкурсе для авторов и редакторов, которые занимаются созданием контента для компаний. Главная цель соревнований – показать, что брендированный контент может быть ненавязчивым, интересным и полезным. Читать дальше →

СХД Lenovo ThinkSystem DE2000. Быстро, качественно и недорого: получи всё и сразу Традиционно системы хранения данных были и остаются одним из ключевых компонентов ИТ-инфраструктуры. Если вернуться в прошлое и посмотреть, как менялось представление о СХД, то можно проследить интересную тенденцию. Читать дальше →

[Перевод] Разбираемся с Opaque Return Types в Swift Opaque return types (непрозрачные типы) — это новая языковая конструкция, представленная Apple в Swift 5.1. Их можно использовать для возврата некоторого (some) значения функции (function)/метода (method) и свойства (property), не раскрывая конкретный тип значения клиенту, к...

Сравнение 6 популярных “Drag&Drop” тем на WordPress WordPress является одним из самых популярных инструментов, когда речь заходит о необходимости в легком управлении контентом и простой веб-разработке. Он успешно завоевал рынок инструментов для создания веб-сайтов, предоставляя своим пользователям быстрые, надежные и простые ...

Браузер на страже API-запросов Команде разработчиков, создающей одностраничное приложение (SPA), рано или поздно придётся столкнуться с ограничениями браузерной безопасности. С одной стороны, нужно сделать так, чтобы фронтенд-сторона могла беспрепятственно общаться с бэкенд API-сервером, а с другой — защ...

Синергия Graphviz и препроцессора C/C++ Это статья посвящена тому, как использовать популярный инструмент рисования графов Graphviz в кооперации с препроцессором C/C++ (далее просто препроцессор). Ключевым моментом является то, что язык описания графов dot, который использует Graphviz, по своему синтаксису пригоде...

[Из песочницы] Интеллект — способность объекта адаптировать свое поведение к окружающей среде с целью своего сохранения (выживания) Аннотация Весь мир только и делает, что говорит об Искусственном Интеллекте, но при этом — вот же парадокс! — определения, собственно, «интеллекта» (даже не искусственного, а вообще) — общепринятого, понятного, логично структурированного и глубокого до сих пор нет! Почему бы...

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

[Перевод] Мои доходы от работы очень хорошим инженером Facebook Когда я десяток лет назад переехал в США для работы в Facebook, то понятия не имел, хорошим или плохим был оффер. Я даже не торговался и согласился на ту сумму, которую мне предложили. Отчасти это вызвано тем, что я был в восторге от приглашения, отчасти тем, что я совершенн...

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

Обзор Vikings: War of Clans — MMO стратегия для мобильных устройств и браузера Vikings: War of Clans - это онлайн игра в жанре стратегия с элементами mmorpg от компании Plarium. Игра Викинги была выпущена в 2015 году на iOS, Android, позже на Facebook и в браузере. После успеха Vikings: War of Clans компания Plarium выпустила похожую игру на телефон T...

Apple догадалась сделать клавиатуру для iPad нормальной Smart Keyboard станет по-настоящему удобной благодаря «ножницам» Преемственность – это одна из ключевых особенностей продукции Apple. Поэтому даже если положить рядом несколько устройств разных производителей и, закрасив логотипы, предложить несведущему человеку оп...

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

Смарт-реплай стикерами Привет, Хабр! Сегодня мы перезапустили ICQ. Ключевые функции нового мессенджера основаны на технологиях искусственного интеллекта: система быстрых подсказок стикеров и текста Smart Reply для ответа на пришедшее сообщение, предложение стикеров по введенным фразам, распознаван...

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

[Из песочницы] Самый простой алгоритм для создания Филворда (Часть 1) Привет, Хабровцы. В этой статье я хочу поделиться с вами немного своим опытом и показать вам мой простой алгоритм, который я придумал для создания Филворда. Под «Филвордом» я буду иметь ввиду эту многим знакомую игру. В игре есть поле размером обычно NxN заполненное словами...

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

Как мы Data-Office создавали Привет, я – Ильдар Райманов и я руковожу департаментом в «БАРС Груп», который отвечает за развитие BI-решений в компании. Имея широкий опыт по работе с данными, а также обладая отраслевой экспертизой, мы решили попробовать сформировать центр компетенций, который, позволяя ...

Пластилин и 3D моделирование. (Перенос сложной детали в программу) Всем привет! Поступила заявка от моей жены на создание подстаканника для детской коляски Anex Sport 2.0. При снятии размеров я понял, что коляска не разбирается, а для создание качественной 3Д модели нужны точные размеры. Вот тут и пришла идея использовать пластилин. Сразу х...

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

Беспроводной тачпад из смартфона Когда ты уже не начинающий ардуинщик и погодных информеров у тебя уже несколько штук, хочется чего-то более «оригинального» и «полезного». Предположим у нас имеется: Arduino Leonardo – 1 штука, Bluetooth модуль – 1 штука, Android смартфон – 1 штука. Ключевое отличие Leonar...

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

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

[Из песочницы] Koin – это Dependency Injection или Service Locator? Введение В Android-разработке для DI традиционно используют Dagger 2, очень мощный фреймворк с кодогенерацией. Но есть проблема: новичкам сложно его использовать. Сами принципы DI просты и понятны, но Dagger усложняет их. Можно жаловаться на поголовное падение грамотности пр...

Универсальное ТЗ для Wi-Fi, с пояснениями ТЗ должно быть простым, понятным и проверяемым. Вы такое видели? Каких только ТЗ я не встречал за 12 лет в этой теме. Классические пункты — это “бесшовный роуминг” и “устойчивое 100% покрытие всей площади”. Понятно, что все мы хотим прекрасной связи. Какими же словами опис...

[Из песочницы] Выход на западный рынок: как взаимодействовать с заказчиками Всем привет! Я – Наталья Лекомцева, коммерческий директор Omega-R. С 2005 года я занимаюсь продажей IT-решений на западный рынок и взаимодействием с иностранными заказчиками, в том числе в формате личных встреч; с 2012 года моя работа связана с поиском ключевых зарубежных...

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

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

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

[Из песочницы] pyqtdeploy, или упаковываем Python-программу в exe'шник… the hard way Наверняка, каждый, кто хоть раз писал что-то на Python, задумывался о том, как распространять свою программу (или, пусть даже, простой скрипт) без лишней головной боли: без необходимости устанавливать сам интерпретатор, различные зависимости, кроссплатформенно, чтобы одним ...

[Из песочницы] Формат таблиц в pandas Если вы пока ещё не знаете как транслировать данные напрямую заказчику в подсознание или, на худой конец, текст сообщения в slack, вам пригодится информация о том, как сделать процесс интерпретации таблиц более быстрым и комфортным. Например, в excel для этого используется у...

[Из песочницы] Веб-разработка с нуля: руководство для молодых команд по созданию инфраструктуры CI/CD и процесса разработки Чуть больше года назад я столкнулся с тем, что на внутреннем проекте совсем не айтишной компании вырос целый отдел веб-разработки, которым мне и довелось руководить. Рабочий процесс вроде как устаканился и всех устраивал, но оставались проблемы: Проверка каждой ветки проход...

Как мы переходили на Java 15 или история одного бага в jvm длиной в 6 лет Мы готовились к выходу Java 15 ради некоторых её новых возможностей. В частности — текстовых блоков. Да, они появились в Java 14 (о новых функциях в Java 14 можно посмотреть здесь), но только как превью-фича, а, начиная с Java 15, она стала доступна в виде окончательно ...

Базы данных в IIoT-платформе: как Mail.ru Cloud Solutions работают с петабайтами данных от множества устройств Привет, я Андрей Сергеев, руководитель группы разработки IoT-решений в Mail.ru Cloud Solutions. Известно, что универсальной базы данных не существует. Особенно когда нужно построить платформу интернета вещей, способную обрабатывать миллионы событий от датчиков в секунду в р...

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

Xiaomi Gateway (eu version) Hacked Xiaomi Zigbee Gateway Hack В этой статье я хочу поделится с Вами своими наработками и достигнутыми успехами в разборе Xiaomi шлюза (Версия с евровилкой с беру.ру). Расскажу как установить на него альтернативное ПО, как восстанавливать шлюз с затертым софтом и даже оживлять ш...

[Перевод] Создаем собственный GPS-Трекер на технологии LoRa В этой статье вы узнаете, как создать собственный GPS-трекер с помощью микроконтроллеров Pycom LoPy, а также научитесь настраивать одноканальный LoRa Nano-Gateway. Здесь я изложу ключевые этапы со всеми необходимыми ссылками. Читать дальше →

[Из песочницы] Коронавирус: мы все умрём? Что мы говорим Богу смерти? — Не сегодня. Сирио Форель, сериал «Игра престолов». Насколько действительно опасен коронавирус COVID-19? Сколько людей умрёт от коронавируса в мире? А сколько – в России? Так ли необходимы жесткие меры, принимаемые для борьбы с коронавирусом в ...

MLOps — Cook book, chapter 1 Всем привет! Я CV-разработчик в КРОК. Уже 3 года мы реализуем проекты в области CV. За это время чего мы только не делали, например: мониторили водителей, чтобы во время движения они не пили, не курили, по телефону не разговаривали, смотрели на дорогу, а не сны или в облака...

Как заработать на несовершенстве 1С Помните, как на заре появления WhatsApp и Viber сотовые операторы в России хотели брать деньги за работу этих сервисов в своих сетях. Слава Богу, рынок, здравый смысл и возмущения общественности не позволили реализоваться этому печальному сценарию. В середине 2000-х основн...

[Перевод] Машины уже опережают людей в тестах на чтение; но понимают ли они прочитанное? Инструмент под названием BERT способен обогнать людей в тестах на чтение и понимание. Однако он же демонстрирует, какой путь ещё нужно пройти ИИ Осенью 2017 года Сэм Боумен, вычислительный лингвист из Нью-Йоркского университета, решил, что компьютеры до сих пор ещё не очен...

[Перевод] volatile vs. volatile Всем привет! Мы подготовили перевод данной статьи в преддверии старта курса «Разработчик C++» Повесть о двух, казалось бы, похожих, но все же разных инструментах Херб — автор бестселлеров и консультант по вопросам разработки программного обеспечения, а также архитектор П...

[Перевод] Графический интерфейс на Python за 5 минут Python легко использовать. В нем вы можете найти огромное количество библиотек для чего угодно. И это его основное преимущество. Из нескольких строк кода вы ничего не сделаете. Если вам нужны скрипты для личного пользования или для технически подкованной аудитории, то вам ...

[Перевод] Пишем интерпретатор BASIC в стиле 80-х В течение нескольких лет я работала над личным проектом создания (а на самом деле исследования) «фальшивого эмулятора», то есть написанного на JavaScript эмулятора никогда не существовавшего компьютера. Эта машина должна была стать данью памяти восьми- и шестнадцатибитным ...

Продвинутая система авторизации действий с ресурсами в Laravel. Часть 3. Чтение/запись атрибутов, собственные модели Введение Здравствуйте, дорогие Хабровчане. Сегодня я представляю вашему вниманию заключающую часть цикла статей о продвинутой авторизации действий с ресурсами в Laravel. Чтобы лучше понимать о чем пойдет речь в этой статье — необходимо прочесть первую и вторую части. На э...

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

[Перевод] Как эксперты дурачат стартапы (Автор — Аарон Харрис, партнер Y Combinator, ответственный за Series A) Эксперты обычно всегда правы до тех пор, пока не ошибутся. К сожалению, легко обмануться, думая что они всегда правы. Всё потому что… они же эксперты, они авторитетны и образованны. Это особенно легко...

[Перевод] Автоматизируем установку WordPress с NGINX Unit и Ubuntu Есть множество материалов по установке WordPress, поиск в Google по ключевым словам "WordPress install" выдаст порядка полумиллиона результатов. Но тем не менее фактически среди них весьма мало годных руководств, по которым можно установить и настроить WordPress и...

[Из песочницы] Raspberry Pi и модем SIM7600E 4G HAT Добрый день всем. В этой статье я хотел бы рассказать о своем опыте использования 3G-модема SIM7600X, который можно подключать к Raspberry Pi. Статья может оказаться полезной тем из вас, кому необходимо использовать Raspberry автономно, в условиях отсутствия WIFI-сети. Пара...

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

[Перевод] Ежедневные сложности сениор-разработчика Больше десятка лет я работал на одну из крупнейших в мире компаний по разработке ПО. Выполняя множество задач, я видел многие аспекты бизнеса: от быстрого «ковбойского» кодинга до серьёзных покупок конкурентов и стартапов. 1. Планёрки Большинство известных мне разработчик...

[Из песочницы] Разбор UI/UX на примере прототипа в Figma и основные принципы Кому адресована статья В данной публикации я хочу помочь начинающим и «не очень» бизнес-аналитикам, менеджерам проектов, владельцам продуктов, желающим сделать свой первый сайт и всем-всем, кому надо сделать макет сайта или приложения, а он не знает с какой стороны подступит...

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

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

[Из песочницы] Свои Custom Controls в Angular Пролог Поговорим о реактивных формах в angular, узнаем за кастомные контролы, как их создавать, использовать и валидировать. Статья предполагает что вы уже знакомы с фреймворком angular, но хотите больше погрузиться в её специфику. Хорошее желание, начнем. Читать дальше &ra...

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

Docker swarm и балансировка нагрузки по нодам Всем привет, мы используем Docker Swarm в продакшене, и столкнулись с проблемой балансировки контейнеров и нагрузки по нодам в кластере. Я хотел бы рассказать с какими сложностями мы встретились, и поделиться нашим решением. Читать далее

[Перевод] Устанавливаем рабочий стол Linux на Android Привет, Хабр! Представляю вашему вниманию перевод статьи из журнала APC. В данной статье рассматривается полная установка операционной среды Linux вместе с графическим окружением рабочего стола на Android-устройствах. Одной из ключевых технологий, которую применяют многи...

Китай инвестирует $1,4 трлн долларов и переманивает ключевых инженеров TSMC, стремясь обогнать США в производстве чипов Современная IT-отрасль в значительной степени зависит от производителей электронных компонентов. У кого развиты технологии — тот если и не владеет миром, то хотя бы управляет развитием всей отрасли. Сейчас лидерство у США, и страна фактически ведет «‎электронные войны»‎ с г...

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

Обновлённый анонс обновлённых интенсивов: Kubernetes oт альфы до омеги TL;DR, уважаемые хабровчане. Наступила осень, в который раз перевернулся лист календаря и третье сентября наконец-то снова минуло. А значит пора возвращаться к работе — и не только к ней, но и к обучению. — У нас, — сказала Алиса, с трудом переводя дух, — когда долго бежиш...

[Перевод] Экономичная конфигурация исполнителей Apache Spark Первый этап в определении оптимальной конфигурации исполнителей (executor) - это выяснить, сколько фактических ЦП (т.е. не виртуальных ЦП) доступно на узлах (node) в вашем кластер. Для этого вам необходимо выяснить, какой тип инстанса EC2 использует ваш кластер. В этой стать...