Социальные сети Рунета
Пятница, 19 апреля 2024

Справочник security-архитектора: обзор подходов к реализации аутентификации и авторизации в микросервисных системах Контейнеризация, CI/CD, оркестрация, микросервисы и agile-процессы – это облако тегов, которое теперь находится в словаре security-инженеров. Микросервисная модель и сопутствующие технологии привели к многообразию подходов в реализации архитектуры безопасности современных ре...

[Перевод] Антипаттерны событийно-ориентированной архитектуры И снова здравствуйте! В преддверии старта курса «Архитектор ПО» подготовили перевод еще одного интересного материала. Последние несколько лет наблюдается рост популярности микросервисной архитектуры. Есть много ресурсов, которые учат правильно ее реализовывать, однако дост...

Как мы разрабатывали кроссплатформенную BPMS Всем привет! В НОРБИТ мы занимаемся SRM-решениями. Сегодня расскажем про особенный для нашей команды проект — разработку BPMS-платформы NBT. Мы не просто создали бизнес-решение для заказчика, а разработали собственный продукт с нуля, — всё это подразумевает совершенно друго...

[Перевод] Микросервисы со Spring Boot. Часть 5. Использование сервера имен Eureka В этой заключительной части нашей серии архитектур микросервисов мы научимся включать сервер имен Eureka и позволять микросервисам взаимодействовать с ним. Это статья входит в серию статей «Микросервисы со Spring Boot»: Часть 1. Начало работы с архитектурой микросервисов ...

Как работает система Marketplace efficiency для сервисов доставки продуктов Привет, Хабр! Меня зовут Артём Селихов, я Product manager в команде СберМаркета, и я отвечаю за управление программными продуктами для операционных процессов, которые мы разрабатываем для наших партнеров — курьеров и экспертов по закупке. В первом посте мы уже рассказывали...

Как мы автоматизировали весь жизненный цикл серверов Привет, Хабр! Меня зовут Алексей Назаров. Я занимаюсь автоматизацией в отделе администрирования инфраструктурных систем в Национальной системе платежных карт (АО НСПК) и хотел рассказать немного о наших внутренних продуктах, которые помогают нам развиваться. Если вы еще не ...

[Перевод] 7 способов повысить эффективность автоматизации тестирования в Agile разработке Перевод статьи подготовлен в преддверии старта курса «Java QA Engineer». Разработка программного обеспечения — процесс сложный. Еще на заре разработки программного обеспечения как дисциплины архитекторы поняли, что без структуры управления этот процесс превращается в хао...

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

Микросервисы. Не всё то золото, что хайп Привет, меня зовут Владимир Кустиков, я — архитектор решений в e-Legion. И сегодня я хотел бы рассказать вам про микросервисы.Наверное, я где-то неправ. А возможно, что у меня просто подгорело. Но в какой-то момент после запроса рассказать о том, в каких проектах я успе...

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

[Перевод] Планирование в Go: Часть II — Планировщик Go Привет, Хабр! Это второй пост в серии из трех частей, которая даст представление о механике и семантике работы планировщика в Go. Этот пост посвящен планировщику Go. В первой части этого цикла я объяснил аспекты планировщика операционной системы, которые, на мой взгляд, важ...

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

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

От скриптов к собственной платформе: как мы автоматизировали разработку в ЦИАН На РИТ 2019 наш коллега Александр Коротков сделал доклад про автоматизацию разработки в ЦИАН: чтобы упростить жизнь и работу, мы используем собственную платформу Integro. Она отслеживает жизненный цикл задач, снимает с разработчиков рутинные операции и заметно сокращает ко...

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

[Перевод] Микросервисы со Spring Boot. Часть 4. Использование Ribbon для балансировки нагрузки Это часть 4 серии о микросервисных архитектурах, в которой мы сосредоточимся на использовании Ribbon для балансировки нагрузки. Это статья входит в серию статей «Микросервисы со Spring Boot»: Часть 1. Начало работы с архитектурой микросервисов Часть 2. Создание микросерви...

[Перевод] Микросервисы на Java: практическое руководство Вы можете использовать это руководство, чтобы понять что такое Java микросервисы, как вы их разрабатывать и создавать. А также получить обзор библиотек для разработки Java микросервисов. Примечание: Статья ~ 7000 слов, вероятно, не стоит читать ее на мобильном устройстве. До...

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

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

Бесплатный вебинар «1000 и 1 интересный пост о вашем бизнесе» Вам нужно создавать посты, чтобы привлекать клиентов из социальных сетей. Когда вы начинаете писать текст для поста, сразу возникают вопросы: Как cделать пост интересным и вовлекающим Как рассказать о бизнесе, товаре или услуге в сотый раз без ...

Go-swagger как основа взаимодействия микросервисов Здравствуй, NickName! Если ты программист и работаешь с микросервисной архитектурой, то представь, что тебе нужно настроить взаимодействие твоего сервиса А с каким-то новым и ещё неизвестным тебе сервисом Б. Что ты будешь делать в первую очередь? Если задать такой вопрос ...

Паттерн «сага» как способ обеспечения консистентности данных Всем привет. Уже сейчас в OTUS открывает набор в новую группу курса «Highload Architect». В связи с этим я продолжаю серию своих публикаций, написанных специально для этого курса, а также приглашаю вас на свой бесплатный демо урок по теме: «Индексы в MySQL: best practices и ...

Что внутри шаурмы: микросервисы, распределенные системы и Кафка. Делимся материалами со встречи Backend United #5 Привет! Этот пост-отчёт с митапа Backend United, нашей серии тематических встреч для разрабочиков серверной части. Пятая встреча получила название «Шаурма», и здесь мы говорили о микросервисах: о способах синхронного и асинхронного взаимодействия между ними, организации пото...

[Перевод] Как я модернизировал свою Flash-игру В этом посте я расскажу о том, как перенёс свою Flash-игру Frog Fractions на современную платформу. В результате я создал частично автоматизированный порт на Unity при помощи Haxe. Пост будет интересен всем, кто пытается модернизировать свою кодовую базу на Flash. В посте б...

RBK.money выпустила первый в мире open-source платежный процессинг — творим будущее вместе Привет! Если вы читали наши предыдущие посты (читали же?), то точно помните, что мы в RBK.money очень сильно за опенсорс. Настолько, что выложили в открытый доступ наш антифрод в виде открытых исходников под лицензией Apache 2.0. Как вы понимаете, нам понравилось. Одного а...

Webpack 5 — Asset Modules Доброго времени суток. Этим постом хочу начать серию статей про новые возможности грядущего webpack 5. Почему я хочу рассказывать про webpack? Как минимум потому, что я принимаю активное участие в его разработке и постоянно копаюсь в его внутренностях. В данном посте хочу ра...

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

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

[Перевод] Реализация SOLID и слоистой архитектуры в Node.js с TypeScript и InversifyJS Привет, Хабр! Предлагаю вашему вниманию перевод статьи Implementing SOLID and the onion architecture in Node.js with TypeScript and InversifyJS автора Remo H. Jansen В этой статье мы рассмотрим архитектуру, известную как слоистая (onion). Слоистая архитектура — подход к пост...

[Из песочницы] Распределенный реестр для колесных пар: опыт с Hyperledger Fabric Привет, я работаю в команде проекта РРД КП (распределенный реестр данных для контроля жизненного цикла колесных пар). Здесь я хочу поделиться опытом нашей команды в разработке корпоративного блокчейна для данного проекта в условиях ограничений, накладываемых технологией. По ...

[Перевод] Что такое SDLC? Этапы, методология и процессы жизненного цикла программного обеспечения Цитируя автора книги Managing Information Technology Projects Джеймса Тейлора, «жизненный цикл проекта охватывает всю деятельность проекта». Задачей же разработки ПО является выполнение требований продукта. Если вы хотите научиться создавать и выпускать высококачественное ПО...

[Перевод] Питонистический подход к циклам for: range() и enumerate() Автор заметки, перевод которой мы сегодня публикуем, хочет рассказать о некоторых особенностях использования циклов for в Python. Цикл for — это один из краеугольных камней программирования. С этими циклами будущие программисты знакомятся в самом начале учёбы и, после пер...

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

Первый взгляд: как устроена новая корпоративная почтовая система Mailion от МойОфис Почти четыре года назад мы начали проектировать принципиально новую распределенную почтовую систему Mailion, которая предназначена для корпоративных коммуникаций. Наше решение построено на Cloud Native микросервисной архитектуре, способно работать с более чем 1 000 000 поль...

[Перевод] Data Scienсe на стероидах: знакомство с Decision Intelligence Что общего между защитным поведением при встрече со львами в саванне, ответственным подходом к управлению ИИ и проблемами проектирования хранилищ данных. Decision intelligence — новая научная дисциплина, рассматривающая все аспекты теории принятия решения. Она объединяет ...

Го в Go! Как команда PHP взялась писать микросервисы Всем привет! Меня зовут Алексей Скоробогатый, я системный архитектор в Lamoda. В феврале 2019 года я выступал на Go Meetup еще на позиции тимлида команды Core. Сегодня хочу представить расшифровку своего доклада, который вы также можете посмотреть. Наша команда называется Co...

[Перевод] Новые фронтендовые библиотеки на периферии React Привет, Хабр! Сегодня мы хотели предложить вам интересный текст о том, как развивается фронтенд в наше время, вернее, по мысли автора — после React. Вероятно, пост мог бы быть и объемнее, поэтому, если автор напишет продолжение — мы также постараемся не упустить и перевести...

[Перевод] Введение в REST API — RESTful веб-сервисы Эта статья представляет собой введение в RESTful веб-сервисы и краткий обзор REST и HTTP. Она начинает серию постов о разработке REST API: Введение в REST API — RESTful веб-сервисы Различия REST и SOAP Разработка REST API — что такое Contract First (контракт в первую очер...

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

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

Новые модели поиска и анализа данных. WSDM 2020 глазами команды Яндекс.Толоки Международные научные конференции помогают следить за трендами в индустрии, узнавать о передовых разработках ведущих компаний, университетов и рассказывать о себе. Конечно, это относится только ко времени, когда мир не погружён в пучину пандемии. До того, как все страны пе...

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

[Перевод] Языковая механика escape analysis Прелюдия Это вторая из четырех статей в серии, которая даст представление о механике и дизайне указателей, стеков, куч, escape analysis и семантики значения/указателя в Go. Этот пост посвящен кучам и escape analysis. Оглавление цикла статей: Language Mechanics On Stacks A...

Анализ тональности текста на Node.js Всем привет. Тема достаточно интересная и может показаться довольно не простой в реализации. Но я человек практический и хочу прикоснуться к прекрасному особо не напрягаясь. Сегодня мы с вами сделаем "микросервис" для анализа сентиментальности / тональности текста...

Московский Центр Искусственного интеллекта Samsung в рассказах сотрудников Наш пост – это возможность узнать об исследованиях в новом подразделении Samsung Research – Центре Искусственного интеллекта (ИИ) в Москве. Он открылся в мае 2018 года и за полтора года собрал лучших профессионалов в области машинного обучения. Ниже мини-интервью сотруднико...

1.Elastic stack: анализ security логов. Введение В связи окончанием продаж в России системы логирования и аналитики Splunk, возник вопрос, чем это решение можно заменить? Потратив время на ознакомление с разными решениями, я остановился на решении для настоящего мужика — «ELK stack». Эта система требует времени на ее нас...

IntelliJ IDEA 2020.1: Java 14, анализ потока данных в отладчике, новый режим LightEdit, и многое другое Привет, Хабр! На прошлой неделе состоялся релиз IntelliJ IDEA 2020.1, и в этом посте мы коротко расскажем о самом интересном в новой версии. Из крупного: мы добавили поддержку Java 14, анализ потока данных в отладчике, режим редактирования файлов без открытия проекта (LightE...

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

Настоящая оптимизация на C/C++ Это продолжение двух постов (первый, второй). В этот раз оптимизация будет произведена на реальной задаче, с правильно построенной методологией тестирования. Задачу возьмем из нашумевшего поста «Алгоритм перевода числа (байтов) в приставку СИ», она интересна тем, что на перв...

Грабли на пути к keep-alive Увеличение активности обмена данными между микросервисами зачастую является проблемой в архитектуре современных IT решений. Выжать максимум и выжить любой ценой — серьёзный вызов для любой разработки. Поэтому поиск оптимальных решений — это не прекращающийся процесс. В стать...

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

Tesseract OCR tips — создание своего словаря для повышения эффективности OCR Это мой первый пост об оптическом распознавании текста (OCR) с использованием Tesseract. Tesserast это очень популярная open source библиотека для OCR поддерживаемая Google, которая дает высокие результаты точности и поддерживает более 100 языков. В этом посте я расскажу как...

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

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

Пишем блог на микросервисах – часть 3 «User» Во второй части нашего цикла статей «Пишем блог на микросервисах» мы описали «API Gateway». Здесь мы опишем реализацию микросервиса User. Читать дальше →

Почему вам не надо становиться тимлидом? Привет, друзья. Эта статья написана Георгием Могелашвили (glamcoder), который работает на позиции Lead Developer в Booking.com в Амстердаме и отвечает за архитектуру и координацию нескольких технических команд в отделе маркетинга, а по совместительству Георгий преподает в OT...

[Перевод] Как микросервисы Netflix справляются с Pub-Sub данными Перевод статьи подготовлен специально для студентов курса «Архитектор высоких нагрузок». Введение В микросервисной архитектуре Netflix передача наборов данных от одного к нескольким конечным точкам может быть крайне сложной. Эти наборы данных могут содержать все, что уго...

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

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

Дайджест интересных материалов для мобильного разработчика #338 (23 — 29 марта) В нашей новой подборке для домашнего чтения быстрый переход на удаленную работу, хождение по граблям Arduino, рассказы интерфейсов и запах кода, лучшие издатели и вызовы сеток. Берегите себя! Читать дальше →

T-FLEX CAD 17 - Измерения и анализ геометрии Друзья!Публикуем ещё один интересный пост по новым возможностям T-FLEX CAD 17.В предыдущем материале мы рассказали об инструментах по работе с поверхностями, 3D кривых и общих операция 3D моделирования САПР T-FLEX CAD 17. Теперь разберём подробно новые и обновлённые инструме...

[Перевод] Как корпоративные команды разработчиков используют GitLab и Mattermost ChatOps для ускорения разработки И снова здравствуйте! В феврале OTUS запускает новый курс «CI/CD на AWS, Azure и Gitlab». В преддверии старта курса подготовили перевод полезного материала. Полноценный набор DevOps инструментов, мессенджер с открытым исходным кодом и ChatOps – как тут не влюбиться? Нико...

Виртуальная АТС. Часть 3: Переводим Asterisk на PjSIP без лишних телодвижений В первой и второй частях цикла статей мы разобрались с установкой IP-АТС (IP-PBX) на работающий под управлением Ubuntu VPS от RuVDS и настройкой основных функций с использованием канального драйвера chan_sip. Этот подход считается устаревшим, и в будущих версиях Asterisk п...

Clean Architecture глазами Python-разработчика Привет! Меня зовут Евгений, я Python-разработчик. Последние полтора года наша команда стала активно применять принципы Clean Architecture, уходя от классической модели MVC. И сегодня я расскажу о том, как мы к этому пришли, что нам это дает, и почему прямой перенос подходов ...

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

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

Делаем страницу на React с базой сотрудников при помощи Airtable и Quarkly Слышали про такой инструмент, как Airtable, но не знали, с чего начать? Тогда приглашаем в мир визуального программирования построения БД! Этим постом мы начинаем цикл обучающих статей, в которых будем давать практические примеры работы с нашим инструментом Quarkly. В этом у...

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

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

[Перевод] Первые впечатления от Amazon Neptune Салют, хабровчане. В преддверии старта курса «AWS для разработчиков» подготовили перевод интересного материала. Во многих юзкейсах, которые мы, как bakdata, видим на сайтах наших клиентов, релевантная информация сокрыта в связях между сущностями, например, при анализе от...

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

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

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

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

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

Как e2e автотесты на Selenide помогают QA-команде при частых релизах Всем привет! Я Иван, старший инженер-тестировщик в КРОК. Уже 6 лет занимаюсь тестированием ПО. Из них 3 года внедряю автоматизацию тестирования на различных проектах - люблю всё автоматизировать. На рабочей машине много разных “батников” и bash-скриптов, которые призваны упр...

[Перевод] Использование API Gateway в качестве единой точки входа для веб-приложений и API Перевод статьи подготовлен специально для студентов курса «Архитектор высоких нагрузок». Введение Преимущества AWS, такие как высокая доступность, масштабируемость и эластичность, уже доказали свою эффективность для SaaS-провайдеров (Software-as-a-Service). При модернизац...

[Из песочницы] Использование 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 Я часто обсуждаю микросервисную архитектуру с люд...

Как Quarkus объединяет MicroProfile и Spring Всем привет, и с вами третий пост из серии про Quarkus! При разработке Java-микросервисов часто считается, что Eclipse MicroProfile и Spring Boot – это отдельные и независимые друг от друга API. По умолчанию, программисты, как правило, используют те API, к которым они уже...

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

Новая работа vs Карантин Менять работу всегда волнительно, но каково выходить на новое место во время пандемии? Герои этой статьи — новички DINS, которые присоединились к команде в период самоизоляции. Они рассказывают о своих опасениях, удаленном онбординге и делятся мнением по поводу перехода на ...

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

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

[Перевод] Советы и хитрости IntelliJ IDEA: 1. Сравнение файлов и папок От переводчика: В блоге Войтеха Рузички по программированию имеется 13 постов с тегом IDEA. Один из был переведен и опубликован на Хабре — Лучшие плагины IntelliJ IDEA. Он оказася довольно популярен и я решил попробовать перевести и другие посты об IDEA. Надеюсь будут полезн...

Apache Kafka для чайников Данная статья будет полезной тем, кто только начал знакомиться с микросервисной архитектурой и с сервисом Apache Kafka. Материал не претендует на подробный туториал, но поможет быстро начать работу с данной технологией. Я расскажу о том, как установить и настроить Kafka на W...

Любовь, смерть, роботы и Пелевин В прошлом году, вернувшись с тренировки, я засел перед компьютером, чтоб посмотреть пару забавных мемов про котиков. И, обнаружив новость о выходе нового сериала Любовь, смерть и роботы– «Love, Death & Robots», я лениво потрогал её мышкой — глянуть одним глазком. Пр...

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

Разработка hexapod с нуля (часть 6) — переход на 3D печать и новая электроника Всем привет! Разработка гексапода активно продолжается и пришло время показать кардинальные изменения в конструкции и планы по прошивке. Появилась большая пауза в выходе новых статей в результате длительного проектирования новой электроники и корпуса. В принципе об этом и б...

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

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

Анализ целостности сигналов в PADS Professional (4/6) Продолжаем осваивать основные возможности анализа целостности сигналов встроенными инструментами PADS Professional. В третьем уроке мы изучили как запускать моделирование для выбранной цепи и проводить измерения с помощью цифрового осциллографа. Сегодня вы узнаете как им...

Mash — язык программирования, компилирует сам себя Приветствую всех в новом 2020-м году. С момента публикации первого поста про Mash прошел практически ровно 1 год. За этот год язык был сильно доработан, были продуманы многие его аспекты и определен вектор развития. Этим всем я рад поделиться с сообществом. Читать даль...

[Из песочницы] Наука о пользовательском опыте. Использование когнитивных искажений в разработке качественных продуктов Содержание Введение. О чем эта статья Цели и дисклеймеры Часть 1. Хороший продукт Часть 2. Пользовательский опыт (UX). Что это? Часть 3. Архитектура выбора Часть 4. Архитектор выбора Часть 5. Когнитивные искажения и Пользовательский опыт Ссылка на полную версию UX CORE (105...

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

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

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

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

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

[Перевод] Знакомьтесь с Ember Octane Ember Octane — это новая редакция фреймворка Ember.js, а также лучший способ для команд создавать амбициозные веб-приложения. 20 декабря вышла новая версия Ember 3.15. И это Octane! Любопытно, что это значит для веб-разработки? Этот пост поможет вам сориентироваться. Мы с г...

pgSCV — экспортер метрик для PostgreSQL Всем привет. В этом посте я расскажу про pgSCV - новый экспортер метрик для PostgreSQL (и не только), чем он так хорош и какие проблемы решает. Читать далее

[Перевод] Как описать архитектуру продукта по нотации C4 Когда мы начали создавать платформу True Engineering, в компании не было единых правил для оформления архитектуры. Разные команды – разные инструменты, разные обозначения и уровни абстракции. Значит, даже подобные решения сравнить между собой не получится, а тому, кто смотри...

[Перевод] Разработка REST API — что такое Code First подход? В этой статье мы продолжим знакомство с разработкой REST API и рассмотрим подход Code-First. Разработка хорошего REST API важна для того, чтобы иметь хорошие микросервисы. Подход Code-First фокусируется на генерации контракта из кода. Это наилучший из возможных подходов? Чи...

[Перевод] Трансформеры как графовые нейронные сети TL;DR: перевод поста Chaitanya Joshi "Transformers are Graph Neural Networks": схемы, формулы, идеи, важные ссылки. Публикуется с любезного разрешения автора.Друзья-датасаентисты часто задают один и тот же вопрос: графовые нейронные сети (Graph Neural Networks) — п...

[Перевод] Разработка REST API — что такое Contract First? В этой статье мы рассмотрим подход к разработке REST API на основе контракта. При разработке хорошего API REST важно иметь отличные микросервисы. Подход Contract First поможет вам разработать хороший контракт до его реализации. Однако это не так просто! Читать дальше →

3D-аркада в браузере: как мы сделали игру на React + Redux Привет, Хабр! В не такие уж далёкие годы, на первом курсе «программистского» факультета, мне нравилось задавать товарищам по учёбе вопрос: «Зачем вы вообще пошли сюда учиться?» Точной статистики ответов я, конечно, не вёл, но доподлинно помню: больше половины хотели делать и...

Вкусовщина и AI: как мы в Prisma Labs делали объективно субъективный автоматический улучшатель фотографий Привет, Хабр! Меня зовут Андрей, я занимаюсь R&D в Prisma Labs. В своё время наша команда провела весьма интересное исследование на тему автоматического улучшения фотографии, результатом которого стала фича “AutoAdjustment” в приложении Lensa, позволяющая в один клик сде...

FOSS News №1 — обзор новостей свободного и открытого ПО за 27 января — 2 февраля 2020 года Всем привет! Это мой первый пост на Хабре, надеюсь будет интересен сообществу. В Пермской группе пользователей Linux мы увидели нехватку обзорных материалов по новостям свободного и открытого ПО и решили, что неплохо бы каждую неделю собирать всё самое интересное, чтобы п...

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

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

Быстрая эволюция квантовых компьютеров требует пересмотра подхода к безопасности Гонка за так называемым квантовым превосходством усиливается. Специалисты по безопасности, которых опросил Neustar International Security Council (NISC), озабочены тем, что адекватные средства защиты отстанут в своем развитии, сообщает портал ...

Бесшовные A/B-обновления в Android: как они устроены Всем привет. В SberDevices наша команда занимается разработкой различных железок прошивок и для них на базе AOSP. Начиная с Android 8 (у некоторых вендоров с 7.1) в системе появился новый механизм накатки OTA-обновлений, т. н. Seamless A/B OTA Updates — бесшовные обновле...

Древности: домашний минидиск и баллада о гробиках «Гробиками» моя жена называет ценные экспонаты моей коллекции, стационарные Hi-Fi компоненты преимущественно черного цвета. Про старую домашную технику я уже писал, например про двухкассетник Sony или DCC-деку Philips. Пришло время рассказать про домашний минидисковый рекорд...

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

Функциональные тесты в Циан Привет! Меня зовут Тимофей, я Python-разработчик в команде Платформа компании Циан. Наша команда занимается разработкой инструментов для продуктовых разработчиков. Это и библиотеки: HTTP-клиент, веб-сервер, библиотеки доступа к базам данных, и средства мониторинга микросерв...

[Перевод] Фракталы на Python. Пошаговое руководство Привет, Хабр! Сегодняшний пост про фракталы попался в рамках проработки темы Python, в частности, Matplotlib. Последуем примеру автора и предупредим, что в посте много тяжелой анимации, которая может даже не работать на мобильном устройстве. Зато как красиво. Всем приятно...

Автоматическое машинное обучение: когда data scientist’ы будут не нужны Уже третий год мы проводим форум по искусственному интеллекту RAIF (Russian Artificial Intelligence Forum), на котором спикеры из мира бизнеса и науки рассказывают о своей работе. Самыми интересными докладами мы решили поделиться. В этом посте Андрей Фильченков, руководите...

[Перевод] Создание микросервиса на Quarkus, Kotlin и Gradle Введение В предыдущей статье было приведено краткое описание процесса создания микросервиса на современных JVM фреймворках, а также их сравнение. В этой статье будет более детально рассмотрен недавно вышедший Quarkus на примере создания микросервиса с использованием упомяну...

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

Так ли туманно «зелёное» будущее? Альтернативный взгляд на заявленные «актуальные факты», представленные в посте Почему у «зелёной» энергетики сложное будущее?, от toshiba_ru. Читать дальше →

Опыт внедрения Service Mesh на Nomad и Consul В этой статье мы расскажем, как развернули Service Mesh, решили часть проблем микросервисной архитектуры и уменьшили нагрузку на разработчиков и инженеров инфраструктуры. Читать дальше →

Observability система для микросервисов на примере Instana, часть 1 В данном техническом обзоре мы детально познакомимся с продуктом Instana – инструментом для автоматического мониторинга производительности микросервисной инфраструктуры, Kubernetes и пользовательского опыта, который использует наша компания в проектах на протяжении последнег...

АМА с Хабром #15. Новогодний и самый короткий выпуск! Чат Обычно это бывает в последнюю пятницу каждого месяца, но в этот раз — в последний вторник года. Но суть не поменяется — под катом будет список изменений на Хабре за месяц, а также предложение позадавать вопросы команде Хабра. Но так как именно вопросов традиционно будет немн...

Была ли жизнь до Audio CD? Программный декодер PCM В прошлой статье мы рассказали про динамические QR коды, которые записывали на VHS кассеты. Эпидемия PCM зацепила и меня, так что пришло время поковырять этот формат. Читать дальше →

SLM- печать на практике В этом посте хочу рассказать о технологии SLM с точки зрения инженера/оператора установки выполняющего полный цикл работы - от проектирования изделия до его пост-обработки. Установка, с которой я сейчас работаю - Concept Laser Mlab, ранее работал с  Concept Laser M2.Про SLM ...

Артемий Рябинков (Avito): Graceful Shutdown в Go-сервисах и как подружить его с Kubernetes Выступление на Go 1.10 Release Party @ Badoo Артемий рассказал про подходы к безопасному завершению работы многопоточных программ на Go, в частности о том, как контролировать горутины и управлять ими. Объяснил, почему во время выкатки сервисов в Kubernetes пользователям м...

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

О системных расширениях Parallels Desktop в macOS Если вы являетесь пользователем Parallels Desktop (или используете другое приложение, требующее сторонних системных расширений), то вы наверняка видели сообщения от macOS и Parallels Desktop с надписью «Системное расширение заблокировано». Так что же это такое — системно...

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

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

[Перевод] Что такое Emergent Communication и почему это нужно знать TL;DR: перевод поста Михаила Нуховича What is Emergent Communication and Why You Should Care: что это такое, зачем это нужно, какие есть точки зрения на задачу и перспективные направления исследований. Обучение с подкреплением, обработка естественного языка, теория игр и фил...

SpaceX получила контракт на разработку корабля для Лунной программы NASA NASA заключила контракты с компаниями Blue Origin, SpaceX и Dynetics в рамках программы подготовки миссии на Луну. Предполагается, что они будут конкурировать друг с другом в попытке разработать лучшую лунную систему посадки для программы Artemis. Blue Origin получила самый ...

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

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

Fintech на практике: как Quadcode технологии для трейдинга и банкинга разрабатывает Привет, самое хардовое IT комьюнити Рунета, я Саша, главный архитектор в компании Quadcode. Мы пришли на Хабр для того, чтобы показать “кухню” Fintech - варимся мы во всем этом много лет, поэтому уже можем поделиться опытом. В блоге будем рассказывать об архитектурах, технол...

Настроили мониторинг. Что дальше? Всем привет! Меня зовут Мазеин Михаил, я занимаюсь бекенд-разработкой в ManyChat. Одна из моих задач — анализ и повышение качества нашего продукта через системы мониторингов, алармов и сопутствующих процессов. Я на своем опыте убедился в том, что выстроить мониторинг — недо...

Обзор 3Dtoday Fest 2019 3D today Fest это настоящий праздник 3D-печати, для широкого круга людей – от начинающих любителей аддитивных технологий, до профессионалов, приехавших на фестиваль в поисках новых технологичных решений.  Мы, компания iGo3D Russia, с удовольствием приняли участие в данном ...

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

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

Введение в архитектурный фреймворк для анализа данных Lena Привет, Хабр! Я расскажу об архитектурном фреймворке, который я разрабатываю. Архитектура определяет наиболее общее устройство программы и взаимодействие её компонентов. Lena как фреймворк реализует конкретную архитектуру для анализа данных (подробнее о ней ниже) и предостав...

Не те игрушки: как мы научили нейросеть бороться с порно в стримах Всем привет, меня зовут Олег, я занимаюсь компьютерным зрением в команде Видеоаналитики МТС и сегодня расскажу вам, как мы защищаем от небезопасного контента стриминговую платформу WASD.tv, в частности про детектирование порнографии в постановке задачи action recognition. ...

[Из песочницы] MVP для Android — преимущества использования Moxy в качестве вспомогательной библиотеки В данной статье описываются преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения. Важно: здесь не сравнивается MVP с другими архитектурными подходами типа MVVM, MVI и т.п. В статье описывается почему, если в качес...

D-Wave предоставляет борцам с COVID-19 бесплатный облачный доступ к квантовым системам Компания D-Wave Systems, специализирующаяся на квантовых компьютерах, сообщила о своем вкладе в борьбу с пандемией COVID-19. Все, кто ведет разработки, связанные с противодействием коронавирусу, получают бесплатный доступ к квантовым системам D-Wave Systems через облачн...

Почему QA хорошая карьера для программиста Привет, хабровчане! Представим, что вы только что закончили институт и размышляете о том, куда пойти работать. В отдел разработки программного обеспечения или тестирования? Быть тестировщиком – это хороший выбор? Есть ли будущее у этой профессии? Хорошая ли там зарплата?...

Разработка hexapod с нуля (часть 8) — улучшенная математика передвижения Всем привет! В результате перехода на удаленную работу у меня появилось больше свободного времени на разработку гексапода (+2 часа в день за счет экономии на дороге). Я наконец-то смог сделать универсальный алгоритм для построения траектории движения в реальном времени. Нов...

[Из песочницы] Проблемы использования Doctrine ODM в процессах-демонах Хочу рассказать о своем опыте использования Doctrine ODM в относительно небольшом PHP проекте, в котором основная кодовая база сосредоточена в процессах-демонах. И вообще как мы к Yii2 прикрутили Doctrine ODM. Сразу предупреждаю — рассказ будет очень нудным и скорее всего ин...

Законопроект об изменениях в электронной подписи Уходящий год запомнился шумихой вокруг применения электронной подписи (далее — ЭП) в мошеннических целях. Началось всё с того, что я запостил инструкцию о том, как зарегистрировать переход права на недвижимость с помощью ЭП. Затем то ли, это совпадение, то ли «не думаю», но...

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

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

Qualcomm представила новые чипы Snapdragon Wear 4100 для смарт-часов Компания Qualcomm сегодня представила новые платформы Snapdragon Wear 4100 и Snapdragon Wear 4100+, разработанные для умных часов следующего поколения. Платформа Snapdragon Wear 4100+ основана на проверенном гибридном подходе и включает в себя быстрый процессор, более интелл...

Разработка hexapod с нуля (часть 7) — новый корпус, прикладное ПО и протоколы общения Всем привет! Проектирование, печать и сборка нового корпуса наконец-то завершились. Также завершился запуск новой платы управления на базе STM32F373 и FW успешно перенесено на новый МК. Все ближе подходит релиз версии 1.00 с базовым функционалом. Теперь можно рассказать о т...

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

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

[Перевод] Проектируем bounded context с помощью Bounded Context Canvas: рецепт воркшопа Среди тем предстоящей конференции TechLead Conf 2020 будет детальное обсуждение Domain-Driven Design и EventStorming. Помимо подготовки 2-слотового доклада Константина Густова о DDD, доклада Сергея Баранова об EventStorming и митапа, во время которого мы будем создавать DDD-...

SPECIA QA Meetup SPECIA приглашает на митап по тестированию — поговорим о том, как проводить тесты без тестировщика, почему тестирование вообще необходимо и почему лучше не заниматься самотестированием, а также как устроено тестирование в веб-проектах. Программа «Философия тестирования» ...

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

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

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

«Как я провёл лето» В конце ноября мы писали о том, как мы вошли в IT и работали все эти четыре года. А теперь — сочинение на тему «Как я провёл лето» традиционный пост с подведением итогов года, где мы подробней хотим рассказать о новшествах, появившихся в RUVDS в 2019.  Мы не устаём двигат...

[Перевод] Создаем план действий с помощью AWS Cloud Adoption Framework Перевод статьи подготовлен специально для студентов курса «Cloud Solution Architecture». Источник Скачать руководство Планы действий AWS CAF помогут вам подготовиться к переходу на облачный стек технологий. Путешествие начинается с того, что ваша команда руководителей...

Как Kafka стала былью Привет, Хабр! Я работаю в команде Tinkoff, которая занимается разработкой собственного центра нотификаций. По большей части я разрабатываю на Java с использованием Spring boot и решаю разные технические проблемы, возникающие в проекте. Большинство наших микросервисов асинхр...

В эту пятницу в App Store раздают сразу 3 культовые игры Названия многих игр вам наверняка знакомы Каждый день мы вручную отбираем для вас лучшие предложения из App Store, которые становятся бесплатными или распространяются с большой скидкой. Каждый день новые и лучшие приложения для ваших iPhone, iPad или Mac. Сегодня в нашей под...

Скрытая активация камеры браузерами: Большой Брат или технологический просчёт? Всем привет! Меня зовут Вадим, и я один из технических консультантов и, по совместительству, системный администратор "РосКомСвободы". Но данный пост будет не обо мне. Он будет историей о подозрительной (с точки зрения приватности в контексте мобильных телефонов) ситуации, с...

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

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

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

На вкус и цвет: градации подходов к Умному дому Сегодня я буду Капитаном Очевидность и расскажу банальные вещи применительно к теме домашней автоматизации, он же “Умный дом”. Для чего? Чтобы показать новичкам, как глубока кроличья нора, скрывающаяся под этим названием, и облегчить (или усложнить) муки выбора в том или ин...

Go на десяточку: видео и фото с юбилейного митапа Привет! 30 ноября в нашем офисе вместе с сообществом Golang Москва мы проводили митап по случаю десятилетия Go. На встрече обсуждали машинное обучение в Go-сервисах, решения для мультикластерной балансировки, приёмы для написания Go-приложений под Cloud Native и историю Go. ...

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

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

Представляем Quarkly – инструмент для react-разработчиков и дизайнеров, который поможет оптимизировать вашу разработку Всем привет! Идеологически Quarkly – это проект, который призван упростить жизнь веб-разработчикам и веб-дизайнерам. В этом посте я коротко расскажу, за счет чего это возможно. Прежде всего, давайте посмотрим, как выглядит типичный цикл разработки веб-приложения в 2020 году?...

Записки pentester’а: случаи на охоте – 2 Продолжим разговор за интересные случаи в работе пентестеров. В прошлом посте речь шла о внешних тестированиях на проникновение, сегодня же расскажем о наиболее занимательных внутренних пентестах, реализованных нами за последнее время. Суть их в том, что мы должны были, на...

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

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

Алгоритмы быстрой обработки HTTP-строк В HTTP/2 появилась компрессия стандартных заголовков, но тело URI, Cookie, значения User-Agent по-прежнему могут составлять десятки килобайт и требуют токенизации, поиска и сравнения подстрок. Задача становится критичной, если HTTP-парсер должен обрабатывать интенсивный злон...

Модель Белбина для IT: сила и слабость разных команд В работе с некоторыми командами бывают ситуации, когда что-то работает само, и об этом не надо думать. Сами доделываются задачи, сама развёртывается Continuous Integration — есть люди, которые этим занимаются, и за рабочими процессами не нужно специально следить. Но в других...

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

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

Intel возвращает 22 нм процессор Компания Intel, на фоне своих проблем с производством по 14 нм технологии, решила отменить завершение жизненного цикла 22 нм процессора, выпущенного в далёком 2013 году.

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

Что делать, если поймал HardFault? Что делать, если поймал HardFault? Как понять, каким событием он был вызван? Как определить строчку кода, которая привела к этому? Давайте разбираться. Всем привет! Сложно найти программиста микроконтроллеров, который ни разу не сталкивался с тяжелым отказом. Очень часто он...

Интересные материалы: 13.02 Заканчиваем неделю мобильным справочником-навигатором, советами по улучшению UX и жизненным циклом View.

[Перевод] “Давайте использовать Kubernetes!” Теперь у вас 8 проблем Если вы используете Docker, следующим логичным шагом кажется переход на Kubernetes, он же K8s, правильно? Ну, предположим. Однако решения, предназначенные для 500 инженеров-программистов, одновременно разрабатывающих одно приложение, достаточно сильно отличаются от решений д...

Почему я люблю IKEv2 больше других VPN Сейчас все вокруг настраивают VPN для удаленных сотрудников. Мне больно смотреть, как люди устанавливают монструозные глючные программы, настраивают какие-то сертификаты, устанавливают драйвера TUN/TAP и делают множество сложных операций, в то время как лучшее решение уже ...

Возвращение солидарности: айтишникам и фрилансерам нужно организовываться В обсуждении поста «Что на самом деле значит наезд Rambler Group на Nginx и к чему готовиться онлайн-индустрии» разговор зашёл не только о том, кто виноват — но и что делать. Ответ на который был дан там же, коллективно: DarkHost Думаю, если бы все айтишники одномоментно, в...

Запись видео UI автотестов, работающих в headless Chrome Всем привет! В данной статье хочется рассказать о том, как была решена задача записи видео автотестов, работающих в headless Chrome (с записью в не headless режиме проблем быть не должно). Будет рассмотрено несколько разных подходов, рассказано про трудности и пути их реше...

Жизненный цикл версий Windows 11 и выпуск Windows 10 21H2 LTSC В начале этой недели Microsoft выпустила не только первую инсайдерскую сборку Windows 11, но и рассказала о жизненном цикле и подходе к обслуживанию версий системы для потребителей и корпоративных клиентов. Жизненный цикл Windows 11 Windows 11 будет получать одно функционал...

Сахар и COVID-19 Пандемия COVID-19 супер нова для науки, часто требуются годы, прежде чем ученые докажут связь факторов риска и проведут подтверждающие исследования, но сейчас не время ждать. Я сижу на карантине и наблюдаю за различными фактами о COVID-19, на их основе вырисовывается «Гипоте...

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

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

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

(S)SDLC, или Как сделать разработку безопаснее. Часть 3 Этой статьей мы завершим небольшой цикл о построении процесса безопасной разработки на основе SAST — статического анализа кода на безопасность. В первой части мы разобрали основные вопросы, возникающие при внедрении SAST в процесс разработки. Во второй части остановились на ...

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

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

1. Group-IB. Комплексная защита сети. Архитектура TDS Добрый день, коллеги! Сегодня начинаем новый цикл статей, посвященный решениям информационной безопасности от компании Group-IB. Компания работает на рынке информационной безопасности уже более 17 лет, и за это время обросла весьма существенными компетенциями, выполняя про...

Как проектируют аппаратуру для защиты энергосетей Привет Хабр. Блог АСКОН возвращается к своим читателям. Теперь в нем будут посты не только наших сотрудников, но и гостевые посты инженеров, работающих с продуктами АСКОН. Первая история – о проектировании аппаратуры для энергетики. Рассказывает Евгений Фофанов, руководител...

[Перевод] Сервер Prometheus и TLS Prometheus теперь поддерживает TLS и базовую аутентификацию для HTTP эндпоинтов. Скрейпинг таргетов через HTTPS вместо HTTP поддерживается уже давно. Метрики можно собирать с поддержкой HTTPS, аутентификации по клиентским сертификатам и базовой аутентификации. В прошлом год...

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

Что такое Windows PowerShell и с чем его едят? Часть 1: основные возможности Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась. Windows PowerShell позволяет системным администраторам автоматизировать большинство рутинных задач. С ее помощью можно менять настройки,...

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

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

Мониторинг в ЦОДе: как мы меняли старую BMS на новую. Часть 3 Мы продолжаем наш рассказ о том, как мы меняли BMS-систему в наших ЦОДах (часть 1, часть 2).  При этом мы не просто поменяли решение одного вендора на другого, а разработали систему с нуля под свои требования. В заключение нашей истории делимся итогами проделанной работы и и...

Охота за уязвимостями на 7% эффективнее «За что я люблю Россию, так это за низкие налоговые ставки» — анонимуc С ростом дохода у охотника за уязвимостями все более остро становится вопрос о налогах. После определенных сумм мне стало жалко отдавать 13% (даже несмотря на то, что у коллег из США это вообще 30%). К т...

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

[Из песочницы] Как научить UITextView красиво выделяться Постановка задачи Дано: многострочный текст. Найти: красиво оформленный фон. «Да это же на часок», — подумал я. — Нужно всего лишь поставить backgroundColor в attributedText». Но этого оказалось недостаточно. Дело в том, что стандартное выделение — это закрашенный прямоуго...

Почему удобство vs безопасность — не трейдофф Я с 2014 года работаю над безопасностью мобильных и веб-приложений. Много раз слышал от разных людей и в разном контексте про «трейдофф usability vs security», при этом с самого начала видел в этом какой-то подвох. В этом посте я поделюсь своим мнением, почему, на мой взгляд...

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

Пять стадий принятия неизбежного, или Как мы разрабатывали программу для автоматизированного профайлинга Привет, на связи Алексей Филатов (aka afilatov123). В 2017 году меня пригласили в команду «СёрчИнформ» для запуска нового программного решения. Точнее так – для наращивания возможностей флагманского продукта – DLP-системы. Рынку мало того, что софт уже умеет (предотвращать у...

Алексей Грачёв: Go Frontend Kyiv Go Meetup May 2018: Ведущий: – Всем привет! Спасибо, что вы здесь собрались! Сегодня у нас два официальных спикера – Лёша и Ваня. Будет ещё два, если у нас хватит времени. Первый спикер – Алексей Грачёв, он расскажет нам о GopherJS. Алексей Грачёв (далее – АГ): – Я ...

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

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

3д принтер Two Trees Sapphire S Всем привет. Выкроилась свободное время, для написания этого поста о 3Д принтере Two Trees Sapphire S.Возможно кому-то мой пост покажется запоздалым, прошу извинить, но я с другой стороны с момента получения принтера прошло уже семь месяцев, отчасти такое количество времени ...

Запускаем тесты на GitLab Runner с werf — на примере SonarQube Если в качестве инфраструктуры, где разворачивается приложение, выступает Kubernetes, можно сказать, что существует два способа запуска тестов (и других утилит для анализа кода) в CI/CD: непосредственно в кластере K8s — с помощью отдельных Job или Helm hooks; «снаружи»...

Как мы используем многопоточность в геометрическом ядре Вопрос о многопоточности задают даже далёкие от разработки люди, когда речь заходит о производительности 3D-приложений, в частности систем проектирования (САПР). Поддержка многопоточности закладывается в геометрическом ядре системы. Поэтому мы решили на своём примере показат...

[Перевод] Создание небольшого API на Deno В этом посте я хотел бы рассказать и показать процесс создания небольшого API с помощью Deno. Deno — новейшая среда для запуска Javascript и Typescript, разработанная создателем Node.js — Райаном Далем. Читать дальше →

Object Detection. Распознавай и властвуй. Часть 2 В прошлом посте я начал разбираться в двухступенчатых Object Detection моделях и рассказал о самой базовой и, соответственно, первою из них – R-CNN. Сегодня мы рассмотрим другие модели этого семейства: Fast R-CNN и Faster R-CNN. Поехали! Читать дальше →

[Из песочницы] О команде ракетчиков, которые смогут Немного о себе Так случилось, что я после школы поступил учиться в Московский авиационный институт (МАИ) на 601 кафедру, аэрокосмический факультет. Учился я проектированию космических аппаратов и разгонных блоков. С 2004 года я пошёл работать в проектный отдел КБ «Салют» (ФГ...

Marvel открыла бесплатный доступ к комиксам Хорошая новость для фанатов комиксов от компании Marvel – более десятка историй о супер-героях сделали бесплатными для загрузки. Электронные версии легендарных комиксов сделали бесплатными на двух сервисах – в мобильном приложении Marvel Unlimited для iOS и Andro...

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

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

Почему я ушел с React Native и перешёл во Flutter: Часть 1 Всем привет. Меня зовут Дмитрий Андриянов. Два года писал на React Native, сейчас я разработчик в Surf и уже полтора года пишу на Flutter. Когда я только решил серьёзно взяться за Flutter, я бы очень хотел найти статью от разработчика, который перешёл с React Native на Flutt...

Простой rpm репозиторий используя Inotify и webdav В этом посте рассмотрим хранилище rpm артефактов c помощью простого скрипта с inotify + createrepo. Заливка артефактов осуществляется через webdav используя apache httpd. Почему apache httpd будет написано ближе к концу поста. Итак, решение должно отвечать cледующим требован...

HighLoad++, Михаил Тюленев (MongoDB): Causal consistency: от теории к практике Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге. Подробности и билеты по ссылке. HighLoad++ Siberia 2019. Зал «Красноярск». 25 июня, 12:00. Тезисы и презентация. Бывает, что практические требования конфликтуют с теорией, где не учтены в...

[Из песочницы] С++, метапрограммирование и регистры микроконтроллера Привет, Хабр! Вот уже несколько лет все свои проекты для линейки микроконтроллеров stm32 я делаю на C++. За это время у меня накопилось некоторое количество материала, который может быть интересен другим разработчикам. Во избежание лишних вопросов: я использую связку QtCre...

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

[Перевод] Зависимые типы в Haskell: почему это будущее разработки программного обеспечения В Serokell мы занимаемся не только коммерческими проектами, но стараемся изменить мир к лучшему. Например, работаем над улучшением главного инструмента всех хаскелистов – Glasgow Haskell Compiler (GHC). Мы сосредоточились на расширении системы типов под впечатлением от рабо...

Security Week 03: принципы ответственного багрепорта Седьмого января команда Google Project Zero, специализирующаяся на поиске уязвимостей в ПО, сообщила об изменениях в правилах раскрытия информации об обнаруженных багах (новость, пост в блоге). В 2020 году Project Zero будет раскрывать информацию об уязвимостях через 90 дней...

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

Приглашаем на Robot Operating System MeetUp Лаборатория робототехники Сбербанка и российское ROS-сообщество при поддержке Intel приглашают на очередной, третий MeetUp по Robot Operating System, который состоится в субботу, 18 апреля. И пусть по всем очевидным причинам мероприятие на этот раз пройдет в онлайн формате, ...

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

Google представила «Быстрые команды» и 3D Touch для Android. Жаль, не для всех Копировать чужие наработки, особенно, если их владельцем является Apple, очень опасно. Samsung в этом уже убедилась на собственном опыте, хотя изначально её планы были поистине наполеоновскими. Поэтому сейчас если кто-то и заимствует идеи компании из Купертино, то старается...

DevSecOps: как мы внедряли PT Application Inspector в наш продуктовый конвейер Привет! Меня зовут Тимур Гильмуллин, я работаю в отделе технологий и процессов разработки Positive Technologies. Неформально наш отдел называют DevOps-отделом, мы занимаемся автоматизацией различных процессов и помогаем разработчикам и тестировщикам в нашей компании.Я и мой ...

Что такое «Школа 21», и почему она устроена именно так Привет, Хабр! Меня зовут Светлана Инфимовская, я директор «Школы 21». Знаю, что многие из вас слышали о ней, а кто-то даже участвовал в наших отборочных бассейнах. При этом сама идея проекта, его методология не всегда правильно понята. Кому-то кажется, что в «Школе 21» одна ...

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

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

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

Где порешать аналитические задачи от команд Яндекса? Контест и разбор Сегодня начинается пробный раунд чемпионата по программированию Yandex Cup. Это означает, что можно с помощью системы Яндекс.Контест решать задачи, подобные тем, которые будут в квалификационном раунде. Пока результат ни на что влияет. В посте вы найдёте условия задач трек...

[Перевод] «Kubernetes увеличил задержку в 10 раз»: кто же в этом виноват? Прим. перев.: Эта статья, написанная Galo Navarro, что занимает должность Principal Software Engineer в европейской компании Adevinta, — увлекательное и поучительное «расследование» в области эксплуатации инфраструктуры. Её оригинальное название было немного дополнено в пере...

Разрешите представить: Veeam Availability Suite v10 В вихре праздников и последовавших за каникулами разнообразных событий можно было и упустить из виду, что долгожданный релиз Veeam Availability Suite версии 10.0 увидит свет уже совсем скоро — в феврале. О новой функциональности вышло достаточно много материалов, включая д...

Давайте отключим vacuum?! Алексей Лесовский Расшифровка доклада 2018 года Алексея Лесовского "Давайте отключим vacuum?!" Такой призыв часто возникает, когда в PostgreSQL возникают проблемы, и главным подозреваемым оказывается vacuum (далее по тексту просто "вакуум"). По опыту, многие наступают на э...

VR технологии в строительстве Агентство «Городской Центр Недвижимости», компанияMitsan Consulting и Объединение строителей Санкт-Петербурга, при поддержке информационного портала"Строительный ежедневник«,продолжают совместную серию он-лайн встреч (вебинаров), посвященных недвижимости. Постоянно, дос...

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

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

WorkBox: ваш toolkit в мире сервис-воркеров Всем привет! Меня зовут Святослав. Я лидирую разработку сервисов оформления ипотеки в компании Домклик. Не так давно наша компания взяла курс на внедрение философии Progressive Web Application в наших клиентских сервисах.Одним из важных аспектов PWA является использован...

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

Наблюдательный пост пессимиста: технические и концептуальные решения в системе мониторинга Lamoda Всем привет! Меня зовут Александр Афенов, я работаю в Lamoda. Эта статья по мотивам моего доклада с HighLoad 2019, запись которого лежит тут. Раньше я был тимлидом, и в моем ведении была пара критикал-сервисов. И если в них что-то шло не так, это останавливало реальные бизн...

[Перевод] О 30-кратном увеличении параллелизма в Node.js Каков наилучший способ беспроблемного увеличения параллелизма в Node.js-сервисе, который используется в продакшне? Это — вопрос, на который моей команде понадобилось ответить пару месяцев назад. У нас запущено 4000 контейнеров Node (или «воркеров»), обеспечивающих работу на...

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

PubSub почти бесплатно: особенности NOTIFY в PostgreSQL Если ваши микросервисы уже используют общую базу PostgreSQL для хранения данных, или ей пользуются несколько экземпляров одного сервиса на разных серверах, можно относительно «дешево» получить возможность обмена сообщениями (PubSub) между ними без интеграции в архитектуру Re...

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

[Из песочницы] ECS back and forth Привет, Хабр! Представляю вашему вниманию перевод статьи "ECS back and forth — Part 1 — Introduction" автора Michele skypjack Caini. ECS back and forth Часть 1 — Введение. Когда я в первые узнал про архитектурный шаблон entity component system, я пошёл искать больш...

Портирование приложений с QWidget на QML под Desktop Привет, Хабровчане! Последнее время часто встречаю проекты для desktop, которые необходимо портировать с QWidget на QML. Кто-то хочет написать с нуля, кто-то перенести старые наработки. В любом из сценариев это популяризация QML, чему я очень рад. Я решил тоже побыть полез...

Роман Шувалов: «Мне пришла в голову идея — сделать трехмерный рендер карты OpenStreetMap» Роман Шувалов — разработчик инди-игр из Тольятти, который в начале этого года выпустил игру «Generation Streets», основанную на данных OpenStreetMap. Не так давно он открыл часть кода своего проекта. Зачем он это сделал, как появилась игра и почему выбор пал на OSM — обо вс...

Мониторинг бизнес-процессов Camunda Привет, Хабр. Меня зовут Антон и я техлид в компании ДомКлик. Создаю и поддерживаю микросервисы позволяющие обмениваться данными инфраструктуре ДомКлик с внутренними сервисами Сбербанка. Это продолжение цикла статей о нашем опыте использования движка для работы с диаграмм...

РИТ++ 2020: консультации с инженерами Авито в Зуме Привет, Хабр! 25 и 26 мая будет РИТ++. Это большая онлайн-конференция для всех, кто делает интернет. В обычных условиях мы бы встретились на стенде Авито в зале мероприятия, но 2020 перевернул всё с ног на голову. Так что общение переноситс...

Книга «Вселенная. Путешествие во времени и пространстве» «Вселенная. Путешествие во времени и пространстве» написана профессиональным астрономом, директором Астрономической обсерватории Иркутского государственного университета Сергеем Язевым. «О если бы писали мы о том лишь, что доподлинно известно, подумайте, о трезвые умы, как...

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

Где логика?! История тестирования одного микросервиса Эта статья — расшифровка доклада Дениса Кудряшова, QA-инженера Leroy Merlin, с конференции QA Meeting Point 2020. Денис рассказал, как столкнулся со сложной логикой, реализованной в сервисе, применил подход Control Flow Testing, и что из этого вышло. Из текста вы узнаете, мо...

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

Microsoft нашла способ повысить стабильность обновлений Windows 10 Станет ли такой подход эффективен, пока неясно

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

Вокруг data.table Эта заметка будет интересна для тех, кто использует библиотеку обработки табличных данных для R — data.table, и, возможно, будет рад увидеть гибкость ее применения на различных примерах. Вдохновившись хорошим примером коллеги, и надеясь, что вы уже почитали его статью, пред...

Бизнес-процессы на прокачку: как Process Intelligence помогает компаниям определить, что, где и когда автоматизировать Как вы, возможно, слышали, в прошлом году ABBYY приобрела компанию TimelinePI – разработчика платформ Process Intelligence. Теперь, помимо интеллектуальной обработки информации, продукты ABBYY помогают компаниям решать новый класс задач – анализировать бизнес-процессы, пони...

SSO на микросервисной архитектуре. Используем Keycloak. Часть №1 В любой крупной компании, и X5 Retail Group не исключение, по мере развития возрастает количество проектов, где требуется авторизация пользователей. С течением времени требуется бесшовный переход пользователей из одного приложения в другой и тогда возникает необходимость исп...

Исследование RedHat: open source вытесняет проприетарное ПО из корпоративного сегмента Опенсорсное программное обеспечение медленно, но уверенно завоевывает корпоративный сегмент, о чем говорит исследование команды RedHat (PDF). Компания провела опрос среди 950 руководителей IT-компаний по всему миру. Из них 400 человек работают в США, 250 — в странах Латинско...

[Перевод] Аутентификация REST API с помощью Spring Security и MongoDB Всем привет! Уходя на выходные делимся с вами статьей, которая была переведена в преддверии старта курса «Разработчик на Spring Framework». В прошлых статьях мы создавали RESTful веб-сервис, теперь же мы поговорим о безопасности Вступление В предыдущем посте мы рассмотр...

1. Fortinet Getting Started v 6.0. Введение Добро пожаловать на новый видеокурс, посвященный решениям компании Fortinet — Fortinet Getting Started. По ходу данного курса я расскажу об основных решениях компании в рамках концепции Fortinet Security Fabric, а также на практике покажу работу с двумя основными решениями...

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

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

[Перевод] Делай. Работу Рик ЛеПэйдж – фотограф, писатель, редактор и издатель, живущий в Ла Гранде, штате Орегон. Малоизвестный человек, ссылка на этот пост которого только что попалась в блоге более известного человека. Но что тут имеет большее значение, чем чья-либо известность – это переданное и...

Состоялся глобальный релиз мультиплеерного шутера Battle Prime  Студия Blitz Team объявила о глобальном запуске своего мультиплеерного шутера от третьего лица Battle Prime. Главной особенностью проекта, на которую многие наверняка даже не обратят внимание, стал собственный движок, Blitz Engine. На их странице Facebook вы можете почитать...

Туториал по uplift моделированию. Часть 1 Команда Big Data МТС активно извлекает знания из имеющихся данных и решает большое количество задач для бизнеса. Один из типов задач машинного обучения, с которыми мы сталкиваемся – это задачи моделирования uplift. С помощью этого подхода оценивается эффект от коммуникации ...

[Из песочницы] Путь в программисты (С++) Привет. С вами я. Мне нравилось боксировать и бегать на дальние дистанции, и думал я только о спорте, но выучился на моряка. Работал в авиации, а стал программистом С++ в 29. Расскажу, как так получилось. О программировании к октябрю 2017 я знал ровно столько, сколько сейча...

ViennaNET: набор библиотек для backend’а Всем привет! Мы сообщество .NET-разработчиков Райффайзенбанка и мы хотим рассказать про набор инфраструктурных библиотек на .NET Core для быстрого создания микросервисов с единой экосистемой. Вывели его в Open Source! Читать дальше →

Trimble представила BIM-решения Tekla 2020 для строительного проектирования Компания Trimble объявила о выходе новой версии своего программного решения Tekla для информационного моделирования зданий (BIM), строительного проектирования и управления производством металлоконструкций — Tekla Structures 2020 ...

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

[Перевод] Большой гайд по A/B-тестированию В интернете масса информации об A/B-тестированиях, но многие до сих пор проводят их неправильно. Ошибиться действительно легко, поэтому подобные исследования требуют серьезной предварительной подготовки. В этой статье рассматриваются основные аспекты A/B-тестирования, которы...

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

WSL эксперименты. Часть 1 Привет, хабр! В октябре OTUS запускает новый поток курса «Безопасность Linux». В преддверии старта курса делимся с вами статьёй, которую написал один из наших преподавателей — Александр Колесников. В 2016 году компания Microsoft представила IT сообществу новую технологи...

[Перевод] Концепции, лежащие в основе Web Audio API Доброго времени суток, друзья! В этой статье объясняются некоторые концепции из теории музыки, на основе которых работает Web Audio API (WAA). Зная эти концепции, вы сможете принимать взвешенные решения при проектировании аудио в приложении. Статья не сделает вас опытным ...

[Из песочницы] Функциональные опции на стероидах Привет, Хабр! Представляю вашему вниманию перевод статьи Functional options on steroids от автора Márk Sági-Kazár. Функциональные опции — это парадигма в Go для чистых и расширяемых API. Она популяризирована Дейвом Чейни и Робом Пайком. Этот пост о практиках, которые появ...

Моделирование микросервисов с помощью Event storming Event storming — метод, который смещает акцент у событий с технического на организационный и бизнес уровни и помогает создать устойчивую модульную систему. Он нередко используется в контексте моделирования микросервисов. Но как применить его на практике?При создании системы ...

Рэнд Фишкин выступил в защиту Jumpshot Глава SparkToro Рэнд Фишкин (Rand Fishkin), который регулярно использовал данные Jumpshot в анализе поисковых запросов Google и постах на тему zero-click тренда, выступил в защиту компании, которая в скором времени будет закрыта. По его мнению, у Jumpshot отличная методологи...

«Мне страшно». Что делать? Всем привет! Меня зовут Анастасия, я практикующий психолог. И это будет мой первый пост на Хабр. Честно говоря, я к нему шла больше двух лет: боялась, что слог не получится сделать красивым и правильным. Что будет неинтересно. Ну и что скрывать, я волновалась, какая будет ре...

Tarantool: взгляд аналитика Всем привет! Меня зовут Андрей Капустин. Я работаю системным аналитиком в Mail.ru Group. Наши продукты формируют единую экосистему для пользователя, в которой данные генерируют множество независимых инфраструктур: службы заказов такси и еды, почтовые сервисы, соцсети. Сегодн...

Головоломка для ИИ Как я обучал агента собирать клетку 2048 в игре “2048”Привет! Меня зовут Ринат Максутов, я работаю в подразделении Intelligent Engineering Services департамента Technology российского офиса компании Accenture, и веду проекты по заказной разработке. За свою многолетнюю карьер...

HighLoad++, Анастасия Цымбалюк, Станислав Целовальников (Сбербанк): как мы стали MDA Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге Подробности и билеты по ссылке. HighLoad++ Siberia 2019. Зал «Красноярск». 25 июня, 14:00. Тезисы и презентация. Разработать промышленную систему управления и распространения данных с нуля — ...

Новые видеокарты AMD Radeon будут основаны на лучшей версии архитектуры RDNA2, чем та, которая используется в PlayStation 5 и Xbox Series X Когда Microsoft и Sony рассказывали о своих грядущих игровых приставках, обе компании говорили, что графические процессоры их консолей будут основаны на архитектуре AMD RDNA2. При этом обе компании упоминали, что это будет «кастомная» версия RDNA2, то есть и...

12864 ЖК-панель на Anet A8 Доброго здоровья, всем печатникам!Два года назад я дебютировал на этом достопочтенном сайте с постом «Заявление» (https://3dtoday.ru/blogs/alexbor/zayavlenie). Тогда рассказал о создании своего самодельного принтера, получив много разного рода отзывов. Два года принтер работ...

[Перевод] Имитация рисования от руки на примере RoughJS RoughJS это маленькая (<9 КБ) графическая библиотека JavaScript, позволяющая рисовать в эскизном, рукописном стиле. Она позволяет рисовать на <canvas> и с помощью SVG. В этом посте я хочу ответить на самый популярный вопрос о RoughJS: как это работает? Немного ист...

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

Почему успехи ИИ DeepMind в Atari вызывают у меня разочарование Картинка, которую вы видите, позаимствована с сайта DeepMind, и демонстрирует 57 игр, в которых их новейшая разработка Agent57 (обзор статьи на Хабре) достигла успеха. Само число 57 взято не с потолка, — именно столько игр было выбрано еще в 2012 году, чтобы стать своеобра...

[Из песочницы] Flutter. BlOC, Provider, async – архитектура «по полочкам» Вступление Когда пытаешься написать приложение, то первое с чем сталкиваешься – это как организовать архитектуру приложения. А когда еще при этом речь идет про Flutter, так голова совсем может пойти кругом от того, что выдает Гугл — Vanilla, Scoped Model, BLoC, MVP, MVC, MVV...

Google: nри технологических тренда, формирующих динамические сети Вице-президент и генеральный менеджер по работе с сетями Google Cloud Шейлеш Шукла рассматривает на порталt ComputerWeekly вопрос о том, как переход к архитектуре микросервисов ведет к революции сетевых ...

Как сэкономить время и силы на внедрении стандартов безопасной разработки с помощью OWASP SAMM 5 марта 2020 года в офисе OZON прошёл очередной митап Московского отделения сообщества OWASP. Кажется, что получилось здорово, а краткий отчёт с материалами встречи был недавно опубликован на Хабре. В этом же посте представлен доклад oxdef. Продолжая серию экспресс-докладов...

В Nintendo Switch теперь можно переносить игры на карту памяти Пришло последнее обновление программного обеспечения для консолей Nintendo Switch, и версия 10.0.0 наконец способна устранить проблему, которая мучила систему с момента ее дебюта: перемещение игр между внутренним хранилищем и SD-картой. До сих пор, если игра находилась в одн...

Распространение сферического коня в вакууме по территории РФ Привет от ODS. Мы откликнулись на идею tutu.ru поработать с их датасетом пассажиропотока РФ. И если в посте Milfgard огромная таблица выводов и научпоп, то мы хотим рассказать что под капотом. Что, опять очередной пост про COVID-19? Да, но нет. Нам это было интересно именно...

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

UML для разработчиков Интернет полон статей про UML, вы найдете сотни примеров для каждого вида диаграмм, и без проблем создадите свои, нотация не сложная. Но так ли уж необходимо тратить на это время? Наш богатый опыт говорит «Да». Если у вас в команде более 2 человек и проект от 3 месяцев, то у...

Разработка в Wargaming – встреча с Максимом Барышниковым, Head of Platform (ч.I) Все побежали, и я побежал. Недавно я запустил серию онлайн-митапов, куда приглашаю на дискуссию экспертов в области разработки крупных IT-проектов. Нашим первым гостем был Максим Барышников, Head of Platform из Wargaming. Ниже – расшифровка нашего разговора, вернее, её перва...

Закон Конвея и его важность при создании команд Закон Конвея (Conway’s Law) имеет большое значение для понимания тех сил, что возникают при формировании команд, и того результата, который они могут оказать на команды в условиях длительного и автономного, неуправляемого и некорректируемого воздействия. И, как следствие, дл...

Почему не все ошибки надо исправлять, чтобы сделать ИТ-продукт лучше Данный материал подготовлен нашим партнером — компанией «Эквио». 2+2=3 2+2=5 2+2=4 Покупая ИТ-продукт для решения тех или иных корпоративных задач, бизнес-заказчики чаще всего задумываются о его стоимости, функциональности, удобстве, интеграционных возможностях и т.д. ...

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

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

[Перевод] Второй год Q# Прошло уже больше 2 лет с момента первого публичного выпуска языка квантового программирования Q#. К случаю годовщины ребята из команды Q# подготовили рассказ про второй год этого развития. Читайте о нем под катом! Читать дальше →

YouTrack теперь с просмотром пул-реквестов в задачах Привет, Хабр! С вами команда YouTrack из JetBrains. У нас отличные новости — начиная с YouTrack 2020.3 в задачах отображаются не только коммиты, связанные с задачами, но и пул-реквесты. В сегодняшнем посте мы расскажем, что это, зачем это, и как это поможет сделать процесс...

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

[Перевод] 13 инструментов для обработки текста в командной оболочке Здесь представлен фрагмент будущей книги «Основные инструменты и практики для начинающего разработчика программного обеспечения» Бальтазара Рубероля и Этьена Броду. Книга должна помочь образованию подрастающего поколения разработчиков. Она охватит такие темы, как освоение ко...

Диагностируем проблемы в микросервисной архитектуре на Node.js с помощью OpenTracing и Jaeger Всем привет! В современном мире крайне важна возможность масштабировать приложение по щелчку пальцев, ведь нагрузка на приложение может сильно отличаться в разное время. Наплыв клиентов, которые решили воспользоваться вашим сервисом, может принести как большую прибыль так и...

Платформа Visary: как мы пришли к микросервисам и low-code Давайте знакомиться. Мы Научно-производственный центр «БизнесАвтоматика» — российский разработчик интеллектуальных информационно-аналитических систем. Сегодня мы хотим рассказать о нашей ключевой разработке — платформе Visary. На ней реализованы десятки информационных систем...

Ретроспектива граблей. Как самописное решение оказалось круче платного Привет! Меня зовут Алексей Пьянков, я главный программист в компании Спортмастер. Скажу сразу, что «главный» не значит «самый главный из всех программистов», нет, это только название, такой очаровательный перевод для «Senior+"». В компании Спортмастер я работаю с 2012 г...

Генеральным директором АО «РТ Лабс» назначен Алексей Трачук Алексей родился в 1990 году. В 2012-ом окончил Национальный исследовательский университет "Высшая школа экономики" по направлению "Менеджмент". В структуре "Ростелекома" Алексей работает уже 6 лет - с 2013 года. За это время он прошел путь от ру...

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

[Перевод] Как демо Memories умещается в 256 байт Введение Привет! Меня зовут «HellMood», а эта статья посвящена небольшой программе для MS DOS под названием «Memories». Эта программа имеет размер 256 байт, она выиграла в категории «PC 256 byte» соревнований демосцены «Revision» 2020 года, а также получила приз зрительских...

Другое популярное приложение прекращает поддержку Windows XP Windows XP была одной из самых популярных версий Windows, когда-либо выпущенных Microsoft, и, несмотря на то, что с апреля 2014 года больше не было обновлений, слишком много устройств продолжают работать с ней даже сегодня. Согласно сторонним данным о доле рынка, более 1% ко...

Масштабирование андроид-тестирования в Одноклассниках Привет! Меня зовут Роман Иваницкий, я работаю в команде автоматизации тестирования Одноклассников. OK — огромный сервис с более чем 70 миллионами пользователей. Если говорить про мобильные устройства, то большинство пользуется OK.RU на смартфонах под управлением Android. П...

Сторонник биткоина Джек Дорси сохранит пост главы Twitter Заключенное соглашение Twitter и его акционеров не предполагает смещение Джека Дорси с должности CEO, сообщает Bloomberg. Компания назначит трех новых директоров и создаст комитет по пересмотру руководства и управления как одно из условий соглашения с активистом-инвестором E...

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

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

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

Apple поделился техническим обзором Mac Pro и Pro Display XDR Технический обзор для Mac Pro и Pro Display XDR доступен в виде файла PDF. Она показывает технические характеристики и возможности на новых устройствах. Файлы также включают подробный список компонентов, набор функций и внутреннюю структуру Mac Pro. Apple объясняет подробн...

Покайтесь, ибо грядет LDAP Channel Binding & Signing В первых строках хочу заметить, что новость это уже во первых старая, во вторых мало кому на самом деле интересная. Тем не менее, возможно кому то будет интересно узнать, что в марте 2020 года, примерно через месяц, всем использующим MS LDAP может стать немножко больно и о...

INVESTMENT-READY Или что следует иметь в виду, создавая стартап. //при чем здесь котик? Что за странный вопрос ?? ПРЕДИСЛОВИЕ Прочел несколько постов от людей, которые провалили стартапы и давали советы на тему чего не следует делать (сорри, хотел дать на них линки, но потерял). Собир...

Антипаттерн Entity Service. Иногда микросервисы хуже монолита Статья об одном неудачном решении, которое распространено при переходе на микросервисы. Несмотря на то, что Microsoft и другие компании в своих руководствах рассматривают возможность создавать Entity Serivces, есть все основания считать его антипаттерном. Далее мы поговорим ...

[Перевод] Структурные шаблоны проектирования в ES6+ на примере Игры престолов Доброго времени суток, друзья! Структурные шаблоны проектирования используются для построения больших систем отношений между объектами с целью сохранения гибкости и эффективности. Давайте рассмотрим некоторые из них с отсылками на Игру престолов. В разработке программног...

IT-валентинка: 53 способа признаться в любви Однажды на Zoom-созвоне нашей команды нить дискуссии ушла за пределы планируемого. На удаленке такое часто случается, потому что всем не хватает обычного «кухонного» общения в офисе. Разговор начался с итальянской книги, где на всех языках мира написано «Я тебя люблю». Пото...

[Перевод] Как работает Spring Boot Auto-Configuration Глубокое погружение в мир аннотации Spring Boot @Conditional с проработанными примерами реализаций классов доступа к БД Mongo и MySQL. В моем посте «Почему Spring Boot?» было рассмотрено создание Spring Boot приложения, из которого вы едва ли сможете понять, что происходит з...

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

Леонид Слуцкий возглавил ФК "Рубин" Казанский футбольный клуб "Рубин" объявил о назначении на пост главного тренера команды Леонида Слуцкого. Контракт со специалистом подписан на пять лет. В ноябре 2019 года Леонид Слуцкий ушел в отставку из голландского клуба "Витесс" из-за неудачных результатов клуба в ...

BeeFREE. Переводим людей на удалёнку с 2016 года Привет! Надеемся, вы читаете этот пост в рабочее время, уже будучи переведённым на удалённую работу своим работодателем. У нас же получилось перевести сотрудников на удалёнку довольно быстро по одной простой причине — начиная с 2016 года в компании существует BeeFREE, наш...

3. От обучения пользователей к тренировке навыков по ИБ. Антифишинг Приветствую друзья! Сегодня мы в рамках цикла статей по борьбе с фишингом познакомимся с российским решением “Антифишинг”. Для того, чтобы более подробно изучить концепцию и архитектуру системы, мы пообщались с представителями вендора и проверили решение на себе, обучая и тр...

[Из песочницы] AI на минималках: пишем свой Сокобан и учим компьютер его решать В этой статье я расскажу как написать свою реализацию известной игрушки Сокобан, а также алгоритм для её решения с нуля. Заодно применю на практике некоторые шаблоны проектирования и принципы SOLID. Весь код расположен по адресу Читать дальше →

[Перевод] Как линейное время превращается в Windows в O(n²) Недавно я столкнулся с многоминутными задержками на моей рабочей станции. После расследования выяснилось, что причина проблемы заключалась в блокировке, которая могла длиться по пять минут, во время которых источник блокировки в основном крутился в цикле из девяти инструкци...

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

Как в Sports.ru писали свой WYSIWYG-редактор В середине 2018 года в Sports.ru задумались о переезде на новый WYSIWYG-редактор текста для пользовательских постов. С июня 2019 года редактор работает в режиме бета-версии. За это время мы решили множество проблем, связанных как с проектированием архитектуры всего сервиса, ...

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

Конец эпохи ITIL v3! Таймер запущен... Что дальше? Запуск публикации ITIL 4 Foundation состоялся в 2019 году, а спустя 2 года, AXELOS объявила график прекращения поддержки ITIL v3. Свершилось! Таймер запущен. Для всех работающих в сфере ИТ наступил конец эпохи. Многие годы ITIL v3 был ориентиром в управлении ИТ-услугами (ITS...

Спросите нас о чём угодно: ДИТ ответит на вопросы После новостей на «Эхе Москвы» о возможной виртуальной встрече ДИТ с IT-сообществом мы захотели провести такую встречу на самом деле. Связались с командой Хабра и предложили провести прямой эфир, в котором мы бы обстоятельно ответили на вопросы, которые вас интересуют. В к...

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

Open-source Antifraud от RBKmoney — на пути к идеалу Привет! Не так давно мы писали в нашем блоге про антифрод и его устройство. В этом посте я хотел бы затронуть критерии идеального антифрода, который бы и клиентам жизнь упрощал, не блокируя платежи и при этом защищая их средства, и платежной системе время и ресурсы экономил...

Прокачай скиллы в DevSecOps: 5 вебинаров с теорией и практикой Привет, Хабр! Наступила эпоха онлайн-мероприятий, и мы не стоим в стороне, тоже проводим разные вебинары и онлайн-встречи. Мы думаем, что тема DevSecOps требует отдельного внимания. Почему? Все просто: Она сейчас крайне популярна (кто еще не успел поучаствовать в холива...

Запускаем конкурс на лучший рассказ о применении 3D-печати! 3Dtoday приглашает всех желающих принять участие в творческом конкурсе на лучший рассказ о применении 3D-печати и 3D-принтеров. На кону новенький смартфон, смарт-часы и призы спонсоров — филаменты от компании My3D и лицензии на Компас-3D Home от компании «Аскон».

Нативная компиляция в Quarkus – почему это важно Всем привет! С вами второй пост из нашей серии по Quarkus – сегодня поговорим о нативной компиляции. Quarkus – это Java-стек, заточенный под Kubernetes. И хотя здесь, конечно, многое еще предстоит сделать, мы хорошо проработали массу аспектов, включая оптимизацию JVM и це...

IdentityServer4. Основные понятия. OpenID Connect, OAuth 2.0 и JWT Этим постом я хочу открыть ветку статей посвященную IdentityServer4. Начнем мы с основных понятий. Самым перспективным на текущий момент протоколом аутентификации является OpenID Connect, а протоколом авторизации (предоставления доступа) является OAuth 2.0. IdentityServer4 р...

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

Чистая архитектура с Go Меня зовут Эдгар (ZergsLaw), я работаю в компании, которая занимается  финтех-разработкой для b2b и b2c. Когда только устроился в компанию, то попал в команду большого финтех-проекта и получил «в нагрузку» небольшой микросервис. Мне поручили его изучить и подготовить план ре...

Vue.js: Хуки жизненного цикла ваших и сторонних компонентов Lifecycle hooks (Хуки жизненного цикла) — это очень важная часть любого компонента. Нам, нашему приложению, часто нужно знать что происходит с компонентом, когда он создан, смонтирован, обновлен или уничтожен. В компоненте мы можем отлавливать эти события используя соотве...

[Из песочницы] Компилятор Befunge на Python В процессе подготовки к курсу «Основы компиляторов» для студентов 4-го курса я изучал различные эзотерические языки программирования. Вот хорошая статья на эту тему. В статье самым интересным мне показался язык Befunge (Крис Пресс, 1993 год), особо отмечу три его особенности...

Асинхронное взаимодействие. Брокеры сообщений. Apache Kafka Данная публикация предназначена для тех, кто интересуется устройством распределенных систем, брокерами сообщений и Apache Kafka. Здесь вы не найдете эксклюзивного материала или лайфхаков, задача этой статьи – заложить фундамент и рассказать о внутреннем устройстве упомянутог...

[Перевод] Почему нам нужен DevOps в сфере ML-данных Развертывание машинного обучения (machine learning, ML) в продакшн – задача нелегкая, а по факту, на порядок тяжелее развертывания обычного программного обеспечения. Как итог, большинство ML проектов так никогда и не увидят света — и продакшена — так как большинство органи...

Как мы автоматизировали портирование продуктов с C# на C++ Привет, Хабр. В этом посте я расскажу о том, как нам удалось организовать ежемесячный выпуск библиотек для языка C++, исходный код которых разрабатывается на C#. Речь идёт не об управляемом C++ и даже не о создании моста между неуправляемым C++ и средой CLR — речь об автомат...

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

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

Графические процессоры Intel DG2 будет производить TSMC по 7-нм технологии Компания Intel с большой долей вероятности прибегнет к услугам компании TSMC для производства своих графических процессоров второго поколения DG2, сообщает ресурс AdoredTV со ссылкой на собственного инсайдера в данной сфере. Графические процессоры Intel DG2 на архитектуре Xe...

7 QA-шных грехов, которые помогут или помешают тестировщику (стать тем, кем ты хочешь) Привет, меня зовут Иван, я работаю руководителем горизонтали автоматизаторов в Skyeng. Занимаюсь менеджментом ресурсов автоматизаторов, внедряю процессы, которые упрощают работу ребят, пишу инструменты для команды (слак-бот, всякие интеграции с TMS и др.), менторю начинающ...

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

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

AMD представила самый мощный в мире суперкомпьютер El Capitan на основе CPU и GPU, которые выйдут не ранее следующего года Компания AMD сегодня опубликовала пресс-релиз, в котором рассказала о суперкомпьютере El Capitan и его особенностях. Напомним, это система уровня exascale (1018 операций с плавающей запятой в секунду), которая создаётся по заказу Министерства энергетики США компанией Cr...

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

Sony PS4 Pro была тестовым плацдармом, так что стоит готовиться к выходу PS5 Pro Текущее поколение домашних игровых консолей Sony и Microsoft кардинально отличается от предыдущих. Во-первых, аппаратные платформы у PlayStation 4 и Xbox One максимально схожи с обычными компьютерными комплектующими. А во-вторых, именно в рамках текущего поколения обе ...

Python микросервисы с Kafka без боли В этой статье я бы хотел поделиться способом написания асинхронных микросервисов на Python, в основе которых библиотека Faust. А в качестве брокера сообщений Kafka. Ну и немного мониторинга с Prometheus и Grafana. Читать далее

Lines 9753: День Сурка             Если долго играть в кубики,             то они превращаются в шарики Глядя на название игры Lines 9753, можно подумать, что этот рассказ про 9...

Убийства и анализ данных Привет, Хабр. Меня зовут Алексей Кнорре, и я криминолог, аспирант в UPenn и аффилированный научный сотрудник в ЕУСПб. Подумал, что сейчас, после месяцев карантина, самое время рассказать о преступности. Неясная экономическая ситуация, рост безработицы, ухудшение общественно...

Собираем C++ с bazel Введение и мотивация В последнее время на Хабре появляются посты про то, что cmake и c++ — друзья, приводятся примеры, как собирать header-only библиотеки и не только, но нет обзора хоть сколько-нибудь новых систем сборки — bazel, buck, gn и других. Если вы, как и я, пишете ...

Ретродайджест: 30 интересных ресурсов о технике и играх ушедших лет 2019 год уже вот-вот подойдет к концу. С наступлением нового десятилетия некоторые компьютерные устройства переместятся в стан ретро-техники, о которых наши потомки (или даже мы сами) будем дискутировать и писать статьи. Минувшая осень в нашем блоге ознаменовалась циклом ст...

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

[Перевод] Топ-10 книг для разработчика Совершенствоваться в сфере разработки — это не только писать хороший код, но и читать о том, как его писать. Привет, хабр! Продолжаю делиться полезными подборками. Совсем недавно я опубликовал 2 поста с перечнем Github репозиториев: Часть1 и Часть2. На этот раз предлагаю в...

Forrester признал Micro Focus лидером в области статического тестирования безопасности приложений Высокую оценку получили продукты Fortify для всесторонней оценки безопасности создаваемых разработчиками приложений, доступные как в локальной версии, так и в варианте SaaS. Компания Micro Focus объявила о том, что в отчете The Forrester Wave: Static Application Security ...

Российские BIM-технологии: комплексное проектирование на базе Model Studio CS Этой статьей мы открываем серию материалов, посвященных технологиям информационного моделирования в промышленном и гражданском строительстве.Мы покажем, как организовать среду общих данных, информационного моделирования и комплексного проектирования на основе единой линейки ...

[Перевод] SRE: Анализ производительности. Способ настройки с использованием простого вебсервера на Go Анализ производительности и настройка — мощный инструмент проверки соответствия производительности для клиентов. Анализ производительности можно применять для проверки узких мест в программе, применяя научный подход при проверке экспериментов по настройке. Эта статья опреде...

[Из песочницы] IoT шлюз Ethernet-RS485 на базе STM32 Привет, Хабр!Данный пост посвящён DIY разработке Ethernet-RS485 шлюза. Цель данного шлюза – обеспечение централизованного управления нодами Mysensors со стороны контроллера умного дома.Недавно меня таки достали провода, дюпоны, навесная пайка и т.п. и было принято давно оття...

[Перевод] Мои отношения с опенсорсом Автор и мейнтейнер нескольких опенсорсных проектов, Эндрю Галлант пытается снять напряжённость, которая в последнее время накопилась в части опенсорсного сообщества. Крики души «Каково быть мейнтейнером свободного ПО», «Неблагодарный opensource» и другие жалобы мейнтейнеро...

Открытые онлайн-материалы от Computer Science центра, часть 2 В первой части поста мы рассказали о наших популярных онлайн-курсах на Stepik, а теперь выкладываем записи открытых лекций и видеокурсов на YouTube и напоминаем о том, что до 11 апреля открыт новый набор в CS центр в Санкт-Петербурге и Новосибирске. Читать дальше →

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

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

ТЕЛЕКОММУНИКАЦИИ (16.11 – 15.12.2019) «МТС» начала продавать виртуальных юристов – систему автоматической работы с документами и управления жизненным циклом договоров. Решение создано на базе таких ИИ-технологий, как обработка естественного языка и компьютерное зрение...

[Из песочницы] Логирование в микросервисной среде .Net на практике Логирование является очень важным инструментом разработчика, но при создании распределённых систем оно становится камнем, который нужно заложить прямо в фундамент вашего приложения, иначе сложность разработки микросервисов очень быстро даст о себе знать. В .Net Core 3 доба...

Онлайн-митапы на всю неделю по бэку и DevOps, безопасности и роботам с 17 апреля Эту неделю астрологи объявили неделей бэка: сразу несколько встреч и по .NET и по Java. А еще начали появляться неожиданные сочетания внутри одного мероприятия, например: JavaScript и DevOps или DevOps и ML. А еще много хардкорной практики — можно сделать своего робота или с...

[Перевод] Я был главой отдела международных отношений в Google. Вот почему я ушел Когда-то девизом компании была фраза «Don't be evil». Времена изменились. В день когда я покидал пост главы отдела международных отношений в Google, я не мог не вспоминать свой первый день в компании. Тогда я сменил офис, отделанный деревянными панелями, костюм и галстук...

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

TelegramBot инструкция по созданию базового функционала для бота. (Часть 1) Не так давно я предложил вам воспользоваться моим ботом для телеграмма. Telegram Bot — помощник в планировании мероприятий Получив много вопросов в личку, я понял, что вопрос создания ботов для Телеграм довольно популярен. У меня спрашивали исходный код бота, просили по...

Почему канадский английский считают «грязным» и при чем тут Киану Ривз Сегодня мы расскажем о диалекте английского языка, на котором говорит свыше 17 миллионов людей. Историческое становление английского языка в Канаде, соседство с США и французский в качестве второго государственного создали диалект со своими особенностями и интересными фишка...

Инструментарий фронтенд-специалиста: полезные утилиты и фичи для ускорения разработки Прошли те времена, когда фронтендеру достаточно было открыть «Блокнот», написать несколько строк кода, проверить его в браузере и загрузить на сервер через FTP. Современная разработка пользовательского интерфейса сильно усложнилась. Экосистема JavaScript растет и изменяетс...

AMD заключила контракт с командой из F-1 AMD и Mercedes-AMG Petronas Formula One будут сотрудничать начиная с этого года. Логотип компании AMD будут размещен на болидах Formula 1 с обеих сторон кабины пилота, а также на всей экипировке команды Mercedes-AMG. AMD предоставит гоночной команде системы на базе AMD ...

Массивно-параллельная база данных Greenplum — короткий ликбез Для Hadoop и Greenplum есть возможность получить готовый SaaS. И если Хадуп — известная штука, то Greenplum (он лежит в основе продукта АrenadataDB, про который далее пойдёт речь) — интересная, но уже менее «на слуху». Arenadata DB — это распределённая СУБД на базе опенс...

«Россети» реализуют 22 цифровых проекта Об этом заявил заместитель генерального директора по операционной деятельности компании "Россети" Константин Михайлик на keynote сессии "Пилотные проекты и программы цифровой трансформации", прошедшей в рамках Международного форума "Электрические се...

Diablo Immortal перенесли на 2022 год, Blizzard рассказал про причины С начала альфа-тестирования Diablo Immortal, десятки тысяч игроков успели побывать в мобильном Вестмарше. Мы успели записать геймплей и даже рассказали про топ-5 фактов, которые должен знать каждый перед релизом. Тогда мы не знали, что Blizzard решит перенести Immortal на 20...

[Перевод] Юнит-тесты на Python: Быстрый старт Перевод статьи подготовлен специально для студентов курса «Python QA Engineer». Юнит-тестирование кода является неотъемлемой частью жизненного цикла разработки программного обеспечения. Юнит-тесты также формируют основу для проведения регрессионного тестирования, то есть о...

Хит-парад паролей (анализ ~5 млрд паролей из утечек) В прошлом году мы в DeviceLock провели анализ утекших паролей. На тот момент в нашей «коллекции» паролей было около 4 млрд уникальных пар логин/пароль. За время, прошедшее с прошлого исследования, «коллекция» пополнилась почти 900 млн новыми уникальными логинами и паролями. ...

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

Платформенные команды, DDD радар и MVP, который не превратится в техдолг — все это на TechLead Conf 2020 Привет! Меня зовут Вьет, и больше 10 лет я с любовью пишу код. В прошлом году меня пригласили в программный комитет, в котором большие фанаты качественной разработки делали конференцию QualityConf. Мы верим, что качественная разработка не ограничивается вопросами тестирован...

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

[Из песочницы] Чистая архитектура с Typescript: DDD и слоистая архитектура Привет, Хабр! В последнее время уделяю много внимание архитектуре и решил поделиться с сообществом переводом статьи Clean Architecture with Typescript: DDD, Onion автора André Bazaglia. Введение На протяжении более 6 лет моего профессионального опыта, я имел возможность раб...

Яндекс.Диск запретил использование open source утилиты rclone Предыстория Привет, Хабр! К написанию этого поста привела довольно странная ошибка, которую вчера вечером на ноутбуке с Linux (да, я их тех странных людей, кто использует GNU/Linux на ноутбуке) я получил вместо содержимого своего Яндекс.Диска: $ ls -l /mnt/yadisk ls: reading...

ArangoDB в реальном проекте ArangoDB гибридная (документная и графовая) база данных. К ее положительным сторонам относятся: мощный и удобный язык запросов AQL JOIN (даже более мощный чем в реляционных базах данных) репликация и шардинг ACID (в кластере работает только в платной версии) Из менее сущес...

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

Генеалогические исследования — метрические книги, переписи, архивы, открытые базы Не один год я увлекаюсь генеалогией. Практической пользы в этом хобби нет, но интересного очень много. Здесь я хотел поделиться накопленным опытом, частью интересных сведений, не сильно погружаясь в персональные истории. Чтобы текст сильно не распухал, расскажу всего 2 кейса...

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

Алексей Трачук сменил Максута Шадаева Генеральным директором АО "РТ Лабс" назначен Алексей Трачук. На этой позиции он будет отвечать за реализацию стратегических задач компании и дальнейшее развитие проектов в сферах электронного правительства, государственных информационных систем, цифровизации здравоохранени...

[Перевод] Логирование в Kubernetes: EFK против PLG Мониторинг стал весьма важным компонентом растущих облачных решений с ростом сложности распределенных систем. Он необходим для понимания их поведения. Нужны масштабируемые инструменты, которые смогут собрать данные со всех сервисов — и предоставить специалистам единый интер...

Скачать Windows 11 и получить лицензионный ключ бесплатно Жизненный цикл операционной системы Windows 10 подходит к концу, так как еще никогда ранее ни одна «винда» не оставалась самой новой в своем классе дольше 5 – 6 лет, а этот временный период в случае Читать полную версию публикации Скачать Windows 11 и получить лицензионный ...

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

[Перевод] «Давайте использовать Kubernetes!»: как получить 8 проблем Это перевод вводной статьи об использовании Kubernetes: «Let’s use Kubernetes!» Now you have 8 problems Если вы используете Docker, то следующим логичным шагом будет Kubernetes, известный как K8s. Именно так вы обеспечиваете эксплуатацию своих продуктов, верно? Ну, возможн...

Оптимизация интерфейса в Unity без кода В этой статье ведущий UI/UX художник Никита Кандыбин и технический UI художник Ольга Кинчак поделятся эффективными базовыми практиками по оптимизации Unity UI, которые используются в компании Banzai Games при создании игровых интерфейсов, а также укажут на подводные камни ...

Что такое I в ACID или вы нам не подходите Это пост удивления. Я сходил на собеседования в 3 минских стартапа и в одну небольшую компанию, и вот, что из этого вышло. Читать дальше →

Стоп конвейер! Даешь XGA-проекторы Epson по цене SVGA Лучший способ продемонстрировать свои возможности для любого бренда – это предложить публике отличный продукт за небольшие деньги. Учитывая то, как высок интерес к проекторам бюджетного класса (т.е. самым продаваемым моделям «народных» проекторов) и какова конкуренция на р...

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

[recovery mode] Как обойти «No-communication theorem»? Передача информации сквозь пространство и время No-communication theorem утверждает, что квантовое запутывание не может использоваться для передачи какой-либо информации. Теорема предполагает, что Боб никак не может отличить начальное состояние σ от состояния P(σ) после измерения Алисой. Это доказывается математически, п...

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

Обзор Cisco Umbrella: защита на уровне DNS и не только Мы постоянно тестируем новые решения для наших проектов и недавно решили разобраться, что под капотом у Cisco Umbrella. Сам вендор заявляет, что это облачное решение для защиты угроз со стороны интернета из пяти компонентов:1) защищенный рекурсивный DNS;2) веб-прокси с возмо...

Митап по продуктовой аналитике: бесплатно, бесконтактно, онлайн 7-го мая в 19:00 по Москве приглашаем всех присоединиться к митапу по продуктовой аналитике. Обсудим все самое важное: работу с данными, инсайты, подходы к исследованиям и поговорим о роли продуктового аналитика в команде. Мероприятие пройдет полностью на английском языке....

Книга «Программирование на Rust» Привет, Хаброжители! Официальный гайд по языку программирования Rust поможет вам создавать более быстрое и надежное программное обеспечение. Высокоуровневая эргономика и низкоуровневое управление часто противоречат друг другу, но Rust бросает вызов этому конфликту. Авторы ...

Ускоренная разработка софта: барьеры и перспективы Разработка и доставка ПО продолжают ускоряться, поэтому командам разработчиков нужно минимизировать узкие места на любом этапе жизненного цикла софта (software development lifecycle, SDLC). Опрошенные порталом InformationWeek эксперты ...

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

TSMC, Samsung и ASML рассказали о планах перехода на 3-нм и 2-нм техпроцессы TSMC, Samsung и ASML обозначили пути перехода к 2-нм техпроцессу. В настоящее время отрасль находится на этапе начала раннего массового внедрения 5 нм микросхем. Подробнее об этом читайте на THG.ru.

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

[Перевод] Почему нужна инструментальная поддержка пагинации на ключах Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф. У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно об...

Thumbtack Tech Day Три города, три спикера, три темы Объединяем в один онлайн-митап экспертизу сразу трех направлений из городов присутствия компании «Тамтэк» в России. Специалисты из Омска, Саратова и Санкт-Петербурга расскажут о практиках и фишках разр...

Опыт конвертирования кода C# в код Rust Постановка задачи Код на языке C# нужно перевести в код на Rust. Точнее, требуется такая процедура перевода (разработка продолжается на C#), чтобы в любой момент можно было получить работающий код на Rust. Эту задачу я решал для языков Java, Python, JavaScript и PHP, написав...

Магия заполнений Пришла мне в как-то в голову мысль: а почему бы не сделать универсальную штуку, чтобы и глаз радовала, и некую пользу приносила?В целом, было очень интересно посмотреть на процесс печати 3d заполнений не в программной среде, а, так сказать, воочию. А заодно оценить, наскольк...

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

[Перевод] Дизеринг 2: ряд золотого сечения, синий шум и highpass-and-remap В предыдущей части я рассмотрел определение дизеринга и объяснил, как он изменяет характеристики погрешностей простой 1D-дискретизации и функций. В этой части я рассмотрю синий шум, но сначала давайте взглянем на ряд чисел, который я использовал в предыдущей части, и котор...

Android. Surface Дисклеймер Данная статья предназначена для начинающих андроид разработчиков с небольшим опытом работы с видео и/или камерой, особенно тех кто начал разбирать примеры grafika и кому они показались сложными — здесь будет рассмотрен похожий код с упрощенным описанием основных ш...

Тактика и стратегия управления персоналом 2020. VII Всероссийский форум профессионалов сферы HR Новые технологии меняют мир вокруг нас с невероятной скоростью. Одно неизменно — люди. Они всегда будут главной ценностью. Ключевая тема форума «Тактика и стратегия управления персоналом 2020» — организация работы с коллективом в период постоянн...

Билл Гейтс решил уйти из Microsoft Билл Гейтс, соучредитель и бывший генеральный директор Microsoft, покидает совет директоров компании. До 2000 года он занимал должность генерального директора компании, но оставил ее ради благотворительности и управления Фондом Билла и Мелинды Гейтс. Теперь миллиардер приня...

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

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

Распределённая команда и тимлид на удалёнке Привет, меня зовут Григорий. Я работаю тимлидом распределённой команды в Positive Technologies. Это мой рассказ, как я стал лидом распределённой команды, с какими проблемами сталкивался, как их решал и какой опыт получил. Мотивами к написанию статьи стали два факта: во-первы...

[Перевод] 68 непрошеных советов Это перевод самого недавнего поста Кевина Келли. Сегодня мой день рождения. Мне 68. Хочется пододвинуть кресло-качалку и пораздавать советы юнцам. Вот 68 непрошеных советов, которые я предлагаю всем вам как подарок ко дню рождения. Научись учиться у тех, с кем вы не согла...

[Перевод] Python, pandas и решение трёх задач из мира Excel Excel — это чрезвычайно распространённый инструмент для анализа данных. С ним легко научиться работать, есть он практически на каждом компьютере, а тот, кто его освоил, может с его помощью решать довольно сложные задачи. Python часто считают инструментом, возможности которог...

Соучредитель Lamoda оставил пост руководителя Ф. Янсен, являющийся одним из соучредителей интернет-ритейлера Lamoda, оставил пост управляющего директора. В Lamoda предприниматель больше не работает.

Полная поддержка популярных реализаций Docker Registry в werf Все популярные реализации реестров для образов контейнеров поддерживают Docker Registry HTTP API и позволяют использовать одни и те же инструменты для работы с ними. Тем не менее, часть реализаций имеет свои особенности и ограничения, а значит — если вам нужно их поддержива...

Установка ReportPortal в kubernetes ReportPortal – это веб-решение на базе открытого ПО, созданное разработчиками EPAM и OSS-сообщества. Его использование позволяет собрать в одном месте документы и результаты различных проектов по тестированию, которые выполняются в компании, и сделать их доступными для тести...

Обзор подкаста «Деньги пришли» План такой: слушаю, что записывает компания, делаю заметки, пишу обзор. Alec Favale, Unsplash.com В конце прошлого года я решил написать о корпоративных подкастах и спросил в Facebook, кто ими занимается. Ответили человек 20, дали примеры программ. По мере их изучения я ...

Как в компании развивался Python. Доклад Яндекса 13 лет назад начался эксперимент по использованию Python в больших сервисах Яндекса. Эксперимент получился удачным (кто бы сомневался!) и Python начал свое победное поползновение по сервисам компании. Яндекс.Афиша, Яндекс.Погода — через некоторое время сервисов стало очень м...

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

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

Первая PR-премия для малого и среднего бизнеса «Громче!» Приглашаем принять участие в первой PR-премии для малого и среднего бизнеса «Громче!». Почему «Громче!»? Это первая в своём роде премия, которая даёт возможность представить свои работы представителям МСБ. Участники премии получают: Признание. Очень важно знать и чу...

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

AI против тестировщиков, Брандашмыг, уточки: как прошёл Heisenbug 2019 Moscow На самом деле на фото: спикеры Алексей Виноградов и Барух Садогурский спорят, кто из них настоящий У Heisenbug есть две онлайн-трансляции, и в открытую для всех попадают доклады первого дня из первого зала (а в платной есть доступ ко всем докладам обоих дней). И чтобы пост ...

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

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

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

Переход с Mercurial на GIT в Atlassian Bitbucket с сохранением файлов в кириллице Предыстория Ещё летом в официальном блоге BitBucket опубликовали запись, в которой сообщили об окончании поддержки репозиториев Mercurial. Прекращение поддержки Mercurial будет проходить в два этапа: С 1 февраля 2020 года пользователи больше не смогут создавать новые репоз...

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

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

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

Новая архитектура AMD RNDA 2: преимущества видеокарт Radeon RX 6800 по сравнению с конкурентами и предшественницами На осенней презентации AMD представила новое поколение видеокарт семейства Radeon RX 6000 серии, построенных на архитектуре RDNA 2. Та же архитектура используется и в консолях следующего поколения Xbox Series X и S и PlayStation 5. На презентации сотрудники компании сравн...

Как выглядит производство корпусов Flipper Zero изнутри Flipper Zero — проект карманного мультитула для хакеров в формфакторе тамагочи, который мы разрабатываем. Предыдущие посты [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13]Сейчас мы активно налаживаем процесс массового производства Flipper Zero на фабриках. Компоненты ...

Алгоритмы на экзамене в ШАД Привет! Меня зовут Александр Курилкин, и я веду курс по алгоритмам в «ШАД Helper». В этом посте я разберу несколько задач из вступительных экзаменов прошлых лет, чтобы вы смогли увидеть, что вас ждет, и понять, чему мы сможем вас научить на нашем курсе. Надеюсь, что вы разде...

[Из песочницы] Микросервисы — комбинаторный взрыв версий Привет, Хабр! Представляю вашему вниманию авторский перевод статьи Microservices – Combinatorial Explosion of Versions. Во времена когда мир IT постепенно переходит на микросервисы и инструменты вроде Kubernetes, все более заметной становится лишь одна проблема. Эта проблем...

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

Как системы анализа трафика обнаруживают тактики хакеров по MITRE ATT&CK, часть 3 В предыдущих постах (первая и вторая части) мы рассмотрели техники пяти тактик MITRE ATT&CK: первоначальный доступ (initial access); выполнение (execution); закрепление (persistence); повышение привилегий (privilege escalation); предотвращение обнаружения (defense ev...

Профессия DevOps-инженера: взгляд сисадмина Я работаю DevOps-инженером в компании Parallels. Поддерживаю развитие разных сервисов, пишу скрипты для их автоматического развертывания, общаюсь вплотную с командой разработчиков. Расскажу, как устроена работа, сколько платят и чем хорош DevOps-подход для разработки ПО. Ч...

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

Путь из COBOL в Java: пишем транспилятор за сутки Приветствую, Дорогие Друзья. Продолжаем цикл статей, освещающий деятельность (бурную) нашей некоммерческой организации. Как и обещал — переходим от простого (логирование) к более сложному: метапрограммирование. Читать дальше →

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

Самое интересное в PHP 8 PHP 7.4 только-только объявлена stable, а нам уже подавай еще больше усовершенствований. И лучше всех о том, что ждет PHP, может рассказать Дмитрий Стогов — один из ведущих разработчиков Open Source PHP и, наверное, старейший активный контрибьютор. Все доклады Дмитрия тольк...

Солонин покидает пост руководителя Qiwi Соучредитель Qiwi С. Солонин решил оставить должность гендиректора финансовой группы, которую он занял в 2012 году. Преемником Солонина станет Б. Ким.

[Из песочницы] Создание системы антифрода в такси с нуля Добрый день. Меня зовут Никита Башун, работаю дата-аналитиком в группе компаний «Везёт». Мой рассказ будет о том, как мы командой из трёх человек с нуля создавали систему антифрода для сервиса заказа поездок. Читать дальше →

[Перевод] «Культурный код: секреты чрезвычайно успешных групп и организаций» — заметки из книги Я прослушал книгу "Культурный код" Даниела Койла ("The Culture Code: The Secrets of Highly Successful Groups" by Daniel Coyle) после прочтения отрывка, который оставил впечатление «вот оно!» Вся книга оказалась на том же уровне, что и вступление. Она пол...

[Перевод] Zero Downtime Deployment и базы данных В этой статье подробно объясняется, как решать проблемы, связанные с совместимостью баз данных при деплое. Мы расскажем, что может произойти с вашими приложениями на проде, если вы попытаетесь выполнить деплой без предварительной подготовки. Затем мы пройдемся по этапам жиз...

Эволюция декларативных UI-фреймворков: от динозавров к Jetpack Compose Проект Jetpack Compose привлёк много внимания в Android-мире, ещё когда был в альфа-версии. А недавно добрался до беты — так что теперь всем Android-разработчикам пора понимать, что он собой представляет. Поэтому мы сделали для Хабра текстовую версию доклада Матвея Малькова...

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

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

ASUS ROG и Multiplex приглашают на турнир по CS:GO Бренд Republic of Gamers и сеть кинотеатров Multiplex в это воскресенье, 15 декабря, организуют кибертурнир по Counter-Strike: Global Offensive. Для участия в соревновании допускаются команды из двух человек. Призовой фонд включает геймерские мониторы...

[Перевод] Как и по каким причинам провалились мои первые 5 стартапов До того, как Loki.ai стал финансово устойчивой компанией, я потерпел неудачу с первыми 5 стартапами за 5 лет. Я периодически получаю письма от людей, у которых были отклонены заявки по стажировкам и работе, а некоторые и вовсе были уволены. Они попросили дать совет на тему ...

[Перевод] Когда самое лучшее время для инвестиций? Всем привет. Недавно прочитал пост на Хабре ״Как стать долларовым миллионером за 30 лет, лежа на диване״. Судя по активности в комментариях — тема инвестирования актуальна. Многих интересует вопрос, когда же лучше всего инвестировать? Что будет, если сегодня я куплю акций, а...

Embox на процессоре Эльбрус. Или никогда не забывайте о том, что получили при разведке Данная статья является логическим завершением серии статьей “восхождение на Эльбрус” об ознакомлении Embox с процессорной архитектурой Эльбрус (E2K) . Почему логическим завершением, потому что в результате удалось через telnet запустить приложение, которое выводит на экран ...

[Из песочницы] Alt: City Online. Как я в одиночку создавал «Gta Online» для мобильных устройств. Часть 1 Возможно ли в здравом уме замахнуться на подобный проект в одного, и надо ли оно вообще? Спойлер: да (длинный пост с картинками и видео). Читать дальше →

Экран OnePlus 8 признан лучшим еще до релиза Бенчмарк DisplayMate выбрал своего нового любимца – смартфон OnePlus 8, до презентации которого остается еще больше недели. Честно говоря, многие эксперты ожидали, что дисплей новинки от китайского «убийцы флагманов» не оставит никого равнодушным. Ведь известно, что ус...

Новый глава Intel вернул с пенсии ведущего архитектора Nehalem Новый генеральный директор Пэт Гелсингер до своего ухода из Intel работал в компании 30 лет и поднялся до ранга CTO, потом ушёл. Теперь его возвращение и назначение на должность CEO считают признаком выздоровления Intel. Возможно, компания сможет переломить тренд и вернуть...

4. Анализ зловредов с помощью форензики Check Point. CloudGuard SaaS Мы добрались до последнего продукта из нашего цикла статей по форензике от Check Point. На этот раз речь пойдет об облачной защите. Трудно представить компанию, которая не использует облачные сервисы (так называемый SaaS). Office 365, GSuite, Slack, Dropbox и т.д. И наибол...

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

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

[Перевод] Статический анализ в GCC 10 Я работаю в Red Hat над GCC, GNU Compiler Collection. Для следующего основного релиза GCC, GCC 10, я реализовывал новую опцию -fanalyzer: проход статического анализа для выявления различных проблем во время компиляции, а не во время исполнения. Я думаю, что лучше выявлять ...

Конкурс по воскрешению старинных игр на Python Недавно наткнулся На Хабре на пост о создании игр в начале 90х на ZX-Spectrum. У меня, к сожалению, такого компа не было — был только школьный БК-0010, на котором я рубился в Клад. Читать дальше →

Вебинар: как выжить малому бизнесу и срочно перейти в онлайн «Маркет местной еды» – это платформа, которая помогает любому желающему начать свое дело в сфере гастрономического бизнеса. За 5 лет команда успешно провела 34 городских маркета еды. Но кризисные условия заставили команду проекта резко изменить свою работу. Что можно отв...

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

[Из песочницы] О работе ПК на примере Windows 10 и клавиатуры ч. 1 Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Window...

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

Galaxy Fold 2 получит хорошую камеру, что повлияет на цену Одним из самых интересных устройств, которые Samsung представляет в этом году, будет гибкий смартфон Galaxy Fold 2. Стали известны новые подробности о нем. Недавно появились слухи о дисплеях этого гаджета, а также информация о возможной дате презентации. И вот гендиректор ко...

Есть ли жизнь после Синьора? Как ни странно, но многие разработчики, начиная с джуниоров и заканчивая синьорами, видят только один путь своего развития: менеджмент. Они планируют переходить в руководители проектов или становиться техническими руководителями. Но IT-сфера намного шире, вариантов и путей р...

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

Navigation bar и анимация перехода Поведение UINavigationBar при переходе по стеку может показаться непредсказуемым и часто забагованным. Но, на самом деле, так и есть! Эта статья призвана освежить знания о принципах работы и показать возможности  кастомизации поведения.Немного общей теорииЕсли вы хорошо...

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

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

[Из песочницы] BPF для самых маленьких, часть нулевая: classic BPF Berkeley Packet Filters (BPF) — это технология ядра Linux, которая не сходит с первых полос англоязычных технических изданий вот уже несколько лет подряд. Конференции забиты докладами про использование и разработку BPF. David Miller, мантейнер сетевой подсистемы Linux, назыв...

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

Дайте все №58: новые возможности для НКО и активистов Онлайн-курс Теплицы: «Гипотезы для НКО: научиться задавать вопросы и находить ответы» Команда Теплицы социальных технологий приглашает активистов, сотрудников некоммерческих организаций и авторов социальных проектов принять участие в онлайн-курсе о том, как находить сюже...

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

[Из песочницы] Создание упаковщика x86_64 ELF файлов под linux Введение В данном посте будет описано создание простого упаковщика исполняемых файлов под linux x86_64. Предполагается, что читатель знаком с языком программирования си, языком ассемблера для архитектуры x86_64 и с устройством ELF файлов. В целях обеспечения ясности из приве...

Хабр Конвертер: чтобы версталось легко Наверняка многие из вас хотя бы однажды пользовались хабраконвертером, который официально рекомендован администрацией Хабра — https://shirixae.github.io/habraconverter-v2/. Несколько лет назад его создал хабравчанин meta4, а потом доработал Shirixae. Принцип простой: открыва...

Habr Weekly #33 / Вакансия в Reddit, пчёлы, наручные часы, шизофрения и аккумуляторы — обсуждаем уходящий год В этом выпуске: 01:33 Про удивительность пчелы, и то, как мы ее убиваем, Milfgard 11:55 Что умеют делать наручные часы кроме показа времени и как выбрать свои первые часы, Wackaloon 18:43 10 лет в IT с диагнозом шизофрения, советы по выживанию, sgrammer 30:06 Есть ли ал...

5 шагов к защите коммерческой тайны Как часто вам предлагают заткнуть пальцем пробоину в борту судна? Нам — постоянно! Вот обычная заявка: составьте нам NDA с работником, чтобы защититься от разглашения конфиденциальной информации Почему-то многие в ИТ уверены, что для защиты информации компании необходимо...

Xbox Series X: обзор технологий следующего игрового поколения Всем привет! Мы решили начать эту неделю с более «легкого» и интересного для многих материала про нашу новую консоль Xbox Series X. Сегодня расскажем о том, как получилось сделать её такой мощной, как будет достигаться эффект погружения (скриншоты из игр под катом) и немного...

Дополняя SQL. Часть 2. Оптимизация работы со строками и открытия файлов Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Это вторая статья в цикле о жизни разработчиков IDE для баз данных. Ее структура будет похожа на первую. Как и в первой я расскажу о проблемах с которыми мы сталкивались...

GSoC 2019: Проверка графов на двудольность и трансформеры монад Прошлым летом я участвовал в Google Summer of Code — программе для студентов от компании Google. Ежегодно организаторы отбирают несколько Open Source-проектов, в том числе от таких известных организаций, как Boost.org и The Linux Foundation. Для работы над этими проектами Go...

16 продуктов Epson, которые стали первыми в мире В минувшем году мы отметили 30-летие открытия офиса Epson в России. В процессе подготовки к мероприятию для партнеров потребовалось собирать информацию о продуктах компании, которые опередили свое время и вошли в историю как «самые» и «первые».Затем для сегодняшнего пятнично...

Отключение питания командой М300 После завершения печати часто есть необходимость отключить питание принтера аппаратно, например если печать закончилась ночью. Решение пришло не сразу, но, на мой взгляд, довольно интересное и простое: к зуммеру принтера подключается несложная схема (на своем я вместо зуммер...

О телемедицине — от теледоктора Привет, Xабр! Сегодня я хочу рассказать о телемедицине с точки зрения врача-практика. А поскольку моя основная специальность — самая что ни на есть подходящая для телемедицины: радиология, то расскажу и о своей работе. Если вам некогда читать мой ультра-лонгрид, просто про...

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