Социальные сети Рунета
Понедельник, 13 мая 2024

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

[Из песочницы] Синтаксический разбор предложения на русском языке В данной статье описывается процесс синтаксического анализа предложения русского языка с использованием контекстно-свободной грамматики и алгоритма LR-анализа. Обработка естественного языка — общее направление искусственного интеллекта и математической лингвистики. Оно изуч...

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

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

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

Проверяем инкапсуляцию с помощью Roslyn Что такое Roslyn? Roslyn – это набор компиляторов с открытым исходным кодом и API для анализа кода для языков C# и VisualBasic .NET от Microsoft. Анализатор Roslyn – мощный инструмент для анализа кода, нахождения ошибок и их исправления. Синтаксическое дерево и семантическая...

[Перевод] Понимание алгоритма БПФ Здравствуйте, друзья. Уже завтра стартует курс «Алгоритмы для разработчиков», а у нас остался один неопубликованный перевод. Собственно исправляемся и делимся с вами материалом. Поехали. Быстрое преобразование Фурье (БПФ — англ. FFT) является одним из важнейших алгоритмов о...

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

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

[Из песочницы] Элементарные шифры на понятном языке Привет, Хабр! Все мы довольно часто слышим такие слова и словосочетания, как «шифрование данных», «секретные шифры», «криптозащита», «шифрование», но далеко не все понимают, о чем конкретно идет речь. В этом посте разберемся, что из себя представляет шифрование и рассмотрим...

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

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

Искусство парсинга 2 или транслитерация собственной разметки +БОНУС: как включать классы друг в друга в C++ Привет, Хабр! Эта статья — прямое продолжение статьи Искусство парсинга или DOM собственными руками, где мы разобрали HTML-документ и построили на его основе абстрактное синтаксическое дерево (AST) с доступом к любому элементу ч...

Математические неопределенности на примере Python Всем привет! Мы очень часто пользуемся привычными числами в наших любимых языках программирования. Привычные это 1, -1.5, pi или даже комплексные. А вот NaN, +Inf, -Inf используется нами гораздо реже. Примечание: В статье я использую элементарные функции Python версии 3.6....

15 книг по машинному обучению для начинающих Сделал подборку книг по Machine Learning для тех, кто хочет разобраться, что да как. Добавляйте в закладки и делитесь с коллегами! Книги по машинному обучению на русском 1. «Математические основы машинного обучения и прогнозирования» Владимир Вьюгин. О чем Сначала изуч...

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

[Из песочницы] Продвинутый Debug Debug Area — полезная функция в работе iOS разработчика в Xcode. Как только мы начинаем осваивать разработку под iOS, и пытаемся отойти от привычного и любимого print метода, и найти более быстрые и удобные методы понимания состояния системы в определенный период мы начинаем...

Samsung Compiler Bootcamp: научим создавать «программирующие программы» Каждый уважающий себя программист хотя бы раз в жизни хотел придумать свой язык программирования – и сделать для него компилятор. Подобное желание вполне понятно: сделать программу, которая в результате своей работы порождает другую программу – это, если вдуматься, волшебс...

Сoncurrent collections за 10 минут Photo by Robert V. Ruggiero Тема не новая. Но задавая вопрос “что такое concurrent collections и когда их использовать?” на собеседовании или code review, я почти всегда получаю ответ, состоящий из одного предложения: “они полностью защищают нас от race conditions” (что не...

Пробуем улучшенный оператор instanceof в Java 14 Не за горами новая, 14-я версия Java, а значит самое время посмотреть, какие новые синтаксические возможности будет содержать эта версия Java. Одной из таких синтаксических возможностей является паттерн-матчинг по типу, который будет осуществляться посредством улучшенного (р...

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

Хостинг: варианты, сравнения, пользовательская статистика Удивительно, но из обилия статей на тему хостинга в Интернете едва ли найдётся десяток, где тема раскрыта доступным для всех языком. Часто даже профессионалы и опытные пользователи отмечают, что в большинстве описаний «чёрт ногу сломит», особенно на сайтах компаний, предлага...

[Перевод] Почему люди не используют формальные методы? На Software Engineering Stack Exchange я увидел такой вопрос: «Что мешает широкому внедрению формальных методов?» Вопрос был закрыт как предвзятый, а большинство ответов представляли собой комментарии типа «Слишком дорого!!!» или «Сайт — это не самолёт!!!» В каком-то смысле ...

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

[Перевод] Жизненный цикл кода на Python – модель выполнения CPython Всем привет! Наступила весна, а это значит, что до запуска курса «Разработчик Python» остается меньше месяца. Именно этому курсу и будет посвящена наша сегодняшняя публикация. Задачи: — Узнать о внутреннем устройстве Python; — Понять принципы построения абстрактного син...

[Из песочницы] JavaScript: Создание простого MEVN-приложения О чем статья Цель этой статьи — показать, как можно создать базовое MEVN-приложение. Акроним MEVN означает — MongoDB + Express.js + Vue.js + Node.js. В качестве примера будет написано одностраничное приложение, которое содержит форму, состоящую из нескольких текстовых полей....

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

Как закрывать задачи в баг-трекере Эту статью я написала в рабочем конфлюенсе в 2013 году. И на момент написания этой статьи (2019 год) она все еще была актуальна. Исходно чек-лист записала как напоминание, в том числе и себе. Потому что к задачам приходится возвращаться, в том числе людям, которые их НЕ про...

MATH 42 3.3.24 MATH 42 — это программа для школьников и студентов, которая не только поможет Вам решить примеры по математике, но и подробно объяснит их ход решения. Все заданные Вами примеры решаются в режиме реального времени. MATH 42 предлагает к каждому заданному Вами примеру несколько...

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

[Из песочницы] CI/CD, используя Jenkins на Kubernetes Добрый день. На Хабре уже есть несколько статей о jenkins, ci/cd и kubernetes, но в данной я хочу сконцентрироваться не на разборе возможностей этих технологий, а на максимально простой их конфигурации для постройки ci/cd pipeline. Я подразумеваю, что читатель имеет базовое ...

Может ли темная материя быть старше Большого взрыва? Считается, что до Большого взрыва не было ничего Темная материя ускользает от астрофизиков уже довольно давно. О ее существовании впервые заговорил в 1920-х годах голландский астроном по имени Якобус Каптьен. Известный радиоастроном Ян Оорт позже укрепил гипотезу о существов...

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

Создание системы формальной верификации с нуля. Часть 1: символьная виртуальная машина на PHP и Python Формальная верификация — это проверка одной программы либо алгоритма с помощью другой. Это один из самых мощных методов, который позволяет найти в программе все уязвимости либо же доказать, что их нет. Более подробное описание формальной верификации можно увидеть на пример...

«Фабричный метод» и «Абстрактная фабрика» во вселенной «Swift» и «iOS» Слово «фабрика» – безусловно одно из самых часто употребляемых программистами при обсуждении своих (или чужих) программ. Но смысл в него вкладываемый бывает очень разным: это может быть и класс, порождающий объекты (полиморфно или нет); и метод, создающий экземпляры какого-л...

[Из песочницы] Учимся стандарту проектирования — Entity Relationship Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году. По ходу статьи простым языком на простых примера...

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

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

Как работает криптография на основе эллиптических кривых в TLS 1.3 Пара предупреждений читателю: Для того, чтобы (насколько это возможно) упростить процесс объяснения и сжать объем публикации, стоит сразу же сделать ключевую оговорку — все, что мы пишем, касаемо практической стороны рассматриваемой проблематики, корректно для протокола T...

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

[Из песочницы] Краткое введение в рекурсию. JavaScript Перевод: Привет, Хабр! Представляю вашему вниманию перевод статьи "A Quick Intro to Recursion in Javascript" Yazeed Bzadough. Примечание. Рекурсия не единожды обсуждалась на хабре, но данная статья даёт базовое понимание рекурсии. Это будет полезно начинающим разр...

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

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

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

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

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

Курс лекций «Основы цифровой обработки сигналов» Всем привет! Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе...

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

[Из песочницы] Применение формальных методов валидации моделей для UI Привет, Хабр! Представляю вашему вниманию перевод статьи «FORMALLY SPECIFYING UIS» автора Hillel Wayne. От автора Относительно недавно я наткнулся на статью про Инженерные методы в разработке ПО, где vasil-sd рассказал про формальную валидацию спецификаций к создаваемым пр...

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

[Перевод] Математики доказали, что многочлены не помогут взломать RSA Недавно в журнале Quanta вышел материал, в котором автор рассказывал про удивительный с точки зрения неискушенных читателей феномен, доказанный математиками. Его суть в том, что почти все многочлены определенного типа — неприводимые, то есть не поддаются разложению. Это док...

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

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

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

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

[Из песочницы] Фантазии на тему метаклассов в C# Программистам вроде меня, которые пришли в C# с большим опытом работы в Delphi, часто не хватает того, что в Delphi принято называть ссылками на класс (class reference), а в теоретических работах – метаклассами. Я несколько раз натыкался в разных форумах на обсуждение, прохо...

Как взять сетевую инфраструктуру под свой контроль. Глава третья. Сетевая безопасность. Часть третья Эта статья является пятой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Эта часть будет посвящена Campus (Office) & Remote access VPN сегментам. Может показаться, что дизайн офисной сети...

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

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

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

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

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

Парадоксы о сжатии данных Задача сжатия данных в своей простейшей форме может относиться к числам и их обозначениям. Числа можно обозначать числительными («одиннадцать» для числа 11), математическими выражениями («два в двадцатой» для 1048576), строковыми выражениями («пять девяток» для 99999), имен...

Terraformer — Infrastructure To Code Хотел бы рассказать про новый CLI tool который я написал для решения одной старой проблемы. Проблема Terraform уже давно стал стандартом в Devops/Cloud/IT сообществе. Вещь очень удобная и полезная чтоб заниматся infrastructure as code. Есть много прелестей в Terraform а т...

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

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

Где мы взяли флакон? Flowcon, или Флакон – методика управления, в том числе – задачами. Потоком, проектом, разработкой, рутинными функциями, регуляркой и т.д. Многие, узнав о методике и решениях на ее основе, задают вопросы – что да как, в чем суть, на основе каких «мировых практик» сделано, ка...

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

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

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

Как настроить типы задач и не сойти с ума Вводная частьВ предыдущем посте я писал как организовать процесс “грумминга” задач в системе JIra так чтобы “Менеджеру продукта” было удобно осуществлять навигацию по всему Беклогу продукта. Продолжая продуктовую тему напишу о том как я долго шел к пониманию того — что такое...

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

[recovery mode] Что показывает вольтметр или математика розетки О чем эта статья Сегодня я ненадолго отступлю от своей обычной темы о визуальном программировании контроллеров и обращусь к теме измерений напряжения прямо в ней, в розетке! Родилась эта статья из дискуссий за чаем, когда разразился спор среди «всезнающих и всеведающих» п...

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

3 совета, как нескучно провести урок для школьников Все чаще люди делают упор на дополнительное образование, а к школе относятся, как к формальной структуре, необходимой для получения аттестата и сдачи ЕГЭ. В этом уверен Денис Курек, руководитель компании Future Biotech, соорганизатор проекта Лига Знаний «Естественный интелл...

[Из песочницы] Передача знания и Нейронный машинный перевод на практике Нейронный машинные перевод (НМП, англ. Neural Machine Translation, NMT) развивается очень быстро. Сегодня, чтобы собрать свой переводчик, не нужно иметь два высших образования. Но чтобы обучить модель, нужен большой параллельный корпус (корпус, в котором предложению на исход...

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

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

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

[Перевод] Posit-арифметика: победа над floating point на его собственном поле. Часть 1 Часть 2 От переводчика: Тема формата Posit уже была на хабре здесь, но без существенных технических подробностей. В этой публикации я предлагаю вашему вниманию перевод статьи Джона Густафсона (автора Posit) и Айзека Йонемото, посвящённой формату Posit. Так как статья имеет ...

[Перевод] Сервисная сеть, «Плоскость данных» и «Плоскости управления» (Service mesh data plane vs. control plane) Привет, Хабр! Представляю вашему вниманию перевод статьи «Service mesh data plane vs control plane» автора Matt Klein. В этот раз «захотелось и перевелось» описание обоих компонентов service mesh, data plane и control plane. Это описание мне показалось самым понятным и ин...

[Перевод] LLVM с точки зрения Go Разработка компилятора — очень тяжёлая задача. Но, к счастью, с развитием проектов наподобие LLVM, решение этой задачи значительно упрощается, что позволяет даже программисту-одиночке создать новый язык, близкий по производительности к C. Работа с LLVM осложняется тем, что э...

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

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

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

Трактат о Pinе. Мысли о настройке и работе с пинами на С++ для микроконтроллеров (на примере CortexM) Последнее время я сильно увлекся вопросом надежности софта для микроконтроллеров, 0xd34df00d посоветовал мне сильнодействующие препараты, но к сожалению руки пока не дошли до изучения Haskell и Ivory для микроконтроллеров, да и вообще до совершенно новых подходов к разработк...

SP701 + PCAM-5C + 15 Минут+ VITIS = Easy MIPI на FPGA Аннотация Интерфейс MIPI сегодня становится всё более популярным интерфейсом для подключения камер и дисплеев. По этой причине всё больше отладочных комплектов на основе FPGA содержат на борту соединители интерфейса MIPI – как для подключения камер(ы) и дисплея(ев). Для того...

Какие приложения установлены на моём смартфоне Данная тема довольно популярна в сети Интернет, поэтому написать материал о приложениях, которые установлены на моём смартфоне, был просто обязан. Скажу сразу, в игры не играю, поэтому из установленных только PUBG. Для многих смартфон – это просто средство для совершения зв...

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

Из-за тёмной темы Thunderbird пришлось запускать анализатор кода «Приключение» с почтовым клиентом Mozilla Thunderbird началось с автоматического обновления на версию 68.0. Заметными особенностями этой версии было вот что: больше текста добавляется во всплывающие уведомления и тёмная тема по умолчанию. Повстречалась ошибка, которую захоте...

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

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

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

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

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

[Перевод] Доступное объяснение алгоритма коллапса волновой функции Алгоритм коллапса волновой функции (Wavefunction Collapse Algorithm) учит компьютер импровизировать. На входе он получает архетипичные данные и создаёт процедурно генерируемые данные, похожие на исходные. (Источник) Чаще всего он используется для создания изображений, но ...

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

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

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

[Перевод] Как без особенных усилий создать ИИ-расиста Предостерегающий урок. Сделаем классификатор тональности! Анализ тональности (сентимент-анализ) — очень распространённая задача в обработке естественного языка (NLP), и это неудивительно. Для бизнеса важно понимать, какие мнения высказывают люди: положительные или отрицате...

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

QEMU.js: теперь по-серьёзному и с WASM Когда-то давно я смеха ради решил доказать обратимость процесса и научиться генерировать JavaScript (а точнее, Asm.js) из машинного кода. Для эксперимента был выбран QEMU, некоторое время спустя была написана статья на Хабр. В комментариях мне посоветовали переделать проект ...

[Из песочницы] Знакомство с простейшей нейронной сетью и ее пошаговая реализация Как-то раз я наткнулся на книгу под названием «Создай свою нейросеть», автор которой -Тарик Рашид и после прочтения остался доволен, в отличие от многих других методичек по нейронным сетям, которые по-своему, несомненно, хороши, в этой книге все подавалось простым языком c д...

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

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

185 000 школьников узнали о Big Data во время акции «День ИТ-знаний» Акция "День ИТ-знаний 2019" собрала порядка 185 000 школьников из 4000 школ шести стран. 486 школ приняли очное участие в акции и принимали у себя сотрудников ИТ-компаний - всего прошло более 600 уроков. Специальная лекция для учеников 32 московских школ прошла в ...

Генератор простых арифметических примеров для чайников и не только Привет! В этой «статье», а вернее сказать очерке, покажу очень простой способ развлечься зная самые основы latex и python. Читать дальше →

Samsung открывает бесплатный онлайн-курс по нейросетям в задачах компьютерного зрения Вы пока не разбираетесь, почему ReLU лучше сигмоиды, чем отличается Rprop от RMSprop, чем нормализованный сигнал лучше ненормализованного и почему сигналы вообще стоит пробрасывать? И зачем нейронной сети нужен граф, и какую он совершил ошибку, что она распространяется обрат...

[Перевод] Как правильно раскрашивать многочлены Многочлены – это не просто упражнения в абстрактных материях. Они прекрасно подходят для выявления структур в неожиданных местах. В 2015 году бывший поэт, ставший математиком, Джун Хо помог решить задачу, сформулированную около 50 лет назад. Она была связана со сложными ма...

TDDx2, BDD, DDD, FDD, MDD и PDD, или все, что вы хотите узнать о Driven Development Просматривая статьи по проектированию ПО, я постоянно встречал тучу невиданных сокращений и вскользь упоминаемых практик разработки. TDD — ну, это все знают, сначала пишем тесты, а потом остальной код. BDD — что-то знакомое, вроде как, тоже тесты, но особенные. TDD — снов...

KnowledgeConf: нам нужно серьезно поговорить о докладах В первый день весны (или пятый месяц зимы, кому как) закончилась подача заявок на KnowledgeConf — конференцию про управление знаниями в IT компаниях. Признаться, итоги Call for Papers превзошли все ожидания. Да, мы понимали, что тема актуальная, видели это на других конфер...

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

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

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

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

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

[Из песочницы] Основы реактивного программирования с использованием RxJS Часть 1. Реактивность и потоки Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS. Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в ...

Peephole микрооптимизации в С++ и C# компиляторах В школе, когда мы решали уравнения или считали формулы, мы пытались их сперва сократить несколько раз, к примеру Z = X - (Y + X) сокращается в Z = -Y. В современных компиляторах это подмножество так называемых peephole-оптимизаций, в которых мы по, грубо говоря, набору шабло...

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

[Перевод] Вычисление 2D-коллизий: алгоритм Гилберта — Джонсона — Кирти Я занялся изучением процессов распознавания коллизий, и это привело меня к алгоритму Гилберта — Джонсона — Кирти (Gilbert-Johnson-Keerthi, GJK). Все примеры кода в посте написаны на TypeScript. В примерах используются созданные мной структуры, которые подробно в посте не р...

IntelliJ IDEA, ReSharper, SonarLint и SonarQube находят те же ошибки, что и PVS-Studio — ну и зачем нам PVS-Studio? Иногда люди задают вопрос, который, на первый взгляд, про одно, а на самом деле про другое. Как говорится, грамотно поставленный вопрос содержит половину ответа. На днях я вернулся с конференции JPoint, на которой впервые был представлен наш новый анализатор PVS-Studio для ...

Уникальный калькулятор MyScript Calculator 2 доступен на iOS и Android бесплатно Разработчики приложения MyScript Calculator 2 сделали все для того, чтобы сделать процесс решения примеров и уравнений максимально простым и интуитивным. Вместо того, чтобы выбирать нужные цифры и знаки на виртуальной клавиатуре, вам достаточно просто написать пальцем,...

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

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

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

[Перевод] Примеры C++ кода до и после Ranges Снова здравствуйте. Перевод следующего материала подготовлен специально для студентов курса «Разработчик C++», занятия по которому стартуют уже 27 июня. Библиотека Ranges была принята в C++20 на совещании стандартного комитета в Сан-Диего в ноябре прошлого года. Библиотек...

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

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

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

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

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

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

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

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

Пятничный мини-CTF Приветствую всех хабрачитателей. Я очень люблю поразмять свои мозги разными задачками — это могут быть какие-то математические задачи, интересные головоломки, связанные с программированием, или какие-то ctf-таски. Для тех, кто хочет разнообразить пятницу головоломками я хоч...

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

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

Модельно ориентированное проектирование. Создание достоверной модели, на примере авиационного теплообменника «Если на клетке слона прочтёшь надпись «буйвол», не верь глазам своим» Козьма Прутков В предыдущей статье о модельно-ориентированном проектировании было показано, зачем нужна модель объекта, и доказано, что без этой модели объекта про model based design можно говорить толь...

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

Про отзывы по моим услугам Про меня пишут очень много отрицательных отзывов. При этом 80% этих отзывов я даже не знаю кто пишет. Я не  видел в глаза этих людей. Много отрицательных отзывов пишут, те кто просто меня ненавидит.   Но сегодня я приведу всего 2 конфликтных ситуации и вы их оцените. &n...

[Перевод] Теория вместо эвристики: становимся лучше как frontend-разработчики Перевод Becoming a better front-end developer using fundamentals instead of heuristics Наш опыт показывает, что не имеющие технического образования разработчики и самоучки чаще полагаются не на теоретические принципы, а на эвристические методы. Эвристика — шаблоны и пров...

Можно ли считать статистику при малом количестве данных? В целом ответ – да. Особенно, когда есть мозги и знание теоремы Байеса. Напомню, что среднее и дисперсию можно считать только, если у вас имеется определенное количества событий. В старых методичках СССР РТМ (руководящий технический материал) говорилось, что чтобы считать ср...

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

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

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

[Перевод] Почему сумма трёх кубов – это такая сложная математическая задача Тяжело искать ответы в бесконечном пространстве. Математика уровня старших классов может помочь вам сузить область поисков. Учитывая, что люди изучают свойства чисел тысячи лет, можно было бы решить, что нам известно всё о числе 3. Однако недавно математики обнаружили нечт...

Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текс...

Как это было у тех кто дошёл… Чтобы вывести свой проект в какой то хороший уровень нужно время.  А что такое время?! Иногда 6 месяцев, иногда год, иногда два, иногда 3. Но эти сроки для многих кажутся какими то космическими. Какой срок готов работать человек в России над своим проектом или идей?! Неделя....

Курс «Основы эффективной работы с технологиями Wolfram»: более 13 часов видеолекций, теория и задачи Все документы курса можно скачать здесь. Этот курс я прочел пару лет назад для довольно обширной аудитории. Он содержит очень много информации о том, как устроена система Mathematica, Wolfram Cloud и язык Wolfram Language. Однако, конечно, время не стоит на месте и за по...

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

[Из песочницы] Как записаться на курс и… пройти его до конца За последние три года я проходил 3 больших многомесячных курса и ещё пачку курсов покороче. Потратил на них больше 300 000 ₽ и не достиг поставленных целей. Кажется, я набил достаточно шишек, чтобы сделать выводы и в последнем из курсов сделать всё как надо. Ну, и заодно нап...

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

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

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

Обучающий курс по DataPower Материал подготовлен в соавторстве с пользователем wedmeed В 2017 году, когда начинался наш проект во Вьетнаме, мы столкнулись с новым для нас зверем IBM DataPower. IBM DataPower – продукт, представляющий собой gateway между клиентами и бэкендами, предназначенный для фильтр...

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

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

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

Книга «Java для всех» Привет, Хаброжители! Данная книга предназначена для начинающих. Вот уже многие годы язык Java входит в число самых популярных и востребованных. Он красивый, эффектный и, самое главное, очень производительный. Но, к сожалению, не самый простой. Именно поэтому спрос на Java-...

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

Интуитивный RL (Reinforcement Learning): введение в Advantage-Actor-Critic (A2C) Это вольный перевод статьи Rudy Gilman и Katherine Wang Intuitive RL: Intro to Advantage-Actor-Critic (A2C).Специалисты по усиленному обучению (RL) подготовили множество отличных учебных пособий. Большинство, однако, описывают RL в терминах математических уравнений и абстрак...

Спецификация Lightning Network прошла первый формальный тест на безопасность Первая формальная проверка спецификации сети Lightning Network (LN) на безопасность дала положительные результаты, пишет CoinDesk. В своей работе под названием A Composable Security Treatment of the Lightning Network, участие в которой также приняла компания IOHK, исследоват...

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

Создатель виртуальных ассистентов считает, что они обречены без нового подхода в области ИИ Борис Кац построил карьеру, помогая машинам овладеть языком. Он считает, что нынешних технологий ИИ недостаточно, чтобы сделать Siri или Alexa по-настоящему умными. Siri, Alexa, Google Home — технологии, которые анализируют язык, все чаще находят свое применение в повседнев...

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

[Из песочницы] Как зеленый джуниор свой hot-reloader писал Предыстория Пару строк обо мне для общего понимания уровня автора и решаемой проблемы. Меня зовут Евгений и я веб-разработчик зеленый junior frontend developer. Еще какой-то год назад я работал в совершенно другой сфере и только в теории задумывался о смене профессии, но при...

Вопросы для собеседования — от кандидата к работодателю Все мы привыкли к тому, что на собеседованиях задают много вопросов. Обычно — работодатели кандидатам. Один из таких вопросов — “а у вас есть вопросы к нам?”. Довольно часто кандидаты не готовы к этому. И зря. Задавать вопросы работодателю — это совершенно нормально и даже н...

Простой математический пример поставил пользователей в тупик. Сможете найти подвох? Решайте осторожно!

Интервью с Виталием Брагилевским: «Мир, в котором все будут программировать на Haskell — это вряд ли хороший мир» Виталий Брагилевский (@_bravit) пока что еще преподает в ЮФУ курсы по Haskell и теории алгоритмов. Также, дает выездные курсы в других городах, является редактором и переводчиком множества книг о Haskell и функциональном программировании, состоит в комитетах Haskell 2020 и...

Настраиваем удобную сборку проектов в Visual Studio Эта статья является руководством по настройке сборки C++ проектов Visual Studio. Частично она сводилась из материалов разрозненных статей на эту тему, частично является результатом реверс-инжениринга стандартных конфигурационных файлов Студии. Я написал ее в основном потому ...

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

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

[Перевод] Roslyn Analyzers. Как писать код быстро и безошибочно Roslyn, платформа компилятора .NET, помогает обнаруживать ошибки еще до запуска кода. Одним из примеров является анализатор проверки орфографии Roslyn, который встроен в Visual Studio. Скажем, вы создаете статический метод и случайно написали слово static как statc. Вы сможе...

Слёрм Пром: первый курс по Prometheus на русском языке и его автор Владимир Гурьянов В курсах Слёрм Kubernetes постепенно остается один Kubernetes. Смежные темы постепенно переходят в отдельные курсы. Первыми были Docker, Ansible, Ceph. Двухчасовые лекции по ним сначала превратались в цикл вебинаров, а потом — в онлайн-курсы. Пришел черед мониторинга. Тема «...

Как мы слили финал IT-Планеты по программированию Не мы плохие, а багов много. Разработка искусственного интеллекта для игры “Хоккей” за ~7 часов. Изначально статья планировалась о стратегиях участников, о том, что они успели сделать за конкурсное время и рады ли проделанной работой, но, опросив финалистов восемь, стало яс...

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

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

Wireshark 3.x: анализ кода под macOS и обзор ошибок Wireshark Foundation выпустила финальную stable-версию популярного сетевого анализатора трафика — Wireshark 3.0.0. В новом релизе устранено несколько багов, реализована возможность анализа новых протоколов и заменен драйвер WinPcap на Npcap. Здесь заканчивается цитирование ...

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

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

Мнение: Зачем Apple выпустила iTunes для Smart TV и как это поможет iPhone Отдельная версия iTunes для смарт-телевизоров Samsung, о появлении которой было объявлено на выставке CES 2019, является лучшим свидетельством того, что в Купертино понимают одну простую вещь: iPhone не вечен. Заключив партнерское соглашение с Samsung, Apple приняла для себ...

Хороший, плохой, злой… и другой В ноябре 2014 года я делился с читателями своими мыслями по поводу нового алгоритма агрегирования, названного мной «Среднее с динамическими весами». Трудно представить, но с тех прошло уже 4.5 года. Еще труднее представить, чтобы с тех пор по данной теме у нас не появилось н...

Что такое DevOps Определение DevOps очень сложное, поэтому приходится каждый раз запускать дискуссию об этом заново. Только на Хабре тысяча публикаций на эту тему. Но если вы это читаете, то наверняка знаете, что такое DevOps. Потому что я — нет. Привет, меня зовут Александр Титов (@osminog)...

В День математики в столице организуют проведение школьной олимпиады 17 февраля в столичных школах и высших учебных заведениях (в том числе, и МГУ им. М.В. Ломоносова) будут отмечать День математики. Как сообщил московский Депобразования, в программе проведения в городе юбилейного XXX Математического праздника предусмотрены тематические лекц...

«Если компания скидывает на Data Scientist петабайты данных в надежде на чудо, то, скорее всего, чуда не случится» Работа с данными – одно из самых приоритетных направлений у большинства зарубежных и российских компаний. Это также подтвердило недавнее исследование IDC и Hitachi Vantara. Но для принятия взвешенных решений и разработки стратегии на основе данных нужен специалист, котор...

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

Как проходил набор в Школу системного анализа Альфа-Банка Крупные IT-компании довольно давно проводят школы для студентов и выпускников инженерных и математических специальностей. Кто не слышал о Школе анализа данных Яндекса или Школе программистов HeadHunter? Возраст этих проектов уже измеряется десятилетием. Не отстают от них и ...

Завершающий курс специализации по Python от Mail.ru Group Python — простой и гибкий язык, применяемый во многих областях современной разработки. На нём создают веб-приложения, пишут игры, анализируют данные и выполняют многие другие задачи. Mail.ru Group запустила на платформе Coursera специализацию «Программирование на Python», ...

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

[Перевод] Дробное броуновское движение Введение fBM расшифровывается как Fractional Brownian Motion (дробное броуновское движение). Но прежде чем начать говорить о природе, фракталах и процедурных рельефах, давайте на минуту углубимся в теорию. Броуновское движение (Brownian Motion, BM), просто, без «дробности» ...

Unit тестирование в Laravel Я часто слышу среди обсуждений в сообществе мнение, что unit тестирование в Laravel неправильное, сложное, а сами тесты долгие и не дающие никакой пользы. Из-за этого эти тесты мало кто пишет, ограничиваясь лишь feature тестами, а польза unit тестов стремится к 0. Я тоже так...

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

[Перевод] Цепи Маркова для процедурной генерации зданий Примечание: полный исходный код этого проекта можно найти [здесь]. Так как он является частью более масштабного проекта, я рекомендую смотреть коммит на момент выпуска этой статьи, или файл /source/helpers/arraymath.h, а также /source/world/blueprint.cpp. В этой статье я х...

Даннинг с Крюгером, Сократ и круги знаний Меня давно занимает тема познания. Так я столкнулся с изречением Сократа — «Я знаю, что ничего не знаю», с эффектом Даннинга-Крюгера. Уверился в истинности этих концепций. Увидел их взаимосвязь. А кроме того мне у меня появилась уверенность, что можно математически обосноват...

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

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

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

Архитектурный шаблон «Строитель» во вселенной «Swift» и «iOS»/«macOS» В этот раз я бы хотел немного поговорить о еще одном порождающем шаблоне проектирования из арсенала «Банды четырех» – «Строителе» («Builder»). Так вышло, что в ходе получения своего (пусть и не слишком обширного) опыта, я довольно часто видел, чтобы паттерн использовался в «...

[recovery mode] О важных “невидимых" вещах — доверии, культуре и ценностях Я — Head of Product в RealtimeBoard. Я люблю дерзкие цели и постоянно думаю о том, где нас ждут новые горизонты, как улучшить результаты, как завтра стать лучше, чем мы были вчера. И ещё я много думаю о том, насколько важна в этом увлекательном путешествии команда. Мы много ...

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

Как Apple реагирует на неудачи Неудачи, которые отраслевые аналитики приписывают Apple, приводя в качестве примеров падающий спрос на iPhone и почти тридцатипроцентное снижение капитализации, не имеют для компании определяющего значения. Об этом Джонатан Айв, главный дизайнер Apple, заявил еще в 2015 год...

Основы реактивного программирования с использованием RxJS. Часть 2. Операторы и пайпы В предыдущей статье мы рассмотрели, что такое потоки и с чем их едят. В новой части мы познакомимся с тем, какие методы RxJS предоставляет для создания потоков, что такое операторы, пайпы(pipes) и как с ними работать. RxJS обладает богатейшим API. В документации описано б...

5 декабря, ManyChat Backend MeetUp Всем привет! Меня зовут Михаил Мазеин, я — ментор Backend community ManyChat. 5 декабря в нашем офисе пройдёт первый Backend Meetup. В этот раз мы поговорим не только про разработку на PHP, но и затронем тему использования баз данных. Начнём с истории про выбор инструме...

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

[Перевод] Простейший JSON RESTful API на Эликсир Как реализовать на Эликсир JSON API endpoint без каких либо фреймворков? От переводчика: В статье приведён пример очень простого веб-приложения, которое можно рассматривать как Hello, World! в создании простейшего API на Эликсире. Код примера незначительно изменён для того, ...

Связный список на Python: Коты в коробках И снова здравствуйте! В преддверии старта курса «Разработчик Python» подготовили для вас небольшой авторский материал о связных списках на Python. Python очень удобный и многогранный язык, но по умолчанию не имеет такой структуры данных как связный список или LinkedList. ...

Простой математический пример рассорил пользователей Twitter. Сможете ли вы его решить? Образовалось два лагеря и у каждого свой ответ.

[Из песочницы] Система Управления Тесткейсами QuAck — простые радости тестирования Привет, Хабр! Представляю вашему вниманию перевод статьи «QuAck — the joy of testing» автора Aziz Namazov. Сегодня я затрону непростую тему жизненного цикла программного обеспечения. Тема эта достаточно сложная и многогранна, включающая в себя все этапы, начиная от дизайн...

Как я не стал специалистом по машинному обучению Истории успеха любят все. И на хабре их достаточно много. «Как я получил работу с зарплатой 300 000 долларов в Кремниевой долине» «Как я получил работу в Google» «Как я заработал 200 000 $ в 16 лет» «Как я попал в Топ AppStore с простым приложением курса валют» «Как я …» и е...

Создание простого разговорного чатбота в python Как выдумаете, сложно ли написать на Python собственного чатбота, способного поддержать беседу? Оказалось, очень легко, если найти хороший набор данных. Причём это можно сделать даже без нейросетей, хотя немного математической магии всё-таки понадобится. Идти будем маленьки...

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

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

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

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

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

[Перевод - recovery mode ] Руководство по SQL: Как лучше писать запросы (Часть 2) Продолжение статьи Руководство по SQL: Как лучше писать запросы (Часть 1) От запроса к планам выполнения Зная, что антипаттерны не статичны и эволюционируют по мере того, как вы растете как разработчик SQL, и тот факт, что есть много, что нужно учитывать, когда вы задумыва...

16 полезных мобильных приложений разработали школьники в «Сириусе» В течение трех недель талантливые школьники под менторством ведущих преподавателей МФТИ и сотрудников Mail.Ru Group осваивали веб-разработку, изучали основы Android, Java, безопасности и управления продуктом, проходили курсы по публичным выступлениям. После трех недель интен...

Blitz Engine & Battle Prime: ECS и сетевой код Вступление Battle Prime — первый проект нашей студии. Несмотря на то, что многие члены команды имеют приличный опыт в разработке игр, мы, естественно, сталкивались с разными сложностями во время работы над ним. Они возникали как в процессе работы над движком, так и в процес...

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

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

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

Более трети россиян опасаются развития современных технологий Аналитический центр НАФИ совместно с организацией "Цифровая экономика" представляют третью часть исследования, посвященного отношению россиян к внедрению новых технологий в повседневную жизнь. Она касается информированности о современных технологиях и интереса к те...

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

Julia. Генераторы отчётов и документации Одной из актуальных проблем во все времена, является проблема подготовки отчётов. Поскольку Julia — язык, пользователи которого непосредственно связаны с задачами анализа данных, подготовки статей и красивых презентаций с результатами расчётов и отчётов, то эту тему просто ...

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

[Перевод] Как семеро моддеров Mount and Blade создали игровую студию Игра Mount and Blade: Warband — удобная игровая площадка для любителей моддинга, позволяющая перенести игроков в Средиземье, Вестерос или далёкую-далёкую галактику «Звёздных войн». Однако антуражем самого важного мода для неё стала не выдуманная реальность, а Британия седьм...

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

[Перевод] Знакомство с SwiftUI: Создание простого приложения с использованием TableView Во время проведения WWDC 2019, одним из самым больших и захватывающих моментом был анонс релиза SwiftUI. SwiftUI — это совершенно новый фреймворк, который позволяет проектировать и разрабатывать пользовательские интерфейсы с написанием меньшего количества кода, декларативным...

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

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

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

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

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

[Перевод] Тонкое искусство математической гипотезы Это не доказательство, а догадка, подкреплённая знаниями. Но хорошая гипотеза ведёт математику вперёд, указывая путь в математическую неизвестность. Автор статьи — Роберт Дейкграаф, физик-теоретик, специалист по теории струн, директор Института перспективных исследований в...

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

MalMath 4.0.6 MalMath — решатель математических задач с пошаговым описанием и графическим представлением. Это бесплатно и работает в автономном режиме. Решает:    • Интегралы    • Производные финансовые инструменты    • Пределы    • Тригонометрия    • Логарифмы    • Уравн...

[recovery mode] 10 способов защиты интеллектуальной собственности IT-стартапа Проблема защиты интеллектуальной собственности (далее — ИС) часто является одной из наиболее важных, с которой сталкивается любой технологический стартап. Это тесно связано с процессом разработки продукта, наймом квалифицированных сотрудников, привлечением капитала и многи...

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

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

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

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

WAL в PostgreSQL: 4. Настройка журнала Итак, мы познакомились с устройством буферного кеша и на его примере поняли, что когда при сбое пропадает содержимое оперативной памяти, для восстановления необходим журнал предзаписи. Размер необходимых файлов журнала и время восстановления ограничены благодаря периодически...

[Перевод] Learn OpenGL. Урок 7.2 – Отрисовка текста В некоторый момент ваших графических приключений вам захочется вывести текст через OpenGL. Вопреки тому, что вы могли ожидать, получить простую строку на экране довольно сложно с низкоуровневой библиотекой, такой как OpenGL. Если вам не нужно больше 128 различных символов дл...

Асинхронное программирование (полный курс) Асинхронное программирование за последнее время стало не менее развитым направлением, чем классическое параллельное программирование, а в мире JavaSript, как в браузерах, так и в Node.js, понимание его приемов заняло одно из центральных мест в формировании мировоззрения раз...

Алексей Полехин: IT становятся популярнее, доступнее и дружелюбнее Стремление к постоянному развитию – внутренний инстинкт любого современного человека. Так считает Алексей Полехин, руководитель направления «Программирование» в онлайн-университете «Нетологии». Эксперт рассказал журналисту Теплицы Юлии Каленковой, почему IT важно осваивать ...

Цена Galaxy S8 в России опустилась ниже 25 тысяч рублей Несмотря на объективно высокие цены новых смартфонов линейки Galaxy S10, российские ритейлеры решили предложить потребителям замену в лице не в пример более доступного Galaxy S8. Как выяснил AndroidInsider.ru, проанализировав данные независимой системы «Яндекс.Маркет», цена...

Трансформация кода в Android 2. Анализ AST Первая часть Пример на Github В этой статье расскажу о том, как решал проблемы, с которыми столкнулся в предыдущей части при реализации проекта. Во-первых, при анализе трансформируемого класса, нужно как-то понять, является ли этот класс наследником Activity или Fragment...

DevOops 2019 глазами разработчика 29-30 октября в Санкт-Петербурге прошла конференция DevOops. В этой статье я поделюсь впечатлениями и инсайтами, а также краткими заметками о прослушанных докладах. Небольшой disclaimer: поскольку я разработчик, то некоторые мысли и комментарии могут быть с уклоном в Dev, ...

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

OneNote получит нативную тёмную тему оформления Итальянский портал Aggiornamenti Lumia сообщает, что компания Microsoft приступила к внутреннему тестированию тёмной темы оформления в приложении OneNote для Windows 10. Как можно заметить на опубликованных скриншотах, всё приложение, включая Ribbon-ленту, заголовок и други...

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

«Криптосистемы-протоколы»: Диффи—Хеллмана, Эль-Гамаля, MTI/A(0), STS ПредисловиеДанный текст будет являться одной из переписанных глав для учебного пособия по защите информации кафедры радиотехники и систем управления, а также, с этого учебного кода, кафедры защиты информации МФТИ (ГУ). Полностью учебник доступен на github (см. также draft re...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 22. Третья версия CCNA: продолжаем изучение RIP Я уже говорил, что буду обновлять свои видеоуроки до CCNA v3. Все, что вы выучили на предыдущих уроках, полностью соответствует новому курсу. Если возникнет необходимость, я буду включать дополнительные темы в новые уроки, так что можете не беспокоиться по поводу соответстви...

Основы движков JavaScript: общие формы и Inline кэширование. Часть 1 Привет, друзья. В конце апреля мы запускаем новый курс «Безопасность информационных систем». И уже сейчас хотим поделиться с вами переводом статьи, которая непременно будет очень полезной для курса. В статье описаны ключевые основы, они являются общими для всех движков Jav...

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

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

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

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

PVS-Studio ROI Время от времени нам задают вопрос, какую пользу в денежном эквиваленте получит компания от использования анализатора PVS-Studio. Мы решили оформить ответ в виде статьи и привести таблицы, которые покажут, насколько анализатор может быть полезен. Мы не можем в статье доказа...

[recovery mode] Poor man's monitoring или мониторим сервера из консоли Всех приветствую уважаемые читатели. В данной статье я расскажу Вам о моём «велосипеде», на котором я делаю мониторинг разных вещей не выходя из консоли. Столкнулся я как-то раз с ситуацией, когда расплодилось довольно много разных проектов и серверов, а настроить нормальны...

[Перевод] Создание процедурного генератора головоломок В этом посте описывается генератор уровней для моей игры-головоломки Linjat. Пост можно читать и без подготовки, но он легче усвоится, если сыграть в несколько уровней. Исходный код я выложил на github; всё обсуждаемое в статье находится в файле src/main.cc. Примерный план ...

Учёные объяснили, почему мы не заканчиваем блокноты и дневники Чтобы понять суть проблемы интернет-издание Vox обратилось к нескольким специалистам в области продуктивности, креативности и тайм-менеджмента. Профессор Джонатан Плюкер из Университета Джона Хопкинса считает, что все зависит от того, с какой целью мы приобретаем тетрадь, бл...

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

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

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

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

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

[Перевод] Почему я сворачиваю свою работу над Debian От переводчика: этот текст — перевод записи в личном блоге Михаэля Стапельберга (Michael Stapelberg) видного open source-разработчика (профиль GitHub), который внес значительный вклад в развитие Debian. Этот пост было сложно написать с эмоциональной точки зрения, но я и не...

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

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

[Перевод] Как приоритеты pod'ов в Kubernetes стали причиной простоя в Grafana Labs Прим. перев.: Представляем вашему вниманию технические подробности о причинах недавнего простоя в работе облачного сервиса, обслуживаемого создателями Grafana. Это классический пример того, как новая и, казалось бы, исключительно полезная возможность, призванная улучшить кач...

Как я познакомился с OpenCV или в поисках ColorChecker Я учусь в CS центре в Новосибирске уже второй год. До поступления у меня уже была работа в IT — я работал аналитиком в Яндексе, но мне хотелось развиваться дальше, узнать что-то за пределами текущих задач и, по совету коллеги, я поступил в CS центр. В этой статье я хочу расс...

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

Автоматизация задач администрирования API VMware vSphere с использованием Python В нашей компании активно используется платформа для виртуализации VMware vSphere. В ней живут тестовые среды продуктов, демонстрационные стенды, эмуляторы различных инфраструктур заказчиков и прочие не менее важные «виртуалки». Несмотря на достаточную мощность нашей инфрас...

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

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

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

«Надежность и безотказность как в Google» — и не только: перевод статьи «Расчёт надёжности сервиса» Главная задача коммерческих (да и некоммерческих тоже) сервисов — быть всегда доступными для пользователя. Хотя сбои случаются у всех, вопрос в том, что делает IT-команда для их минимизации. Мы перевели статью Бена Трейнора, Майка Далина, Вивек Рау и Бетси Бейер «Расчёт над...

Основы статической маршрутизации в Mikrotik RouterOS Маршрутизация — процесс поиска оптимального пути для передачи пакетов в сетях TCP/IP. Любой устройство подключенное к сети IPv4 содержит процесс и таблицы маршрутизации. Данная статья не является HOWTO, она описывает на примерах статическую маршрутизацию в RouterOS, я намере...

[Перевод] Десять лет программирования на Erlang Я присоединился к сообществу Erlang около 10 лет назад, посреди первой фазы хайпа. Нам говорили, что Erlang — это будущее конкурентности и параллелизма. Реализовать их на этом языке проще и быстрее всего, и вы ещё получите бесплатную распределённость. В то время будущее каз...

[Из песочницы] Phoenix LiveView: когда вам больше не нужен JavaScript* * для создания динамической страницы Не так давно 12.12.2018 был анонсирован выход новой библиотеки для фанатов phoenix framework под названием Phoenix LiveView. Я бы хотел поделиться с вами впечатлениями от ее использования и phoenix в целом, а в следующей статье попробова...

[Перевод] Работа с часовыми поясами в JavaScript Недавно я работал над задачей добавления часовых поясов в JS-библиотеку календаря, которую ведёт моя команда. Мне было хорошо известно о никудышной поддержке часовых поясов в JavaScript, но я надеялся, что абстрагирование имеющихся объектов данных позволит легко решить бол...

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

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

Stepik: бесплатные курсы 1.75.2 Stepik (Стэпик) — это платформа с бесплатными онлайн-курсами. На платформе вы сможете найти курсы по программированию, математике, физике, биологии и биоинформатике статистике и другим интересным дисциплинам. Например, вы можете начать осваивать анализ данных на курсе “Основ...

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

Нам нужен Apple News+. Но мы его не получим Обновленный сервис Apple News+ стал более продвинутой версией сервиса без приписки “+”, который нам показали еще три года назад. Apple News так и не получил широкого распространения и в мире он почти нигде не представлен. Новый сервис пока будет доступен только в США и Кана...

[Перевод] Как работает Level Flow в Uncharted 4 и The Last Of Us В течение последних месяцев я исследовал несколько разных игр, в том числе «Uncharted 4» и «The Last of Us» (разработанные Naughty Dog). Цель этой статьи — познакомить вас с дизайном уровней и дать мотивацию к его дальнейшему изучению. Я вкратце расскажу о различных элемен...

[Перевод] Портируем многопользовательскую игру с С++ на веб c Cheerp, WebRTC и Firebase Введение Наша компания Leaning Technologies предоставляет решения по портированию традиционных desktop-приложений в веб. Наш компилятор C++ Cheerp генерирует сочетание WebAssembly и JavaScript, что обеспечивает и простое взаимодействие с браузером, и высокую производительнос...

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

Фандрайзинг на аутсорсе: когда пора обращаться к консультанту Евгений Зубов консультирует НКО по вопросам маркетинга и продвижения. Он делится с сотрудниками некоммерческих организаций обучающими материалами и запустил агентство Mercy.Agency. Эксперт рассказал журналисту Теплицы Екатерине Ульяновой, когда стоит обращаться к консультан...

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

Комплект увольнения Знание ООП и структуры данных; опыт разработки на Java для Android.; знание Android API, понимание архитектуры Android; знание основ HTTP, XML, JSON; опыт работы с системами контроля версий Git; опыт работы с Android Studio, Gradle; опыт работы с SQL базами данных; знакомст...

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

[Перевод] Как подписывать приложения для macOS Catalina 10.15 [Прим. пер.: переведя вызвавший широкое обсуждение на Хабре пост, я заинтересовался новыми правилами для разработчиков ПО, введёнными компанией Apple. В этой статье рассказывается о личном опыте освоения правил одним из разработчиков игр.] Введение В новой версии macOS App...

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

Метрики DevOps – откуда брать данные для расчетов Честно говоря, Иван часто посмеивался над тщетными усилиями коллег из отдела мониторинга. Они прилагали огромные усилия для реализации метрик, которые им заказывало руководство компании. Они были настолько заняты, что больше никому ничего не хотели делать. А руководству вс...

[Перевод] Подготовка приложения к Android Q. Часть 1 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Базовый курс». Также напоминаем о том, что мы продолжаем набор на расширенный курс «Специализация Android-разработчик» Мы находимся на 10-м году разработки Android (Android Q должен быть верс...

[Перевод] Опыт кандидата при рекрутинге разработчиков программного обеспечения. Часть 2 Добрый день. Делимся с вами второй частью статьи о рекрутинге разработчиков ПО, которая приурочена к запуску курса «IT-Recruiter». Первую часть можно прочитать тут. Уведомление привлекательно Итак, вы сходили на свое первое свидание, а потом… ничего. Вы звоните на следую...

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

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

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

Мнение математика из Оксфорда: сможет ли ИИ творить как человек? Игра го, в которую компьютерная программа DeepMind обыграла чемпиона среди людей, создала своего рода сумятицу для Маркуса дю Саутоя, математика и профессора Оксфордского университета. «Я всегда сравнивал математику с игрой в го», говорит он. И го не должна быть игрой, в ко...

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

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 21. Дистанционно-векторная маршрутизация RIP Тема сегодняшнего урока – RIP, или протокол маршрутной информации. Мы поговорим о различных аспектах его применения, о его настройке и ограничениях. Как я уже говорил, тема RIP не входит в учебный план курса Cisco 200-125 CCNA, однако я решил посвятить этому протоколу отдель...

[Перевод] Введение в Kubernetes для пользователей VMware. Часть 1. Теория Это вторая часть из моей серии постов “Kubernetes in the Enterprise”. Как я упоминал в моем последнем посте, очень важно при переходе к “Design and Implementation Guides” всем быть на одном уровне понимания Kubernetes (K8s). Я не хочу здесь применять традиционный подход дл...

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

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

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта...

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

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

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

Что такое RFID и для чего она используется? Если вы купили визитницу, бумажник или кошелек, на бирке которого (или на нем самом) сказано, что здесь есть функция блокировки RFID, вы, вероятно, зададитесь вопросом, а что это, вообще, за RFID такой и будут ли ваши кредитные и дебетовые карты в безопасности рядом с этой ...

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

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

1. Check Point Getting Started R80.20. Введение Добро пожаловать на первый урок! И начнем мы c Введения. Прежде чем начать разговор о Check Point мне хотелось бы сначала настроиться с вами «на одну волну». Для этого я постараюсь объяснить несколько концептуальных вещей: Что такое UTM решения и почему они появились? Чт...

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

[Перевод] Объёмный рендеринг в WebGL Рисунок 1. Пример объёмных рендеров, выполненных описанным в посте рендерером WebGL. Слева: симуляция пространственного распределения вероятностей электронов в высокопотенциальной молекуле белка. Справа: томограмма дерева бонсай. Оба набора данных взяты из репозитория Open ...

Customer Experience Management – что это? Привет всем. Я начинаю серию интервью про управление клиентской ценностью и про клиентский опыт. В дальнейшем и про другие темы, связанные с развитием бизнеса и менеджментом. С каждым новым выпуском будем погружаться в ту или иную тему все глубже. Меня зовут Роман Нохрин (...

Курс лекций по JavaScript и Node.js в КПИ Товарищи инженеры, как и было обещано в анонсе, половина лекций (а это 51) уже доступны для просмотра на ютюбе и я продолжу их записывать в 2019 году. Часть из нужно будет перезаписать, потому, что в первых лекциях не самый лучший звук и потому, что очень простые темы у мен...

Техносфера. Курс лекций «Управление IT-проектами и продуктом» Недавно наш образовательный проект Техносфера выложил последние лекции из курса «Управление IT-проектами и продуктом». Вы получите знания в области управления продуктами и проектами на примере Mail.ru Group, поймёте роль менеджера продукта и проекта, узнаете о перспективах...

[Перевод] Тестирование не для начинающих Я большой фанат тестирования. Я пишу об этом в блог и почтовую рассылку, я обсуждаю это c другими разработчиками в свободное время, я зашел так далеко, что даже создал обучающий курс по тестированию в Go. Но несмотря на всю мою любовь к тестированию, я не рекомендую его нов...

Как я организовал тренировки по машинному обучению в НГУ Меня зовут Саша и я люблю машинное обучение, а также обучение людей. Сейчас курирую образовательные программы в Computer Science центре и руковожу бакалавриатом по анализу данных в СПбГУ. До этого работал аналитиком в Яндексе, а ещё раньше — учёным: занимался математическим ...

Уничтожить монополию Америки в EDA. Иннополис делает первый шаг Еще с 1990-х годов меня поражало, что проектирование всей мировой цифровой микроэлектроники контролируется двумя конторами в Калифорнии, которые находятся в 10 минутах езды друг от друга — Synopsys и Cadence. В те времена четверть мирового проектирования делалось в Японии ...

Профессиональный лексический анализ на регулярных выражениях Синтаксический анализ текста всегда начинается с лексического анализа или tokenizing-а. Существует простой способ решить эту задачу практически для любого языка с помощью регулярных выражений. Еще одно применение старым добрым regexp-ам. Читать дальше →

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

[Из песочницы] ClusterJ — работаем с MySQL NDB Cluster из Java Привет, Хабр! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate. В рамках статьи со...

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

[recovery mode] REST страсти по 200 Давно я хотел написать эту статью. Все думал — с какой стороны зайти правильнее? Но, вдруг, недавно, на Хабре появилась подобная статья, которая вызвала бурю в стакане. Больше всего меня удивил тот простой факт, что статью начали вбивать в минуса, хотя она даже не декларир...

[Из песочницы] Размышления о Agile The measure of intelligence is the ability to change. Albert Einstein Предисловие Представляю ИТ-сообществу “Размышления о Agile” или можно назвать данную статью так, “Agile, это все же философия или проектная методология?”. Цель данной статьи — обсудить с ИТ-сообществом в...

[Из песочницы] Как улучшить аудирование, если знаешь 7000 слов, но не понимаешь на слух? Лучшие ресурсы для девопсов, дизайнеров и не только Такая ситуация встречается довольно часто среди программистов: отлично развит словарный запас, хорошие навыки по письму и чтению, а когда заходит речь о понимании на слух, сразу жесткое «нет». Итак, вопрос, что слушать, где...

Как составить карту путешествия пользователей для службы поддержки и улучшить пользовательский опыт В последнее время подход клиентских путешествий (customer journey) значительно расширил свой охват. Главная цель его применения — улучшение качества обслуживания клиентов, что является чрезвычайно важной инициативой для многих организаций.Обеспечение качественного...

[Перевод] Итак, вы хотите стать аналитиком в области сетевой безопасности… Перевод статьи подготовлен специально для студентов курса «Пентест. Практика тестирования на проникновение». Вы интересуетесь развитием методов взлома и хотите поделиться своими открытиями с сообществом информационной безопасности? В этой статье я дам некоторые рекомендац...

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

Хорошее не бывает дешёвым. Но бывает бесплатным В этой статье я хочу рассказать о Rolling Scopes School – бесплатном курсе по JavaScript / фронтенду, который прошла, и который мне очень понравился. Узнала я об этом курсе случайно, информации в сети о нём, на мой взгляд, немного, а курс отличный и заслуживает внимания. Дум...

О новых стандартах C++ Сегодня у меня довольно короткий пост. Я бы его и не писал, наверное, но на Хабре в комментах довольно часто можно встретить мнение, что плюсы становятся хуже, комитет делает непонятно что непонятно зачем, и вообще верните мне мой 2007-й. А тут такой наглядный пример вдруг п...

[Перевод] Трой Хант: 10 личных финансовых уроков для профессионалов в информационных технологиях Предисловие к русскому переводу Трой Хант, эксперт по кибер-безопасности, региональный директор Microsoft в 2016 году, основатель такого ресурса как Have I Been Pwned?, курсов Pluralsight. Его статья «10 личных финансовых урока для профессионалов в информационных технологиях...

Запускаем php скриптики через php-fpm без web сервера. Или свой FastCgi клиент (под капотом) Приветствую всех читателей "Хабра". Дисклеймер Статья получилась довольно длинная и тем кто не хочет читать предысторию, а хочет перейти сразу к сути прошу прямиком к главе "Решение" Вступление В данной статье хотелось бы рассказать о решении довольно нестандартной задачи, с...

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows...

Выпущен первый «коммерческий» квантовый компьютер Q System One включает систему из 20 кубитов, заключенную в большой герметичный корпус кубической формы (длина каждой грани - 2,75 м). Корпус выполнен из боросиликатного стекла толщиной 1,27 см, которое отличается высокой термоустойчивостью. Это крайне важный фактор, если у...

Делаем свой Google Call Screening на основе Voximplant и Dialogflow Возможно, вы слышали или читали про функцию Call Screening, которую Google выкатил для своих телефонов Pixel в США. Идея отличная – когда вам поступает входящий звонок, то виртуальный ассистент начинает общаться, в то время как вы видите этот разговор в виде чата и в любой ...

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

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

Что такое арбитраж трафика В современном мире очень много доступных способов заработка, которые не требуют особых затрат и для их реализации даже не обязательно выходить из дома. Главное условие – наличие компьютера и доступа к сети Интернет. Одним из таких способов является арбитраж трафика. Это инте...

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

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

Книга «Глубокое обучение с подкреплением на Python. OpenAI Gym и TensorFlow для профи» Привет, Хаброжители! Глубокое обучение с подкреплением (Reinforcement Learning) — самое популярное и перспективное направление искусственного интеллекта. Практическое изучение RL на Python поможет освоить не только базовые, но и передовые алгоритмы глубокого обучения с подк...

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

Инструкция для НКО: как делегировать задачи и не переделывать самому Если руководитель умеет распределять между коллегами конкретные задания, скорее всего, организация не будет работать в вечном аврале. Как сотрудникам НКО научиться делегировать задачи, журналисту Теплицы Екатерине Ульяновой рассказала Ксения Мелешкина, директор по закупкам ...

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

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

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

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

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

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

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

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

Безопасный доступ к полям регистров на С++ без ущерба эффективности(на примере CortexM) Рис. взят с сайта www.extremetech.com/wp-content/uploads/2016/07/MegaProcessor-Feature.jpg Всем доброго здравия! В прошлой статье я рассмотрел вопрос о проблеме доступа к регистрам микроконтроллера с ядром CortexM на языке С++ и показал простые варианты решения части про...

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

[Из песочницы] Начинаем FPGA на Python Технология FPGA (ПЛИС) в настоящее время обретает большую популярность. Растёт количество сфер применения: помимо обработки цифровых сигналов, FPGA используются для ускорения машинного обучения, в blockchain технологиях, обработке видео и в IoT. Данная технология имеет од...

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

Для тех, кто хочет поиграть в детектива: найди ошибку в функции из Midnight Commander Приглашаем попробовать найти ошибку в очень простой функции из проекта GNU Midnight Commander. Зачем? Просто так. Это забавно и интересно. Хотя нет, мы соврали. Мы в очередной раз хотим продемонстрировать ошибку, которую с трудом находит человек в процессе code review, но л...

Алиса в стране Битрикс Приветствую вас (лично вас, а не всех кто это читает)! Сегодня мы: Создадим приложение (навык) Алисы с использованием нового (октябрь 2019) сервиса Yandex Cloud Functions. Настроим наше приложение так, чтобы оно отправляло заказы клиентов (т.н. лиды) в CRM Битрикс24. ...

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

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

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

Оптимальная линейная фильтрация: от метода градиентного спуска до адаптивных фильтров Развивая тему конспектов по магистерской специальности "Communication and Signal Processing" (TU Ilmenau), продолжить хотелось бы одной из основных тем курса "Adaptive and Array Signal Processing". А именно основами адаптивной фильтрации. Для кого в первую очередь была напис...

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 1 Этот текст предназначен для тех, кто только осваивает программирование. Основная идея в том, чтобы показать этап за этапом, как можно самостоятельно сделать игру à la Wolfenstein 3D. Внимание, я совершенно не собираюсь соревноваться с Кармаком, он гений и его код прекрасен. ...

Яндекс стал технологическим партнером математического конгресса ICM 2022 Летом 2022 года в Санкт-Петербурге состоится Международный математический конгресс, или ICM. Это самая крупная и известная конференция математиков, которая проводится с конца XIX века. Конгресс собирается раз в четыре года, и на него приезжают ученые со всего мира. Россия бу...

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

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

О чем думают ваши дети: школьники о выборе профессии и отношениях с родителями «Дело за цифрой» – уверено говорит молодое поколение. Ребята выбирают профессии, связанные с IT, и просят родителей не вмешиваться в процесс самореализации. Теплица задала пять вопросов школьникам 13–15 лет и попросила экспертов прокомментировать ответы. Исследование нам...

SciPy, оптимизация с условиями SciPy (произносится как сай пай) — это основанный на numpy математический пакет, включающий в себя также библиотеки на C и Fortran. С SciPy интерактивный сеанс Python превращается в такую же полноценную среду обработки данных, как MATLAB, IDL, Octave, R или SciLab. В это...

[Перевод] 12 возможностей ES10 в 12 простых примерах Перед вами перевод статьи из блога Carlos Caballero на сайте Medium.com. Автор расскажет нам о функциях, которые появились в версии ES10 2019 года. ES10 — это версия ECMAScript, актуальная для 2019 года. Она содержит не так много нововведений, как версия ES6, выпущенная в...

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

Klipper TMC2208 UART Не большое продолжение темы TMC2208 v2 UART.Многих заинтересовала тема прошивки Klipper и UART. Что-ж, попробую удовлетворить спрос.Для чего? Сами по себе драйвера тихие, но глючные и слабые из-за своего автоматического режима работы и частым явлением является пропуск шагов....

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

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

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

Как запустить ML-прототип за один день. Доклад Яндекс.Такси Машинное обучение применяется на всём цикле заказа автомобиля в Яндекс.Такси, и число компонентов сервиса, работающих благодаря ML, постоянно растёт. Чтобы строить их единообразно, нам потребовался обособленный процесс. Руководитель службы машинного обучения и анализа данных...

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

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

[Перевод] Почему простой дизайн сайта лучше с научной точки зрения Исследование, проведенное Google, имело два ключевых вывода: • Пользователю нужно всего 1/50 до 1/20 секунды, чтобы оценить, красивый сайт или нет. • «Визуально сложные» сайты оцениваются как менее красивые, чем их простые аналоги. Другими словами, исследование показало ...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

Кто такие гражданские хакеры и почему за ними будущее: интервью с исследователем Эндрю Шроком Осенью «Теплица» выпустила обзор книги американского исследователя Эндрю Шрока (Andrew Schrock) «Гражданские технологии» («Civic Tech») о том, как технологии помогают делать правительство подотчетнее, а жизнь городских сообществ – проще. Шрок не был исключительно сторон...

Говорят, Haskell — язык для гениев и академиков. Правда? Однажды я разговаривал с основателем израильского стартапа, который разрабатывал скоростную базу данных на GPU. В их стеке были Haskell и C++, и основатель жаловался, как тяжело найти людей в команду. В Москву он прилетал в том числе искать хороших программистов. Я остор...

Перевод: Что такое Windows Lite, и кому она нужна? Разговоры о новой облегчённой версии Windows появились в конце прошлого года, когда в одной из многочисленных сборок Windows Insider Preview, выпускаемых регулярно, появилось упоминание о «Windows Lite». Вскоре в сети появилось и первое подробное описание Windows Lite, отку...

[Перевод] Дизайн геймплея, основанный на принятии решений (Эта статья изначально была опубликована в Gamasutra Online Magazine) Чтобы развить полезное понимание системы, нужно знать, как система работает изнутри, на самом нижнем уровне. Даже полное запоминание каждого входного сигнала и реакции на него, связанной с этой системой...

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

Пишем ITIL 08.08 (жаль, что не 0808 года) в составе ITIL выходит новая публикация, посвященная обзору практики Service Level Management. Я являюсь одним из авторов данного материала, второй, ясное дело, – Роман Журавлев. Поскольку дата официальной публикации уже близко, позволю себе ...

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

Уязвимости смартфонов Привет, Хабр! Меня зовут Ярослав Сташевский, я менеджер по информационной безопасности «ИТ-ГРАД». Сегодня я хотел бы поднять тему, которая касается каждого, — уязвимости смартфонов. Люди привыкли доверять своим мобильным устройствам очень чувствительную информацию. Это касае...

Badoo Jira API Client: магия в Jira на PHP Если в строке поиска на Хабре ввести “Jira Badoo”, результаты займут не одну страницу: мы упоминаем её почти везде, потому что она играет важную роль в наших процессах. Причём каждый из нас хочет от нее немножко разного. Разработчик, которому пришла задача на ревью, ожида...

Множественные эксперименты: теория и практика В современном мире сложно представить развитие продукта без A/B-тестирования. Чтобы успешно запустить продукт или новую функциональность — надо грамотно спроектировать A/B, рассчитать и интерпретировать его результаты. Иногда нам требуется тестирование более чем для двух гру...

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

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

Новинка от 3DQuality! Компания 3DQuality готова предоставить Вам возможность выйти на новый профессиональный уровень в сфере 3D- сканирования! Мы запускаем линейку 3D- сканеров «Planeta3D» и сейчас Вы поймете, что новый уровень я упомянул не случайно. Чуть ниже я расскажу о нашей продукции более ...

Большая часть финансовых компаний уже используют искусственный интеллект Компания SAS и Глобальная Ассоциация специалистов по управлению рисками (GARP) опубликовали результаты исследования "Искусственный интеллект в банковской сфере и управлении рисками".Основные области, в которых респонденты отмечают положительное влияние ИИ: автомати...

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

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

[Из песочницы] Очереди — что это, зачем и как использовать? Посмотрим на возможности AWS SQS Сначала давайте дадим определение понятию «очередь — queue». Возьмем для рассмотрения тип очереди «FIFO»(first in, first out). Если взять значение из википедии — «это абстрактный тип данных с дисциплиной доступа к элементам». Если вкратце, это означает что мы не можем из н...

В Android Q появится полноценная тёмная тема Впервые серьезно о темной теме заговорили с выходом Android P. В обновлении компания должна была реализовать полноценную system-wide темную тему, однако из-за недопонимания с командой AOSP реализовать задумку не удалось. В настоящее время Android поддерживает темную тему то...

Генерация многофазного ШИМ сигнала на TMS320F28027 Давным давно в далекой далекой галактике я написал небольшую статью о специализированных контроллера Piccolo от Texas Instruments, которые предназначены для управления силовыми преобразователями и электроприводом. Данные контроллеры являются очень мощным инструментов разрабо...

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

[Перевод] Конференция DEFCON 25. Гарри Каспаров. «Последняя битва мозга». Часть 1 Для меня большая честь присутствовать здесь, но, пожалуйста, не нужно меня взламывать. Компьютеры и так меня ненавидят, так что мне нужно подружиться с как можно большим числом людей в этом зале. Хочу привести один маленький пустяк из моей биографии, интересный для американс...

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

[Из песочницы] Использование оптики Minolta AF (Sony A-mount) на современных беззеркальных фотокамерах Sony Я написал эту статью, потому что не нашёл в сети адекватного обзора ситуации. Меня интересовала тема на протяжении нескольких лет, я много экспериментировал, накопил опыт и хочу им поделиться. Статья выражает мое личное мнение, вы можете быть с ним не согласны. Читать даль...

Футуристический тест: какая профессия будущего вам подойдет? Тест: какая профессия будущего вам подойдет? Вопрос 1 из 5 Какая область вам ближе? Туризм IT Искусство Инженерия Медицина Вопрос 2 из 5 Любите ли вы общаться с людь...

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

Google Data Studio: как легко визуализировать данные для отчетов на примере ОВД-Инфо Аналитические отчеты – это не обязательно нагромождение цифр, в которых трудно разобраться. Любые данные можно визуализировать и наглядно показать вашим коллегам, донорам или партнерам. Помогут в этом интерактивные аналитические дашборды, или информационные панели для визуа...

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

Суперсовременный OpenGL. Часть 1 Всем привет. Все кто хоть немного разбирался в теме OpenGL знают, что существует большое количество статей и курсов по этой теме, но многие не затрагивают современный API, а часть из них вообще рассказывают про glBegin и glEnd. Я постараюсь охватить некоторые нюансы нового...

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

[Перевод] Шардинг в Блокчейне Всем привет, я один из разработчиков Near Protocol, который, среди прочего, реализует шардинг, и в этой статье хочу подробно рассказать что вообще такое шардинг в блокчейне, как он работает, и коснуться ряда проблем, которые возникают при попытке его построить. Хорошо извест...

Личный опыт. Как мы подключали международную телефонию: сравнение 6 виртуальных АТС Не так давно я столкнулся с необходимостью выбора виртуальной АТС. В бизнесе моей компании произошли кое-какие изменения: появились новые услуги, в том числе направленные не только на сегмент b2b, но и на b2c. А с появлением частных клиентов оказалось и что многие люди по-...

Как превратить приложение на iPad в программу для Mac Презентация macOS Catalina на WWDC 2019 В июне этого года, на WWDC, Крейг Федериги артистично и с примерами рассказал кое о чем очень важном. Благодаря чему в macOS вернулся Twitter, и появились Jira и Asphalt. Но самое главное о причине этих чудес так и не было сказано. Ч...

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

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

Про информацию Вот вчера я запостил пост о том, что мне нужно 2 человека для работы в совместной теме. И началось. Ты наёбуешь, ты опять курсы продаёшь, ооо бляяя, сука, как можно продавать курсы… Я вам объясню зачем мне нужны эти 2 человека. Эти 2 человека нужны для работы в теме ют...

[Перевод] Я самый большой скупердяй в инди-разработке игр Скриншот из Queen's Wish. Учтите, что я использую игровой арт, который мне нравится. Это необходимо, потому что потом придётся смотреть на него годами, и я не хочу сойти с ума. Неделю назад я опубликовал в блоге пост «Почему все мои игры выглядят так отстойно» (оригинал). ...

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

Не нужен вам вуз, идите в ПТУ? Эта статья — ответ на публикацию "Что же не так с IT-образованием в России", а точнее, даже не на саму статью, а на часть комментариев к ней и идеи, в них прозвучавшие. Я сейчас выскажу, наверное, очень непопулярную здесь на Хабре точку зрения, но не высказать я ее не мог...

Автоматизация ответов на часто задаваемые вопросы в навыке для «Алисы» с помощью библиотеки DeepPavlov Лаборатория нейронных систем и глубокого обучения МФТИ вот уже больше года делает DeepPavlov — открытую библиотеку для создания диалоговых систем. Она содержит набор претренированных компонент для анализа языка, с помощью которых можно эффективно решать задачи бизнеса. Напр...

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

#DevStory – История создания приложения для подготовки к экзаменам Нам пишут разработчики проекта «Медицинские тесты». «Два основных принципа современного образования: образование для всех и образование через всю жизнь» Международная комиссия по вопросам образования,
науки и культуры при ООН (ЮНЕСКО) Проект «Медицинские тесты» во...

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

[Из песочницы] Генератор мемов на Ruby для привлечения интереса к языку По моему мнению язык Ruby перестал быть популярным как в 2012 — 2014 году и поэтому у меня возникло желание пока про язык совсем не забыли, попробовать его снова донести в массы, ведь Ruby по моему мнению самый удобный и практичный язык для веб разработки. Я с неделю назад ...

Умнее, дальше, точнее: как ИИ меняет полеты в космос Мы в Binary District запустили новый курс по ИИ для бизнеса. На курсе мы много говорим про практическое применение искусственного интеллекта в разных отраслях: ритейле, медиа, медицине. Но автоматизация помогает людям не только на Земле. В этой статье мы собрали примеры то...

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

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

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

Изучение английского — непопулярное мнение Всем привет. Очередная статья от «курсов изучения английского» сподвигла меня написать свои заметки. Этой статьёй я надеюсь ответить на некоторые вопросы изучающих язык и отговорить от глупых советов «запомнить вот эти 10/15/20 слов/конструкций», которые подаются как некие ...

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

[Из песочницы] Angular. Понимание @Input, @Output и EventEmitter Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding @Input, @Output and EventEmitter in Angular» автора foolishneo. Приветствую всех желающих накапливать информацию о тонкостях работы фреймворка Angular. Сегодня посчитал нужным лучше изучить информацию,...

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

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

[Перевод] Почему Senior Developer'ы не могут устроиться на работу Сначала о том, как 5 месяцев назад я проходил собеседование на работу. Меня посоветовал друг, и прошло уже немало времени, с момента как я ответил рекрутеру. Я был поражён, как сильно весь процесс изменился за последние 5 лет. После первичного созвона меня отправили на стор...

Google Classroom: как с нуля создавать онлайн-курсы Бесплатная интерактивная платформа Google Classroom позволит командам некоммерческих проектов делиться опытом, повышать квалификацию и общаться с коллегами в «виртуальных аудиториях». Журналист Теплицы Юлия Каленкова протестировала сервис. Google Classroom доступен для всех ...

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

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

«Лаборатория Касперского» представила сервис для корпоративного обучения информационной безопасности Главная цель тренингов Kaspersky ASAP — не натаскать работников на какие-то схемы, а развить навыки и сформировать устойчивые привычки безопасного поведения, утверждают в компании. По данным «Лаборатории Касперского», 52% компаний мире считают наиболь...

[Из песочницы] Что нужно знать перед переходом на Akka toolkit для реализации Event Sourcing и CQRS Здравствуйте, уважаемые читатели Хабра. Меня зовут Рустем и я главный разработчик в казахстанской ИТ-компании DAR. В этой статье я расскажу, что нужно знать перед тем, как переходить на шаблоны Event Sourcing и CQRS с помощью Akka toolkit. Примерно с 2015 года мы начали прое...

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

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

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

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

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

[Перевод] Погружение в Jetpack Compose Всем привет. Перед уходом на выходные спешим поделиться с вами еще одним переводом, подготовленным специально для студентов курса «Android-разработчик. Продвинутый курс». Пробуем новый UI-фреймворк для Android-приложений В течение последних нескольких лет, участвуя во мн...

Книга «Совершенный алгоритм. Основы» Привет, Хаброжители! Эта книга основана на онлайн-курсах по алгоритмам, которые Тим Рафгарден ведет на Coursera и Stanford Lagunita, а появились эти курсы благодаря лекциям для студентов, которые он читает в Стэнфордском университете на протяжении многих лет. Алгоритмы — э...

Скачать Lite OS от Microsoft, замену операционной системы Windows 10 Чем дальше в будущее, тем более востребованным становится различное программное обеспечение. Это конечно же очень даже хорошо, потому что вместе с этим увеличивается число компаний, которые уделяют ему все больше своего внимания. Еще летом 2015 Сообщение Скачать Lite OS от ...

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

[Перевод] Обзор AI & ML решений в 2018 году и прогнозы на 2019 год: Часть 1 — NLP, Computer Vision Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2018 году и трендов 2019 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т...

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

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

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

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

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

Роботы будущего смогут обучаться сами чему угодно Подразделение Alphabet X, ранее известное как Google X, представило проект Everyday Robot. Его суть заключается в разработке «универсального самообучающегося робота». Идея состоит в том, что с помощью камер и сложных алгоритмов машинного обучения роботы будут учиться в проце...

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

Один из крупнейших математических форумов заблокирован из-за Telegram Роскомнадзор внёс в перечень заблокированных в России ресурсов IP-адрес крупного англоязычного математического сообщества Art Of Problem Solving.

DEV Labs 2019. Python для решения нетривиальных задач. Онлайн-митап Уважаемые коллеги! Приглашаем принять участие в онлайн-митапе серии DEV Labs, который пройдёт 20 марта и будет посвящён языку Python. Расскажем о применении Python в сфере проектирования систем «умного дома» и рассмотрим примеры решения задач по распознаванию человеческих д...

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

[Из песочницы] Spacewalk на Рождество Привет, Хабр! Незадолго до прихода Рождества, в IT-отделе было решено изучить Spacewalk, — это Red Hat система, бесплатный аналог Satellite, для централизованного управления конфигурациями, обновлений систем, удобной поддержкой всего серверного парка. Ввиду того, что досту...

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

[Из песочницы] Как я не стал программистом в 35 лет С самого начала сентября широким потоком хлынули на Хабр публикации об успешном успехе на тему «Детство программиста», «Как стать программистом после N лет», «Как я ушёл в IT из другой профессии», «Путь в программирование» и так далее. Подобные статьи пишут постоянно, но во...

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

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

Статическое распределение объектов FreeRTOS По умолчанию все объекты в системе FreeRTOS распределяются динамически — очереди, семафоры, таймеры, задачи (потоки), и мьютексы. Программист видит только «кучу» — область где динамически выделяется память по запросу программы или системы, а что там творится внутри – не ясно...

Make C++ great again!.. in Tula Не так давно на базе нашего офиса мы провели бесплатный курс лекций «Современный и эффективный С++» и записали их на видео. Курс был рассчитан на недавно прибывших в наш коллектив программистов, стажеров и всех желающих. В этой статье мы хотели бы осветить цель данного курса...

[Перевод] Перенос десктопных приложений на .NET Core С тех пор, как я начала работать с сообществом над переносом десктопных приложений с .NET Framework на .NET Core, я заметила, что существует «два лагеря»: представители одного хотят очень простой и короткий список инструкций для переноса своих приложений на .NET Core, в то в...

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

Часть 4. Карьера программиста. Junior. Заход во фриланс Продолжение рассказа «Карьера программиста». Смеркалось. И прямо, и косвенно. Я с большим усердием искал работу программистом, но не было никаких вариантов. В моем городе было 2-3 объявления на 1С-разработчика плюс, редкий случай, когда требовались преподаватели курсов прог...

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

[Из песочницы] Опыт установки Apache Airflow на Windows 10 Преамбула: волею судьбы из мира академической науки (медицины) я попала в мир информационных технологий, где мне приходится использовать свои знания о методологии построения эксперимента и стратегиях анализа экспериментальных данных, однако, применять новый для меня стек тех...

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

Automation Anywhere: RPA – не вместо людей, а для людей Работая совместно с роботами, люди не просто выполняют больше работы, а становятся действительно эффективнее. Лишь удачно сочетая эти ресурсы – человека и машину – предприятие может быть успешным в цифровую эпоху, считают в компании, которая является одним из лидеров рынка R...

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

[Из песочницы] Каково разрешение человеческого глаза (или сколько мегапикселей мы видим в каждый отдельный момент времени) Очень часто фотографы, а иногда и люди из других специальностей, проявляют интерес к собственному зрению. Вопрос, казалось бы, простой на первый взгляд… можно погуглить, и всё станет ясно. Но практически все статейки в сети дают либо «космические» числа — вроде 400-600 мега...

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

По-другому нельзя! Ветеран ЦСН Альфа рассказал, что чувствовал при убийстве людей «Люди, приходящие в спецназ — могут убить, но далеко не все» — Алексей Филатов. На популярном youtube канале «ЖИЗА» в ряде роликов «10 глупых вопросов» был приглашен президент союза офицеров группы Альфа Алексей Филатов. Из ряда простых и прямых вопросов был «Людей убивали?...

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

[Перевод] Дорожная карта Android-разработчика в 2019 году Всем привет! У нас отличные новости. В этом месяце в Отус стартует базовый курс "Android-разработчик", а также "Специализация Android-разработчик", которая включает в себя целый пакет курсов. В связи с этим делимся с вами полезной статьей, перевод которой приурочен к данным ...

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

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

[Из песочницы] Тренды и прогнозы в Natural Language Processing Тренды и прогнозы в области NLP (Natural Language Processing) Это статья про тренды и прогнозы из нашего сентябрьского Альманаха «Искусственный интеллект» №2, который посвящен обзору рынка технологий и компаний в области NLP и распознавания-синтеза речи в России. Для этого ...

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

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

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

Книга «Как устроен JavaScript» Большинство языков программирования выросли из древней парадигмы, порожденной еще во времена Фортрана. Гуру JavaScript Дуглас Крокфорд выкорчевывает эти засохшие корни, позволяя нам задуматься над будущим программирования, перейдя на новый уровень понимания требований к Сле...

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

Число Фибоначчи. Почему оно так популярно в природе? «Витрувианский человек» Леонардо да Винчи обладает идеальными пропорциями, основанными на знании свойств числа Фибоначчи Таинственное число Фибоначчи, равное 1,618, будоражит умы ученых уже на протяжении нескольких тысячелетий. Кто-то считает это число строителем мироздания,...

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

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

Сравнение сертификаций по Agile, часть 1 — ICAgile, Scrum.org, ScrumAlliance и PMI Некоторое время назад, я перешел из компании, которая жила в мире жесткого Waterfall и суровых планов в MS Project на несколько тысяч строк, в компанию, которая живет в мире Agile — ценности, которую несут продукты уделяется больше внимания чем следованию плану, фокус в разр...

IT Governance для чайников В конце января на сайте ISACA (COBIT и т.п.) опубликована статья «Руководство ИТ для чайников» (IT Governance 101: IT Governance for Dummies). Заявляется, что это только первая часть цикла. Причём автор статьи не кто-нибудь, а сам Пол Вилкинсон (Paul Wilkinson) владелец и у...

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

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

3. Check Point Getting Started R80.20. Подготовка макета Приветствую, друзья! Добро пожаловать на третий урок. Сегодня мы займемся подготовкой макета, на котором будем тренироваться. Важный момент! Нужен ли вам макет или можно обойтись просто просмотром курса? Лично я считаю, что без практики, данный курс будет абсолютно бесполе...

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

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