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

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

Проектная исповедь — 15 ноября, Москва, DI Telegraph Привет! Мы тут решили провести митап-ретроспективу, в которой может принять участие любой желающий (конечно, если заранее зарегистрируется). В чем смысл. Ретроспектива — это всегда хорошо. Это опыт. Особенно, если открыто рассказывать о факапах, о сложных решениях, о том...

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

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

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

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

[Из песочницы] Кросс-компиляция Scala в Gradle проекте Для Scala проектов довольно распространённым является предоставление бинарных артефактов скомпилированных под несколько версий Scala компилятора. Как правило для целей создания нескольких версий одного артефакта в сообществе принято использовать SBT, где эта возможность есть...

0, 0, 1, 0, 2, 0, 2, 2, 1, 6, 0, 5, 0, 2, 6, 5, 4, 0, 5, 3, 0, 3, 2, 9, 0, 4, 9, 3, 6, 14, 0, 6, 3, 5, 15, 0, 5, 3, 5… Есть два мужика с именами «Van Eck». Первый, в 1985 году показал всему миру как за 15 долларов перехватывать данные с монитора (Van Eck phreaking), второй, в 2010 придумал хитрую последовательность (Van Eck's sequence). Круче простоты задания этой последовательности могут бы...

Google может начать игнорировать атрибут rel=nofollow, используемый по умолчанию Сотрудник Google Гэри Илш заявил в Twitter, что поисковик может начать игнорировать атрибут rel=nofollow, если он используется для всех ссылок на сайте. При этом он отметил, что пока этого нет, но соответствующее изменение может быть внедрено в будущем. Как отмечалось ранее,...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 14. VTP, Pruning и Native VLAN Сегодня мы продолжим рассмотрение VLAN и обсудим протокол VTP, а также понятия VTP Pruning и Native VLAN. В одном из предыдущих видео мы уже говорили о VTP, и первое, что должно прийти вам на ум, когда вы слышите о VTP, это то, что он не является протоколом транкинга, несмот...

[Из песочницы] Принцип открытости-закрытости Привет, Хабр! Перед вами перевод статьи Роберта Мартина Open-Closed Principle, которую он опубликовал в январе 1996 года. Статья, мягко говоря, не самая свежая. Но в рунете статьи дяди Боба про SOLID пересказывают только в урезанном виде, поэтому я подумал, что полный перево...

[Перевод] Там, где сходятся доказательства, факты и воображение В математике, где доказательство – это всё, важны также и факты. Однако факты хороши, только пока хороша модель, а построение моделей – занятие ненадёжное. Так какого количества фактов будет достаточно? Можете ли вы найти следующее число в последовательности? 1, 2, 4, 8 ...

[Из песочницы] Улучшение UX при работе с клавишей «Tab» При разработке приложений «фронтендеры» редко обращают внимание на то, как пользователь будет использовать предоставляемые браузером функции клавиш. Я не являюсь исключением, но в один день мне была дана задача касаемо UX и переходов с помощью нажатия «Tab» и «Shift + Tab». ...

[Перевод] Восемь малоизвестных опций Bash Некоторые опции Bash хорошо известны и часто используются. Например, многие в начале скрипта пишут set -o xtrace для отладки, set -o errexit для выхода по ошибке или set -o errunset для выхода, если вызванная переменная не установлена. Но есть много других опций. Иногда ...

Обновление программного комплекса SafeERP: Иерархия полномочий В марте 2019 года компания «Газинформсервис» представила обновленную версию программного комплекса SafeERP 4.6. Подробное описание продукта SafeERP приведено на сайте компании. В новую версию программного комплекса SafeERP 4.6 включена процедура построения иерархии полномоч...

Ссылочные атрибуты nofollow, sponsored и ugc и их влияние на SEO Разбираемся с последними изменениями в обработке ссылочных атрибутов со стороны Google. Сообщение Ссылочные атрибуты nofollow, sponsored и ugc и их влияние на SEO появились сначала на Searchengines.ru.

Генерация документов с помощью ONLYOFFICE DocumentBuilder Привет, Хабр. Я хочу рассказать об утилите под названием DocumentBuilder, которая позволяет генерировать документы, таблицы и презентации, а также показать, как можно его использовать для решения ваших задач, на примере создания резюме из шаблонов. Работает билдер следующи...

[Из песочницы] Изоморфизм спешит на помощь «Изоморфизм» — одно из базовых понятий современной математики. На конкретных примерах на Haskell и C# я не только растолкую теорию для нематематиков (не используя при этом никаких непонятных математических символов и терминов), но и покажу как этим можно пользоваться в повсе...

F#3: Форматирование текста При работе с любым языком вам, скорее всего, нужно будет отформатировать текст, и F# ничем не отличается. Поскольку F# является языком .NET, мы всегда можем использовать Console.WriteLine (..) и String.Format (..), где мы можем использовать любой из обычных форматеров, кото...

[Перевод] Создание приложения с использованием Styled-Components в Vue.js Привет, Хабр! На днях наткнулся на одну очень интересную статью на португальском. К счастью, удалось найти её английскую версию. Предлагаю вашему вниманию перевод на русский. Другие мои переводы вы можете найти на мой странице на хабре. Ссылка на оригинал: португальский, ан...

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

PHP Composer: фиксим зависимости без боли Многие из вас наверняка сталкивались с ситуацией, когда в библиотеке или фреймворке, который вы используете, есть баг или нет необходимой функциональности. Предположим, вы даже не поленились и сформировали pull request. Но примут его далеко не сразу, а следующий релиз продук...

[Перевод] Новый кодек AV1: ускоряем загрузку видео в браузере В этом руководстве мы научимся использовать видео в Вебе, как это принято в 2019. Chrome и Firefox начали поддерживать новый кодек AV1 — для них видео можно сделать в два раза меньше. Отдельно поговорим, как заменить GIF на видео в AV1 и H.264 — тогда его размер упадёт в 20...

Гэри Илш о EAT, новых ссылочных атрибутах и факторах ранжирования Google На конференции Pubcon 2019 состоялась Q/A-сессия с сотрудником Google Гэри Илшем. Ведущей сессии выступила SEO-консультант и автор блога TheSEMPost Дженнифер Слэгг. Ниже – обзор самых интересных вопросов и ответов. 1. Новые ссылочные атрибуты (rel=sponsored и ugc) Есть ли ка...

Обновилась ТОП База сайтов для бесплатного ссылочного продвижения Для читателей блога PR-CY действует промо-код на скидку.

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

Удалённая работа: мифы на ночь На Хабре тема удалёнки поднимается постоянно. Был откровенный пост, который отозвался до самых глубин сердца. Сегодня случился рекламный пост, где понятие удалёнщика как-то путается с понятием фрилансера. А сейчас будет эмоциональный пост — от простой девчонки, которая вот у...

[Из песочницы] Видеонаблюдение на orange pi zero — дешево и совсем не сердито Недавно поставил себе задачу реализовать видеонаблюдение со следующими характеристиками: Минимальное энергопотребление Минимальный размер устройства, которое будет принимать видео с камеры (или нескольких камер). С таким небольшим размером, чтобы можно было его, к примеру,...

Эволюция H2 — оконные функции, CTE, JSON/XML во встраиваемой базе данных Есть open source проекты которые стали коммерчески успешным мейнстримом, как например PostgreSQL/Elasticsearch. Другие, к примеру RethinkDB, проиграли на рынке и остановили разработку. А проект H2 database встраиваемой базы данных, написанной на языке java, развивается и здр...

С чего начать разработку архитектуры? Примечание: Если вы считаете, что на построении архитектуры съели хотя бы полпёсика, то эта статья не для вас. Модель — абстрактное представление реальности в какой-либо форме. Предполагаем, что архитектор уже закончил со сбором требований к будущей системе и их анализом. ...

[Не] используйте CDN Практически в любой статье или инструменте для оптимизации скорости сайтов есть скромный пункт «используйте CDN». Вообще, CDN – это content delivery network или сеть доставки контента. Мы в компании «Метод Лаб» часто встречаемся с вопросами клиентов по этой теме, некоторые с...

Предсказание красоты заката TL;DR: Из чего состоит красивый закат? Как предсказать эти элементы заката? Откуда взять данные для предсказаний? Для удачной фотосессии, требуется, как правило серьезная подготовка. И если собрался снимать закат, хорошо бы знать заранее, насколько этот закат будет красив. ...

Google: скульптурирование PageRank – это пустая трата времени Сотрудник Google Джон Мюллер считает, что использование ссылочного атрибута nofollow для скульптурирования PageRank – это пустая трата времени. Об этом он заявил в ответ на вопрос одного из пользователей. Вопрос к Мюллеру звучал так: «Здравствуйте! Должен ли я использовать а...

Flexiant Cloud Orchestrator: с чем его едят Для предоставления услуги IaaS (Виртуальный дата-центр) мы в Rusonyx используем коммерческий оркестратор Flexiant Cloud Orchestrator (FCO). Это решение имеет достаточно уникальную архитектуру, что отличает его от известных широкой публике Openstack и CloudStack. Читать дал...

[Перевод] Управляем асинхронностью в PHP: от промисов к корутинам Что такое асинхронность? Если кратко, то асинхронность означает выполнение нескольких задач в течение определенного промежутка времени. PHP выполняется в одном потоке, что означает, что в любой момент времени может выполняться только один фрагмент PHP-кода. Это может показа...

Мандатная модель распределения прав в FreeBSD Введение Для обеспечения дополнительного уровня безопасности сервера можно использовать мандатную модель распределения доступа. В данной публикации будет описано каким образом можно запускать apache в jail с доступом только к тем компонентам, к которым необходим доступ для ...

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

[Перевод] Как заблокировать работу Microsoft Edge в фоне под Windows 10 Работая на устройстве под управлением ОС Windows 10, вы могли заметить в Task Manager среди запущенных процессов Microsoft Edge, даже если вы не пользуетесь этим браузером. Эти процессы, MicrosoftEdge.exe, MicrosoftEdgeCP.exe и MicrosoftEdgeSH.exe, отображаются там как прио...

[] Бикватернионы Если вы открыли данную статью, то наверняка уже слышали о кватернионах, и возможно даже используете их в своих разработках. Но пора подняться на уровень выше — к бикватернионам. Можно и еще выше — к седионам! Но не сейчас. В данной статье даны основные понятия о бикватернио...

5 способов сделать Python-сервер на Raspberry Pi. Часть 1 Привет, Хабр. Сегодня в большом числе проектов домашней (и не только) автоматизации используется Raspberry Pi. При этом достаточно удобно иметь не только прямой доступ к устройству, но и использовать браузер — это позволяет выполнять необходимые действия и с компьютера, и с...

[Перевод] Представляем .NET 5 6 мая было объявлено, что следующим после .NET Core 3.0 релизом будет .NET 5. Это будет следующий большой релиз в семействе .NET. В будущем останется только один .NET, и вы сможете использовать его для разработки под Windows, Linux, macOS, iOS, Android, tvOS, watchOS, WebAs...

Поиск задач в JIRA (простым языком). Часть 1: Быстрый и базовый поиск В последнее время JIRA активно используют организации, не имеющие прямой связи с IT. Специалистам, не знакомым ранее с JIRA, бывает сложно понять структуру JQL-запросов, если не привести примеры. Для упрощения восприятия, мы решили собрать всю документацию, локализовать и р...

[Перевод] Disposable ref structs в C# 8.0 Давайте посмотрим, что об этом сказано в блоге о предстоящих изменениях в С# 8.0 (версия Visual Studio 2019 Preview 2): «stack-only структуры появились в С# 7.2. Они чрезвычайно полезны, но при этом их использование тесно связано с ограничениями, например невозможностью реа...

[Из песочницы] Структуры данных с примерами на языке Swift. Часть первая: связаный список Предисловие Кто из iOS разработчиков не мечтал о работе в престижном месте вроде Yandex или Avito. К сожалению, про мечты на собеседованиях спрашивает только hr, а вот интервьюеры из числа разработчиков задают вопросы немного другого характера. Чем отличается reference type ...

Гэри Илш: изменения в обработке nofollow были призваны улучшить сигналы ссылок На Webmaster Conference в Японии сотрудник Google Гэри Илш рассказал о мотивах, которые побудили Google изменить подход к обработке ссылочного атрибута rel=”nofollow”. По его словам, эти изменения были призваны улучшить ссылочные сигналы и, соответственно, результаты поиска....

Анализируем тональность текстов с помощью Fast.ai В статье пойдет речь о классификации тональности текстовых сообщений на русском языке (а по сути любой классификации текстов, используя те же технологии). За основу возьмем данную статью, в которой была рассмотрена классификация тональности на архитектуре CNN с использование...

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

[recovery mode] Что мне не нравится в Python Привет, Хабр! Я подумал о том чего мне не хватает в Python, и что мне не нравится. Дисклеймер: это мое субъективное мнение, оно может не совпадать с Вашим. Я с удовольствием программирую на Python, но у любой технологии (языка программирования в частности) есть свои недос...

[Из песочницы] Синтез как один из методов улучшения производительности PostgreSQL Философское вступление Как известно, существует всего два метода для решения задач: Метод анализа или метод дедукции, или от общего к частному. Метод синтеза или метод индукции, или от частного к общему. Для решения проблемы “улучшить производительность базы данных” это...

[Перевод] Вся правда об ОСРВ. Статья #27. Системное время Понятие времени в контексте ОСРВ была введена в одной из предыдущих статей, вместе с идеей о связанных со временем функциях, доступных в ОСРВ. Читать дальше →

Использование тепловых потенциалов для анализа территорий Пример расчета теплового потенциала для уличной сети г. Нижнего Новгорода Территория города – сложная, неоднородная система, находящаяся в постоянном изменении. Описать территорию и провести оценку городской среды можно с помощью пространственных объектов (факторов). Факто...

Cisco HyperFlex vs. конкуренты: тестируем производительность Мы продолжаем знакомить вас с гиперконвергентной системой Cisco HyperFlex. В апреле 2019 года компания Cisco в очередной раз проводит серию демонстраций нового гиперконвергентного решения Cisco HyperFlex в регионах России и в Казахстане. Записаться на демонстрацию можно чер...

NILFS2 — пуленепробиваемая файловая система для /home Как известно, если неприятность может произойти, то она обязательно произойдёт. Наверное, у каждого были случаи, когда случайно был стёрт свежий важный файл, или случайно был выделен и уничтожен текст в текстовым редакторе. Если вы — хостер или владелец сайта, то, наверно...

[Из песочницы] Typescript и react Разработка на javascript иногда становится похожа на работу детектива. Как понять чужой код? Хорошо, если разработчик обладает тонким искусством называть переменные так, чтобы другие поняли суть. А как быть, если члены команды все таки не всегда способны понять замысел своег...

Supply Chain Security: «If I were a Nation State...» Задумывались ли вы, сколько различных организаций, компаний, служб, людей приняли участие в создании и транспортировке вашего компьютера, роутера и любого другого устройства, которое вы используете в повседневной жизни или на работе? И чем это опасно? Если нет, то добро пож...

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

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

[Из песочницы] Управление зависимостями в Python: сравнение подходов Я пишу на питоне лет пять, из них последние три года — развиваю собственный проект. Большую часть этого пути мне помогает в этом моя команда. И с каждым релизом, с каждой новой фичей у нас все больше усилий уходит на то, чтобы проект не превращался в месиво из неподдержива...

[Перевод] Семь лет работы разработчиком: какие уроки я извлёк Время летит, правда? Моя карьера началась в 2012 году, с первой стажировки по C++. Честно говоря, я понятия не имел, что делаю (на самом деле, ничего не изменилось). Однако я извлёк несколько уроков. Отказ от ответственности: в этом сообщении не будет никакого кода. Вопр...

[Из песочницы] Коротко о главном: Clean Architecture, Robert C. Martin Это будет рассказ о впечатлении о книге, а также будут рассмотрены некоторые понятия и знания, которые, благодаря этой книге, были изучены Архитектура Можете ли вы, читая эту публикацию, дать четкий ответ на вопрос, что такое архитектура? Что такое архитектура в контексте п...

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

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

Экраны-водопады могут стать историей быстрее, чем ожидалось Пару дней назад хорошо зарекомендовавший себя китайский сетевой информатор под ником Ice Universe сообщил, что у Samsung Galaxy S11 не будет экрана-водопада, хотя рамки дисплея будут уже, чем у Galaxy Note10. Некоторые СМИ расценили это заявление, как информацию о том, ...

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

[Из песочницы] NeoBook: среда программирования для непрограммистов NeoBook: среда программирования для непрограммистов Для кого эта статья Статья написана, в первую очередь, для тех, кто не является профессиональным программистом, но хочет уметь создавать свои собственные компьютерные программы для компьютеров с Windows. Программирование ...

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

[Перевод] Трагедия systemd Согласно Википедии, трагедия — это «форма драмы, основанная на человеческих страданиях, которая вызывает в аудитории сопутствующий катарсис или удовольствие». Из этого определения почерпнул вдохновение Бенно Райс в своём выступлении на конференции 2019 linux.conf.au. Его док...

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

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

Что слышно в радиоэфире? Радиолюбители/Ham radio Привет Хабр. В первой части статьи про то что слышно в эфире было рассказано про служебные станции на длинных и коротких волны. Отдельно стоит рассказать о радиолюбительских станциях. Во-первых, это тоже интересно, во-вторых, присоединиться к этому процессу, как на прием, т...

[Перевод] Создаем инфраструктуру как код с GitLab и Ansible Вся мощь GitLab CI в демонстрации плейбуков Ansible при подходе «инфраструктура как код». GitLab CI — это эффективный инструмент для самых разных сценариев, включая инфраструктуру как код. GitLab можно использовать с разными инструментами, но в этой демонстрации мы возьмем ...

Xiaomi показала прототип складного смартфона Информация о том, что Xiaomi работает над собственным складным смартфоном, появлялась в сети неоднократно. Более того, недавно Эван Балсс (Evan Blass) в своём Twitter опубликовал видео прототипа устройства, хотя поверить в реальность его существования было довольно непросто...

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

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

Ещё один способ отстрелить себе ногу, используя std::thread Стандарт C++11 принёс в язык стандартный механизм поддержки тредов (их часто называют потоками, но это создаёт путаницу с термином streams, так что я буду использовать оригинальный англоязычный термин в русской транскрипции). Однако, как и любой механизм в C++, этот несёт в ...

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

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

[Перевод] The Pirate Bay за 15 лет так и не смогли убить Интернет продолжает развиваться с небывалой скоростью, но одно в нём остаётся неизменным — это The Pirate Bay Как-то в 2009-м году, в тихом уголке читального зала моей школы, я загрузил свой побитый жизнью ноутбук, при этом следя за тем, чтобы никто не подглядывал мне чер...

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

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

В Google Pay появилась биометрическая аутентификация для денежных переводов Если у вас есть телефон Android 10, теперь вы сможете использовать биометрическую аутентификацию при осуществлении денежных переводов через Google Pay. Новый параметр безопасности совместим только с API-интерфейсом для биометрии Android 10, поэтому маловероятно, что он...

[Из песочницы] Эффективное создание компонентов с помощью styled system Для стилизации react компонентов наша команда использует styled-components. О styled-components уже есть статьи на Хабре, поэтому подробно останавливаться на этом не будем. Знакомство с Styled components Лучше, быстрее, мощнее: styled-components v4 Написав много компоне...

Установка и настройка Nexus Sonatype используя подход infrastructure as code Sonatype Nexus – интегрированная платформа, с помощью которой разработчики могут проксировать, хранить и управлять зависимостями Java (Maven), образами Docker, Python, Ruby, NPM, Bower, RPM-пакетами, gitlfs, Apt, Go, Nuget, а также распространять свое программное обеспечение...

Kotlin Native: следите за файлами Когда вы пишите command line утилиту, последнее, на что вам хочется полагаться, так это на то, что на компьютере где она будет запущена установлен JVM, Ruby или Python. Так же хотелось бы на выходе иметь один бинарный файл, который будет легко запустить. И не возиться слишко...

[Перевод] Храним SSH-ключи безопасно Хочу рассказать как безопасно хранить SSH-ключи на локальной машине, не боясь за то, что какое-то приложение может украсть или расшифровать их. Статья будет полезна тем, кто так и не нашел элегантного решения после паранои в 2018 и продолжает хранить ключи в $HOME/.ssh. Для...

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

Фотоаппарат на дискетах: 8 интересных фактов о Sony Mavica MVC-FD85 (много картинок) Меня раньше всегда забавляло, что в старой фантастике люди далёкого будущего продолжают пользоваться старыми носителями информации. Космические корабли бороздят просторы далёких галактик, но на Земле и в космосе всё ещё используют дискеты или магнитные ленты. А теперь пре...

3. Типовой сценарий внедрения Check Point Maestro В прошлых двух статьях (первая, вторая) мы рассмотрели принцип работы Check Point Maestro, а также технические и экономические преимущества этого решения. Теперь хотелось бы перейти к конкретному примеру и описать возможный сценарий внедрения Check Point Maestro. Я покажу ...

«Есть ли жизнь после Синьора?» или о чем мы будем говорить на SECR-2019 Привет, Habr! Для каждой команды есть просто мероприятия, а есть те, к которым готовишься особенно. Для нас в Reksoft – это Software Engineering Conference Russia или SECR, который пройдет 14-15 ноября в Санкт-Петербурге. Читать дальше →

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

Статистика и мониторинг PHP скриптов в реальном времени. ClickHouse и Grafana идут на помощь к Pinba В этой статье я расскажу как использовать pinba совместно с clickhouse и grafana вместо pinba_engine и pinboard. На php-проекте pinba — пожалуй единственный надёжный способ понять, что происходит с производительностью. Правда обычно pinba внедряется только тогда, когда уже н...

Peloton: следующая Apple или еще один скам? На Хабре о Peloton пока что знают только по короткой новостной заметке. А зря. Кейс тут очень интересный. Эта компания делает велосипеды с встроенным онлайн-стримингом. Казалось бы, что за бред (и что может быть проще)? Тем не менее она уже оценивается более чем в $9 млрд,...

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

Форма корпуса Xigmatek Zeus Spectrum Edition далека от классической Компания Xigmatek представила компьютерный корпус Zeus Spectrum Edition. Это открытое шасси, на которое навешиваются съемные панели, три из которых изготовлены из стекла. Форму корпуса сложно описать одним словом, но она довольно далека от формы классического прямоуголь...

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

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

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

Стратегия продукта и стратегия организации — как они связаны между собой Иван Подобед, Director of Game Platform в Awem, рассказал о стратегии с точки зрения системной инженерии. Будет полезно всем, кто хочет разобраться в базовых понятиях построения стратегии продукта и организации. Я часто сталкивался с понятием «стратегия» во время карьеры ар...

Как глубока кроличья нора? CLRium #5: Garbage Collector Мир несется вперед, движимый прогрессом и конкуренцией. Нам с вами нереально повезло: ведь для нас работают величайшие умы, создавая поистине серъезные механизмы: компиляторы, IDE, базы данных. Делают их так, что мы получаем истинное удовольствие, используя их. Один из этих ...

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

Поставил 301 редирект с дропнутого домена. Как понять, что он работает? Вопрос пользователя: Мы купили дропнутый домен и настроили с него 301 редирект на продвигаемый сайт. Работает ли дроп – как проверить? Через сколько времени нам понять, передалось ли ссылочное с этого дропа на наш сайт? Наш ответ Для того, чтобы понять, работает 301 ре...

Демонстрация нового флагмана LG G8 ThinQ на MWC 2019 Компания LG проделала отличную работу, выпустив очередной флагман LG G8 ThinQ. В телефоне есть то, что вы ожидаете: как и любой другой премиальный смартфон, который мы видели на MWC, G8 использует один из чипсетов Qualcomm Snapdragon 855, в сочетании с 6 ГБ оперативной п...

Монады с точки зрения программистов (и немного теории категорий) Введение Как узнать, что человек понял, что такое монады? Он сам вам об этом расскажет в первые 5 минут общения и обязательно попробует объяснить. А ещё напишет об этом текст и по возможности где-нибудь его опубликует, чтобы все остальные тоже поняли, что такое монады. Среди...

Делаем облачное видеонаблюдение своими руками: новые возможности Web SDK Ivideon У нас есть несколько интеграционных компонентов, позволяющих любому партнеру создавать собственные продукты: Open API для разработки любой альтернативы личного кабинета пользователя Ivideon, Mobile SDK, с помощью которого можно разработать полноценное решение, эквивалентно...

Не «Маркусом» единым: обзор компьютерного кресла Hbada 140WM Я точно не знаю, но подозреваю, что сидя в жизни провожу гораздо больше времени, чем лёжа. По крайней мере, понятие «не выспался» мне знакомо куда ближе, чем «не насиделся» — как, полагаю, и многим на Хабре. В общем, я давно пришёл к выводу, что рабочее кресло айтишнику след...

Разновидности координат используемые в GUI Unity3d Почему разновидности и сколько их? Часто сталкиваюсь с тем, что люди просто не понимают как подвинуть объект в UI на какое то значение, и удивляются что результат зачастую непредсказуем. Или допустим как получить правильные координаты объекта в UI. Если мы через дебагер выве...

MessageBox для AvaloniaUI MessageBox — достаточно часто используемая форма для различных графических фреймворков, но почему-то в avalonia ей не нашлось место, тогда подарим ей жизнь самостоятельно. Читать дальше →

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

[Из песочницы] Особенности HttpUrlConnection из java.net Здравствуйте, сегодня постараюсь рассказать о том, как можно отправить запрос и прочитать ответ от HTTP сервера, используя URLConnection из библиотеки JRE. Сейчас изучаем Java в онлайн режиме. Вся наша команда использует Slack для работы и общения. Заинтересовала возможнос...

Стартовала предварительная регистрация на аниме-MMO Naruto: Slugfest Около месяца назад издатель Cubinet Interactive объявил, что получил права на выпуск мобильной игры Naruto: Slugfest в странах Азии. Это один из немногих проектов по мотивам известной франшизы с локализацией на английский язык. Первая возможность познакомиться с ним лично у ...

Предлагаемые изменения в Chromium нарушат работу uBlock Origin Разработчик uBlock Origin заявил, что его расширение для блокировки рекламы не сможет работать, если будут приняты изменения в Chromium. Речь идёт о внедрении declarativeNetRequest API, которые лишают возможности использовать webRequest API. Google считает, что изменения нео...

Архитектура нейронной сети для реализации алгоритма RL с возможностью задания одновременно выполняющихся действий Одна из классических схем нейронной сети для реализации алгоритма RL выглядит следующим образом: Где: inputs – входы в нейронную сеть; FC – (fully connected) архитектура скрытых слоев или CNN — FC – архитектура архитектура скрытых слоев (в зависимости о того, что подается ...

Домашний ЧПУ-фрезер как альтернатива 3D принтеру, часть четвертая. Общие понятия обработки Начав писать про стратегии обработки, я понял что творю «обезьяний набор» — пошаговое руководство даже не для чайников, а для идиотов, мои шаги повторить можно, сделать свои по образцу тоже, но понимания не добавляется. В свое время, когда я внезапно решил стать фрезеровщико...

[Перевод] Psion SIBO — КПК, которые не надо даже эмулировать Среди КПК фирмы Psion есть пять моделей, которые даже эмулировать не требуется, поскольку работают они на процессорах NEC V30, совместимых с 8086, отсюда и название КПК SIBO — sixteen bit organizer. Ещё данных процессорах есть режим совместимости с 8080, который в этих КПК...

Magento 2: импорт продуктов прямо в базу В предыдущей статье я описал процесс импорта продуктов в Magento 2 обычным способом — через модели и репозитории. Обычный способ отличается весьма низкой скоростью обработки данных. На моём ноутбуке выходило примерно один продукт в секунду. В данном продолжении я рассматрива...

Построение металлической площадки на свайном фундаменте в СПДС Металлоконструкции Приглашаем вас принять участие в бесплатном вебинаре «Построение металлической площадки на свайном фундаменте в СПДС Металлоконструкции». ЗАРЕГИСТРИРОВАТЬСЯ 25 мая состоится вебинар «Построение металлической площадки на свайном фундаменте в СПДС Металлоконструкции». Прог...

Некоммерческим организациям помогут настроить e-mail-маркетинг Email-маркетинг – это больше, чем просто рассылки. Выстраивание грамотной стратегии коммуникации требует основательного подхода. Этому и учатся студенты UniSender, которые готовы взяться за проекты НКО в качестве прохождения практики. Принцип win win в действии! Для ваше...

[recovery mode] Новые возможности в Вебмастере Давно были в Вебмастере? Пробегитесь по основным пунктам своего сайта за 5-10 минут времени, и поставьте задачи программистам! Для начала, если у вас есть сайт и нет Yandex-вебмастера – срочно поставьте webmaster.yandex.ru. Доверие 1. Значки перед сайтом: Читать дальше →

Выписки из Росреестра через ФГИС ЕГРН и python. Часть 1 — образец Дешевые выписки, что может быть лучше ? У Романа Андреевича Карцева есть неплохой монолог про раков вчерашних по 5 руб. и сегодняшних по 3-и. Будем считать, что прошлый пост был про раков по 5 руб. Так как выписка из ЕГРН по 300 руб., хоть и автоматизированная не каждому по...

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

[Перевод] Если вы не пишете программу, не используйте язык программирования Лесли Лэмпорт — автор основополагающих работ в распределённых вычислениях, а ещё вы его можете знать по буквам La в слове LaTeX — «Lamport TeX». Это он впервые, ещё в 1979 году, ввёл понятие последовательной согласованности, а его статья «How to Make a Multiprocessor Comput...

Не забудьте повысить шанс ответа клиенту, используя повторный запрос в L7 балансировке Используя nginx для балансировки HTTP трафика на уровне L7 есть возможность направить запрос клиента на следующий сервер приложений, если целевой не возвращает положительный ответ. Проба механизма пассивной проверки состояния работоспособности сервера приложений показало нео...

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

Использование новых NVMe SSD в качестве загрузочного диска на старых системах с Legacy BIOS (для любой ОС) Короткий мануал — как реализовать поддержку загрузочного NVMe SSD на старых материнских платах с Legacy BIOS и с использованием Clover (для любых ОС). По следам вот этого поста, где на мой взгляд, решение не так изящно и не для всех BIOS & OS. Читать дальше →

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

[recovery mode] Делаем маршрутизатор и NAS на одном процессоре У меня появился «домашний сервер» на Linux всего через несколько лет, как мне купили компьютер. Сейчас, с того момента прошло уже более пятнадцати лет и большинство этого времени у меня был какой-то второй дополнительный компьютер дома. Однажды, когда пришла пора его обновля...

StealthWatch базовые понятия и минимальные требования. Часть 1 Данная статья посвящена довольно новому продукту мониторинга сети Cisco StealthWatch. Основываясь на данных телеметрии вашей инфраструктуры, StealthWatch может выявлять самые разные кибератаки, включая: APTs DDoS атаки нулевого дня наличие ботов в сети кража данных (da...

GeekBrains совместно с Ростелекомом проведут IoT Хакатон Образовательный портал GeekBrains и Ростелеком приглашают принять участие в IoT Хакатоне, который состоится 30-31 марта в московском офисе Mail.ru Group. Принять участие может любой начинающий разработчик. За 48 часов участники, разбившись на команды, погрузятся в реальный...

Автор книги «Ведьмак» все же получит у CD Projekt Red отступные В октябре прошлого года сообщалось, что Анджей Сапковский, автор книги «Ведьмак», потребовал у CD Projekt Red компенсацию за использование своей интеллектуальной собственности. Причем потребовал не просто так, а при помощи юристов, требуя выплаты роялти. Все было бы впол...

[Из песочницы] Константные указатели на указатели на указа… Введение Недавно ко мне подошли с вопросом, «что это и как этим пользоваться?», показав следующий код: extern "C" { void byteMaskDowngrade(byte***const byteMask, const byte *const *const && source) { // какой-то код. } // некоторые фукции. } Эт...

Кое-что нашли: доклады с Elasticsearch Moscow meetup в OZON Для тех, кто досмотрел все сезоны новых и любимых сериалов, у нас есть кое-что поинтереснее — видео с Elasticsearch meetup в OZON. Читать дальше →

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

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

Как управлять React Data Grid через Redux Это продолжение предыдущей статьи: Зачем писать свой React Data Grid в 2019 Для чего нужен Redux? Ответов много. Например, чтобы работать с общими данными в разных React-компонентах. Но можно воспринимать Redux еще как способ манипулирования компонентой. Сам взгляд интересны...

Собираем Perl прямиком из 1987 года Прочитав новость "Код интерпретатора Perl официально перенесён на GitHub" на ресурсе LINUX.ORG.RU я решил взглянуть на репозиторий Perl 5, который теперь уже находится на GitHub’е. Удивительно, как трепетно и качественно его перенесли, сохранив не только абсолютно всю 32-ле...

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

[Из песочницы] Пользовательские параметры в Google Analytics, которые не раз нас спасали При настройке аналитики через Google Analytics (GA) нередко без внимания остаются Пользовательские параметры или CD (Custom Dimensions). Это происходит из-за сложности с пониманием их области применения: неясно, как именно CD могут помочь в сборе и анализе данных и каким обр...

Как получить 32 ГБ в «Облаке Mail.ru», если вы студент К началу учебного года Mail.ru дарит студентам бесплатное место в «Облаке». В акции может принять участие любой университет.

Security Week 07: локальные уязвимости IoT-устройств В традиционную рубрику «что еще не так с IoT» на прошлой неделе добавилось научное исследование специалистов из американского Мичиганского университета и бразильского Федерального университета Пернамбуку. В рамках исследования было изучено 96 IoT-устройств для умного дома из...

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

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

[Перевод] Изучаем английский: 8 способов вежливо сказать «нет» Западная культура для многих ассоциируется с вежливостью и ее подчеркнутой демонстрацией – иногда даже не совсем искренней, но «обязательной». Людям с другим менталитетом трудно ориентироваться в культуре, где негатив принято максимально смягчать. В частности, лично мне вс...

Защищённое облако на платформе DF Cloud  ФЗ-152 «О защите персональных данных» распространяется на всех существующих субъектов: физических и юридических лиц, федеральные органы государственной власти и местного самоуправления. Фактически, этот закон распространяется на любые организации, обрабатывающие информацию и...

[Перевод] Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7 Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS» В этой статье я расскажу о шагах по настройке DNS-с...

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

Основоположники теории распределенных систем в объятьях гидры Это Лесли Лэмпорт — автор основополагающих работ в распределённых вычислениях, а ещё вы его можете знать по буквам La в слове LaTeX — «Lamport TeX». Это он впервые, ещё в 1979 году, ввёл понятие последовательной согласованности, а его статья «How to Make a Multiprocessor Com...

[Перевод] Нейросети и глубокое обучение: онлайн-учебник, глава 6, ч.1: глубокое обучение Содержание Глава 1: использование нейросетей для распознавания рукописных цифр Глава 2: как работает алгоритм обратного распространения Глава 3: ч.1: улучшение способа обучения нейросетей ч.2: почему регуляризация помогает уменьшать переобучение? ч.3: как выбрать гиперпара...

Concurrency и паттерны ошибок, скрытые в коде: Deadlock Наверняка, многие слышали, а кто-то встречал на практике, такие слова, как взаимные блокировки(deadlock) и гонки(race condition). Эти понятия относятся к разряду ошибок в использовании concurrency. Если я задам вам вопрос, что такое дедлок, вы с большой вероятностью без доли...

Check Point: оптимизация CPU и RAM Здравствуйте, коллеги! Сегодня я хотел бы обсудить очень актуальную для многих администраторов Check Point тему «Оптимизация CPU и RAM». Нередки случаи, когда шлюз и/или менеджмент сервер потребляют неожиданно много этих ресурсов и хотелось бы понять, куда они “утекают” и ...

[Из песочницы] Open Session In View в Spring Boot: Скрытая угроза Все здесь правы, каждый по-своему, и, следовательно, все здесь не правы. "Сказка о Тройке" (А. и Б. Стругацкие)Если вы используете Spring Data JPA, то после обновления на Spring Boot 2 при старте приложения можете заметить в логе новое предупреждение: spring.jpa.op...

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

Google: есть простой способ избавиться от спамных ссылок Инструмент отклонения некачественных бэклинков (Disavow Tool) не единственный способ борьбы со ссылочным спамом.

[Из песочницы] Xamarin.Forms — удобное использование иконочных шрифтов в приложении Постановка задачи Для отображения иконок в приложении Xamarin.Forms можно использовать изображения в различных форматах, например png, svg или шрифты ttf. Чаще всего для добавления стандартных иконок удобен шрифт с иконками, например google material icons. Шрифт с иконками ...

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

Avalonia мои за и против Я очень много пишу про Авалонию и часто восторгаюсь этим фреймворком, но, как и у любой технологии, у нее есть свои достоинства и недостатки, о них и хотелось бы поговорить. Читать дальше →

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

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

[Перевод] Новый курс по Python от Microsoft [на английском] Вероятно, самое большое препятствие при изучении любого нового языка программирования — просто знать, с чего начать. Что важно? Что нужно знать, чтобы стать профи? Трудно исследовать документы, когда даже нет уверенности, что читаешь то, что нужно. Возможно, вы присматривае...

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

[Из песочницы] Linux машина в домене Windows AD с помощью sssd и krb5 Была необходимость ввести в домен Windows машину с Ubuntu. Для этих целей обычно используют Samba и Winbind. Но возможен альтернативный вариант с sssd, краткое руководство по нему ниже. Для примера будем использовать: Домен = contoso.com Контроллер домена = dc.contoso.com ...

[Из песочницы] Глубокое ранжирование для сравнения двух изображений Привет, Хабр! Представляю вашему вниманию перевод статьи «Image Similarity using Deep Ranking» автора Akarsh Zingade. Алгоритм Deep Ranking Понятия "сходства двух изображений" — введено не было, поэтому давайте введем данное понятие хотя бы в рамках статьи. Сходс...

[Перевод] Кеширование в Laravel: основы плюс tips&tricks Техника кеширования позволяет создавать более масштабируемые приложения, запоминания результаты некоторых запросов в быстрое in-memory хранилище. Однако, некорректно реализованное кеширование может сильно ухудшить впечатление пользователя о вашем приложении. Эта статья содер...

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

Отправка статистики из DataFrame в BigQuery на примере статистики Яндекс Директ В этой статье расскажу о том, как я свел статистику по всему контексту в одном месте с помощью BigQuery и Data Studio У меня появилась необходимость визуализировать данные по всем источникам трафика. Для данной задачи я использую Data Studio. Google Ads туда подтягивается ...

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

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

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

Хакатон HACKNOWLEDGE II Ассоциация интернет-издателей хочет привлечь как можно больше пользователей к работе с ресурсами проектов на открытых лицензиях. Участников ждут прикладные и лекции от руководителей и ведущих специалистов, а также обучение работе с дан...

Allure-Android. Информативные отчеты для мобильной автоматизации Автоматизация мобильных приложений довольно молодая сфера: фреймворков много и многие проекты сталкиваются с проблемой выбора самого «быстрого, стабильного, простого в использовании». Также и мы около двух лет назад стояли перед выбором нового инструмента автоматизации тести...

[Перевод] Идеальный баг: Использование Путаницы Типов в Flash. Часть 1 И снова здравствуйте! Уже завтра у нас стартуют занятия в новой группе по курсу «Реверс-инжиниринг». Традиционно делимся с вами переводом полезного материала по теме. Поехали! Некоторым злоумышленникам важно, чтобы эксплойт был чрезвычайно надежным. Он всегда должен приводи...

Метод Pomodoro не так крут, как мог бы быть У метода pomodoro есть не совсем очевидные нюансы. И эти нюансы, если переформулировать Кличко, понимают не только лишь все, мало кто может это делать. Поэтому давайте разберемся, что это за метод, и что можно было бы улучшить. Читать дальше →

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

[Из песочницы] fform: React & JSONSchema — максимальная гибкость Flexibile form (fform) — построитель форм с минимальной избыточностью кода, при этом максимально гибкий и расширяемый. Используемый стэк технологий: React (v16), Redux (опционально), JSONSchema, TypeScript. Основная идея — максиально возможное повторное использование схем, ...

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

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

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

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

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

Entanglion — Hаskell среди настолок Настольная игра с механикой на квантовых вычислениях. Однажды двое сотрудников IBM Research (Maryam Ashoori и Justin Weisz) задумались над вопросом: «каков лучший способ обучить кого-то основам квантовых вычислений?». А так как они оба любители настольных игр, то возникла ...

[Перевод] Пишем API для React компонентов, часть 6: создаем связь между компонентами Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

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

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

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

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

У вас тоже есть такой друг, а может это Вы? Моему другу почти 32 и он программист (java-разработчик, если хотите). Раньше я любил читать «мотивашки», о том как люди приходят в IT, я читал их пачками, и каждая следующую, хоть и была похожа на предыдущую — давала свежий глоток позитива и оптимизма, веры в светлое будуще...

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

Беспроводная настройка Raspberry PI 3 B+ Привет, несколько месяцев назад, приобрел себе малинку, с целью попрактиковатся в embedded-типа разработке. Я уверен, много людей знакомых из Raspberry полагают, что для первоначального запуска микрокомпьютера нужен как минимум RJ45 или монитор, клавиатура и мышь (что лучше...

Вышел Orange Pi 3 — полноценный мини-пк за 30$ на Linux Вышла новая версия всем известного клона Raspberry Pi. Форм фактор тот же если не учитывать PCI-E. Из нового: PCIE Supports RC mode Supports x1 Gen2(5.0Gbps) lane Complies with PCI Express Base 2.0 Specification WIFI+BT AP6256, IEEE 802.11 a/b/g/n/ac, BT5.0 Читать дал...

Laravel: разбираем основные понятия. Часть третья: «Заключительная» Считанные дни остаются до старта нового курса от OTUS — «Framework Laravel». В преддверии старта курса делимся заключительной частью авторской публикации о основных понятиях в Laravel. Важно: данная серия публикаций не имеет отношения к образовательной программе курса и явля...

[Из песочницы] Не учите паттерны, учите концепции Добрый день (или вечер, или утро, в зависимости от того, когда выйдет этот пост). Я хочу высказаться о элитарной части программирования, и донести, в общем-то, очевидную мысль до начинающих в back-end(и не только) разработке, попутно используя попытку начать писать на Хабре...

Neutralinojs — что ты такое? Или UNIX way там, где не ждали Недавно я совершенно случайно наткнулся на простую рекламную заметочку "Neutralinojs — альтернатива Electron, потребляющая меньше памяти", рассказывающую о том, что есть такая крутая вещь как Neutralinojs. Заметочка, как и следует ей быть, совсем короткая и не несёт никакой ...

k3s – маленький, но сертифицированный Kubernetes от Rancher Labs Требования: Linux 3.10+ 512 MB of ram per server 75 MB of ram per node 200 MB of disk space x86_64, ARMv7, ARM64 Rancher Labs выпустила новый продукт для Edge, IoT, CI с поддержкой ARM: k3s Нет поддержки Legacy/Alpha, есть замена etcd3 на sqlite по умолчанию (можно вк...

Цевьё для страйкболистов Всем привет)На днях печатали вот такое цевьёКрайняя левая печаталась на FDM-ке две другие на SLA, функционально вышли достаточно жесткими, но SLA хотим использовать как мастер-модели для литья. НО есть проблема, модель имеет много отверстий и как создавать форму непонятно, у...

Software Defined Radio — как это работает? Часть 4 Привет Хабр. В третьей части было рассказано, как получить доступ к SDR-приемнику посредством языка Python. Сейчас мы познакомимся с программой GNU Radio — системой, позволяющей создать достаточно сложную конфигурацию радиоустройства, не написав ни единой строчки кода. Д...

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

[Из песочницы] Механизм контроля версий базы данных в GIT (управление дампами MySQL) Привет, любители Хабра! Сегодня я решил поделиться своим вариантом бекапа данных из MySql и рассказать о том как его можно использовать для контроля версий в Git. И если вам интересно узнать, как можно контролировать состояние базы данных на всех этапах разработки, или прост...

Новая функцию Windows 10 повергла всех в шок Многие люди, которые постоянно используют Windows 10 для развлечений, работы или же обучения, отлично знают о том, что в любой момент с «виндой» может что-то случиться, то есть нельзя на все 100% быть уверенными в Сообщение Новая функцию Windows 10 повергла всех в шок появи...

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

Google выявила уязвимость в безопасности iOS, которая позволяла заражённым сайтам массово взламывать iPhone Исследователи в области безопасности, работающие в команде Google Project Zero, заявляют, что они обнаружили несколько взломанных веб-сайтов, которые использовали ранее неизвестные уязвимости безопасности, чтобы без разбора атаковать любой iPhone, посещающий сайт. Эта атака ...

Восемь именных законов в UX дизайне ( часть 1) В UX дизайне, как и в любой другой сфере деятельности, есть свои принципы и законы. В этой статье я бы хотел разобрать восемь из них, которые названы в честь их создателей. Читать дальше →

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

[Из песочницы] Как хакеры используют Microsoft Excel против самого себя Привет, Хабр! представляю вашему вниманию перевод статьи «How Hackers Turn Microsoft Excel's Own Features Against It» автора Лили Хэй Ньюман. Elena Lacey, getty images Наверняка для многих из нас Microsoft Excel – программа скучная. Она много чего умеет, но всё-таки это н...

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

Стенд Epson на ISE 2019 – выставка прошла, впечатления остались 8 февраля в Амстердаме завершилась очередная выставка Integrated Systems Europe, которая является одной из главных международных площадок для демонстрации новинок потребительской электроники. Компании Epson в этот раз тоже было, что показать. К тому же, важно не только что...

Серийная версия электрокроссовера Ford Mach E попала в объективы журналистов в минимальном камуфляже До презентации электрокроссовера Ford в стиле Mustang остаются считанные дни (премьера назначена на следующее воскресенье, 17 ноября), поэтому вовсе неудивительно, что один из тестовых экземпляров модели попал в объектив автожурналистов. Удивительно другое — используем...

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

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

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

«На западе нет арт-директоров моложе 40 лет. У нас им можно стать до 30». Каково быть дизайнером в ИТ Весь современный дизайн — веб, типографический, продуктовый, моушн-дизайн — интересен тем, что объединяет в себе классические понятия о цвете и композиции с заботой об удобстве пользователей. Нужно и уметь рисовать иконки, придумывать, как в визуальных образах показыват...

[Перевод] Swift: ARC и управление памятью Будучи современным языком высокого уровня, Swift в основном берёт на себя управление памятью в ваших приложениях, занимаясь выделением и освобождением памяти. Это происходит благодаря механизму, который называется Automatic Reference Counting, или сокращенно ARC. В этом руко...

Решение задания с pwnable.kr 11-coin1, 12-blackjack, 13-lotto. Ошибки в логике приложений В данной статье рассмотрим решения 3-х заданий с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказывать о следующих категориях: ...

ChipWhisperer: атака по энергопотреблению на Магму Автор статьи: rakf В рамках Summer of Hack 2019 в Digital Security я разбирался с атакой по энергопотреблению и работал с ChipWhisperer. Что это? Анализ энергопотребления — это один из видов атак по сторонним каналам. То есть атак, использующих информацию, которая появляетс...

Введение в Spring, или что делать, если по всему проекту @Autowired и @Component, а вы не понимаете, что это Приветствую тебя, Хабр! Эта статья будет полезна тем, кто уже начал изучать Java и даже успел добиться некоторых успехов в понимании Java Core, и вот услышал слово Spring. И, возможно, даже не один раз: знание Spring Framework, как минимум, фигурирует в описаниях множества ...

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

[Перевод] Почему отписка от рассылки занимает несколько дней? В одном твите спрашивали, почему отписка от рассылки может «занимать несколько дней». Пристегнитесь покрепче, я сейчас расскажу вам невероятную историю о том, как это делается в энтерпрайз-разработке™… Есть один банк. Наверняка вы о нем слышали, а если вы живете в Великоб...

User Inyerface — как не надо мучать пользователя Студия Bagaar собрала худшие элементы сайтов в одной онлайн-форме и предложила ее заполнить. Сможете пройти это испытание? Читать дальше →

Исследование VW показывает экологическую рентабельность Golf-Е после 100 000 км пробега По заказу VW было проведено одно из наиболее масштабных исследований экологической «стоимости» производства и эксплуатации электромобиля и аналогичного ему автомобиля с ДВС, где учитывалось большое количество факторов, включая источники выработки электроэнергии, используемо...

Решение суда США: власти не имеют права заставлять человека разблокировать телефон пальцем или лицом Власти США не могут заставить гражданина разблокировать телефон, защищённый биометрическими методами, такими как сканирование лица (типа Face ID) или сканирование пальца (Touch ID и проч.). Хотя биометрическая защита легко поддаётся взлому, но сам пользователь имеет полное...

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

[Перевод] Вся правда об ОСРВ. Статья #30. Инициализация и процедуры запуска Nucleus SE У любой операционной системы есть определенный механизм запуска. Принцип работы этого механизма у каждой системы свой. Обычно говорят, что система загружается (англ. boot), это сокращение от «bootstrap», которое отсылает к выражению «pull oneself over a fence by one’s boot...

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

[Перевод] 56 проектов на Python с открытым исходным кодом 1. Flask Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создан...

YouTube закрывает комментарии на видео с маленькими детьми YouTube объявил о введении новых правил, по которым у видеозаписей с маленькими детьми автоматически отключается раздел комментариев. Это делается «для лучшей защиты детей и семей». YouTube и раньше отключал комментарии у видеороликов, которые привлекали извращенцев, но т...

Карьера программиста. Глава 3. Университет Продолжение рассказа «Карьера программиста». Закончив вечернюю школу, пришла пора поступать в университет. В нашем городе был один университет технической направленности. В нем же, был один факультет «Математики и Информатики», на котором была одна кафедра «Компьютерных сис...

ControlValueAccessor и contenteditable в Angular Вы когда-нибудь задумывались, как работает связка форм Angular и HTML элементов, через которые пользователь заносит данные? С самого начала для этого использовали ControlValueAccessor — специальный интерфейс, состоящий всего из 4 методов: interface ControlValueAccessor { w...

Игрушка ГАЗ-66 на пульте управления. Часть 3 Коротенькая часть про то как собрано под капотом, а так же давно обещанная демонстрация полной работы. Читать дальше →

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

Развертывание Office 2019 в корпоративной среде (для ИТ-специалистов) Для настройки и развертывания корпоративных версий Office 2019 в вашей организации, включая Project и Visio (и других программ), используйте средство развертывания Office Deployment Tool (ODT). Читать дальше →

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

[Перевод] В коре вашего мозга 17 млрд компьютеров Нейросеть нейросетей Изображение brentsview под лицензией CC BY-NC 2.0 В мозг поступает информация из внешнего мира, его нейроны получают данные на входе, производят обработку и выдают некий результат. Это может быть мысль (хочу карри на ужин), действие (сделать карри), и...

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

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

Танцы с саппортом: виды и формы поддержки Всем привет! Меня зовут Александр Афенов, и я тимлид команды Order Processing в Lamoda. Сегодня хочу рассказать вам о том, как мы разгребаем саппорт. Сначала поговорим про то, как он встраивается в наши процессы и как в целом мы планируем свою работу, спринты и итерации. ...

Следующим обновленным проектом от GameClub станет яркая музыкальная Melodive Студия GameClub, которая взялась восстанавливать классические мобильные игры и выпускать их для современных устройств, пока представила только Rolando: Royal Edition. И уже один этот проект внушает доверие. Недавно компания рассказала, что планирует обновить головоломку Inc...

[Перевод] Безумие дотфайлов Мы больше не контролируем свои домашние каталоги. В моём собственном 25 обычных файлов и 144 скрытых. В дотфайлах хранятся данные, которые не принадлежат мне: они принадлежат программистам, чьи программы решили захватить моё пространство, предназначенное для хранения моих л...

[Из песочницы] 6 способов угодить в ад готовых решений и спустить миллион-другой Привет, сейчас я расскажу тебе, что будет с перспективным проектом, если с самого начала обратиться к готовым решениям а-ля Wordpress, Open Cart и любым CMS, думая, что это и есть MVP. Основываться буду на трёх-месячном опыте работы на одном из проектов, в GitHub которого ...

Интерьер электромобиля Volkswagen ID.3 выглядит достаточно необычно Электрический хэтчбек Volkswagen ID.3 появится в продаже не ранее середины следующего года, хотя производитель начал принимать предзаказы ещё в мае. Тогда же нам раскрыли большую часть характеристик и показали самую машину, хотя и в камуфляже. Теперь же у нас есть возмо...

В новой версии Firefox блокируется автоматическое воспроизведение медийного контента Mozilla на днях представила Firefox 66, который можно было бы назвать рутинным обновлением, если бы не одно важное нововведение. А именно блокирование автоматического воспроизведения видео и аудио, чем грешат многие сайты. Если открыта пара вкладок, еще ничего — можно бы...

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

Смартфон Intel с гибким экраном складывается втрое и превращается в призму Вслед за Samsung, LG, Motorola, Huawei и Xiaomi, компания Intel тоже начала работать над складным смартфоном с гибким экраном. Intel уже оформила патент на разработку.  Разработка Intel существенно отличается от конкурентов. Смартфон работает не под управлением An...

MIMO spatial diversity: Аламоути, DET и прочее пространственное разнесение Чтобы передать сообщение от базовой станции мобильному устройству (и наоборот), электромагнитной волне приходится преодолевать значительное количество препон: отражения, преломления, рассеивания, затенения, доплеровские смещения частот и так далее. Во-первых, все эти воздейс...

Intel приглашает на OpenVINO хакатон, призовой фонд — 180 000 рублей Думаем, что вам известно о существовании полезного продукта Intel под названием Open Visual Inference & Neural Network Optimization (OpenVINO) toolkit — набора библиотек, средств оптимизации и информационных ресурсов для разработки ПО, использующего машинное зрение и D...

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

Локализация приложения за 10 шагов По прогнозам аналитической платформы App Annie, в ближайшие 4 года интерес к мобильным приложениям будет стабильно расти: если вы задумываетесь о выводе своего приложения на новые рынки, возможно, сейчас самое подходящее время. За два года работы менеджером по локализации в...

[Перевод] Смартфон, который ты никогда не купишь, доступен для предзаказа за 1300 $ Если вы питаете интерес ко всяким безумным штукам, вроде смартфона Meizu Zero, у которого нет ни одного порта или кнопки, теперь вы можете предварительно заказать его на Indiegogo за 1299 $. Поставки ограничены, так как компания сейчас продает только 100 единиц устройств. ...

[Перевод] Особенности рендеринга в игре Metro: Exodus c raytracing Предисловие После выхода последней игры из серии «Метро» я потратил несколько часов на изучение её внутренней работы и решил поделиться тем, что может показаться интересным с технологической точки зрения. Я не буду проводить подробный анализ или изучать дизассемблированный ...

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

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

[Перевод] Python как предельный случай C++. Часть 2/2 Продолжение. Начало в «Python как предельный случай C++. Часть 1/2». Переменные и типы данных Теперь, когда мы окончательно разобрались с математикой, давайте определимся, что в нашем языке должны означать переменные. В С++ у программиста есть выбор: использовать автоматичес...

Талисман для стабильной связи Для чего нужен мобильный Интернет, например, 4G? Чтобы путешествовать и быть всё время на связи. Вдали от мегаполисов, где нет привычного бесплатного Wi-Fi, и жизнь идёт своим спокойным чередом. А ещё он нужен, чтобы иметь доступ в Сеть, посещая удалённые объекты, где не пр...

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

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

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

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

Аутентификация по OTP на Web-сервере Apache В этом посте мы расскажем о том, как настроить аутентификацию по одноразовому паролю на Apache при помощи JAS и Radius. JAS (JaCarta Authentication Server) – автономный высокопроизводительный сервер аутентификации с поддержкой OTP- и U2F-токенов, а также программных токенов ...

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

Треугольник Паскаля vs цепочек типа «000…/111…» в бинарных рядах и нейронных сетях Серия «Белый шум рисует черный квадрат» История цикла этих публикаций начинается с того, что в книге Г.Секей «Парадоксы в теории вероятностей и математической статистике» (стр.43), было обнаружено следующее утверждение: Рис. 1. По анализу комментарий к первым публикациям...

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

Американский финрегулятор SEC выдал первое разрешение на ICO ICO было одобрено в рамках положения Regulation A+, принятого в законе о запуске стартапов (Jumpstart Our Business Startups Act) и позволяющего компаниям привлекать до $50 млн альтернативными IPO способами.Как пишет The Wall Street Journal (WSJ), стартап, построивший блокчей...

[Перевод] С++, определен ли тип: предварительное декларирование нужных объектов В прошлый раз, мы использовали SFINAE, чтобы понять, есть ли у типа определение, и мы использовали это в сочетании с if constexpr и универсальными лямбда-выражениями, чтобы код мог использовать тип, если он определен, при этом все еще принимаясь компилятором (и отбрасываясь)...

[Перевод] Решаем все 42 версии загадки про зелья из Гарри Поттера В конце книги «Гарри Поттер и философский камень» есть интересная загадка. Гарри и Гермиона входят в комнату, после чего входы в неё блокирует волшебный огонь, и выйти из неё они смогут, только решив следующую загадку: Перед тобой — опасность, а позади — спасенье, Помогут те...

[Перевод] Есть ли в CSS случайные числа? CSS позволяет создавать динамические макеты страниц и интерфейсы веб-проектов. Но CSS — статический язык. После того, как задано некое значение, изменить его нельзя. Идея случайного изменения неких значений здесь не рассматривается. Генерирование случайных чисел — это тер...

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

Демонстрация возможностей камеры Redmi Note 8 Pro Сегодня будут анонсированы новые смартфоны Redmi Note 8 и Redmi Note 8 Pro, которым в последнее время было уделено очень много внимания. Производитель опубликовал видеоролик, который посвящен демонстрации возможностей 64-мегапиксельной камеры нового бюджетного камерофон...

[Из песочницы] Чипы Intel Myriad X и их масштабируемость в инференсе нейронных сетей Нейростики Intel NCS2, чипы Myriad X, решения сторонних производителей — компания Intel продвигает решения на базе Myriad X в самых различных вариантах. Чем же так хороши эти ускорители? Во-первых, стоимостью одного FPS. Во-вторых, полной совместимостью с OpenVINO, где можно...

[Перевод] Анализ сишного Hello World Hello World — одна из первых программ, которые мы пишем на любом языке программирования. Для C hello world выглядит просто и коротко: #include <stdio.h> void main() { printf("Hello World!\n"); } Поскольку программа такая короткая, должно быть элементарно объяснить,...

[Из песочницы] Три относительно честных способа создания Flutter проекта Итак, с презентацией Google первой стабильной версии Flutter, которая случилась 4 декабря 2018 г. начался процесс изменения ландшафта на полях мобильного программирования. Появился новый игрок, способный изменить правила самой игры. Теперь из одной базы кода можно создават...

Математика и игра «Сет» Кто найдет тут «сет», получит от меня шоколадку. Сет — гениальная игра в которую мы рубились лет 5 назад. Крики, вопли, фотографирование комбинаций. В правилах игры написано, что ее изобрела в 1991 году генетик Марша Фалко (Marsha Falco), делая пометки во время исследова...

Data Science Digest Хабр, привет! Очень давно я вел на Хабре дайджест посвященный AI и BigData. Сейчас хочу восстановить его и раз в месяц делать подборку интересных материалов из области Data Science. В январе я начал опрос дата-сайентистов об их рабочих инструментах. За это время в нем ...

Ловим кота с TLA+ Формальные методы считаются эффективным, но неоправданно сложным способом обеспечения надежности программного обеспечения. Используемые при этом инструменты существенно отличаются от привычных программисту. Эта статья написана с целью снизить порог вхождения в этот инструме...

Хакатон HACKnowlege Ассоциация интернет-издателей и «Викимедиа РУ» при поддержке компании Яндекс хотят привлечь как можно больше пользователей к работе с ресурсами проектов на открытых лицензиях. Участников ждут воркшопы и прикладные и лекции от руководит...

Структуры против Классов С самого начала, когда я начинал заниматься программированием, вставал вопрос, что использовать для улучшения быстродействия: структуру или класс; какие массивы лучше использовать и как. По поводу структур, Apple приветствует их использование, объясняя это тем, что они лучше...

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

[Из песочницы] Создание REST API с Node.js и базой данных Oracle Привет, Хабр! представляю вашему вниманию перевод статьи «Creating a REST API: Web Server Basics». Часть 1. Создание REST API: основы веб-сервера Веб-сервер является одним из наиболее важных компонентов REST API. В этом посте вы начнете свой проект API REST, создав нескольк...

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

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

[Перевод] Используйте __main__.py Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаим...

[Из песочницы] Почему самоуничтожающиеся фотографии/видео в Telegram не безопасны Совсем недавно я увидел статью, где говорилось о внедрении самоуничтожающихся сообщений в мессенджере WhatsApp. Она будет иметь схожую с Telegram функциональность, но если в мессенджере Дурова удаление распространяется как на обычные сообщения (секретные чаты), также их мо...

Установка Windows через Windows Deployment Services и Microsoft Deployment Toolkit Как было написано в одной умной книге — если в вашем IT-отделе нет автоматизированной установки операционной системы, то её создание может быть самой важной задачей, которую вы когда-либо выполняли. Читать дальше →

Разговорный BERT — учим нейросеть языку соцсетей Одним из главных событий в области компьютерной лингвистики и машинного обучения в 2018 году был выпуск BERT от Google AI, который признан лучшим докладом года по мнению североамериканского отделения Ассоциации компьютерной лингвистики (NACL). В этой статье мы расскажем об э...

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

Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности Прелюдия Рассмотрим следующий код: //Any native COM object var comType = Type.GetTypeFromCLSID(new Guid("E13B6688-3F39-11D0-96F6-00A0C9191601")); while (true) { dynamic com = Activator.CreateInstance(comType); //do some work Marshal.FinalReleaseComObject(com...

Если связь — просто жесть, то ее нужно закопать Любой советский школьник, собиравший подобную схему знал, что без заземления — никак. Нынешнее поколение Z, взращенное айфонами, сомневается даже в необходимости антенн! Эта статья показывает важность и необходимость двух данных элементов в условиях слабого сигнала. У истин...

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

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

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

Унифицированные сервисы goszakup.gov.kz — Версия 2 Я работаю разработчиком в компании АО «Центр Электронных Финансов». Один и наших проектов — портал Государственных закупок Республики Казахстан — goszakup.gov.kz. Год назад мы запустили большой проект — Унифицированные сервисы (OpenData). Для реализации была использована ме...

[Из песочницы] Шифрование конфигурационных файлов Предыстория Мне поступила задача по настройке CI. Было принято решение использовать трансформацию конфигурационных файлов и конфиденциальные данные хранить в зашифрованном виде. Изучив документацию по шифрованию, вот что было сделано. Key Container В каждой ОС Windows есть...

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

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

Программирование LibreOffice Base. Часть 3 Сегодня мы рассмотрим использование диалоговых окон при редактировании данных в LibreOffice Base (OpenOffice Base). Как мы выяснили в предыдущих сообщениях, Форма LibreOffice Base (OpenOffice Base) — это фактически экземпляр текстового редактора LibreOffice (OpenOffice) Writ...

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

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

Цифровые права добрались до России Путин подписал Федеральный закон от 18.03.2019 № 34-ФЗ «О внесении изменений в части первую, вторую и статью 1124 части третьей Гражданского кодекса Российской Федерации». Предполагается, что внесённые поправки обеспечат защиту прав граждан и юрлиц в цифровой экономике. За...

[Из песочницы] AnyStub, библиотека заглушек соединений в Java В отличие от множества платформ Java страдает от недостатка библиотек заглушек соединений. Если вы давно в этом мире, то наверняка должны быть знакомы с WireMock, Betamax или даже Spock. Многие разработчики в тестах используют Mockito для описания поведения объектов, DataJpa...

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

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

Пара слов про FastPath и FastTrack в MikroTik Ни для кого не секрет, что MikroTik производит Software Baser роутеры и большую часть по обработке трафика берет на себя CPU. У данного подхода есть приимущество, т.к. можно напрограмировать практически любой функционал и поддерживать относительно единую систему для всех уст...

[Перевод] Зачем нам столько мессенджеров? Slack, Signal, Hangouts, Wire, iMessage, Telegram, Facebook Messenger… Зачем нам так много приложений для выполнения одной задачи? Десятилетия назад научные фантасты представляли себе летающие машины, автоматически готовящие еду кухни и возможность позвонить кому угодно на...

Решение задания с pwnable.kr cmd1, cmd2, asm, blukat. Обходим фильтрацию в Linux. Пишем shellcode с помощью pwntools В данной статье посмотрим как обойти легкий фильтр, разберемся как написать shell c помощью pwntools, а также решим несколько заданий с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информацион...

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

Проектируем космическую ракету с нуля. Часть 4 — Второй закон Кеплера Содержание Часть 1 — Задача двух тел Часть 2 — Полу-решение задачи двух тел Часть 3 — Ужепочти-решение задачи двух тел Второй закон Кеплера Всем привет! В прошлый раз мы остановились на вот этих уравнениях: \begin{equation*} \begin{cases} \ddot{x} = -\mu \dfrac{x}...

[Перевод] Serverless CI/CD на AWS Было бы круто, если бы развертывание в формате копи-пейст осталось в прошлом, но, увы, дела обстоят иначе. Бывает, разработчикам предпочтительней именно такой метод поставки. Хоть сейчас пиши статью о том, почему это не есть гуд, но вы и без меня все знаете. С тенденцией к ...

[Перевод] Flutter. Keys! Для чего они? Параметр key можно найти практически в каждом конструкторе виджета, но используют этот параметр при разработке достаточно редко. Keys сохраняют состояние при перемещении виджетов в дереве виджетов. На практике это означает, что они могут быть полезны для сохранения местопол...

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

[Перевод] Dart 2. Асинхронное программирование: футуры Асинхронное программирование: футуры Содержание Введение Что такое футура? Async — await Обработка ошибок Последовательное выполнение Future API Обработка ошибок Вызов нескольких функций, возвращающих футуры Что еще почитать? Что важно: Код в Dart работает в одном тре...

[Из песочницы] Проблемы основных паттернов создания data-driven apps на React.JS Для создания интерфейсов React рекомендует использовать композицию и библиотеки по управлению состоянием (state management libraries) для построения иерархий компонентов. Однако при сложных паттернах композиции появляются проблемы: Нужно излишне структурировать дочерние эле...

[Из песочницы] Duality — легкий и быстрый движок для игростроя под Windows (Доп.) Приветствую, читатель. В данной публикации речь пойдет о перспективном и достаточно молодом игровом движке, который незаслуженно остался в тени таких гигантов, как Unity или Unreal Engine. Разработчиками является объединение энтузиастов под руководством Adam's Lair. Как...

[Перевод] Пространственные манипуляции в 2D с помощью Signed Distance Fields При работе с полигональными ассетами можно отрисовывать только по одному объекту за раз (если не учитывать такие приёмы, как batching и instancing), но если использовать поля расстояний со знаком (signed distance fields, SDF), то мы не этим не ограничены. Если две позиции им...

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

Некоторые аспекты мониторинга MS SQL Server. Рекомендации по настройке флагов трассировки Предисловие Довольно часто пользователи, разработчики и администраторы СУБД MS SQL Server сталкиваются с проблемами производительности БД или СУБД в целом, поэтому весьма актуальным является мониторинг MS SQL Server. Данная статья является дополнением к статье Использование ...

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

[Перевод] Действительно ли Python GIL уже мертв? Всем привет! Уже в следующий понедельник начинаются занятия в новой группе курса «Разработчик Python», а это значит, что у нас есть время для публикации еще одного интересного материала, чем мы сейчас и займемся. Приятного прочтения. В далеком 2003 году Intel выпустил нов...

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

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

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

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

Создание металлической фермы в СПДС Металлоконструкции Приглашаем вас принять участие в бесплатном вебинаре «Создание металлической фермы в СПДС Металлоконструкции». ЗАРЕГИСТРИРОВАТЬСЯ Вебинар состоится 23 апреля в 11:00 по Москве. Программа вебинара включает в себя демонстрацию новых возможностей программного продукта СПДС ...

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

AMA с Хабром, v 7.0. Лимон, донаты и новости Каждую последнюю пятницу месяца я делаем AMA с Хабром — перечисляю список сотрудников, которым вы можете задать любой вопрос. Сегодня вы также можете задать нам любой вопрос, но вместо списка сотрудников будут слёзы счастья и радости по поводу того, что мы стали миллионерами...

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

[Перевод] Что не так с A/B тестированием Мы подготовили для читателей Хабры перевод статьи Майкла Камински, бывшего директора по аналитике в Harry’s. Он рассуждает о том, что не так с A/B тестированием. Комментирует материал Глеб Сологуб, директор по аналитике Skyeng. Понятие A/B-тестирования основано на в корне ...

Работа с внешними ресурсами в Unity 3d Введение Здравствуйте уважаемые читатели, сегодня речь пойдет о работе с внешними ресурсами в среде Unity 3d. По традиции, для начала определимся, что это и зачем нам это надо. Итак, что же такое эти внешние ресурсы. В рамках разработки игр, такими ресурсами может быть все...

nanoFOX — простое RISC-V совместимое ядро Небольшое вступление: Идея написания собственного ядра появилась после прохождения школы-семинара по цифровой схемотехнике в городе Томске. На данном мероприятии проводилось знакомство с текущими языками описания аппаратуры (Verilog HDL и VHDL), а также с небольшим процессор...

Бенчмарк как основание для принятия решения об изменении кода Билл Кеннеди в одной из лекций своего замечательного курса Ultimate Go programming сказал: Многие разработчики стремятся оптимизировать свой код. Они берут строчку и переписывают ее, говоря, что так станет быстрее. Нужно остановиться. Говорить, что тот или иной код быстрее, ...

Как мы в IntelliJ IDEA ищем лямбда-выражения Важной возможностью любой IDE является поиск и навигация по коду. Один из часто используемых вариантов поиска на языке Java — поиск всех реализаций данного интерфейса. Часто такая функция называется иерархией типов (Type Hierarchy) и выглядит как на картинке справа. Перебира...

Уязвимость в фильтрах AdBlock и uBlock позволяет выполнять произвольный код на веб-страницах При соблюдении ряда условий, опция фильтра $rewrite, внедренная в AdBlock, AdBlock Plus и uBlock с обновлением 3.2 от 17 июля 2018 года, позволяет выполнять произвольный код на отображаемой пользователю веб-странице, сообщается в блоге armin.dev. Вот как описывается проблем...

3D-напечатанные формы для выпечки: 8 рождественских идей Новый Год к нам мчится, скоро… ну Вы сами все знаете. Давайте готовиться к рождественским праздникам вместе. Для этого включаем Фрэнка Сенатру, и будем делать тематическую выпечку. В данной статье мы подготовили 8 интересных идей 3D-печати формочек для рождественского печень...

[Перевод] Бенчмарк потребления ЦП для Istio и Linkerd Введение Мы в Shopify занялись развертыванием Istio в качестве service mesh. В принципе все устраивает, кроме одной вещи: это дорого. В опубликованных бенчмарках для Istio говорится: С Istio 1.1 прокси потребляет примерно 0,6 vCPU (виртуальных ядер) на 1000 запросов в секун...

Трёхпроходные протоколы Данный текст будет являться одной из переписанных глав для учебного пособия по защите информации кафедры радиотехники и систем управления, а также, с этого учебного кода, кафедры защиты информации МФТИ (ГУ). Полностью учебник доступен на github (см. также draft releases). На...

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

Реализация сопоставления с образцом в Java Многие современные языки поддерживают сопоставление с образцом (pattern matching) на уровне языка. Java в данный момент не поддерживает pattern matching, но есть надежды что в будущем все может измениться. Сопоставление с образцом раскрывают перед разработчиком возможность п...

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

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

Не очень большие данные В статье будут рассмотрены возможности, предоставляемые встроенным или декларативным секционированием в 12 версии PostgreSQL. Демонстрация подготовлена для одноименного доклада на конференции HighLoad++Siberia 2019. Все примеры выполнены на недавно появившейся бета-версии: ...

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

Оптимизация конструкции методами теории автоматического управления В предыдущей статье "Скрещивание ужа и ежа.." мы проверяли применимость методов настройки систем автоматического управления к «реальным» моделям. В это статье попробуем оптимизировать не систему управления, а сам «физический» объект. Для настройки регуляторов существует бол...

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

Многообразный мир embedded systems и место Embox в нем Проекту Embox уже исполнилось 9 лет, но многие не понимают, что это такое и с чем его едят зачем он нужен. Некоторые из тех, кто слышал о проекте и знают, что это операционная система, считают, что Embox — это “отечественная ОС”. Действительно, задумывался Embox как попытка ...

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

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

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

[Из песочницы] Как сделать поддержку PCRE2 для Apache 2.4 Хочу поделится своим опытом перевода Apache 2.4 на PCRE2, так как даже PHP 7 уже давно поддерживает библиотеку PCRE2, а open source Apache Software Foundation все еще нет. Конечно я сейчас наверно опережаю релиз Apache с поддержкой PCRE2, так как я использую исходники с гита...

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

[Из песочницы] Consumer Driven Contracts или Gitlab CI глазами QA test automation Цели данной публикации: Краткое введение в Consumer Driven Contracts (CDC) Настройка CI pipeline на основе CDC Consumer Driven Contracts В этой части мы пройдемся по основным моментам CDC. Данная статья не является исчерпывающей на тему контрактного тестирования. Существуе...

[Из песочницы] JavaScript в 3D: введение в Three.js Привет, Хабр! Представляю Вашему вниманию перевод статьи «JavaScript in 3D: an Introduction to Three.js» автора Брета Кемерона (Bret Cameron). Введение Three.js это мощный инструмент. Он помогает использовать 3D дизайн в браузере с приемлемой производительностью. По нач...

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

Intel Ponte Vecchio — GPU с трёхмерной компоновкой и огромным объёмом кэш-памяти Как известно, в следующем году компания Intel представит свои первые (за последние много лет) дискретные видеокарты. Сейчас принято называть их Xe, так как сама Intel в своё время использовала данные буквы для обозначения. Но затем высказывание одного из сотрудников Int...

[Перевод] Big O Примечание. Сокращенный перевод, скорее пересказ своими словами. UPD: как отметили в комментариях, примеры не идеальны. Автор не ищет лучшее решение задачи, его цель объяснить сложность алгоритмов «на пальцах». Big O нотация нужна для описания сложности алгоритмов. Для этог...

Если вас заносит не в IT Жизнь – игра, иногда нам приходится играть по чужим, навязанным нам обстоятельствами правилам и делать не то, что хочется и к чему привык, а то, что сейчас нужно сделать. Невзирая на то, нравится это или нет. А может быть наоборот, вам хочется попробовать чего-нибудь новое. ...

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

ARM Assembler Editor: Если гора не идет к Магомеду, Магомед идет к горе… Если кто не знает мне интересно программирование на ассемблере для микроконтроллеров STM32… И все бы хорошо, да только программировать особо негде… Те среды которые есть в настоящий момент заточены больше для языка Си и программирование в них на ассемблере не сильно отличае...

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

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

[Из песочницы] Умная лампа Привет, Хабр! Предлагаю вашему вниманию перевод статьи «DIY Smart Lamp» автора Maciej Matuszewski. Пошаговое руководство по переходу от придуманной идеи к работающему продукту. Ожидание против реальности Вы когда-нибудь задавали себе следующие вопросы? Может ли горяч...

Настройка программы Asymptote Из всех хабов этот показался мне наиболее подходящей для этой темы. Итак. Скопировано с моего блога в целях создания еще одного русскоязычного источника информации по данной теме. Я опишу этот процесс для Asymptote 2.35. Итак, вот я скачал эту программу, установил. Если м...

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

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

Service Desk в Хоум Кредит. А что внутри?… В каждой компании, где присутствует подразделение ИТ, есть ServiceDesk, но у всех он разный. Где-то это простой helpdesk для приема обращений, где-то anykey, у нас в Хоум Кредите первая линия поддержки — ступень к многоуровневому процессу эксплуатации, а для многих сотрудник...

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

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

Apple превращается в Samsung. В следующем году нас ждёт пять новых моделей iPhone В своё время компания Apple выпускала лишь одну модель iPhone в год. Затем появилась линейка iPhone 6, и аппаратов стало два. Теперь у нас есть три смартфона в основной линейке, и это, похоже, не предел. Слухи последнего времени активно приписывают Apple намерение выпу...

[Перевод] GitHub Desktop 2.2: что нового Любой, кто использует Git, знает, что у него крутая линия обучения. Мы узнали от разработчиков, что большинство людей, как правило, учатся у знакомых, будь то коллега, профессор, друг или даже видео на YouTube. В GitHub Desktop 2.2 мы добавляем первую версию интерактивного...

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

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

C Новым 2019 годом — конкурс Друзья, уже настал Новый год на Дальнем востоке, огромными шагами он идет к каждому из нас. Поздравляем всех с Новым годом, желаем всем профессионального роста, бизнесу — много клиентов, чтобы все наши мечты и безумные идеи исполнялись! Для того, чтобы праздник был веселе...

Хотите отремонтировать iPhone? Сделайте это бесплатно! Видов поломок iPhone, как известно, существует великое множество. Но одно дело, когда необходимо поменять только аккумулятор, и совсем другое — заменить чип памяти или стекло, которое разбилось при падении. Чем сложнее ремонт, тем дороже он обходится, но на этот раз у...

Игровая агрессия, или как кооператив превращается в кровавую баню и что делать, чтобы он этого не делал В прошлый раз мы остановились на том феномене, что игра, которая изначально задумывалась как кооператив (например, D&D или многопользовательская песочница типа Space Station 13), почему-то может использоваться игроками совершенно по другому назначению, становясь простр...

[Перевод] Демонстрация AresDB: инструмент анализа в реальном времени с открытым исходным кодом на основе GPU от Uber Благодаря анализу в реальном времени мы, сотрудники компании Uber, получаем представление о состоянии дел и эффективности работы и на основе данных решаем, как повысить качество работы на платформе Uber. Например, проектная команда мониторит состояние рынка и выявляет потенц...

[Перевод] Я просканировал всю Австрию и нашёл… ...IP-камеры, принтеры, АСУ ТП и многое другое Отказ от ответственности: статья — результат нескольких недель работы. О самых больших проблемах я сообщил владельцам серверов, если смог их найти, а о других — в Cert.at. Кроме того, я не пытался войти ни на какое устройство/се...

Написание змейки на ipad (pythonista) … или как убить время имея ipad и больше ничего... Привет! О чем речь? К сожалению, планшеты пока не заменяют компьютеры. Но покодить в поездке/полете это же жизненно необходимо. Поэтому я поискал какие ide есть под ipad, и собственно сегодня буду делать игрульку на Python...

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

Информационная безопасность ЦОД О том, какие меры принимаются для обеспечения информационной безопасности (ИБ), вы читали не один раз. Любой уважающий себя айтишник с лёгкостью назовёт 5-10 правил ИБ. Cloud4Y же предлагает поговорить про информационную безопасность дата-центров. Читать дальше →

Обработка ошибок в Kotlin/Java: как правильно это делать? Источник Обработка ошибок в любой разработке играет важнейшую роль. В программе может пойти не так практически всё: пользователь введёт некорректные данные, или они могут прийти такими по http, или мы ошиблись при написании сериализации/десериализации и в процессе обработки...

[Из песочницы] Использование верилятора как средства быстрого моделирования RTL проектов. Введение в UVM В данной статье будут описаны установка и применение бесплатного ПО для моделирования схем цифровой логики на языке Verilog как альтернативы коммерческих продуктов Incisve от компании Cadense и ModelSim от компании MentorGraphics. Сравнение моделирования в ModelSim и Verilat...

В macOS Catalina можно подписывать документы с помощью iPhone и iPad Подпись цифровых документов — дело достаточно муторное. Как правило, чтобы подписать PDF-файл, его нужно сначала распечатать, а уже потом, подписанный, отсканировать. Apple заметно упростила эту процедуру на Mac, но раньше для подписи документов в «Просмотре» был нуже...

Размышления о карьере в ИТ Сделать быструю карьеру в области разработки сегодня не так просто, как кажется. Если начать работать, например, в сфере финансов, то в 30 лет вы почти наверняка будете руководителем. В нашей же отрасли и в 35, и в 40 лет можно оставаться разработчиком. Среди нас много тех, ...

Ну Apple, BLEee Компания Apple активно внедряет в массы идею о том, что теперь-то с приватностью данных пользователей их продукции всё в порядке. Но исследователи из Hexway выяснили, что стандартный и активно используемый механизм Bluetooth LE (BLE) позволяет узнать довольно много о твоем а...

Нагрузочное тестирование игры с парой сотен тысяч виртуальных пользователей Привет, Хабр! Я работаю в игровой компании, которая разрабатывает онлайн-игры. На текущий момент все наши игры делятся на множество “маркетов” (один “маркет” на страну) и в каждом “маркете” есть дюжина миров, между которыми распределяются игроки при регистрации (ну или иног...

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

[Из песочницы] Не переусложняйте ваш CI/CD и пользуйтесь Docker'ом осмысленно Я работал в разных компаниях, которые используют микросервисы. И они запускали их в docker контейнерах. Сейчас я работаю с проектом, который хоть и монолит, но его все равно удобнее запустить в контейнере. С одной стороны, Docker очень универсальный инструмент, его можно л...

Исчезающие фреймворки Почему мы используем фреймворки? Angular, React и Vue помогают нам строить сложные веб-приложения: структурировать код, управлять состоянием и разрабатывать сложные интерфейсы. За последнее десятилетие фреймворки стали стандартом. Дорогим стандартом. С тех пор как фреймворки...

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

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

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

CardInfo — API для определения логотипа, цветов банка и прочего по номеру карты Тут и демо, и документация: cardinfo.online Это API. Вы ему 6 первых цифр банковской карты, оно вам ссылку на логотип банка, его фирменные цвета, бренд (Visa, MasterCard, и т.д.) и прочее в формате JSON. CardInfo нужен тем, кто создаёт форму для приёма банковских карт у се...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 18. Основы маршрутизации Сегодня мы приступим к изучению роутеров. Если вы прошли мой видеокурс с первого по 17-й урок, то уже изучили основы свитчей. Сейчас мы переходим к следующему устройству – роутеру. Как вы знаете из предыдущего видеурока, одна из тем курса CCNA так и называется – Cisco Switch...

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

Компания Sikorsky провела демонстрацию беспилотного вертолёта с человеком на борту Вертолёт SARA (Sikorsky Autonomy Research Aircraft) на базе Sikorsky S-76 с автопилотом Matrix Technology Sikorsky считается одним из мировых лидеров в разработке беспилотных вертолётов. Созданный набор систем Matrix Technology достиг уже такого уровня, что в течение года ...

Медиаменеджер Ярослав Муравьев: «Любой пользователь интернета может самостоятельно генерировать информацию» Медиаменеджер и учредитель креативной резиденции «Штаб» Ярослав Муравьев уверен: государству необходимо полностью менять медиа-политику, чтобы восстановить позитивную связь не только с молодежью, но и со всем населением страны. В интервью изданию Enter эксперт рассуждал о за...

Занимательный C#. Пять примеров для кофе-брейка Написав уже не одну статью про Veeam Academy, мы решили приоткрыть немного внутренней кухни и предлагаем вашему вниманию несколько примеров на C#, которые мы разбираем с нашими студентами. При их составлении мы отталкивались от того, что наша аудитория — это начинающие разра...

Google Pixel 4 действительно будет похож на iPhone XI На YouTube-канале Unbox Therapy появился видеоролик, в котором нам демонстрируют металлические формы, используемые производителями аксессуаров при создании чехлов для новых смартфонов. По форме этих форм может показаться, что речь идет о смартфонах iPhone XI и iPhone XI...

[Перевод] Технические детали недавнего сбоя расширений Firefox Об авторе. Эрик Рескорла — технический директор группы Firefox в Mozilla Недавно в Firefox произошёл инцидент, когда большинство дополнений (расширений, аддонов) перестали работать. Это связано с ошибкой с нашей стороны: мы не заметили, что истёк срок действия одного из сер...

Про ссылочные атрибуты nofollow, sponsored и ugc

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

Словарик айтишника или Что? Где? Куда? Часть 1 «Привет! Добро пожаловать! Спасибо, что приняла наш оффер. Пойдем знакомиться с твоей командой. У них как раз сейчас дейли. Ты вышла под конец спринта, поэтому пока работы для тебя не запланировали. Как стендап закончится, можешь почитать спеки, командные окиары и просмотрет...

Видеообзор игровой мыши SteelSeries Sensei Ten SteelSeries Sensei Ten — это крайне аккуратное и грамотное обновление. Компания взяла все лучшее, что может предложить индустрия, использовала прекрасную форму и сделала прекрасную мышь еще лучше, ничего при этом не испортив. Читайте также текстовый обзор SteelSeries S...

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

В России создаётся национальная стратегия в области искусственного интеллекта Правительству РФ поручено до 15 июня 2019 года разработать национальную стратегию в области искусственного интеллекта. В поручении президента не указаны подробности, что должна из себя представлять эта стратегия, указана только дата. Для примера, можно посмотреть на аналоги...

[Екатеринбург, анонс] java.ural.Meetup @3 — анонс третьего Java-митапа + видео докладов с java.ural.Meetup @2 Приглашаем 21 сентября в субботу принять участие в третьей встрече java.ural.Meetup. Встреча пройдёт в конференц-зале в офисе Контура по адресу ул. Малопрудная, 5. Начало в 11:30. Расписание: 11:30 — 12:00 Регистрация и кофе 12:00 — 14:30 Три доклада 14:30 — 15:00 Перерыв ...

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

Javathon ко Дню студента 26-27 января состоится хакатон для студентов со знаниями Java c призовым фондом 275 000р. Принять участие может джавист любого уровня! Читать дальше →

Балансировка нагрузки в Openstack В крупных облачных системах особенно остро стоит вопрос автоматической балансировки или выравнивания нагрузки на вычислительные ресурсы. Озаботились данным вопросом и в Тиониксе (разработчик и оператор облачных услуг, входим в группу компаний Ростелекома). И, поскольку наш...

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

Как нам обустроить Мегафон Для торжества зла необходимо только одно условие — чтобы хорошие люди сидели сложа руки. (с) Эдмунд Бёрк Прочитав статью LMonoceros «Как Мегафон спалился на мобильных подписках», я был взвинчен и раздосадован сложившейся практикой, когда крупнейший сотовый оператор России...

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

Законопроект о борьбе с фейковой информацией принят в третьем чтении Источник: РИА Новости 7 марта Государственная дума приняла в третьем, окончательном чтении законопроекты о борьбе с фейковой информацией и оскорблением государства и общества, о чем пишет РИА «Новости». Что касается первой части, то законопроекты, которые к ней относятся, ...

Разработчики провели живую демонстрацию новой AR-игры Minecraft Earth со сцены WWDC [видео] Во время одной из живых демонстраций новых приложений и сервисов в рамках WWDC 2019 на сцену вышли представители компаний Microsoft и Mojang, продемонстрировав свою последнюю разработку — Minecraft Earth. Данный проект представляет собой знаменитую креативную «пес...

DIY от PVS-Studio: Геймификация достижений Если быть честными, говоря о работе, то давайте признаемся: даже самое любимое дело может время от времени наскучивать, сводить на нет настроение и изматывать однообразностью. Поэтому в нашем офисе PVS-Studio мы стараемся раскрасить яркими красками наши будни. Сегодня будет ...

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

[recovery mode] Добавляем функциональность Razor Pages в стандартный .NET Razor Pages — новая фича, появившаяся в Core.Net 2.0. Razor Page — это страница, состоящая из стандартной разметки (View) и бэкенд класса. В каком то смысле напоминает Web Forms только без поддержки сохранения состояния. Преимущество такого решения очевидно — мы избавляемся ...

[Из песочницы] Как сделать так, чтобы Daily/Stand-up не был похожим на встречу по статусу? Хотя Daily Scrum или Stand-up встречи принципиально отличаются от отчетных встреч, иногда первые становятся похожими на вторые. Чтобы этого избежать, давайте рассмотрим отличия хорошего эффективного Daily/Stand-up и не лучшей сферической встречи по статусу в вакууме, а затем...

[Перевод] Как Голливуд тайно использует AI для принятия ключевых решений о съемке фильмов В мире кино полно удивительных «что, если». Что, если в «Матрице» снялся бы не Киану Ривз, а Уилл Смит, которому предлагали роль в первую очередь? Что, если бы Николас Кейдж всё-таки смог сыграть Супермена в фильме Тима Бёртона? Были бы эти фильмы успешными, стали бы они ч...

Джон Мюллер об изменении роли ссылок в ранжировании Google Во время последней видеовстречи для вебмастеров сотрудник Google Джон Мюллер (John Mueller) рассказал о том, как поисковик использует ссылки сегодня. Один из участников встречи задал Мюллеру вопрос на тему закрытия всех исходящих ссылок атрибутом nofollow и того, как это вли...

Домен-фронтинг на базе TLS 1.3. Часть 2 Введение В первой части статьи мы дали краткое описание механизма encrypted SNI (eSNI). Показали каким образом на его основе можно уклоняться от детектирования современными DPI-системами (на примере билайновского DPI и запрещенного РКН рутрекера), а также исследовали новый в...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 13. Настройка VLAN Сегодняшний урок мы посвятим настройкам VLAN, то есть попробуем проделать всё то, о чем говорили на предыдущих уроках. Сейчас мы рассмотрим 3 вопроса: создание VLAN, присваивание портов VLAN и просмотр базы данных VLAN. Откроем окно программы Cisco Packer tracer с нарисован...

Как замаскироваться в интернете: сравниванием серверные и резидентные прокси Для того чтобы скрыть IP-адрес или обойти блокировки контента, обычно используют прокси. Они бывают разных типов. Сегодня мы сравним два наиболее популярных вида прокси – серверные и резидентные, поговорим об их плюсах, минусах и сценариях использования. Читать дальше →

Google теперь разрешает использовать Android-смартфон в качестве аппаратного ключа безопасности для двухфакторной аутентификации (2FA) Компания Google объявила, что отныне любой смартфон, работающий на Android 7 и выше, может использоваться в качестве аппаратного ключа безопасности для двухфакторной аутентификации (2FA), предоставляя пользователям ещё более надёжный способ аутентификации в сервисах Google. ...

Figma компонент и организация экземпляров на примере Userpic Качественная дизайн-система в Фигме всегда учитывает возможные состояния определенных компонентов. Если до появления Global Styles вариант был лишь один — всегда создавать новый компонент для каждого состояния (например текстовое поле может быть default, а может быть focus...

Supercell приглашает пользователей создавать скины для Brawl Stars, награда — $10 000 Supercell представила новую возможность для сообщества, в рамках которой игроки могут создавать собственные скины для персонажей Brawl Stars. Она называется Supercell Make. Компания будет приглашать игроков создавать скины для одного конкретного персонажа за раз. Если предл...

[Из песочницы] Функциональные компоненты с React Hooks. Чем они лучше? Относительно недавно вышла версия React.js 16.8, с которой нам стали доступны хуки. Концепция хуков позволяет писать полноценные функциональные компоненты, используя все возможности React, и позволяет делать это во многом более удобно, чем мы это делали с помощью классов. М...

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

[Перевод] Грамматика английского. Who vs. Whom – как понять, какое слово использовать Разобраться в хитростях английской грамматики может быть довольно непросто. Классический пример здесь – выбор между who и whom. Даже носители языка не всегда корректно используют нужное слово, что уж говорить о тех, кто только изучает английского. В блоге одного из сервис...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 9. Физический мир свитчей. Часть 2 Итак, мы рассмотрели, как настроить сеть на компьютере. Что же касается свитча, напомню, что он является устройством 2 уровня модели OSI, а мы должны сконфигурировать IP-адрес, который относится к 3-му уровню. Для этого мы используем управление IP-адресом и переходим к интер...

Как мы учим французов экологии и собираем бутылки Студенты из Университета Париж-Сакле (Франция) стали участниками практикума по переработке пластика, который проходит с 1 по 13 июля 2019 года в ФабЛабе НИТУ «МИСиС». Курс посвящен работе c машинами Precious Plastic. Открытый проект голландца Дэйва Хаккенса Precious Plasti...

От High Ceph Latency к Kernel Patch с помощью eBPF/BCC В Linux есть большое количество инструментов для отладки ядра и приложений. Большинство из них негативно сказываются на производительности приложений и не могут быть использованы в продакшене. Читать дальше →

MIDI-router на Raspberry Pi Хочу рассказать о том, как решить проблему, которая наверняка знакома любителям аппаратных синтезаторов. Что делать, если хочется состыковать MIDI-контроллер и синтезатор, но у одного из них есть только USB разъем и нет MIDI? Причем, по понятным причинам хочется все это сдел...

Книга «Знакомство с PyTorch: глубокое обучение при обработке естественного языка» Привет, Хаброжители! Обработка текстов на естественном языке (Natural Language Processing, NLP) — крайне важная задача в области искусственного интеллекта. Успешная реализация делает возможными такие продукты, как Alexa от Amazon и Google Translate. Эта книга поможет вам из...

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

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

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

[Из песочницы] Криптовалюта: живет или умирает? Часть 1. Пузыри как пугало для новичков «Криптомания» 2017 года была колоссальной. Хотя криптовалюты существуют с 2009 года, многие узнали о них именно в 2017 — на фоне ошеломительного роста курсов и явного ощущения революции. Многим новичкам казалось, что курсы будут расти ...

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

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

[recovery mode] Цель оправдывает средства? (!) Черное и серое SEO Попытаюсь коротко рассказать про черное и белое SEО. Что это такое, стоит ли пользоваться и т.д.Для начала, сама аббревиатура SEO, расшифровка которой звучит, как: «Search Engine Optimization», уже предполагает некую «серость». Слово «оптимизировать» хоть и не звучит как что...

[Перевод] За какими трендами UX-дизайна следить в 2020 году Иллюстрация Ouch.pics Мы живём в интересное время. Никогда всё вокруг не менялось так быстро. Можете хотя бы представить пять лет назад, как просите железку купить вам покушать? Ничто в нынешнем мире долго не остаётся неизменным. Это связано с бурным ростом стартапов: все ...

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

Официально: гарнитура Sony PS VR 2 не выйдет вместе с консолью PlayStation 5 Шлем виртуальной реальности Sony PlayStation VR был выпущен осенью 2016 года вместе с PlayStation 4 Pro. Консоль следующего поколения по всем данным выйдет в 2020 году, то есть к тому моменту PS VR будет на рынке всего около четырёх лет. И если раньше можно было хотя б...

[Перевод] Новости из мира OpenStreetMap № 484 (22.10.2019-28.10.2019) Данные из OSM + Blender + QGIS + … + творческий подход Долли Андриацифераны 1 | Dolly Andriatsiferana(@privatemajory) – Map data OpenStreetMap contributors Картографирование Жан-Луи Циммерман приводит еще один пример, наверное, самой распространенной в OSM проблемы — «ка...

Focos 2.0 использует искусственный интеллект для создания портретного эффекта на любой фотографии Теперь портретный режим есть и у iPhone с одной камерой.

Как Черная пятница влияет на поведение акций крупных компаний (и есть ли такая связь вообще) Изображение: Pexels Черная пятница (Black Friday) – это название дня, первого после праздника Дня Благодарения в США. Это один из наиболее важных моментов для ритейл-рынка Америки и многих других стран. Этот день открывает праздничный сезон, в него проходит множество расп...

[Перевод] Стандартный браузерный API Payment Request Знаете ли вы о том, что во многих современных браузерах имеется встроенный API, который называется Payment Request? Этот API описан в стандарте W3C, который направлен на поддержку работы с платёжной и контактной информацией. Вот обзор стандарта на ресурсе developers.google.c...

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

Retentioneering: как мы open-source инструменты для продуктовой аналитики на Python и Pandas написали Привет, Хабр. Эта статья посвящена итогам четырехлетней разработки набора методов и инструментов обработки траекторий движения пользователей в приложении или на сайте. Автор разработки — Максим Годзи, который стоит во главе команды создателей продукта, он же — автор статьи. ...

Глобальное кеширование результатов Query в ASP.NET CORE Парадигма CQRS в том или ином виде предполагает, что вызовы Query не будут менять состояние приложения. То есть многократные вызовы одной и той же query, в рамках одного запроса, будут иметь один и тот же результат. Пусть все интерфейсы, использующиеся в рамках запроса будут...

[Перевод] Конференция DEFCON 19. Anonymous и мы. Часть 2 Конференция DEFCON 19. Anonymous и мы. Часть 1 Джошуа Корман: вы знаете, я не сторонник самосуда, но я не думаю, что подобный подход должен исчезнуть. Это важный вопрос. Если мы думаем, что наша отрасль дисфункциональна и не уверены, что будем услышаны, тогда давайте примен...

От новых API в Chromium пострадает не только uBlock Origin, но и другие расширения Три месяца разработчики Chromium обсуждают новые программные интерфейсы declarativeNetRequest API, лишающие возможности полноценно использовать webRequest API. Расширения используют данные API для блокировки контента на лету во время загрузки страницы. В новой системе блокир...

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

[Перевод] Черновик FAQ: Почему стандарты С++ выходят каждые три года? У WG21 есть строгий график (см. P1000) выпуска стандарта каждые три года. И никаких задержек. В течение каждого цикла мы регулярно получаем вопросы «ну почему так строго?», особенно от новых участников комитета, которые не знакомы с его историей и причинами текущего положе...

Демонстрация режима Ultra Dark Mode и 20-кратного зума смартфона Oppo Reno 2 Ранее Oppo уже объявила о презентации новой линейки смартфонов Reno 2, которая состоится в Индии 28 августа. Теперь же производитель опубликовал несколько видеороликов, которые демонстрируют возможности Oppo Reno 2. В первом видео-тизере, опубликованном на официальном ...

Как сменить регион в Google Play Store Использовать Google Play Store довольно просто: вы открываете его, находите приложение, которое вам нужно, читаете отзывы (хотя и это не обязательно), нажимаете кнопку «Загрузить», и устанавливаете программу на свое устройство. Но что делать, если вы переедете в д...

Концепции программирования в Scratch Многим знаком Scratch – детская среда программирования, обучение в которой обычно сводится к созданию творческих проектов по принципу «от простого к сложному». При этом «классический подход» к изучению программирования (переменные → ветвления → циклы → функции → структуры ...

[Из песочницы] Стратегии локализации контента Настройка локализации контента и, следовательно, настройка языка интерфейса продукта таким образом, чтобы правильный язык отображался для правильного пользователя, чрезвычайно важен для каждой цифровой платформы. Предпосылки и предварительные соображения Цифровые проекты, ...

Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис. Часть 4 (OnKeyUp. Сканер ШК с эмуляцией клавиатуры) 1. Выбор способа обмена. Описание API. 2. Реализация API на стороне 1С. 3. BroadcastReceiver. Получаем данные 4. OnKeyUp. Сканер ШК с эмуляцией клавиатуры Эта статья должна была стать самой короткой. Но дьявол в деталях. Вот несколько фактов. Факт 1. Если у нас на форме...

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

OMower c ROS, первые шаги Первоначально, OMower разрабатывался под простые интерфейсы управления pfodApp и Modbus. Первый — это текстовый протокол высокого уровня, в котором передаются менюшки и управляющие команды, а второй — известная, но не слишком удобная в данном применении вещь, так как требует...

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

Новая игра Ninja Theory "Bleeding Edge" Новая игра Ninja Theory "Bleeding Edge" открыта для альфа-тестирования. Для того чтобы принять участие в тесте, нужно зарегистрироваться в программе Bleeding Edge Insider. На данный момент у Ninja Theory есть множество различных проектов, одним из которых...

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

[Из песочницы] Создание многомодульного Gradle проекта SpringBoot + Angular в IDEA Достаточно часто в моей практике используется связка Spring + Angular. Хочу поделится своим опытом по подготовке подобного проекта в среде разработки IntelliJ IDEA. Создаем пустой Gradle проект Для начала создадим пустой Gradle проект в IDEA, при этом снимите все галочки би...

[Перевод] Предиктивная аналитика данных — моделирование и валидация Представляю вашему вниманию перевод главы из книги Hands-On Data Science with Anaconda «Предиктивная аналитика данных — моделирование и валидация» Наша основная цель в проведении различных анализов данных — это поиск шаблонов, чтобы предсказать, что может произойти в будуще...

[Из песочницы] Пишем учебное приложение на Go и Javascript для оценки реальной доходности акций. Часть 1 — backend Давайте попробуем написать небольшую тренировочную, но вполне себе законченную информационную систему, состоящую из серверной части на Go и клиентского веб-приложения на Javascript + Vue JS. Для начала пару слов о том, что это за приложение и для чего оно нужно. Некоторое в...

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

[Из песочницы] Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис Для кого Выбор способа обмена. Описание API. Реализация API на стороне 1С. Android. Cтруктура приложения. BroadcastReceiver. Получаем данные ШК на примере АТОЛ Smart.Lite. Реализуем обмен и хранение данных. Используем Retrofit 2, Room, Coroutines. Пользовательский интерфейс...

Kubernetes кластер за $20 в месяц TL; DR Поднимаем кластер для обслуживания веб-приложений без записи состояния (stateless web applications) вместе с ingress, letsencrypt, не используя средства автоматизации вроде kubespray, kubeadm и любых других. Время на чтение: ~45-60 минут, на воспроизведение действий: ...

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

[Перевод] Настройка НА-кластера Kubernetes на «голом железе» с kubeadm. Часть 1/3 Всем привет! В этой статье я хочу упорядочить информацию и поделиться опытом создания и использования внутреннего кластера Kubernetes. За последние несколько лет эта технология оркестровки контейнеров сделала большой шаг вперед и стала своего рода корпоративным стандартом дл...

[Из песочницы] 4 Причины, почему вы должны забыть о Redux в приложениях на React Я работаю с Реактом на протяжении почти 3 лет, использовал как Redux так и MobX и у меня к текущему моменту возник вопрос. Почему абсолютное большинство front-end разработчиков продолжают свято верить в то, что Redux + Redux Saga + Reselect + 100500 других библиотек «облегча...

Авторы MMORPG Warhammer: Odyssey показали хаб-локацию Мариенбург и интерфейс игры У Warhammer: Odyssey есть все шансы стать одной из самых популярных и успешных MMORPG в следующем году. Тут стоит учитывать и популярность самой франшизы, и обещания разработчиков сделать игру в классическом формате, а не то, что привыкли клепать азиатские разработчики. 2 м...

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

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

C++20 укомплетован, C++23 начат. Итоги встречи в Кёльне На днях прошла встреча международного комитета по стандартизации C++ в Кёльне. В прошлый раз был принят feature freeze на C++20, так что комитет должен был обсуждать только исправления уже принятых вещей, а добавлять новинки уже в C++23… … но всё было не так! Что сделали...

[Из песочницы] Обновляем проекты Unity Android для совместимости с архитектурой ARM64 Google предложил разработчикам обновить приложения для совместимости с архитектурой ARM64 в срок до 1 августа 2019 года, если они не соответствуют этим требованиям Найдем и включим поддержку ARM64 в Unity Для включения, откроем настройки File — Build Settings, далее — Play...

RTOS или не RTOS вот в чем вопрос На написание данной статьи меня побудила длинная ветка комментариев (дискуссией это я назвать, к сожалению, не могу) к моей недавней статье “Многообразный мир embedded systems и место Embox в нем”. Меня в нескольких местах упрекнули в том, что я путаю RTOS и Embedded OS, чт...

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

Как переустановить macOS используя Internet Recovery Почему многие пользователи при выборе компьютера отдают предпочтение Mac? Ответ очевиден: это надежность, безопасность, простота использования и высокая стабильность работы. Последние версии macOS настолько отточены, что пользователи почти не встречаются с программными ошиб...

[Перевод] Python за месяц Руководство для абсолютных чайновичков. (Прим. пер.: это советы от автора-индуса, но вроде дельные. Дополняйте в комментах.) Месяц — это много времени. Если тратить на обучение по 6-7 часов каждый день, то можно сделать дофига. Цель на месяц: Ознакомиться с основными ...

Что же такое «Модель предметной области»? Привет, Хабр. Сегодня зашел в канал #school в русскоязычном GoCommunity в Slack и обнаружил там один интересный диалог. Данный диалог навел меня на некоторые мысли относительно того, как коллеги интерпретируют понятие “модель предметной области (домена)”. Как оказалось, су...

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

[Из песочницы] Груминг беклога в Jira (Backlog Grooming) Как настроить Scrum-доску для оптимизации процесса Груминга задач Во фреймворке Scrum есть такое понятие как «причесывание задач», перед тем как планировать задачи в спринт. Ведь задачи в спринт должны как известно попадать с минимальным набором атрибутов: оценка задачи, опи...

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

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

Легализовать нельзя запретить: закон о криптовалютах в РФ могут принять до конца июля Законопроект о цифровых финансовых активах на территории РФ может быть принят уже до конца июля, но власти до сих пор не определились с вектором регулирования рынка, заявил председатель комитета Госдумы по финансовому рынку Анатолий Аксаков в пресс-центре «Парламентской газе...

Xamarin.Forms — декоративное отображение QRCode с помощью SkiaSharp Для вывода/чтения штрихкодов есть популярная библиотека ZXing. Она умеет выводить и считывать много разных форматов: QRCode, Aztec и другие, более 2 десятков. Для считывания кодов в ней есть готовый контрол ZXingScannerView. Требуется минимум кода, чтобы добавить этот функ...

Java Native Image: проверка возможности использования Не так давно Oracle выпустил первый релиз проекта GraalVM (https://www.graalvm.org/). Релизу был сразу присвоен номер 19.0.0, видимо, для того чтобы убедить, что проект зрелый и готов к использованию в серьезных приложениях. Одна из частей этого проекта: Substrate VM — фре...

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

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

Внимание! Опасный баг в реализации C++ std::map::merge в Visual Studio 2017 Если Вы используете стандарт C++17 в MS Visual Studio 2017 — будьте осторожны: текущая реализация содержит критический баг в реализации std::map::merge и std::set::merge. Подробности — под катом. Читать дальше →

[Из песочницы] Кластерное хранилище Pacemaker + DRBD (Dual primary) + ctdb Доброго времени суток, хабровчане. Поступила задача — развернуть отказоустойчивое High Available хранилище по средствам pacamaker + drbd (в режиме dual primary) + clvmd + ctdb, которое будет монтироваться на сервер. Оговорюсь, что со всеми этими инструментами я сталкиваюсь в...

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

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

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

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

[Из песочницы] Как в Microsoft SQL Server получать данные из Google Analytics при помощи R В этом материале я хочу подробно показать, как можно при помощи R в Microsoft SQL Server реализовать получение данных из Google Analytics (и вообще из любого API). Благодарности: Поскольку я ни разу не маркетолог мне требовалась помощь специалиста. Тестовый кабинет и доступ ...

[Перевод] Как используется странная инструкция popcount в современных процессорах Это псевдорасшифровка моей презентации на !!Con 2019. В большинстве используемых сегодня процессорных архитектур есть инструкция под названием popcount, сокращённо от 'population count'. Она делает следующее: подсчитывает количество установленных битов в машинном слове. Нап...

Race condition в веб-приложениях TL;DR Большинство атакующих использовали ненадежные методы race condition, инструмент racepwn поможет это исправить Вася хочет перевести 100 долларов, которые есть у него на счету, Пете. Он переходит на вкладку переводов, вбивает Петин ник и в поле с количеством средств, ко...

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

Чудо Materialise Magics: Nissan тратит секунды вместо нескольких месяцев работы Nissan Motor Corporation использует 3D-печать для создания прототипов и проведения экспериментов с новыми формами автомобилей. Раньше эти задачи требовали большого объема ручной работы. Благодаря программному обеспечению Materialise удалось изменить весь процесс и сделать ...

[Из песочницы] Установка sdl2 на основные дистрибутивы Здравствуй, Хабр. Недавно наткнулся на новый цикл статей по sdl2, но без процедуры установки. Вроде ничего сложного, но если интересно, то давайте вместе пройдемся по граблям, которые могут нас ожидать. Я проведу установку для xcode10 на macOS 10.14.5, code::blocks на Ubuntu...

Ищем астероиды — проект «Hubble Asteroid Hunter» Центр малых планет (Minor Planet Center, MPC) Смитсоновской астрофизической обсерватории (SAO) и аэрокосмическое агентство NASA запустили проект «Hubble Asteroid Hunter», с помощью которого любой глазастый пользователь компьютера или планшета может помочь астрономам найти ...

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