Социальные сети Рунета
Четверг, 25 апреля 2024

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

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

Очередная революция AMD. Следующее поколение CPU Epyc может получить способность выполнять до четырёх потоков на ядро Как известно, в следующем году нас ждут процессоры AMD с архитектурой Zen 3. Компания уже завершила её разработку, новый техпроцесс там использоваться не будет, так что никаких задержек не ожидается. Однако новые CPU, которые будут использовать Zen 3, могут оказаться ку...

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

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

[Перевод] Пессимизм насчёт многопоточности Массивный и аппаратный параллелизм — горячие темы 21 века. Для этого есть несколько приятных причин и одна довольно печальная. Две приятные причины: комбинация отличной работы GPU в играх и при этом их неожиданное побочное использования в глубоком обучении ИИ, поскольку там...

Как создать Python wrapper и не сойти с ума Недавно на Хабре прочитал статью про очень полезный инструмент, и так как я уже давно искал какой-то проект, чтобы начать контрибьютить, решил посмотреть, что там есть на гитхабе и чем можно помочь. Одно из issue было на счет создания обертки (дальше буду использовать wrappe...

[Перевод] Многопоточность в Node.js: модуль worker_threads 18 января было объявлено о выходе платформы Node.js версии 11.7.0. Среди заметных изменений этой версии можно отметить вывод из разряда экспериментальных модуля worker_threads, который появился в Node.js 10.5.0. Теперь для его использования не нужен флаг --experimental-worke...

[Перевод] ZIO & Cats Effect: удачный союз Cats Effect стал своего рода «Reactive Streams» для функционального Scala-мира, позволив объединить всю разнообразную экосистему библиотек вместе. Многие отличные библиотеки: http4s, fs2, doobie — реализуются только на базе тайп классов из Cats Effect. А библиотеки типа ZIO...

[Перевод] Нужна небольшая клавиатура – сделайте её сами Если вам нужна клавиатура, вы можете её приобрести. Если вам нужна небольшая клавиатура, то тут всё сложнее. Кроме вариантов с переделкой клавиатуры от Blackberry или возни с крохотными тактильными переключателями, нормальных решений для получения небольших, тонких и специ...

Изучая Dependency Injection Несмотря на то, что паттерну уже более десятка лет и есть немало статей (и переводов), тем не менее споров, комментариев, вопросов и разных реализаций становится все больше и больше. ПредысторияВ 2004 Мартин Фаулер написал известную статью “Inversion of Control Containers ...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

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

Как быстро передать ссылки, текст и фото с Android на ПК До настоящего момента для передачи фотографий, текста и ссылок я использовал «Избранное» в Telegram. Данная вкладка не рассчитана на подобный обмен данными, но как альтернатива более профессиональным решениям такой вариант возможен. Чем чаще появляется необходимос...

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

Простая реализация небольших CAM на ПЛИС Введение Как-то раз мне потребовалось по работе реализовать небольшой блок ассоциативной памяти. Почитав, как это делается у Xilinx на BlockRAM (BRAM) или на SRL16, я несколько опечалился, так как их реализации занимали довольно много места. Решил попробовать сделать его сам...

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

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

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

Telegram-бот для изучения иностранных языков: от зубрежки слов к говорению Не так давно я писал уже о своем боте для изучения иностранных языков. Точнее — для расширения словарного запаса (aka зубрежки слов). В той же статье я написал, что изучение слов без контекста малопродуктивно и что лучше изучать тексты, чем просто пытаться вбить себе в голо...

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

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

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

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

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

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

Ещё раз об ImmutableList в Java В своей предыдущей статье "Рукоблудие вокруг ImmutableList в Java" я предложил вариант решения поднятой в статье "Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо" проблемы отсутствия в Java неизменяемых списков. Решение тогда было проработано только на уров...

Как не промахнуться с бюджетом на серийное производство корпусов: 20 примеров из практики бюро по инженерному дизайну Публикация всего двух статей о том, как самостоятельно оценить стоимость производства корпуса для прибора (первая и вторая) подняла просто волну запросов из серии «А вот сколько будет стоить наш корпус при тираже 5-100-1000- ∞ штук?» Как выясняется в ходе общения, большин...

Podlodka #102: Многопоточность Многие её побаиваются, и не исключено, что кто-то из-за неё даже заваливал собеседования на особо каверзных вопросах. Многопоточность!

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

Java REPL вам не ScriptEngine Привет, Хабр! Меня зовут Дима, я разработчик в команде “Архитектура” в hh.ru. Среди прочего, я занимаюсь тем, что делаю разработку проще для коллег. Выполнение кода в продакшене является типовой задачей. Поэтому когда я услышал, что с этим есть проблемы, я решил заняться и...

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

Как настроить Linux для входа в домен с использованием алгоритмов ГОСТ Введение Протокол Kerberos 5 сейчас активно используется для аутентификации. Особенностью данного протокола является то, что он осуществляет аутентификацию, базируясь на трех китах: Симметричное шифрование Хеширование ЭЦП Третья доверенная сторона Начиная с пятой версии п...

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

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() ...

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 2 Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Я продолжаю создавать текстовую версию своего выступления на митапе по многопоточности. С первой частью можно ознакомиться здесь или здесь, там речь больше шла о базовом наборе инструментов, что...

Запускаем OpenVPN в Докере за 2 секунды Привет, хабровчане! Сталкивались ли вы когда-либо с ситуацией, когда очень хотелось бы виртуально перенестись в другой город, страну или на другой континет? У меня такая необходимость возникает достаточно часто, поэтому возможность иметь свой VPN сервер, который можно запуст...

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

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

Кластерное хранилище для небольших web-кластеров на базе drbd+ocfs2 О чем мы расскажем: Как быстро развернуть общее хранилище для двух серверов на базе решений drbd+ocfs2. Для кого это будет полезно: Туториал станет полезен системным администраторам и всем, кто выбирает способ реализации хранилища или хотят попробовать решение. От каких р...

Объектное хранилище в подсобке, или Как стать самому себе сервис-провайдером Первый прототип объектных хранилищ мир увидел в 1996 году. Через 10 лет Amazon Web Services запустит Amazon S3, и мир начнёт планомерно сходить с ума от плоского адресного пространства. Благодаря работе с метаданными и своей возможности масштабироваться, не проседая под нагр...

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

[Из песочницы] Frontend для backend девелопера Сразу хочу оговорится, что данная статья не предназначена для тех, у кого разработка frontend основная деятельность. Целевая аудитория: разработчики backend которым понадобилось срочно прикрутить web UI или просто интересуются новыми областями, ну и возможно fullstack разраб...

Пишем Reverse socks5 proxy на powershell.Часть 2 История об исследовании и разработке в 3-х частях. Часть 2 — разработческая. Буков много — пользы еще больше. В первой части статьи мы познакомились с некоторым инструментарием по организации обратных туннелей, посмотрели на их преимущества и недостатки, изучили механизм ра...

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

Создание плагина для Clang Static Analyzer для поиска целочисленных переполнений Автор статьи: 0x64rem Вступление Полтора года назад у меня появилась идея реализовать свой фазер в рамках дипломной работы в университете. Я начала изучать материалы про графы потока управления, графы потока данных, символьное исполнение и т.д. Далее шёл поиск тулз, проба р...

[Из песочницы] Идея, как можно предоставлять сотрудникам временный доступ к ресурсам клиента, не светя лишний раз пароли Небольшая предыстория После лекции на HighLoad++ 2017. Я посмотрел этот доклад, “Как мы админа увольняли”, в записи. Докладчик сказал, что все web компании испытывает проблемы с паролями, и у меня появилась идея как это решить. Скорее всего кто-то уже сделал, но, если честно...

[Из песочницы] Топ 20 ошибок при работе с многопоточностью на С++ и способы избежать их Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Top 20 C++ multithreading mistakes and how to avoid them» автора Deb Haldar. Сцена из фильма «Петля времени (2012) Многопоточность— одна из наиболее сложных областей в программировании, особенно в C++. За годы разраб...

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

[Перевод] История создания первой Diablo Больше двадцати лет назад Дэвид Бревик участвовал в создании Blizzard North. Также он сыграл важную роль в разработке хита студии — Diablo. «Оригинальный концепт я придумал ещё в старшей школе», — рассказывает Бревик, посещавший школу в Области залива Сан-Франциско (назван...

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

Пятничный JS: квайн, который играет в крестики-нолики Приветствую всех в своей традиционной рубрике, полной лавкрафтианского безумия. В процессе написания одной из прошлых статей (не ищите, она была не особенно хороша) я задумался над тем, что квайн… Да, на всякий случай напомню: квайн — это программа, которая выводит свой соб...

Fake Door как часть Customer Development У меня есть нож, есть арбалет, Они служат мне уже тысячу лет. (с) КиШ Предположим, вам надо проверить насколько новая фича будет востребована клиентами. Зачастую, это решается с помощью интервьюирования, опросов, и т.д. У этих замечательных подходов есть свои плюсы/минусы...

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

[Перевод] Тесты или типы Привет, Хабр. На днях я искал, как сделать что-то в Idris, и наткнулся на неплохой пост, вольный перевод которого выглядит вполне уместным. Вольности и отсебятину, где необходимо, я буду обозначать ⟦вот такими закорючками в начале и в конце⟧. Когда стоит использовать тесты, ...

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

DIY кнопка вызова. Raspberry Pi, MajorDoMo, Freswitch и Linphonec Какое-то время назад у меня была потребность в осуществлении связи с человеком после болезни, который не мог физически пользоваться телефоном. Нужно было простое вызывное устройство, по нажатию кнопки происходил голосовой вызов. Потребность исчезла, однако, побывав сам в бол...

SilentiumPC Signum SG1 вышел в пяти вариантах Разработчики корпуса SilentiumPC Signum SG1 решили, что просто выпустить новую модель слишком просто и они выпустили сразу пять вариантов своей новинки. Конечно, мы все понимаем, что нужно пользователю давать возможность выбирать ту модель, что его интересует больше всего. В...

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

React Native: делаем draggable & swipeable список Сегодня трудно кого-то удивить возможностью свайпать элементы списка в мобильных приложениях. В одном нашем react-native приложении тоже была такая функциональность, но недавно возникла необходимость расширить её возможностью перетаскивать элементы списка. А поскольку процес...

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

SmartCard I2C Protocol. Обмен APDU командами через I2C интерфейс Введение Некоторое время назад я принимал участие в разработке устройства, в котором было необходимо реализовать российскую криптографию. Так как в дальнейшем предполагалось это решение сертифицировать, то к реализации криптографии выдвигались определенные требования. И как ...

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

Samsung 15 марта выпустит ограниченное издание Galaxy S10+ с 12 Гбайт оперативной и 1024 Гбайт флеш-памяти С большинством характеристик, функций и вариантов дизайна будущих флагманов Samsung мы уже знакомы. Ожидается не менее четырёх основных моделей и ряд различных конфигураций, так что выбрать будет из чего. Как стало известно, один вариант запоздает минимум на неделю: купить G...

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

Huawei отказалась от американских запчастей. Откажется и от Google Mate 30 Pro — первый смартфон Huawei без американских комплектующих В эпоху глобализации, когда все так или иначе зависят друг от друга, выжить в условиях изоляции кажется практически невозможным. Поэтому, когда США запретили Huawei использовать наработки американских ...

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

Проект ИТЭР в 2018 году Проект Прошедший год для Международного Экспериментального Термоядерного Реактора ИТЭР (о проекте) стал, для внешнего наблюдателя, наверное, одним из самых спокойных за все годы строительства (с 2009 года). Для меня же лично этот год был отмечен посещением площадки ИТЭР в с...

[Из песочницы] Как я сделал кастомный прерыватель Okhttp через котлиновские корутины Начнём с постановки задачи. Надо в каждом запросе в header’s отправлять токен и id юзера Надо из каждого ответа вытаскивать из headers новый токен и id юзера Полученные данные надо сохранять Библиотека для серверного взаимодействия – Retrofit. За многопоточность отвеча...

Несем IoT в массы: результаты первого IoT-хакатона от GeekBrains и Ростелекома Интернет вещей — восходящий тренд, технология используется везде и всюду: в промышленности, бизнесе, быту (привет умным лампочкам и холодильникам, которые сами заказывают еду). Но это только начало — задач, которые можно решать при помощи IoT, великое множество. Для того...

Все процессоры Intel Comet Lake-S получат многопоточность Традиционно компания Intel выпускала центральные процессоры Core нижних уровней без поддержки Hyper-Threading. Однако на фоне конкуренции с AMD всё стало меняться.

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

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

Идея о поиске людей в лесу Эта статья описание небольшой идеи возникшей после прочтения недавней статьи «Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса» Сразу предупрежу, что у меня маловато опыта в радиотехнике, и совсем нет оного в поиске пропавших людей, так чт...

[Перевод] PEG парсеры Несколько лет назад меня кто-то спросил имеет ли смысл превести Python на PEG-парсер (или на грамматику PEG; я не помню точно кто и когда это было). Тогда я немного посмотрел на него, но так и не пришёл к какому-либо выводу, а потому и отбросил эту тему. Недавно я узнал боль...

Что-что случится 1 февраля? Не то что бы, конечно, это было первое обсуждение вопроса на Хабре. Однако до сего момента в основном обсуждались последствия, в то время как, на наш взгляд, куда интереснее первопричины. Итак, на 1 февраля запланирован DNS Flag Day. Эффекты этого события будут наступать по...

ZX Spectrum 128k своими руками. Часть 2 Первая часть здесь Все изображения кликабельны. Прошло больше года c того момента как я написал статью про сборку клона ZX Spectrum «Ленинград». И за это время его возможности существенно расширились. Не думал что я буду писать ее продолжение, но все таки статей по ретрок...

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

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

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

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

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

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

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

Слон в посудной лавке: 3D принтеры с огромным полем печати Со временем, все сталкиваются с необходимостью производства крупных деталей с помощью аддитивных технологий. А бытовые 3D принтеры, в своей основной массе, имеют относительно небольшой стол для печати (квадрат со стороной 180....220 мм). Маловато. А что делать, если хочется ...

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

Закусывание китайских кареток MGN9H Всем доброго времени суток. Процесс сборки моего нового "core-xy" сильно затянулся в связи с категорической нехваткой времени. Периодически по мелочи что-то делал и параллельно получал необходимые детали для дальнейшей сборки. По началу планировался весь каркас на конструкци...

Скачиваем аудио вконтакте через клиентский js или расширение файлов .m3u8 Как все начиналось... Как всегда, зависая вконтакте, я решил скачать пару новых аудиозаписей на комп. Но меня ждало разочарование: аудиозаписи возвращались в каком-то странном формате: m3u8. Этот формат даже vlc media pleyer не воспроизводил, и я стал думать, что делать… Чит...

Microsoft помогает разработчикам портировать игры под DirectX 12 на Windows 7 Графический интерфейс DirectX 12 является эксклюзивным для операционной системой Windows 10. Именно ради него многие любители компьютерных игр вынуждены переходить на последнюю версию операционной системы Microsoft. Без этого они ещё много лет могли бы спокойно работать на с...

Управление Raspberry через websockets Raspberry Pi снискали огромную популярность по всему миру. Однако многие из любителей-разработчиков сталкиваются с проблемой доступа к устройству из интернета. Как правило приходится необходимо колдовать с DDNS или докупать статический IP адрес. Оба варианта предполагают нас...

Первое фото OnePlus 7. Смартфон может стать слайдером 16 мая в Лондоне был представлен OnePlus 6, поэтому можно ожидать, что следующий флагман компании будет показан примерно в это же время. Пока какой-либо информации об устройстве в Сети не появляется. Логично предположить, что аппарат оснастят 10-16 гигабайтами оперативной п...

[recovery mode] «Жить в кайф» или моя история от прокрастинации к саморазвитию Здравствуй, друг. Сегодня речь не пойдет о сложных и не очень аспектах языков программирования или каком-то Rocket Sience. Сегодня я расскажу тебе короткую историю о том, как я встал на путь программиста. Это моя история и ее уже не изменишь, но если она поможет хотя бы одн...

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

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

2. Check Point Getting Started R80.20. Архитектура решения Добро пожаловать на второй урок! На этот раз мы поговорим об архитектурных особенностях решений Check Point. Это очень важный урок, особенно для тех, кто впервые знакомится с «чекпоинтом». В целом, данный урок будет очень похож на одну из наших предыдущих статей "Check Poi...

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

Представлены APU AMD Ryzen 3 3200G и Ryzen 5 3400G: дешевле аналогов Intel, быстрее предшественников Вместе с флагманским 16-ядерным процессором Ryzen 9 3950X компания AMD сегодня представила и два APU начального уровня Ryzen 3 3200G и Ryzen 5 3400G, пришедшие на смену прошлогодним моделям Ryzen 3 2200G и Ryzen 5 2400G. Новинки обещают оказаться столь же популярными (о...

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

Мониторинг сообщений в RabbitMQ Рассмотрим классическую схему построения конвейера сообщений в RabbitMQ состоящую из элементов Producer, Exchange, Queue и Consumer. Задача состоит в том, что бы организовать мониторинг происходящего в очереди и не затронуть основное программное обеспечение (ПО), добавить...

Zabbix: LLD-мониторинг SIM-карт Yeastar TG Несколько месяцев назад я обзавелся GSM-шлюзом Yeastar TG200. Оборудование само по себе хорошее, чего не сказать о яичном операторе, который периодически подкладывает свинью. Вот поэтому и появилась необходимость иметь актуальную информацию о состоянии SIM-ок и реагировать...

[Перевод] Создаём собственный игровой контроллер Источник вдохновения На игровых выставках разработчики Objects in Space показывали демо своей игры с контроллером на кокпите огромного космического корабля. Он был дополнен загорающимися кнопками, аналоговыми приборами, световыми индикаторами состояния, переключателями и т.д...

[Перевод] Создаём процедурные глобусы планет Искажения, бесшовный шум и как с ними работать. Генерируем планету Один из простейших способов генерации планеты — использование шума. Если мы решим выбрать его, то у нас есть пара возможных вариантов. Давайте рассмотрим каждый и определим лучший: Шум Перлина (Perlin Noi...

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

Мониторинг окружающей среды в серверном помещении (Bolid + Zabbix) Наверное самым простым способом для ИТ-специалиста при решении задачи мониторинга окружающей среды в серверном помещении будет использование специализированных контроллеров с выдачей данных по SNMP (например, NetBotz или NetPing). Но для тех кто не боится трудностей и хочет ...

[Перевод] Fortnite — это будущее, но по довольно неожиданным причинам Уже многое сказано о Fortnite, о её доходах, пользователях, бизнес-модели, истоках и многоплатформенности. Но вокруг всех этих историй слишком много ажиотажа. Самое главное то, как все эти достижения, дополненные остальной частью Epic Games, навечно сохранятся в индустрии р...

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

[Из песочницы] Проблема установки Ruby on Rails в конце 2019 года Всем привет любители программировать и улучшать мир к лучшему. В данном посте я расскажу как мучился с установкой Ruby on Rails, сразу скажу, до этого я никогда не сталкивался с данным решением и задание мне дал потенциальный работодатель, написать определенное решение на д...

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

Разрабатываем утилиту на GraalVM Постановка задачи Периодически у меня возникает задача поделиться файлами по локальной сети, например, с коллегой по проекту. Решений для этого может быть очень много — Samba / FTP / scp. Можно просто залить файл в общедоступное публичное место типа Google Drive, приложить к...

Исправляем паттерн проектирования — Singleton в PHP Недавно я писал о том, как сломать паттерн проектирования — Singleton в PHP. После написания статьи я искал новый вариант реализации паттерна: есть ли способ создать Singleton в PHP, не давая возможности создавать новые экзепляры класса с помощью Closure::bind()? Читать даль...

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

Microsoft предлагает плавную прокрутку для Edge на Chromium в Windows 10 Microsoft Edge доступен для тестировщиков с ограниченным набором функций, так как браузер все еще находится на ранних стадиях разработки. Microsoft также фокусируется на новых функциях, которые появятся в Edge в будущем, и компания поделилась подробностями о предстоящих улуч...

[Из песочницы] Изучаем трассировку с помощью eBPF: Руководство и примеры Привет, Хабр! Предлагаю вашему вниманию перевод статьи Брендана Грегга, посвящённой изучению eBPF На конференции Linux Plumbers было как минимум 24 выступления по eBPF. Он быстро стал не просто бесценной технологией, но и востребованным навыком. Возможно, вам хотелось бы пос...

«Не люблю ездить овощем»: Владелец LADA Vesta рассказал, почему больше не купит такую машину Собственник LADA Vesta с 1,6-литровым двигателем и МКПП рассказал, что ему не нравится в автомобиле и почему он больше не стал бы брать именно такую версию. Отзыв появился на канале «Сторож Дивана». В первую очередь владелец LADA Vesta обратил внимание на слишком громкий зв...

Передача двумерных списков из python в DLL Всем привет. Решил несколько дополнить статью C/C++ из Python. Передача стандартных типов, таких как int, bool, float и так далее довольно проста, но мало необходима. С такими данными быстро справится и сам python, и врядли у кого-то возникнет необходимость вынесения части т...

Процессоры Intel Core i5 10-го поколения впервые получит поддержку многопоточности Лёд тронулся, компания Интел зашевелилась

Видеозвонки, WebRTC и браузер: как это работает и как согреть «замерзающую» трансляцию Для большинства из нас видеосвязь в браузере — нечто вроде черного ящика. Есть изображение собеседника на экране, звук, возможность общения. Но что происходит там, внутри? Об этом сегодня и поговорим. Статья сделана на основе доклада нашего сотрудника, Кирилла Рогового....

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

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

Первый митап по Flutter в Петербурге – 26 сентября Мы в Wrike очень любим Dart и Flutter. На связке Dart+Angular пишем фронтенд основного продукта, SPA Wrike, а флаттер просто бескорыстно любим и создаем на нем внутренние тулы. Два года назад мы придумали русскоязычное сообщество дарт и флаттер разработчиков (сейчас в нем бо...

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

Как мы разработали морозоустойчивый девайс интернета вещей Привет! Меня зовут Василий Ежов, я владелец продукта «Промышленный интернет вещей» в СИБУРе. Тенденции развития современного управления таковы, что все должно быть онлайн. Особенно важно точно понимать местоположение любых движущихся объектов и сотрудников на опасном произ...

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

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

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

AERODISK Engine: Катастрофоустойчивость. Часть 1 Привет, читатели хабра! Темой этой статьи будет реализация средств катастрофоустойчивости в системах хранения AERODISK Engine. Изначально мы хотели написать в одной статье про оба средства: репликацию и метрокластер, но, к сожалению, статья получилась слишком большой, поэто...

А вы все-все за меня мониторить будете? Ага Обычно Хабр используется как информационное решение — кто-то делится наработанной и структурированной информацией, а кто-то эту информацию впитывает (я хотел написать “потребляет”, но это слово маркетологи уже испоганили). Я же, на правах старожила, и учитывая легкую рассл...

[Перевод] Доступное объяснение гипотезы Римана Посвящается памяти Джона Форбса Нэша-младшего Вы ведь помните, что такое «простые числа»? Эти числа не делятся ни на какие другие, кроме самих себя и 1. А теперь я задам вопрос, которому уже 3000 лет: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, p. Чему равно p? 31. Каким будет сл...

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

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

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

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

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

[Перевод] Конференция DEFCON 20. Захват за 60 секунд: от гостевой учётной записи до администратора домена Windows. Часть 1 Привет, я Зак Фейзел, я буду говорить быстро, если будет слишком быстро, можете меня притормозить. Днём я пентестер, ночью диджей и фотограф, меня можно найти в «Твиттере» по нику @zfazel. Люди всегда спрашивают меня насчёт дипломов. Я не из тех людей, которые перечисляют ку...

64-ядерный процессор AMD Epyc 7702P возглавил рейтинг SiSoftware, значительно опередив Intel Xeon W-3175X и AMD Ryzen Threadripper 2990WX Не представленный пока официально 64-ядерный процессор AMD Epyc 7702P засветился в рейтинге Processor Arithmetic бенчмарка SiSoftware. Причем засветился эффектно, сходу закрепив за собой первое место с большим отрывом от прежнего лидера — 28-ядерного Xeon W-3175X....

Коротко о работе с RabbitMQ из Python Так повелось, что в процессе работы в МегаФоне, приходится сталкиваться с однотипными задачами при работе с RabbitMQ. Закономерно возникает вопрос: «Как упростить и автоматизировать выполнение таких задач?» Первое решение, которое приходит в голову, использовать интерфейс ...

[Из песочницы] Сплайны в 3d графике, максимально автоматизированный вариант С месяц назад начал учить Python по книге Доусона и очнулся уже глубоко в процессе написания своей игры под pygame. ТЗ было таково, что наиболее перспективным показалось сделать игру с псевдо-трехмерной графикой, запихнув в спрайты сохраненные поверхности 3d-сплайнов. О посл...

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

[Перевод] Реверс-инжиниринг аркадного автомата: записываем Майкла Джордана в NBA Jam Прошлым летом меня пригласили на тусовку в Саннивейле. Оказалось, что у хозяев в гараже есть аркадный автомат NBA JAM Tournament Edition на четверых игроков. Несмотря на то, что игре уже больше 25 лет (она была выпущена в 1993 году), в неё по-прежнему очень интересно играть...

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

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

Отчёт с Java Virtual Machine Language Summit 2019 Сегодня закончился двенадцатый саммит JVM LS. Как обычно, это было хардкорное мероприятие с техническими докладами, посвящёнными виртуальным машинам и языкам, которые на них работают. Как обычно, саммит проходил в Санта-Кларе, в кампусе компании Оракл. Как обычно, желающих ...

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

Стало известно почему Redmi 8 получил чип Snapdragon 439 Вчера состоялась домашняя премьера Redmi 8 и Redmi 8A. Новинки должны неплохо продаваться и помогать компании делать план по количеству проданных устройств. Но есть один момент, который смутил многих — наличие чипа Snapdragon 439 у Redmi 8. После Snapdragon 632 у предш...

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

Ученые придумали способ отучить ИИ от расизма В конце января компания Amazon снова оказалась в центре скандала, связанного с ее искусственным интеллектом для распознавания лиц. Выяснилось, что ее система Rekognition не способна различить пол чернокожих людей, и поэтому сильно уступает по возможностям аналогам от Micros...

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

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

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

AMD Ryzen 5 3500: шестиядерный Zen 2 без поддержки многопоточности Как мы уже сообщали, в планы Advanced Micro Devices на обозримое будущее входит релиз не только 16-ядерного флагмана Ryzen 9 3950X, но и младшего шестиядерника Ryzen 5 3500. Данный CPU был обнаружен таиландским...

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

Что нам стоит PCI-E райзер свой построить Давным-давно собирал я себе мини-компьютер. Но вот незадача – 3D моделирование и чего уж греха таить – банальные игрушки заставляли данную коробочку сильно призадуматься, а меня — понервничать. Но просто взять и подключить видеокарту к ней нельзя — слот PCI-E X4 есть, но н...

[Из песочницы] Простой Telegram-бот на Python за 30 минут На Хабре, да и не только, про ботов рассказано уже так много, что даже слишком. Но заинтересовавшись пару недель назад данной темой, найти нормальный материал у меня так и не вышло: все статьи были либо для совсем чайников и ограничивались отправкой сообщения в ответ на сооб...

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

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

Развитие осознанности на Saint TeamLead Conf В этот раз на Saint TeamLead Conf мы решили собрать на целый поток больше докладов. В программе конференции для тимлидов будет три полноценных параллельных трека докладов, не считая традиционных митапов и воркшопов. Направления работы тимлида настолько разнообразны, что позв...

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

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

Обзор процессора AMD Athlon 200GE В нестареющей линейке процессоров AMD Athlon постоянно появляются новые продукты, ведь наследие этого бренда крайне велико. В нынешнее время указанные ЦП относятся к бюджетной категории. Эти решения созданы для обработки простых офисных операций, мультимедийных задач и для ...

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

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

[Из песочницы] Делаем расширение для браузера, проверяющее результаты ЕГЭ Я, как и любой другой выпускник, переживаю по поводу экзаменов. От баллов, полученных на ЕГЭ зависит слишком многое, поэтому сейчас трудно думать о чем то другом. Чтобы не обновлять сайт check.ege.edu.ru каждые две минуты, я решил написать расширение, которое будет делать э...

Обмен секретными сообщениями через серверные логи Согласно определению в Википедии, тайник (dead drop) — это инструмент конспирации, который служит для обмена информацией или какими-то предметами между людьми, использующими секретное местоположение. Смысл в том, что люди никогда не встречаются — но при этом обмениваются инф...

[Перевод] Реализация PEG парсера Вдохновленный лишь частичным пониманием PEG, я решил попробовать его реализовать. Результат может получиться и не самым лучшим среди парсеров PEG общего назначения — их уже много (например, TatSu написан на Python и генерирует код Python) — но это хороший способ разобраться ...

[Перевод] Thinking with Portals: создаём порталы в Unreal Engine 4 В этой статье я расскажу, как создавать порталы в Unreal Engine 4. Я не нашёл никаких источников, подробно описывающих такую систему (наблюдение сквозь порталы и проход через них), поэтому решил написать собственную. Что такое портал? Давайте начнём с примеров и объяснения...

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

Просто и на C++. Основы Userver — фреймворка для написания асинхронных микросервисов В Яндекс.Такси придерживаются микросервисной архитектуры. С ростом количества микросервисов мы заметили, что разработчики много времени тратят на boilerplate и типичные проблемы, при этом решения не всегда получаются оптимальные. Мы решили сделать свой фреймворк, с C++17 и ...

noexcept-ctcheck или несколько простых макросов, чтобы компилятор помогал при написании noexcept кода При разработке на C++ время от времени приходится писать код, в котором исключения не должны возникать. Например, когда нам нужно написать не бросающий исключений swap для собственных типов или определить noexcept move-оператор для своего класса, или вручную реализовать нетр...

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

Как выбрать Open Source лицензию для RAD фреймворка на GitHub В этой статье мы немного поговорим об авторском праве, но в основном о выборе свободной лицензии для RAD фреймворка IONDV. Framework и для опенсорсных продуктов на его основе. Мы расскажем о разрешительной лицензии Apache 2.0, о том, что привело нас к ней и с какими решениям...

Пишем краулер на раз-два 1.0 Веб-краулер (или веб-паук) — это важная составная часть поисковых систем для обхода веб-страниц с целью занесения информации о них в базы данных, в основном, для их дальнейшей индексации. Такая штука есть у поисковиков (Google, Yandex, Bing), а также у SEO-продуктов (SEMrush...

Словарь рекламных метрик.  CTR, CPI, CPM, CPC, CR Для того, чтобы оценить качество рекламных компаний существует большое количество различных метрик. Все они давольно таки простые для понимания, но чтобы было проще ориентироваться, в данном посте будут описаны основные из них. Разберем один из стандартных процессов попа...

Власти России в четыре раза урезали финансовую поддержку 5G и интернета вещей Первый вариант этого документа, подготовленный в мае 2019 г., предполагал астрономическую сумму затрат на развитие беспроводных технологий в России - более 1 трлн руб. за период до 2024 г. В том числе 550 млрд руб. предполагалось потратить на спутниковую связь, 423 млрд руб....

CLRium #6: Парный доклад про Lock-Free, много теории и практически-полезных знаний Совсем скоро, 29-30 ноября в Санкт-Петербурге и 06-07 декабря — в Москве мы запустим шестой семинар по .NET. На этот раз — по теме многопоточки и конкурентности. Мы уже писали об этом пару раз на Хабре, но сегодня — День Программиста и есть отличный повод дать вам всем компл...

[Из песочницы] Делим Laravel на компоненты Привет, Хабр. Недавно получил в руки интересный проект, который, несмотря на свою простоту требовал не использовать какой-либо фреймворк. О пакетах речи не шло, поэтому было принято решение использовать привычные компоненты Laravel. Если есть необходимость в использовании оч...

MPS 2019.2: перечисляемые типы данных, настройка сообщений об ошибках, переход на JDK 11 и многое другое В MPS 2019.2 мы подготовили для вас много новых функций в различных подсистемах и исправили ряд ошибок. Скачать MPS 2019.2 Перечисляемые типы данных Новый способ объявления перечисляемых типов данных позволяет определить список вариантов в компактной форме, указав для к...

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

MMX Registry потерпел огромный убыток из-за домена .LONDON Крупный регистратор новых gTLD MMX Registry сообщил об огромных убытках компании в прошлом году.Не так давно мы говорили о положительных итогах 2018 года для MMX Registry. Достижений действительно немало, однако наряду с ними у компании был и крупный провал.По итогам года ко...

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

Корпус Aerocool Cylon Mini TG Black: экономное решение со стеклянной стенкой для плат формата microATX Aerocool Cylon Mini TG Black — решение эконом-класса. Из его особенностей можно выделить стеклянную боковую стенку, что у корпусов подобной стоимости встречается весьма редко. Система подсветки, которая тут также имеется (яркая полоса, пересекающая по диагонали переднюю пане...

[Перевод] Последствия переписывания компонентов Firefox на Rust В прошлых статьях цикла мы обсудили безопасность памяти и безопасность потоков в Rust. В этой последней статье посмотрим на последствия реального применения Rust на примере проекта Quantum CSS. Движок CSS применяет правила CSS на странице. Это нисходящий процесс, который с...

[Перевод] Бесплатная библиотека Wolfram Engine для разработчиков программного обеспечения Оригинал перевода в моём блоге Пара видео о Wolfram Language Почему вы до сих пор не используете технологии Wolfram? Что ж, такое случается, и довольно часто. В процессе общения с разработчиками программного обеспечения, они достаточно лестно отзываются о наших технология...

[Из песочницы] Python + Pyside2 или просто «Калькулятор» Привет, Хабр! Меня зовут Саша. Я Junior разработчик. Работаю тестировщиком ПО. В основном я пишу тесты при помощи Python+Selenium, но Python стал настолько интересен, что мне захотелось углубиться в него и выучить как можно больше фреймворков! Я захотел написать десктопное ...

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

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

Wargaming Platform: Hello World WTF is Platform? В Wargaming есть отдельное подразделение, которое занимается… занимается разработкой некой «платформы» для издания игр. Объяснить, что такое Платформа, чем она является и не является, весьма сложно — но я попробую. Почему появилась статья Привет! Меня зовут ...

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

Визуализация сортировок обменами В данной статье рассматриваются различные варианты сортировки обменами, а также даётся описание простого графического приложения (processing.js) с примерами сортировок. Перед прочтением рекомендую ознакомиться со статьями: → Сортировка обменами → Пузырьковая сортировка ...

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

Sberbank AI Journey. Как мы учили нейросеть сдавать экзамен Если вы закончили школу уже во времена ЕГЭ, то вам известно, что все задания в нём имеют набор стандартных формулировок и упорядочены по типам. С одной стороны, это облегчает подготовку к экзамену: школьник уже знает, что нужно делать в задании, даже не читая его условия. С ...

[Перевод] Мета-грамматика для PEG парсера На этой неделе мы делаем генератор парсеров «самостоятельным», то есть он будет генерировать свой собственный парсер. Содержание серии статей о PEG-парсере в Python PEG парсеры Реализация PEG парсера Генерация PEG парсера Визуализация работы PEG парсера Леворекурсивные PEG г...

Что нужно знать о JavaScript Engine Switcher 3.0 JavaScript Engine Switcher изначально создавался как вспомогательная библиотека и его развитие во многом определялось потребностями библиотек, которые его использовали. Фактически каждая его мажорная версия решала одну или несколько крупных задач необходимых для дальнейшего...

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

Windows: узнаём, кто где залогинен — Ой, у меня ничего не работает, помогите! — Не переживайте, сейчас всё исправим. Назовите имя компьютера… (классика жанра из звонков в техподдержку) Хорошо, если у вас есть инструмент а-ля BgInfo или ваши пользователи знают про шорткат Windows+Pause и умеют его нажимать...

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

Деливерим фичи быстрее. Опыт Android-разработки в Badoo Всем привет! Меня зовут Анатолий Варивончик. Я работаю в Badoo уже больше года, а мой общий стаж Android-разработки — более пяти лет. В своей практике я и мои коллеги часто сталкиваемся с необходимостью тестировать идеи максимально быстро и просто. Мы не хотим тратить много...

[Перевод] Будущее контент-маркетинга: тренды, тактика и инструменты За последнее десятилетие контент-маркетинг быстро вырос. Каждый крупный бренд пытается привлечь в сети все больше и больше клиентов, и на то есть веская причина. Контент-маркетинг давно известен своими (сравнительно) низкими первоначальными затратами и долгосрочными преим...

[Из песочницы] Создание Google пользователей из PowerShell через API Привет! В этой статье будет описана реализация взаимодействия PowerShell с Google API для проведения манипуляций с пользователями G Suite. В организации мы используем несколько внутренних и облачных сервисов. По большей части авторизация в них сводится к Google или Active ...

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

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

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

Зачем нам на производстве AR и VR Привет! AR и VR — штуки модные, сейчас приложения с их использованием не сделал только ленивый (или тот, кому оно просто не надо). От Oculus до MSQRD, от простых игрушек, радующих детишек появлением динозавра в комнате, до прикладных приложений вида «Расставь мебель в своей ...

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

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

Google научила Google Assistant работать без интернета. Как это? Google Assistant может работать и без интернета Если вы начали пользоваться интернетом хотя бы в начале нулевых годов, то наверняка помните, на какие жертвы приходилось идти, чтобы попасть в сеть. Тогда самым распространённым способом подключения к интернету было использован...

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

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

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

[Перевод] 63 ядра заблокированы семью инструкциями Кажется, у меня появилась привычка писать о мощных машинах, где множество ядер простаивают из-за неправильных блокировок. Так что… Да. Опять про это. Эта история особенно впечатляет. В самом деле, как часто у вас один поток несколько секунд крутится в цикле из семи команд, ...

Решение задания с pwnable.kr 01 — fd. Файловые дескрипторы и процессы В данной статье разберем: что же такое файловый дескриптор, как процессы получают доступ к определенным потокам ввода/вывода, и решим первое задание с сайта pwnable.kr. Читать дальше →

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

Самые редкие и самые дорогие языки программирования Принято считать, что языки программирования, такие как Rust, Erlang, Dart, а также некоторые другие являются самыми редкими в мире IT. Поскольку я подбираю IT специалистов для компаний, постоянно контактируя с айтишниками и работодателями, я решила провести личное исследован...

Гигантская литий-ионная батарея в Австралии станет на 50% больше В 2017 году компания Tesla за короткий срок построила в Австралии на тот момент крупнейшее в мире хранилище электроэнергии, основанное на литий-ионных аккумуляторах. Проще говоря, это самая большая в мире литий-ионная батарея. Ёмкость хранилища — 129 МВт·ч...

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

«Чистый японец»: О преимуществах праворульного Toyota Land Cruiser Prado рассказали в сети Автомобилисты обсудили преимущества «Прадика» с правым расположением руля. В сети рассказали о преимуществах праворульного Toyota Land Cruiser Prado перед леворульным. Больше всего мнений относилось к общеизвестному факту о том, что праворульные «Прадо» выпускались японским...

Новая графическая панель для Smoothieware Приветствую любителей сделать что-то своими руками.Какие виды экранов используются для 3D принтеров? Текстовые, графические монохромные нескольких видов с разрешением128х64 и полностью графические с тачскрином типа MKS TFT. Для плат с прошивкой Smoothieware подходят фактичес...

Расширение макроса assert() для реализации минимальной обработки ошибок – Сир, я придумал защиту от дракона. Он нам больше не страшен! Она срабатывает от взмахов крыльев дракона и включает громкую сирену, так чтобы все слышали, что приближается дракон. – Что-нибудь ещё эта защита делает? – Нет, зачем? Мы будем предупреждены! – Да… Съедены под во...

Как 3d принтер спас рыбалку Всем доброго времени суток!Сегодня очередная история для тех, кто вечно спрашивает: "нафига ты купил 3d принтер?".ИсторияСовсем недавно у меня появился старенький (но как потом оказалось, весьма бодренький) лодочный мотор Yamaha 6B 1980-х годов выпуска. Лежал он у коллеги N-...

Строительные блоки распределенных приложений. Первое приближение В прошлой статье мы разобрали теоретические основы реактивной архитектуры. Пришло время поговорить о потоках данных, путях реализации реактивных Erlang/Elixir систем и шаблонах обмена сообщениями в них: Request-response Request-Chunked Response Response with Request Publis...

Reaktive — мультиплатформенная библиотека для реактивного Kotlin Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный ...

Два варианта смартфона Samsung Galaxy A90 прошли сертификацию Bluetooth SIG База данных организации Bluetooth Special Interest Group (SIG) стала источником новой, хоть и небольшой порции информации о смартфоне Samsung Galaxy A90. В базе появились записи, свидетельствующие о сертификации двух вариантов Galaxy A90 — SM-A908N и SM-A908B. Оба...

Некролог на смерть Chromecast Audio: Google убил черные диски Несколько дней назад www.reddit.com сообщил, что Googlе прекращает выпуск Chromecast Audio, устройства, которое в свое время стало одним из самых удобных альтернатив большим мультирум системам. Для тех, кто успел забыть, что это за штуковина, напомню, что это такой диск, кот...

Глава Xiaomi: абсолютно все версии Mi 9 Pro 5G оснащены модемом 5G, а рассказ о фишках модели займет не менее двух часов Генеральный директор Xiaomi Лей Цзунь (Lei Jun) уже рассказывал кое-что о новом флагмане компании Mi 9 Pro 5G, но много подробностей никогда не бывает. На этот раз топ-менеджер решил уточнить кое-что относительно конфигурации модели. Точнее, Лей Цзунь не сам решил уточ...

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

[Из песочницы] Как маленькая программа превратила маленькую контору в федеральную компанию с прибылью 100+ млн.руб/месяц В конце декабря 2008 года меня пригласили в одну из служб такси г.Перми с целью автоматизации существующих бизнес-процессов. В целом передо мной были поставлены три фундаментальные задачи:
 Разработать программный комплекс для call центра с мобильным приложением для водител...

Scala + MXNet = Микросервис с нейронкой в проде В интернете есть огромное количество руководств и примеров, на основе которых вы, дорогие читатели, сможете «без особого труда» и с «минимальными» временными затратами написать код, способный на фото отличать кошечек от собачек. И зачем тогда тратить время на эту статью? О...

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

Inside The JeMalloc. Базовые Структуры Данных: Pairing Heap & Bitmap Tree Тема Аллокаторов частенько всплывает на просторах интернета: действительно, аллокатор — эдакий краеугольный камень, сердце любого приложения. В этой серии постов я хочу в подробностях рассказать о одном весьма занимательном и именитом аллокаторе — JeMalloc, поддерживаемый ...

Как внедрить аналитику и не сломать приложение? Привет! Меня зовут Соснин Илья. Я работаю в Lamoda Android разработчиком. Крашу кнопочки, прогаю списочки и, к сожалению, пишу аналитику… Lamoda — это Data Driven Company, в которой все решения принимаются на основе поведения пользователей. Сначала мы наблюдаем и только пот...

Импортозамещение на практике. Часть 1. Варианты Введение В связи с тем, что близится 2020 год и «час хэ», когда нужно будет отчитаться об исполнении приказа Минкомсвязи о переходе на отечественное ПО (в рамках импортозамещения), да не простое, а из реестра Минкомсвязи, мне прилетела задача о разработке плана, собственно...

В Samsung Galaxy Note10 не будет разъема для наушников и, возможно, физических кнопок Официальная презентация Samsung Galaxy Note10 должна состояться уже в конце лета, и в сети начинает появляться все больше информации о новинке. Если верить одному из рендеров, то фронтальную камеру снова разместят в отверстии, но посередине дисплея. Основная камера будет тр...

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

[Перевод] Подготовка к Spring Professional Certification. Spring REST Сегодняшняя статья рассмотрит основные вопросы про REST в Spring. Она будет особенно полезна для начинающих программистов. Официальный гид от Pivotal, в котором написано про темы для подготовки. Оглавление Внедрение зависимостей, контейнер, IoC, бины AOP (аспектно-ориентир...

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

Зачем мы делаем Enterprise Service Mesh Service Mesh — известный архитектурный паттерн для интеграции микросервисов и перехода на облачную инфраструктуру. Сегодня в облачно-контейнерном мире обойтись без него довольно сложно. На рынке уже доступны несколько open-source реализаций service mesh, но их функциональнос...

[recovery mode] Как я отказался от Ruby в пользу Python, работая над бэкендом Перевели для вас статью Бенуа Зен, разработчика ПО в компании Sqreen. Бенуа работает над backend веб-сервиса и недавно перешел с Ruby на Python. В 2008 году, когда я еще учился на разработчика ПО, два моих друга решили основать компанию, назвав ее Feedbooks. Их целью бы...

Об open-source реализациях хэш-функции ГОСТ Р 34.11-2012 и их влиянии на электронную подпись ГОСТ Р 34.10-2012 В свое время реализация отечественных криптографических алгоритмов в библиотеке libgcrypt очень меня вдохновила. Стало возможным задействовать эти алгоритмы и в Kleopatra и в Kmail и в GnuPg в целом, рассматривать библиотеку libgcrypt как алтернативу openssl с ГОСТ-ым engine...

[Перевод] Основы Dart Streams Это вторая часть моей серии по поводу Flutter Architecture: Введение Основы Dart Streams (этот пост) RxDart: магические трансформации потоков Основы RxVMS: RxCommand и GetIt RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользователя посредством R...

[Из песочницы] Беспроводной программируемый по Wi-Fi комнатный термостат с монитором качества воздуха и другими полезными функциями В системе автономного отопления моей квартиры работает выпускаемый серийно беспроводной комнатный термостат. Система, конечно, функционирует и без него: термостат был приобретен для экономии расхода газа и повышения комфорта. Вещь очень полезная, но, на мой взгляд, несколько...

[Перевод] Реализуем UI в iOS: улучшаем, ускоряем, масштабируем Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. При создании мобильных приложений большая часть времени уходит на разработку UI, и оптимизация этого процесса всегда является актуальной темой в среде разработчиков. Мой коллега А...

[recovery mode] Как сделать мобильную игру командой из 2 человек с нулевым бюджетом и получить фичеринг в Google Play Мы с мужем давно хотели делать игры вместе, но времени на это никогда не хватало. Мы оба работали: он — UI-программистом в геймдеве, я — продакт-менеджером в social media, затем в финтехе, и сил на собственную игру не оставалось. Год назад мы переехали в Канаду и решили, ...

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

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

[Из песочницы] Введение в MS Dynamics CRM Привет Хабр! В этой статье хотелось бы рассказать о некоторых стандартных возможностях Dynamics CRM (для понимания что это вообще такое), её основных бизнес процессах и средствах расширения функционала прямо из коробки. Читать дальше →

[Перевод] В двух словах о привилегиях Linux (capabilities) Перевод статьи подготовлен специально для студентов курса «Администратор Linux». Привилегии (capabilities) используются всё больше и больше во многом благодаря SystemD, Docker и оркестраторам, таким как Kubernetes. Но, как мне кажется, документация немного сложна для понима...

Post-mortem отладка на Cortex-M Post-mortem отладка на Cortex-M Предыстория: Участвовал я недавно в разработке нетипичного для меня девайса из класса потребительской электроники. Вроде ничего сложного, коробка, которая должна иногда выходить из спящего режима, отчитываться серверу и засыпать обратно. Прак...

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

[Перевод] Каскадная инвалидация кэша. Часть 2 В первой части перевода материала, посвящённого каскадной инвалидации кэша, мы обсудили сущность проблемы и рассмотрели один из вариантов её решения, который заключается в использовании карт импорта. Его плюс — лёгкость реализации. А минус — слабая поддержка браузерами. Сего...

[Перевод] Эдвард Сноуден рассказывает, почему он стал информатором Отрывок из книги «Постоянная запись»; как молодой человек, работавший системным администратором, обнаружил посягательства на свободу и решил предать гласности обширную американскую систему слежки за гражданами Когда мне было 22, я устроился на работу в американскую развед...

Факты о приложениях с функцией родительского контроля Apple всегда считала, что у родителей должны быть инструменты для управления использованием устройств их детей. Именно поэтому мы создали и …

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

[Из песочницы] Визуализация времени возрождения Рошана В данной статье рассматривается перехват функций графического API на примере DirectX 9 под x64 применительно к игре Dota 2. Будет подробно рассказано, как внедриться в процесс игры, как изменить поток выполнения, приведено краткое описание внедряемой логики. В конце поговор...

Пишем XGBoost с нуля — часть 1: деревья решений Привет, Хабр! После многочисленных поисков качественных руководств о решающих деревьях и ансамблевых алгоритмах (бустинг, решающий лес и пр.) с их непосредственной реализацией на языках программирования, и так ничего не найдя (кто найдёт — напишите в комментах, может, что...

Глава Honor объяснил, почему смартфонам не нужны 100-мегапиксельные камеры Камера на 100 Мп — это перебор, уверен гендиректор Honor Камера сегодня является, пожалуй, единственным аспектом современных смартфонов, который хоть как-то развивается. Очевидно, поняв, что больше невозможно выезжать на процессорных ядрах и гигагерцах, которые неожида...

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

Человек без смартфона Мне 33 года, я программист из Санкт-Петербурга и у меня нет и никогда не было смартфона. Не то чтобы он был мне не нужен — нужен, даже очень: я работаю в IT сфере, у всех членов моей семьи они есть (у ребенка уже третий), мне приходилось руководить в том числе и мобильной ра...

WebComponents как фреймворки, взаимодействие компонентов Когда разговор заходит о веб компонентах, часто говорят: «Ты что хочешь без фреймворков? Там же все готовое». На самом деле есть фреймворки созданные на основе реализаций стандартов входящих в группу веб компонентов. Есть даже относительно неплохие, такие как X-Tag. Но сегод...

+2 CPU линейки Comet Lake. Intel выпустила двухъядерные Pentium Gold 6405U и Celeron 5205U для ноутбуков В официальной базе данных процессоров Intel прописались два новых процессора: Pentium Gold 6405U и Celeron 5205U. Новинки относятся к семейству Comet Lake и предназначены для применения в ноутбуках. Впрочем, ожидается их использование также и в мини-ПК NUC. Обе модели...

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

[recovery mode] Расширение (плагин) SketchUp для проектирования мебели программистом При расчете стоимости новой кухни цена оказалась такой большой, что я решил сделать её сам так как это обойдется в два раза дешевле. Для тренировки решил сделать для себя рабочий стол. Достаточно быстро пришло понимание: чтобы сделать хорошую вещь нужно сделать 3D модель. Эт...

Создана альтернатива тёмной теме на смартфонах Тёмная тема оформления появляется как в операционных системах для мобильных устройств, так и в приложениях для смартфонов. При этом в Opera решили пойти дальше и в новой Opera 54 для Android предложили сразу 10 вариантов оформления браузера. «Opera была в числе первых прилож...

[Из песочницы] PHP: Как разобрать сложный XML-файл и не утонуть в собственном коде Доброе время суток! Сфера применения XML-формата достаточно обширна. Наряду с CSV, JSON и другими, XML — один из самых распространенных способов представить данные для обмена между различными сервисами, программами и сайтами. В качестве примера можно привести формат Commerc...

Cron в Linux: история, использование и устройство Классик писал, что счастливые часов не наблюдают. В те дикие времена ещё не было ни программистов, ни Unix, но в наши дни программисты знают твёрдо: вместо них за временем проследит cron. Утилиты командной строки для меня одновременно слабость и рутина. sed, awk, wc, cut и ...

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

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

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

[Из песочницы] Создаем простой сервис коллтрекинга, часть 1 В рамках статьи будет рассмотрен один из возможных вариантов реализации коллтрекинга на сайте. Данный материал написан сугубо в образовательных целях и не несет в себе цели замены существующих специализированных сервисов, предоставляющих услугу «calltracking». Требования к ...

Лучшие среднебюджетные процессоры для смартфонов (2019) Флагманы, флагманы, флагманы — мы слишком часто обсуждаем только флагманские решения. Поэтому в этот раз предлагаю рассмотреть наилучшие процессоры для смартфонов среднего ценового сегмента. Pocophone F1 за 300 долларов является бюджетным вариантом, но это скорее искл...

[Перевод] Выученные уроки через 40 лет после взлёта и быстрого падения первого «убойного приложения» Помните VisiCalc, первую в мире электронную таблицу? А сегодняшние технологические гиганты помнят – именно поэтому они скупают и вкладываются в потенциальных конкурентов Изначально программа VisiCalc работала только на Apple II. Она стоила $100, а компьютер – не менее $200...

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

Спустя 28 лет после появления Sega CD в продажу поступил аппаратный эмулятор приставки Sega CD — дополнительное устройство для консоли Sega Mega или Genesis, которое появилось в самом начале 90-х. Оно расширяло возможности самой консоли, позволяя играть с компакт-диска, слушать аудио в хорошем качестве, воспроизводить игры, записанные на CD+G. Компакт-диски з...

Генерация кода для бекенда. Что генерировать, как и зачем? Я хочу показать в этой статье как у нас в фирме генерируется бекенд (и немного фронтенд) код, зачем вообще это нужно и как это лучше делать. Что именно будем генерировать — не так важно. Важно что мы опишем 3 вида объектов на основе которых сгенерируем взаимодействие фронте...

Linux Backup от Veeam на ОС «Эльбрус». Импортозамещение ['?' | '.' | '!'] Всем привет. Недавние статьи на Хабре Импортозамещение на практике. Часть 1. Варианты и Не долго музыка играла… или как ОС Эльбрус так и не стала свободной не оставили меня равнодушным. Я решил поизучать этот вопрос в ключе задачи резервного копирования. Тем более, что в э...

ИТ-трансформация неизбежна: с чего начать «Не важно, что ты делаешь, важно, как ты это делаешь». Это простое наблюдение из жизни часто применяется к инициативам и технологиям в области ИТ. Желание делать все хорошо и даже очень хорошо, быстро и продуктивно, становится первым шагом на пути к цифровизации. Но, решив с...

[Перевод] Стримим экран на несколько устройств по сети Возникла у меня необходимость выводить дашборд с мониторингом на несколько экранов в офисе. В распоряжении имеется несколько стареньких Raspberry Pi Model B+ и гипервизор с практически неограниченным количеством ресурсов. По видимому Raspberry Pi Model B+ не обладает достат...

Новый продукт Xiaomi явно скопирован у Apple Компания Xiaomi сегодня представила смартфон Redmi Note 7 — первенца теперь уже отдельного бренда Redmi. Впрочем, кроме своего маркетингового статуса аппарат выделяется разве что 48-мегапиксельной камерой. Чуть позже Xiaomi показала фирменные чехлы д...

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

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

Представлено восемь процессоров AMD Ryzen Pro 3000 Компания AMD представила процессоры Ryzen Pro 3000, которые найдут свое применение в настольных ПК партнеров AMD – HP, Lenovo и других. Отметим три топовые новинки: 12-ядерную Ryzen 9 PRO 3900 с частотами 3,1-4,3 ГГц, восьмиядерную Ryzen 7 PRO 3700 с частотами 3,6-4,4 ГГц и ...

[Перевод] PostgreSQL 11: Эволюция секционирования от Postgres 9.6 до Postgres 11 Отличной всем пятницы! Все меньше времени остается до запуска курса «Реляционные СУБД», поэтому сегодня делимся переводом еще одного полезного материала по теме. В процессе разработки PostgreSQL 11 была проделана впечатляющая работа по улучшению секционирования таблиц. Секц...

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

Huawei представит новый смартфон Huawei Enjoy 9e 25 марта в Китае компания Huawei проведет мероприятие, на котором будут представлены смартфоны Enjoy 9S и Enjoy 9e. Спецификации и изображения 9e уже просочились в интернет. Снимки Enjoy 9e показывают, что он похож на Enjoy 9S, за исключением того, что у него большая рамка ...

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

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

Tarantool запускает новый продукт – Tarantool Data Grid Команда системы управления базами данных Tarantool, собственного решения Mail.Ru Group, запустила продукт Tarantool Data Grid — готовое enterprise-решение для разработки распределенных бизнес-приложений, работающих с большими потоками данных, которое имеет удобные инструмент...

Принципы документирования и локализации, или как получить хорошую локализацию минимальными затратами Всем привет! Меня зовут Денисов Александр. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC). В этой статье расскажу о тех проблемах, с которыми мы сталкивались при локализации NCC на английский и нем...

Еще один вариант среды для разработки WordPress (docker, wp-cli) Есть официальные образы для развертывания WordPress и использования wp-cli. Но при их совместном использовании мне приходилось расшаривать всю папку WordPress и хотелось, чтобы было больше возможностей для кастомизации установки. Очень хотелось после запуска контейнера видет...

Опыт перевода Maven-проекта на Multi-Release Jar: уже можно, но ещё сложно У меня есть маленькая библиотека StreamEx, которая расширяет возможности Java 8 Stream API. Библиотеку я традиционно собираю через Maven, и по большей части меня всё устраивает. Однако вот захотелось экспериментов. Некоторые вещи в библиотеке должны работать по-разному в раз...

[Перевод] Создание калькулятора чаевых на Kotlin: как это работает? Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, ч...

Как мы сдружили EF 6 с MSSQL и PostgresSQL Жил-был проект на EF 6 с СУБД MSSQL. И появилась необходимость добавить возможность его работы с СУБД PostgreSQL. Проблем здесь мы не ожидали, ведь есть большое количество статей на эту тему, и на форумах можно найти обсуждение похожих задач. Однако, на деле не все оказало...

Анализ результатов 2018 Kaggle ML & DS Survey Kaggle — известная платформа для проведения соревнований по машинному обучению на которой количество зарегистрированных пользователей перевалило за 2.5 миллиона. В соревнованиях участвуют тысячи data scientist из разных стран, и Kaggle стал интересоваться тем, что из себя п...

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

[Из песочницы] Как я проектирую СКС Эта статья родилась в ответ на статью «Идеальная локальная сеть». Я не согласен с большинством тезисов автора, и хочу в этой статье не только их опровергнуть, но и выдвинуть свои тезисы, которые потом буду защищать в комментариях. Далее я расскажу о нескольких принципах, к...

Что известно о новой крупной уязвимости в процессорах Intel и как защититься от ZombieLoad и других атак Проблема касается всех CPU, выпущенных после 2011 года, а инженеры Google и Apple считают, что для полной защиты от атак нужно отключить технологию многопоточности Hyper-Threading, что снизит производительность до 40%. ...

Разработка простейшей «прошивки» для ПЛИС, установленной в Redd, и отладка на примере теста памяти Как-то у меня не получается выражать свою мысль коротко. Прошлой осенью возникло желание рассказать поподробнее про освоенную мною архитектуру PSoC, что вылилось в цикл статей про неё. Сейчас я участвую в подготовке аппаратной части для нашего комплекса удалённой отладки Red...

Reactor, WebFlux, Kotlin Coroutines, или Асинхронность на простом примере Многие сервисы в современном мире, по большей части, «ничего не делают». Их задачи сводятся к запросам к другим базам/сервисам/кешам и агрегации всех этих данных по различным правилам и разнообразной бизнес-логике. Поэтому неудивительно, что появляются такие языки, как Go...

Microsoft ML Spark: расширение Spark, делающее SparkML человечнее, и LightGBM как бонус Многие, кто работал с Spark ML, знают, что некоторые вещи там сделаны "не совсем удачно" или не сделаны вообще. Позиция разработчиков Spark в том, что SparkML — это базовая платформа, а все расширения должны быть отдельными пакетами. Но это не всегда удобно, ведь Data Scient...

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

Как подружить Ovirt и Let's Encrypt Шагая по пути улучшения инфраструктуры, я решил добить древний и мучительный вопрос — без лишних телодвижений предоставлять возможность коллегам (разработчикам, тестировщикам, админам, etc ) самостоятельно управлять своими виртуалками в ovirt'е. В ovirt есть несколько компон...

Мнение: почему я больше не пользуюсь iMessage Все любят iMessage. Пользователи iPhone испытывают к нему теплые чувства, потому что именно он был их первым мессенджером, несмотря на то что Telegram и WhatsApp уже существовали. А поклонники Android мечтают о нём из-за его недосягаемости. Но если раньше iMessage, в общем-...

Apple рассматривает возможность оснащения своих умных часов камерой Когда умные часы только начали появляться на рынке, немало моделей было оснащено камерами. Причём далеко не только у неизвестных китайских производителей — достаточно вспомнить модели Samsung Gear Neo. Сейчас производители поняли, что камера в часах — решен...

Зачем нужны промышленные коммутаторы с улучшенной ЭМС? Из-за чего в ЛВС могут теряться пакеты? Варианты есть разные: неправильно настроено резервирование, сеть не справляется с нагрузкой или ЛВС «штормит». Но причина не всегда кроется в сетевом уровне. Читать дальше →

Rust + CLion = Любовь Привет, Хабр! В общем как я обещал вот рассказ о том как CLion в качестве IDE для Rust на MacOS использовать. Почему не IntelliJ IDEA? Потому что CLion может дебажить. Почему LLDB, а не GDB? Потому что LLDB у меня вместе с XCode был установлен. Мне нравиться эта IDE и наде...

Почти уволен. Как я построил отдел аналитики Яндекса Меня зовут Алексей Долотов, я 10 лет не писал на Хабр. Отчасти дело в том, что когда мне было 22 года, я начал строить отдел аналитики Яндекса, затем семь лет им руководил, а теперь придумал и строю сервис Яндекс.Таланты. Профессия аналитика даёт массу возможностей. Главное...

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

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

Arasan выпустила на рынок решение MIPI D-PHY IP Компания Arasan сообщила о выпуске на рынок решения MIPI D-PHY IP, отвечающего версии 2.1 спецификации D-PHY, с поддержкой скорости на уровне до 4,5 ГГц. D-PHY v2.1 IP можно приобрести как в качестве стандартной пары Tx / Rx, так и в моно-варианте Tx или Rx для максимальной ...

Разработчики программ для новой ОС Huawei не могут работать Санкции со стороны США и последовавший отказ Google от предоставления своих сервисов и операционной системы Android для смартфонов Huawei вынудил китайскую компанию искать выход из сложившейся ситуации. Решением стала собственная операционная система HarmonyOS, на которую ра...

Мысленный эксперимент: Flutter на Go Совсем недавно я открыл для себя Flutter – новый фреймворк от Google для разработки кроссплатформенных мобильных приложений – и даже имел возможность показать основы Flutter человеку, который никогда не программировал до этого. Сам Flutter написан на Dart – языке, родившимся...

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

Facebook представил новую стратегию управления ставками Facebook анонсировал запуск новой стратегии управления ставками – Cost Cap (предельная цена). Нововведение призвано помочь рекламодателям максимизировать эффективность затрат и количество конверсий. Ранее в сервисе было доступно два варианта управления ценой: предельная став...

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

Круче, чем у SpaceX: Германский центр авиации и космонавтики предлагает ловить первую ступень многоразовой ракеты... самолётом Согласно сообщению источников, Германский центр авиации и космонавтики (Deutsches Zentrum für Luft - und Raumfahrt; DLR) приступает в этом месяце к исследованию концепции многоразовой ракеты-носителя. Учитывая, что SpaceX уже всем давно доказала состоятельность по...

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

5 способов деплоя PHP-кода в условиях хайлоада Если бы хайлоад преподавали в школе, в учебнике по этому предмету была бы такая задача. «У соцсети N есть 2 000 серверов, на которых 150 000 файлов объемом по 900 Мб PHP-кода и стейджинг-кластер на 50 машин. На серверы код деплоится 2 раза в день, на стейджинг-кластере код о...

[Из песочницы] 2 минуты с Webpack tree-shaking и re-export Вступление Позвольте мне начать. У нас был монолитный фронтэнд с большим наследием. Сервисы жили в одних файлах с компонентами. Всё было вперемешку и с лозунгом на фасаде: “Пусть всё будет под рукой – так легче найти, что надо". И не важно, что длина файла 200+, 300+, 5...

[Перевод] Простите, пользователи macOS, но Apple зашла слишком далеко Несколько лет назад, когда был выпущен первый релиз Cogmind, я без предрассудков относился к выпуску официальной версии под Mac. В конце концов, Cogmind — моя первая коммерческая игра, раньше я выпускал только хобби-проекты в статусе freeware и только под Windows, поэтому н...

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

Как сгенерировать гипотезы о потребностях потенциальных потребителей вашего будущего продукта Подавляющее большинство бизнесов умирает потому, что предлагают продукт, который не нужен потребителям. Это известное высказывание Эрика Риса, автора методики Lean Startup. Как не попасть в эту ловушку со своим проектом? Ответ прост – прежде чем делать продукт, нужно прове...

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

Google Drive как хранилище для веб-приложения Предисловие Мое веб-приложение хранит данные в localStorage. Это было удобно, пока не захотелось, чтобы пользователь, заходя на сайт с разных устройств, видел одно и то же. То есть, понадобилось удаленное хранилище. Но приложение «хостится» на GitHub Pages и не имеет сервер...

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

Flash-анимации в Unity3D своими руками. Часть первая, лирическая В этой серии статей я расскажу о том, как и почему мы решили создать своё собственное решение для импорта flash-анимаций в Unity, об оптимизациях и внутренней кухне получившегося плагина. А также в программе: рассказ о внутренностях формата swf, особенностях расширения Unity...

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

RPA 2019: роботизация по-русски В компании «Аплана Бизнес-решения» развивают собственную RPA-платформу. Российский рынок Robotic Process Automation быстро развивается, на нем появляются отечественные продукты. Так, в сентябре 2018 года компания «Аплана Бизнес-решения» выпустила RPA-п...

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

Заворачиваем весь трафик ОС в Tor Все описанное в статье реализовано в виде инструмента Toroxy, доступного на GitHub В последнее время анонимность в сети является предметом горячих споров. Ни для кого не секрет, что данные о посещениях Интернет-ресурсов с локального устройства могут собираться на разных у...

Google выпустила расширение для Chrome, которое защитит от взлома аккаунта В середине января СМИ сообщили о публикации на облачном сервисе MEGA базы данных с почтовыми аккаунтами и паролями к ним. База оказалась просто огромной (более 1 млрд уникальных комбинаций), из-за чего многие сразу же стали проверять собственные аккаунты с помощью сервиса H...

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

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

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

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

Лекарство от всех болезней Современные организации — сложные организмы. В них одновременно протекает множество процессов, взаимодействует бесчисленное число субъектов. Как и в любом сложном организме, в них возникают сбои — что-то идёт не так, как положено, или не идёт вовсе. Как...

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

Huawei Watch GT — треккер или часы? У всех разное отношение к носимой электронике. Но нельзя отрицать факт того, что она занимает все более и более серьезные позиции в нашей жизни. Браслеты становятся совсем недорогими, а часы более функциональными. Но есть устройства посередине. Например, Huawei Watch GT. П...

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

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

[Из песочницы] QlikView. Условное форматирование «Как в Эксель» Пришла задача от заказчика – сделать условное форматирование таблицы «как в эксель». QlikView вполне себе справляется со стандартными задачами раскраски по условию, но вот с выбором параметров динамически, да еще и как в эксель – возник вопрос «это как вообще..?». Итог: был...

Изменение настроек программ с сохранением персональных параметров Предыстория В одной медицинской организации внедряли решения на базе PACS-серверов Orthanc и DICOM-клиента Radiant. В ходе настройки выяснили, что каждый DICOM-клиент должен быть описан в PACS-серверах следующим образом: Имя клиента AE-имя (должно быть уникально) TCP-порт,...

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

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

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

Телефоны для детей (2019) В моём детстве я ходил с кнопочным Samsung с примитивными функциями и играми без 3G. Сегодня даже за 5-10 тысяч рублей можно купить Android-смартфон с хорошей камерой, неплохой производительностью и автономностью. Технологии развиваются, и это потрясающе. Круто, если дети у...

Telegram бот для персонализированной подборки статей с хабра Для вопросов в стиле "зачем?" есть более старая статья — Натуральный Geektimes — делаем пространство чище. Статей много, по субъективным причинам некоторые не нравятся, а некоторые, наоборот, жалко пропускать. Хочется оптимизировать этот процесс и экономить время. В вышеупом...

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

[Из песочницы] Мой подход к реализации делегатов в C++: вызов функции с неизвестными параметрами во время выполнения Предыстория Мне нравится язык C++. Я бы даже сказал, что это мой любимый язык. Кроме того, для своих разработок я использую технологии .NET, и многие идеи в нём, по моему мнению, просто восхитительны. Однажды мне пришла в голову идея – как реализовать некоторые средства рефл...

[Перевод] RxVMS — практичная архитектура для Flutter-приложений Это первый пост из серии публикаций, в которых объясняется мое понимание архитектуры приложений для Flutter. Предупреждаю — это будет весьма самоуверенным. Пока запланированы: Введение (этот пост) Основы Dart Streams RxDart: магические трансформации потоков Основы RxVMS: Rx...

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

RC Машинки: Введение Всем привет, сегодня я бы хотел рассказать вам об RC Cars, машинках на радиоуправлении. Это хобби и достаточно веселое. Лично для себя я нахожу в нем хоть какую-то доли реальности. Сидеть целыми днями клепать кнопочки на Backbone и React уже стало рутиной и надо это дело ка...

Как отказаться от ненужных рассылок с помощью одной кнопки. Опыт команды Яндекс.Почты Согласно нашим исследования, не менее 20% пользователей страдают от большого числа непрочитанных писем. Львиная доля этих писем — регулярные рассылки. Большая часть из них никогда не будет открыта и прочитана — они лежат мёртвым грузом и отвлекают от полезных писем. Для ре...

[Перевод] Советы по созданию нестандартных рабочих процессов в GitLab CI Прим. перев.: Оригинальную статью написал Miłosz Smółka — один из основателей небольшой польской компании Three Dots Labs, специализирующейся на «продвинутых backend-решениях». Автор опирается на свой опыт активной эксплуатации GitLab CI и делится накопленными советами для д...

Приложение «ТОП Квестов»: простое решение для квестоманов Надоело искать квесты в реальности по всему интернету? Портал «ТОП Квестов» объявляет о запуске бесплатного приложения для iOS, благодаря которому все актуальные предложения в вашем городе будут всегда под рукой. Квесты в реальности давно завоевали любовь миллионов людей по...

Выход из зоны комфорта: с nodejs на dlang В 2017м году я начал писать проект на nodejs — реализацию протокола ObjectServer от Weinzierl для доступа к значениям KNX. В процессе написания было изучено: работа с бинарными протоколами, представление данных, работа с сокетами(unix sockets в частности), работа с redis баз...

Эксперты оценили рынок управления автомобильным трафиком в России Эксперты компании "А+С Транспроект", российского центра компетенций в области транспортного планирования и моделирования транспортных потоков, оценили основные тренды исследования и их актуальность в России.Трендом номер один авторы исследования назвали рост сег...

10 способов, как вас могут обмануть при обмене криптовалют Во время работы по запуску мониторинга обменников криптовалют на Bits.media занялся я составлением списка рисков, с которыми сталкивался, и о которых мне писали пользователи после инцидентов. А чтоб добру не пропадать, решил оформить все в отдельную статью. Немного дополни...

Опубликованы подробные характеристики CPU Intel Core H девятого поколения для ноутбуков: от 4 до 8 ядер и TDP 45 Вт у каждой модели Компания Intel формально анонсировала процессоры Core H девятого поколения для ноутбуков во второй половине марта. Несмотря на данное в тот же день обещание выпустить процессоры во втором квартале, характеристики их пока официально не сообщаются. Что ж, если Intel сама ...

Серьги из Apple AirPods Потеря беспроводных Apple AirPods является обычной практикой. Хотя есть способы быстро их найти, тем не менее, страх потерять дорогие наушники присутствует всегда. Предприимчивая девушка из Вирджинии, придумала простейший способ, который поможет не терять AirPods. Она превра...

Поток как инструмент управления Вернемся к идее использования потоков создания ценности в роли архитектурных элементов системы управления. Вопрос о том, как сделать это целостно, беспокоит меня уже какое-то время. Первые размышления по этому вопросу удалось выразить в заметке «Value stream, user'...

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

[Из песочницы] Rabbit MQ в системе обработки обращений жителей Недавно успешно сдали пользователям в эксплуатацию систему обработки обращений граждан. Суть такая, что когда у вас нет дома воды, отопления или рядом с вашим домом огромная яма на дороге, вы можете пожаловаться на проблему в гос.органы. Есть разные площадки, где можно под...

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

Первая платформа с поддержкой PCIe 4.0 и ее практическая реализация в продукции Gigabyte: линейка плат, видеокарты, накопители Анонс новой платформы AMD состоялся — и не оказался «бумажным». Поддержка PCIe 4.0 есть и работает. Да, не все теоретические возможности того же чипсета Х570 удалось реализовать на практике, и дешевой реализации PCIe 4.0 разработчики пока не предлагают. Но свою часть работы ...

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

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

PHP Xdebug proxy: когда стандартных возможностей Xdebug не хватает Для отладки PHP-программ часто используют Xdebug. Однако стандартных возможностей IDE и Xdebug не всегда достаточно. Часть проблем можно решить с помощью Xdebug proxy — pydbgpproxy, но всё же не все. Поэтому я реализовал PHP Xdebug proxy на базе асинхронного фреймворка amph...

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

JavaScript: Большое целое Ну почему Не так давно JavaScript похвастался новым примитивным типом данных BigInt для работы с числами произвольной точности. Про мотивацию и варианты использования уже рассказан/переведен необходимый минимум информации. А мне бы хотелось обратить чуть больше внимания на превнесенн...

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

Как соотносятся экзамены ITIL® 4 с экзаменами предыдущей версии по уровню сложности В строгом соответствии с планом AXLEOS/PEOPLECERT 8 ноября 2019 объявили о начале приёма экзаменов продвинутого уровня сертификационной схемы ITIL 4. Теперь доступны экзамены ITIL Specialist: Create, Deliver and Support из потока (steam) Managing Professional и ITIL Strateg...

Skip Ahead временно стало доступно всем С 30 января стала доступа регистрация на канале тестирования Skip Ahead. Совсем недавно ходила информация о том, что Microsoft в течении нескольких недель даст доступ к тестированию осеннего обновления Windows 10 19H2 и вот сейчас есть возможность вступить туда. Стоит отмети...

ЗИЛ 131 в масштабе 1/16 Продолжая мучать китайскую машинку от WPL решил сделать для нее очередную кабину в масштабе 1/16. На этот раз выбор пал на ЗИЛ 131, ибо он и по размеру больше соответствует грузовику М35, и люди интересовались, да и модель уже почти готовая имелась.Немного подогнав размер и ...

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

О дисководах и их использовании на современных компьютерах Неотъемлемой частью жизни практически любого любителя ретро-компьютеров являются гибкие магнитные диски дискеты и накопители на гибких магнитных дисках дисководы. Что сегодня приносит свои проблемы. Если рабочие дисководы ещё можно найти в достаточном количестве, то вот с ди...

Тим Кук пообещал новые сервисы от Apple в 2019 году В этом году Apple планирует запустить новые сервисы в дополнение к уже существующим, что позволит ей снизить зависимость от продажи аппаратных продуктов. Об этом Тим Кук, генеральный директор компании, заявил в интервью Джиму Крамеру, ведущему программы Mad Money на телекан...

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

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

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

Админ без рук = гиперконвергенция? Это миф, достаточно распространённый в сфере серверного железа. На практике же гиперконвергентные решения (когда всё в одном) нужны много для чего. Исторически сложилось, что первые архитектуры были разработаны Amazon и Google под свои сервисы. Тогда идея была в том, чтоб...

«1С» создаст систему управления для «Вертолетов России» Документ подписали в рамках Петербургского международного экономического форума ПМЭФ-2019 заместитель генерального директора по финансам и инвестициям "Вертолетов России" Эрвин Илизиров и директор фирмы "1С" Борис Нуралиев.Холдинг и его дочерние компании ...

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

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

[Перевод] Разработка приложения на SwiftUI. Часть 1: поток данных и Redux После участия в сессии State of the Union на WWDC 2019 я решил детально изучить SwiftUI. Я потратил много времени на работу с ним и теперь приступил к разработке реального приложения, которое может оказаться полезным широкому кругу пользователей. Его я назвал MovieSwift...

Переключатели функциональности (feature toggles): виды, преимущества и работа с ними в .NET Переключатель функциональности — это инструмент, позволяющий переключаться со старой функциональности на новую, не пересобирая приложение и не выпуская его заново. Реализуется добавлением в код условного оператора (if), который дает возможность управлять поведением программ...

AMD представила процессоры Ryzen Pro 3000. В серии 8 моделей, включая топовую 12-ядерную Ryzen 9 PRO 3900 Компания AMD сегодня сообщила о широкой доступности новой линейки процессоров — Ryzen Pro 3000. В отличие от уже хорошо известных моделей пользовательской линейки Ryzen 3000, новинки предназначены для использования в бизнес-среде. В частности, они будут применятьс...

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

Kirin 810, тройная камера и аккумулятор емкостью 4000 мА·ч за $200: опубликованы характеристики и цены смартфонов Honor 9X и Honor 9X Pro Сетевой информатор Мукул Шарма (Mukul Sharma) опубликовал на своей страничке в Twitter подробные характеристики двух перспективных смартфонов Honor — 9X и 9X Pro. Новинки должны представить 23 июля, но уже сейчас есть возможность присмотреться к их возможностям и ...

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

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

[Перевод] Как eBay делал сканер штрих-кодов на WebAssembly С момента своего анонса технология WebAssembly сразу привлекла внимание разработчиков фронтенда. Веб-сообщество с энтузиазмом восприняло идею запустить в браузере код, написанный на других языках, кроме JavaScript. Главное, что WebAssembly гарантирует скорость намного выше, ...

Немного про Google Home Hub, или как я купил фоторамку за 130 Евро Привер Хабр. Концепция «умного дома» и его использования с отдельного экрана давно казалась мне интересной. Одно время я было начал проект с OpenHAB и Raspberry Pi — весьма продвинутая штука, но необходимость настраивать кучу конфигов быстро надоела. И случайно увидев в про...

Объектив Viltrox PFU RBMH 20mm F1.8 ASPH доступен в варианте с креплением Nikon Z Объектив Viltrox PFU RBMH 20mm F1.8 ASPH для беззеркальных камер, который выпускается в вариантах с креплениями Sony E и Fujufilm X, стал доступен в варианте с креплением Nikon Z. Этот полнокадровый светосильный широкоугольный объектив фокусируется вручную. Технически...

Зачем нужны смартфоны с двумя дисплеями? Выглядит не так плохо, но зачем?.. Уже несколько месяцев в сети много говорят о Samsung Galaxy Fold. Мы тоже много об этом говорили и даже приводили примеры того, почему это гаджет будущего. Вот только остается вопрос, почему многие производители не унимаются и продолжают пы...

Полнокадровый объектив Speedmaster 50mm f/0.95 III оценен в 900 долларов В преддверии выставки CP+ анонсирована новая версия полнокадрового объектива Speedmaster 50mm f/0.95. От предыдущей версии, производство которой прекращается, новинка отличается улучшенным качеством изображения. Кроме того, объектив Speedmaster 50mm f/0.95 III будет п...

Калейдоскоп как в детстве Иногда отражение в зеркале более реально, чем сам объект… — Льюис Кэрролл (Алиса в зазеркалье) В юном возрасте у меня была забавная игрушка – калейдоскоп. Часами я рассматривал правильные узоры, составленные из разноцветных осколков битого стекла. Что-то завораживающее бы...

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

[Перевод] Рукопожатие SSH простыми словами Secure Shell (SSH) — широко используемый протокол транспортного уровня для защиты соединений между клиентами и серверами. Это базовый протокол в нашей программе Teleport для защищённого доступа к инфраструктуре. Ниже относительно краткое описание рукопожатия, которое происхо...

Save File Me — бесплатный сервис бакапов с шифрованием на стороне клиента Каждый администратор знает, на сколько важно делать ежедневные резервные копии. Для меня «идеальный» сервис резервирования это: Отсутствие регистрации, привязки к почтовому адресу и т.п. Возможность создавать независимые учетные записи, под каждый проект Шифрование на сто...

Server Side Rendering для React App на Express.js На написание этой статьи меня сподвигло отсутствие какого-либо более-менее полного мануала, как же сделать Server Side Rendering для React приложения. Когда я столкнулся с этой проблемой, у меня было 2 варианта это сделать, либо Next.js фреймворк, либо используя Express.js....

[Перевод] Senior Engineer в поисках работы. О задачах на технических собеседованиях и теоретических вопросах Продолжаем говорить о технических собеседованиях (если вы не читали — просмотрите предыдущие статьи из цикла — о собеседованиях с HR и технических). В этот раз будет больше субъективного опыта, минимум советов, а также немножко про тестовые задания и теоретические вопросы. П...

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

Google Ads тестирует новое расширение с формой для генерации лидов Google Ads тестирует новую возможность для сбора контактной информации пользователей – расширение с формой генерации лидов. Новое расширение заметили зарубежные специалисты: Как видно на скриншоте выше, расширение помогает привлекать пользователей с помощью интересного целев...

Минус уши или как не испортить звук в игре с самого начала Статья о звуке, но адресована скорее не саунд-дизайнерам (которым всё известно), а продюсерам, ПМ-ам игровой индустрии и начинающим разработчикам. Собранные здесь ошибки — это наш собственный опыт из времён, когда War Robots была ещё прототипом в новой для компании нише. ...

«А вместо процессов у них там практики…» Такую фразу довольно часто можно услышать или прочитать в обсуждении новой версии ITIL® 4. Корректно ли это утверждение? Насколько «вместо»? Есть ли разница между процессами и практиками? Действительно, существенную часть объёма книги составляет раздел, в котором для тех, кт...

Использование DiagnosticSource в .NET Core: теория DiagnosticSource — это простой, но весьма полезный набор API (доступен в NuGet пакете System.Diagnostics.DiagnosticSource), который, с одной стороны, позволяет различным библиотекам отправлять именованные события о своей работе, а с другой — позволяет приложениям подписывать...

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

С 18-ядерной моделью, но без 14-ядерной: опубликованы характеристики бюджетных серверных процессоров Intel Glacier Falls W с сокетом LGA 2066 Платформа серверных процессоров Intel Xeon W серии 2200 разделена на две ветки: флагманскую Cascade Lake W с сокетом LGA 3647, дебютировавшую в июне, и бюджетную Glacier Falls W с сокетом LGA 2066. Последняя пока не представлена официально, но в Сети уже появились подро...

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

Настройка сервера для развертывания Rails приложения при помощи Ansible Не так давно мне было необходимо написать несколько ansible playbooks для подготовки сервера к деплою rails приложения. И, на удивление, я не нашел простого пошагового мануала. Копировать чужой плейбук без понимая происходящего я не хотел и в итоге пришлось читать документац...

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

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

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

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

[Перевод] Как писать меньше кода и получать больше толку Как справедливо заметил легендарный писатель Жюль Верн: «Хорошо использованный минимум вполне достаточен». В нашу эпоху понятие хорошо использованного минимума применимо и к коду. Печально, но факт: в современном мире кода слишком много. Если быть точнее, то слишком много ...

Windows 10 может появиться на Chromebook в январе С июля текущего года компания Google работает над возможностью двойной загрузки на Chromebook. Речь идёт о Chrome OS и Windows 10. Правда, для последнего варианта лэптоп должен иметь процессор Intel, минимум 4 Гбайт ОЗУ и 64 Гбайт постоянной памяти. Причём, как утве...

[Перевод] Взлом цветного картриджа HP: превращаем его в ручной принтер Введение Ещё с юности, когда у нас был старый DeskJet, меня интересовали картриджи струйных принтеров. Эти картриджи казались очень интересными и как только в них заканчивались чернила, я сразу забирал их себе. В то время я не мог сделать с ними ничего, кроме как разобрать ...

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

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

Каждому яду — свой антидот. Как спастись или хотя бы попытаться… Всем бойцам РХБЗ (радиохимической и биологической защиты) не посрамившим честь своего ОЗК посвящается... С интересом читая статьи коллеги gjf про самые интересные, самые страшные и самые нестрашные яды испытываю ностальгию :). Потому что любой правильный химик, начиная свой...

Как мы пробивали Великий Китайский Фаервол (ч.2) Привет! С вами снова Никита — системный инженер из компании SЕMrush. И этой статьей я продолжаю историю про то, как мы придумывали решение обхода Китайского Фаервола для нашего сервиса semrush.com. В предыдущей части я рассказал: какие появляются проблемы после того, как пр...

Новая (а может и нет) кинематика 3D принтера THOne-Bot Что в переводе означает "Две руки в одну".Сразу скажу, если такое уже есть (Кинематика SCARA не в счет), не нужно кричать, что я лошара и не умею пользоваться интернетом, я не претендую на звание изобретателя велосипеда) Дайте ссылку, мне интересно будет посмотреть.Показ раб...

История одной НЕ уязвимости Некоторое время назад мне предоставилась возможность поэксперементировать с настройками одного заурядного роутера. Дело в том, что первое апреля обязывало меня разыграть своих товарищей с университета. В университеть была Wi-Fi сеть. Мною было решено поднять на своем роутере...

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

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

Минтруд и «Ростелеком» разошлись в оценке количества чиновников, которые получат смартфоны на отечественной ОС Sailfish В мае прошлого года на Хабре сообщалось, что федеральные чиновники будут работать с мобильными устройствами на базе ОС Sailfish. В начале 2018 года был подготовлен проект по обеспечению представителей российских властей новыми устройствами, который подали на рассмотрение в...

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

Опубликованы характеристики процессоров AMD Ryzen 3000: от 6 ядер у Ryzen 3 3300 до 16 ядер у Ryzen 9 3800X AMD запланировала специальное мероприятие на 9 января, оно пройдет в рамках выставки CES 2019. В этот день компания представит новое поколение процессоров Ryzen – Ryzen 3000, но уже сейчас источник рассекретил их характеристики. Случайно это получилось или нет, но...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

[Перевод] RxDart: магические трансформации потоков Добро пожаловать — это третья часть моей серии статей об архитектуре Flutter. Введение Основы Dart Streams RxDart: магические трансформации потоков (этот пост) Основы RxVMS: RxCommand и GetIt RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользова...

AI 2019: Как создать бот, который решит все проблемы клиентов Чат-бот, разработанный МТС для того, чтобы автоматизировать работу со звонками в службу поддержки, способен «подтягивать» информацию из любых источников. Телеком-операторы традиционно одними из первых внедряют инновации. Не исключение — технологии искусственного...

BMW и Jaguar Land Rover совместно будут разрабатывать компоненты электромобилей Компании BMW и Jaguar Land Rover заявили, что будут совместно разрабатывать электродвигатели, коробки передач и силовую электронику, объединившись в еще один отраслевой альянс, участники которого рассчитывают за счет сотрудничества снизить затраты на разработку электром...

[Из песочницы] Как FL.ru обманывает пользователей, продавая одну услугу два раза, нарушая собственные правила История о том, как я пытаюсь отстоять свои (и не только) права и почему фриланс-ресурс «№1» нужно обходить стороной. На FL.ru я уже более 13 лет. За это время видел free-lance.ru, блоги, конкурсы, Василия Воропаева, Ирину Котову, сходки, монетизацию, провалы, косяки, обм...

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

Хочешь <s>похудеть</s> учиться ИТ самостоятельно? Спроси меня как Есть мнение, с которым я часто сталкиваюсь, — учиться самостоятельно невозможно, нужны профессионалы, которые будут вас вести по этому тернистому пути — объяснять, проверять, контролировать. Попробую опровергнуть это утверждение, а для этого, как известно, достаточно привест...

[Перевод] Потоки Redis как чистая структура данных Новая структура данных Redis 5 под названием «потоки» (streams) вызвала живой интерес в сообществе. Как-нибудь я поговорю с теми, кто использует потоки в продакшне, и напишу об этом. Но сейчас хочу рассмотреть немного другую тему. Мне начинает казаться, что многие представля...

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

Hitachi Vantara представила новинки для управления данными Интернета вещей Решения Lumada Data Services, Data Lake и Edge Intelligence призваны помочь заказчикам преодолеть разрозненность массивов данных и стимулировать инновации, используя методологию DataOps. На конференции NEXT 2019 компания Hitachi Vantara объявила о расширении комплекса реш...

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

Вулканический поросенок, или SQL своими руками Сбор, хранение, преобразование и презентация данных — основные задачи, стоящие перед инженерами данных (англ. data engineer). Отдел Business Intelligence Badoo в сутки принимает и обрабатывает больше 20 млрд событий, отправляемых с пользовательских устройств, или 2 Тб входя...

WAL в PostgreSQL: 2. Журнал предзаписи В прошлый раз мы познакомились с устройством одного из важных объектов разделяемой памяти, буферного кеша. Возможность потери информации из оперативной памяти — основная причина необходимости средств восстановления после сбоя. Сегодня мы поговорим про эти средства. Журнал У...

(Без)опасный онлайн-банкинг: исследование веб-ресурсов банков России и мира Мы решили повторить масштабную исследовательскую работу 2015 года и проанализировали безопасность веб-ресурсов ведущих банков мира. Онлайн-банкинг с тех пор стал не просто более распространённым, а даже повсеместным явлением. Действительно, это быстро и удобно, но насколько ...

Контроллер Logitech Tap предназначен для управления платформами для совместной работы Компания Logitech представила устройство Logitech Tap — контроллер с сенсорным экраном, который упрощает развертывание и использование решений для совместной работы. Это устройство поддерживает основные платформы совместной работы, включая Google Hangouts Meet Har...

Как мы делали платежную систему для криптовалюты: пять основных проблем Привет, Хабр! На связи компания B2Broker, провайдер ликвидности и технологических решений для брокерской и биржевой индустрии. Один из наших продуктов — трейдинговая платформа B2BX.exchange. Когда летом 2017 года мы запускали платформу, то задумались о том, как принимать кри...

Рендеры демонстрируют возможный дизайн складного смартфона iPhone X Fold Непросто этот год складывается для смартфонов с гибкими экранами: сначала с большим шумом отменился Samsung Galaxy Fold, потом неожиданно Huawei перенесла запуск Mate X на сентябрь, хотя аппарат должен был поступить в продажу в июне. Все идет к тому, что Xiaomi выпустит...

Алексей Добрусин, «Гедокорп»: «В медицине РФ нет понимания выгод, которые даст AI» M-Health Congress (MHC): Здравствуйте, Алексей. Скажите, насколько российские медучреждения готовы к использованию ИИ-решений? Интересует и техническое оснащение, и готовность персонала.Алексей Добрусин (А.Д.): Добрый день. К сожалению, сейчас готовность оставляет желать луч...

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

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

Больше удобств адептам JSON-RPC Привет! Однажды, на одном проекте, где мне довелось работать только фронтом, мне пришлось столкнуться не с вездесущим REST, и не с хайповым GraphQL, а со старичком RPC, а именно — его вариантом JSON-RPC 2.0. И знаете, с тех пор (когда делаю и бэк) я использую почти всегда ...

Новое решение Informatica для больших данных стало доступным в России Решение обеспечивает сбор потоковых данных и их доставку всистемы работы с большими данными (Kafka, Hadoop, Cassandra) и системы Operational Intelligence (системы мониторинга операций в реальном времени). На российском рынке стало доступным новое решение Informatica для б...

ФАС настоятельно рекомендует предустанавливать российский софт на смартфоны и ноутбуки, продаваемые в РФ Источник фото: Юрий Мартьянов / Коммерсант Федеральная антимонопольная служба решила остановиться на жестком варианте регулирования предустановки российского ПО, о чем сообщает «Коммерсант». Уже готов законопроект, согласно которому именно отечественный софт должен стать у...

PG12: Дюжина патчей от Postgres Professional Приятно видеть знакомые фамилии в списке Acknowledgments официального релиза PostgreSQL 12. Мы решили свести вместе попавшие в релиз новшества и некоторые багфиксы, над которыми трудились наши разработчики. 1. Поддержка JSONPath (В Release Notes это звучит как Add support f...

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

Оптимизация производительности .NET (C#) приложений Статей с подобным заголовком достаточно много, поэтому постараюсь избежать банальных тем. Надеюсь, что даже очень опытные разработчики найдут здесь что-то новое для себя. В данной статье будут рассмотрены только простые механизмы и подходы к оптимизации, которые позволят п...

Как мы тестировали WD ActiveScale P100 для нашего S3-хранилища Мы периодически тестируем новое оборудование и ПО для использования в наших сервисах. Всегда хочется больше возможностей за разумные деньги. Сегодня расскажу, как мы разбирались в устройстве Western Digital ActiveScale P100 и пытались примерить его под наше S3-хранилище. Ср...

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

В госорганах нужно создать механизмы обучения и мотивации в сфере big data Такие данные из доклада РАНХиГС "Государство как платформа: люди и технологии", подготовленного к Гайдаровскому форуму, приводит ТАСС.Эксперты предлагают запустить в органах власти "механизмы мотивации, подбора, обучения, непрерывного развития и оценки компете...

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

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

Как я дизайн монетизировал. 15 инсайтов о создании цифрового продукта, который продается Итоги года для UI дизайнера, у которого не было ни одного интересного проекта в портфолио и он решил создать свой собственный продукт для популярной теперь дизайн-платформы Figma. Раньше я всегда относился скептически к таким постам. Но после того как минул ровно год, дав...

ISE 2019: Epson показал оригинальный способ запотолочного монтажа проекторов с ультракорокофокусными объективами "П"-образная форма ультракороткофокусных объективов Epson дает простую и элегантную возможность спрятать проектор за потолком При монтаже проектора под потолком всегда хочется чтобы проектор не было видно и для этого существуют специальные лифты и зеркала. Это достаточно до...

[Из песочницы] GridmiAPI — простая и гибкая библиотека Android для работы с REST&RPC Здравствуйте, хабровчане! Когда занимаешься разработкой сетевых приложений под платформу Android, понимаешь, что одно и другое приложение похоже друг на друга. С этой мыслью у большинства разработчиков инициализируется и другая мысль — «Почему бы мне не использовать какие-л...

StickIt 2.0.11 StickIt! – это забавное и простое приложение-фоторедактор для Android, с помощью которого можно быстро вырезать какой-либо объект с изображения и сделать оригинальные стикеры. Работа программы полуавтоматическая. Это значит, что для вырезания объекта придется приложить ...

Как мы учились эксплуатировать Java в Docker Под капотом hh.ru — большое количество Java-сервисов, запущенных в докер-контейнерах. За время их эксплуатации мы столкнулись с большим количеством нетривиальных проблем. Во многих случаях чтобы докопаться до решения приходилось долго гуглить, читать исходники OpenJDK и даже...

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

[Перевод] Большие гипотезы о простых числах доказаны для небольших числовых систем Гипотеза о простых числах-близнецах – один из самых важных и сложных вопросов математики. Двое математиков решили параллельную версию этой задачи для небольших числовых систем. 7 сентября два математика опубликовали доказательство варианта одной из известнейших открытых за...

[recovery mode] Типобезопасная работа с массивами PHP Всем привет, расскажу о собственном велосипеде для удобной работы с массивами в PHP. Type hinting В PHP7 появились подсказки типов (type hinting), что позволило IDE проводить более качественный статический анализ кода, качество нашего кода улучшилось (или правильно говорит ...

Мнение: Почему я не куплю iPad с iPadOS Вчера Apple представила iPadOS — операционную систему только для iPad. Вообще, уже давно было понятно, что Тим Кук и его команда хотят вывести планшеты из группы iOS-устройств в отдельную категорию (iPad Pro и Apple Pencil — наглядное тому подтверждение). Но в Apple р...

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

Функции Android 10, которые мы так и не увидели Не все опции Android 10 нам доступны Бета-тестирование Android 10 обещало нам много разнообразных функций — от жестовой навигации до тонкой настройки уведомлений. Однако зачастую бывает так, что не все опции из тестовых сборок «доживают» до финальной стадии. ...

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

Замена SMS для Android от Google оказалась опасной RCS-сообщения — удобны, бесплатны, но небезопасны Думаю, каждый пользователь, даже не погружённый в тематику Android, знает, что главной проблемой операционной системы Google является фрагментация. Практика показывает, что мало кто по-настоящему понимает, что именно он...

Управление SSL/TLS сертификатами в облаках и контейнерах — не человеческая работа Из презентации Venafi: как установка сертификатов вручную тормозит процесс непрерывной интеграции и развёртывания приложений Облачные сервисы и контейнеры стали стандартом де-факто для развёртывания веб-приложений. Однако интеграция сертификатов SSL/TLS в окружение DevOps ...

How to get Security Log with non-administrative user Привет Хабр! Читайте под катом как получить доступ к логу безопасности Windows без прав администратора. Эта будет не первая статья на Хабре связанная с логами Windows и наверно не самая оригинальная, но на мой взгляд я потратил слишком много времени на поиск простого решен...

AMD удалось доказать безупречность своих процессоров в суде Согласно действующим нормам американского законодательства, подчиняющиеся ему компании должны регулярно упоминать в формах 8-K, 10-Q и 10-K об основных факторах риска, которые угрожают бизнесу или могут обернуться для акционеров серьёзными убытками. Как правило, инвесторы ил...

Вариант объектива Laowa 100mm f/2.8 2X Ultra Macro APO с креплением Nikon Z выйдет в июле Анонсируя в апреле выпуск полнокадрового объектива Laowa 100mm f/2.8 2X Ultra Macro APO, компания Venus Optics пообещала, что он будет выпускаться в вариантах с креплениями Canon EF, Nikon F, Pentax K и Sony FE. Согласно новым сведениям, производитель добавил в список ...

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

Чем «кореец» лучше «француза»: Эксперт сравнил Hyundai Creta и Renault Kaptur Обзорщик поделился своими впечатлениями после тест-драйва Renault Kaptur и Hyundai Creta, выявив главные плюсы и минусы кроссоверов-конкурентов. В своём видеообзоре на канале Drive.ru автор рассказал про дизайн компакт-кроссов, отдав предпочтение Kaptur, имеющему свою собст...

Экономия на мобильной кросс-платформенной разработке: кейс Skyeng Привет, я Андрей Кучеренко, тимлид мобильной разработки Skyeng. Мы делаем мобильные приложения под iOS и Android. У них одинаковая функциональность и одинаковый с точностью до стилистики интерфейс. Но из-за разных платформ разработка вроде бы одного приложения получается до...

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

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

Как мы учились рисовать тексты на Canvas Мы разрабатываем платформу для визуальной коллаборации. Для отображения контента мы используем Canvas: на нём рисуется всё, в том числе тексты. Готового решения для отображения текстов на Canvas один в один как в html не существует. За несколько лет работы с отрисовкой текст...

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

[Перевод] Любопытные извращения из мира ИТ — 3 Сайт The Daily WTF уже 14 лет собирает курьёзные, дикие и/или печальные истории из мира ИТ. Я перевёл несколько рассказов, показавшихся мне интересными. Все имена и названия компаний изменены. Предыдущие выпуски можно найти по метке "любопытные извращения". История первая:...

К вопросу о преобразованиях и прочих операциях Синяя Гусеница: А ну нас-то не собьешь. Мы себе сидим, знаем: ждут нас превращения. А что? А ничего! Сидим, курим, ждем… Алиса- кукла: Чего? Синяя Гусеница: Чего, чего! Превращений. Дом — в дым, дым- в даму, а дама — в маму. Вот так-то. Не мешайте, не заскакивайте вперед, а ...

Эксперты подсчитали себестоимость камер Huawei P30 Pro, ... Сколько стоит Huawei P30 в Европе? От 799 евро, а за продвинутый вариант Huawei P30 Pro просят от 999 евро. В сети уже прокатилась волна возмущения по этому поводу, ведь новинки не только дороже предшественников, но еще и встали в один ряд по цене с флагманами Samsung и Appl...

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

Повторное использование форм на React Привет! У нас в БКС есть админка и множество форм, но в React-сообществе нет общепринятого метода — как их проектировать для переиспользования. В официальном гайде Facebook’a нет подробной информации о том, как работать с формами в реальных условиях, где нужна валидация и п...

#Опрос: Какой вариант размещения фронтальной камеры вы предпочитаете? 2018 год ознаменовался появлением смартфонов с различными дизайнерскими излишествами. Это и вырезы, и форм-фактор слайдера, и отверстия. Причиной всего этого является стремление производителей разместить камеру на передней панели. Как результат, у потребителей появился широ...

Эти расширения для браузера крадут ваши данные Исследователь в сфере кибербезопасности Сэм Джидали (Sam Jidali) недавно обнаружил огромную утечку данных, раскрывающую личную информацию миллионов людей и 45 крупных компаний. Названная «DataSpii» Джидали и его командой, утечка была вызвана совершенно неприметными на первы...

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

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

Как мы строим систему обработки, хранения и анализа данных в СИБУРе В начале 2018 года у нас активно пошел процесс цифровизации производства и процессов в компании. В секторе нефтехимии это не просто модный тренд, а новый эволюционный шаг в сторону повышения эффективности и конкурентоспособности. Учитывая специфику бизнеса, который и без вся...

Что не так с GraphQL В последнее время GraphQL набирает всё большую популярность. Изящный синтаксис запросов, типизация и подписки. Кажется: "вот оно — мы нашли идеальный язык обмена данными!"... Я разрабатываю с использованием этого языка уже больше года, и скажу вам: всё далеко не так гладко. ...

[Из песочницы] «Толстый и тонкий» или как я осваивал нейросети Часть 1 Введение «Нейросеть» – понятие, известное достаточно давно. В начале двухтысячных, во время учёбы в ВУЗе, я столкнулся с этой любопытной штуковиной. Прочитав научно-популярную литературу по этой теме, я сделал вывод, что это, как минимум, «забавно» и у меня возникла...

Практический курс «Автоматизированный процесс поиска и подбора персонали». Стань HR-специалистам нового форматы В курсе представлены материалы по организации каждого этапа поиска и подбора сотрудников создание и размещение объявление о поиске сотрудников (вакансии); методы отбора лучших кандидатов; тесты и вопросы на собеседовании; быстрая...

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

[Из песочницы] Яндекс.Алиса и бот Telegram на PHP с единым функционалом Добрый день. На тему Telegram-ботов статей очень много, а вот про навыки для Алисы мало кто пишет, а информации как сделать единого бота я вообще не нашел, поэтому решил поделиться своим опытом о том, как сделать простого бота Telegram и навык Яндекс.Алиса для сайта, имеющ...

Amazon выпустила Open Distro for Elasticsearch Эта статья — обзор новостей о том, как — Amazon выпустила Open Distro for Elasticsearch — почему они это сделали? — что это значит для компании Elastic и для Open Source вообще? Elastic Жила была компания Elastic. Было у них несколько Open Source продуктов: — Сам Elast...

Дозиметр для Серёжи. Часть III. Народный радиометр Самой частой претензией в комментариях к прошлой моей статье была претензия в «радиофобии». Хотя я в принципе не понимаю, какой деструктивный общественный посыл может нести это «заболевание» (в отличие от той же вакционофобии или какой-нибудь аблютофобии). Наоборот, чем боль...

10 причин, чтобы выбрать решение для SAP HANA от НРЕ. Часть 2 В предыдущей статье мы начали говорить о 10 причинах, чтобы выбрать решение от компании Hewlett Packard Enterprise для SAP HANA и остановились на технических причинах. Предлагаю взглянуть на процесс выбора решения под SAP HANA «глазами вендора». Очень бы хотелось, чтобы эт...

[Перевод] Почему я не использую веб-компоненты Я пишу это в основном для себя в будущем, чтобы у меня было куда сослаться, когда кто-нибудь спросит меня, почему я скептичен в отношении веб-компонентов и почему Svelte не компилируется в веб-компоненты по умолчанию. (Тем не менее, он может компилироваться в веб-компоненты,...

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