Социальные сети Рунета
Вторник, 14 мая 2024

Как мы делали SCRUM Страшный сон команды разработчиков — это когда до начала разработки надо «нырнуть» в неизвестную предметную область и «проэстимейтить» half-baked idea. При этом нужно буквально «подписаться кровью» за результат в назначенный срок за фиксированные деньги. На деле дать точную...

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

Онлайн-курс «Проджект менеджмент 101» Бесплатный онлайн-курс по управлению проектами для начинающих. Программа курса «Проджект менеджмент 101» 1. Проект и ограничения проекта: Что следует называть проектом? Почему проект и продукт это рядом, но разное? Что такое ограничения проекта и...

Установка и настройка Sonata Admin на Symfony 4 Приветствую всех. В данной статье поговорим об Symfony 4 и Sonata Admin. В процессе установки я столкнулся с массой неточностей в документации и сама документация была раскидана по нескольким местам. Здесь я рассмотрю весь процесс, начиная от создания проекта и заканчивая а...

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

[Из песочницы] Организация поиска по веб-странице на JavaScript (без jQuery) Пару дней назад получил тестовое задание от компании на вакансию Front-end dev. Конечно же, задание состояло из нескольких пунктов. Но сейчас речь пойдет только об одном из них — организация поиска по странице. Т.е. банальный поиск по введенному в поле тексту (аналог Ctrl+F ...

Поиск похожих изображений, разбор одного алгоритма Пришлось мне недавно решать задачку по оптимизации поиска дубликатов изображений. Существующее решение работает на довольно известной библиотеке, написанной на Python, — Image Match, основанной на работе «AN IMAGE SIGNATURE FOR ANY KIND OF IMAGE» за авторством H. Chi Wong...

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

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

CJDNS мертв, да здравствует Yggdrasil Что такое Yggdrasil? Yggdrasil — это распределённая Mesh сеть, которая работет в Overlay режиме, позволяя сделать интернет поверх интернета Последние новости о сети cjdns датируются 2017 годом, может показатся, что сеть умерла и разработка остановлена (на самом деле — да)...

Автоматизация импортов в Python До После import math import os.path import requests # 100500 other imports print(math.pi) print(os.path.join('my', 'path')) print(requests.get) import smart_imports smart_imports.all() print(math.pi) print(os_path.join('my', 'path')) print(requests.get) Так получи...

Pointer и Value семантика в определении получателя метода Создание новых типов данных — важная часть работы каждого программиста. В большинстве языков определение типа состоит из описания его полей и методов. В Golang помимо этого нужно решить, какую семантику получателя для методов нового типа использовать: значение (value) или ук...

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

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

Проект Breakthrough Listen опубликовал первые результаты поиска внеземной жизни Ученые проекта Breakthrough Listen, направленно на поиск внеземной жизни, опубликовал результаты первых трех лет своих наблюдений. Напомним, что целью проекта с бюджетом 100 миллионов долларов, запущенного в 2015 году инвестором Юрием Мильнером и ныне покойным физиком-теоре...

[Перевод] ООП мертво, да здравствует ООП Источники вдохновения Этот пост возник благодаря недавней публикации Араса Пранцкевичуса о докладе, предназначенном для программистов-джуниоров. В нём рассказывается о том, как адаптироваться к новым ECS-архитектурам. Арас следует привычной схеме (объяснения ниже): показыва...

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

[Перевод] Рассказ о том, почему я до сих пор использую jQuery Многие, когда речь заходит о jQuery, говорят так: «Просто пользуйтесь обычным JavaScript. Библиотека jQuery вам не нужна». Что тут сказать? Я не нуждаюсь во многих вещах, но, несмотря на это, хорошо, когда они есть. Так и jQuery. Я в этой библиотеке не нуждаюсь, но её, опред...

[Из песочницы] Микросервисная архитектура = распределенные вычисления Приветствую всех читателей Хабра! Меня зовут Игорь Рыбаков и я технический директор в казахстанской IT-компании DAR. Сегодня я поделюсь с вами пониманием и использованием принципов параллельных вычислений в современных информационных системах. Чтобы глубже разобраться в этом...

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

Переписываем тестовое задание для junior frontend на TypeScript и react-hooks Привет Хабр, сегодня мы позанимаемся с TypeScript и React-hooks. Данный туториал поможет вам разобраться с основами "тайпскрипта" и поможет в работе над тестовым заданием для фронтендера. Тестовые задания на проекте "Без Воды" — это возможность получить code-review. Дедлайн ...

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

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

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

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

[Перевод] Разновидности SIMD Во время разработки meshoptimizer частенько возникает вопрос: «А может этому алгоритму использовать SIMD?» Библиотека ориентирована на производительность, но SIMD не всегда обеспечивает значительные преимущества по скорости. К сожалению, SIMD может сделать код менее перено...

[Перевод] Как отлаживать и профилировать любой EXE-файл с помощью Visual Studio Вам когда-нибудь нужно было отлаживать или профилировать исполняемый файл (файл .exe), для которого у вас нет исходного кода или вы не можете его собрать? Тогда наименее известный тип проекта Visual Studio, проект EXE, для вас! В Visual Studio вы можете открыть любой EXE-фа...

Safari для macOS научился затемнять содержимое веб-страниц macOS 10.14.4, чей релиз состоялся вечером 25 марта, является обновлением третьего порядка, но, тем не менее, включает в себя ряд значимых функций, прежде недоступных на компьютерах Apple. Одним из нововведений стала поддержка полноценного ночного режима в Safari. Благодаря...

ИТ-байки розницы — как это было 12 лет назад Я работаю в КРОК уже 15 лет, сейчас директором по развитию бизнеса в рознице. Исторически большинство моих проектов тоже в ритейле. С согласия заказчика публикую байки про то, на что был похож ритейл по ИТ лет 12 назад от себя и коллег. Безопасники заменили некоторые неваж...

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

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

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

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

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

[Перевод] Ещё 9 проектов для оттачивания Front-End мастерства Введение Независимо от того, являетесь ли вы новичком в программировании или уже опытным разработчиком, в этой отрасли изучение новых концепций и языков/фреймворков является обязательно чтобы успевать за трендами. Возьмем, к примеру, React — код которого, Facebook открыл ...

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

Компоненты-агностики в Angular Когда работаешь над библиотекой переиспользуемых компонентов, вопрос API встает особенно остро. С одной стороны, нужно сделать надежное, аккуратное решение, с другой — удовлетворить массу частных случаев. Это относится и к работе с данными, и к внешним особенностям различных...

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

[Из песочницы] Хранение настроек в памяти Базового устройства Привет! Если Вам посчастливилось подержать в руках микроконтроллер ESP32 (мне посчастливилось больше и у меня в руках M5Stack) от китайской компании ESPRESSIF, то этот пост, возможно, будет полезен. Бывает ситуация, когда необходимо сохранить какие-то параметры в энергонеза...

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

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

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

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

[Из песочницы] Реализация горячей перезагрузки С++ кода в Linux * Ссылка на библиотеку в конце статьи. В самой статье изложены механизмы, реализованные в библиотеке, со средней детализацией. Реализация для macOS еще не закончена, но она мало чем отличается от реализации для Linux. Здесь в основном рассматривается реализация для Linux. Г...

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

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

К чему приложить прикладного лингвиста? “Что за дело? Это многих славных путь.” Н.А. Некрасов Всем привет! Меня зовут Карина, и я “совместитель” — совмещаю учёбу в магистратуре и работу технического писателя в Veeam Software. О том, как у меня это вышло, я и хочу рассказать. Заодно кто-то узнает, как можно прийти...

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

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

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

Генеральный директор Mozilla объявил о намерении оставить свою должность Гендиректор Mozilla Крис Бирд объявил, что будет занимать эту должность только до конца 2019 года. Mozilla проделала большую работу и сейчас одна из лучших на рынке — это самое подходящее время, чтобы передать руководство, отметил Бирд. Он планирует взять паузу и набраться с...

Интервью с Александром Макаровым, Yii core team Один из ключевых разработчиков Yii, Александр Макаров(SamDark), выступит на DevConf с докладом про пакетные метрики и я воспользовался возможностью задать несколько интересующих меня вопросов про новую версию Yii, новую ORM, сбор денег на OpenCollective, фулл-тайм open sour...

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

Телескоп TESS поможет в поиске внеземной разумной жизни NASA Проект Breakthrough Listen (BL) был запущен в 2015 году. Он использует мощные обсерватории для поиска радиосигналов, приходящих от ближайших к нам звезд, которые бы могли свидетельствовать о наличии внеземной разумной жизни. На днях было объявлено о сотрудничество ...

BlessRNG или проверяем ГСЧ на честность В геймдеве часто нужно что-нибудь завязать на рандоме: у Unity для этого есть свой Random, а параллельно с ним существует System.Random. Когда-то давно на одном из проектов сложилось впечатление, что оба могут работать по-разному (хотя должны иметь равномерное распределени...

Практическое применение трансформации AST-деревьев на примере Putout Введение Каждый день при работе над кодом, на пути к реализации полезного для пользователя функционала, становятся вынужденные (неизбежные, либо же просто желательные) изменения кода. Это может быть рефакторинг, обновление библиотеки или фреймворка до новой мажорной версии, ...

Принципы построения REST JSON API Эта памятка писалась для внутренних нужд (открыть глаза менее опытным в вебе коллегам). Но, т.к. я насмотрелся велосипедов от довольно уважаемых, казалось бы, контор, — выкладываю на хабр. Мне кажется, многим будет полезно. Зачем Надеюсь, читающий уже понимает, зачем ему во...

[Из песочницы] Организация маршрутов в Laravel Здравствуй, Habr. Недавно я согласился на ревью сайта, заказанного на фрилансе. Я ожидал увидеть контроллеры, которые делают вообще все и занимают 200+ строк (и прочие проявления плохого кода), но все было вполне прилично. Валидация не лежала в контроллере, что встречается д...

Метод бисекционного деления в тестировании Содержание Описание метода Применение тестировщиками Строка данных Файл Применение разработчиками Резюме Иногда баги сами нас находят. Вот мы впихали большую строку данных — и система подвисла. Это она из-за 1 млн символов упала? Или ей какой-то конкретный не понравилс...

[Перевод] Воссоздание шрифтов с экрана ЭЛТ Изучение глифов на терминалах DEC VT100 и VT220 Недавно я немного увлёкся эмуляцией аналоговых медиа: хотелось воссоздать растровую графику ЭЛТ, как на «стеклянных терминалах» прошлого, таких как культовая серия VT от Digital Equipment Corporation (DEC). В процессе возник ...

Вместо Android: Google запустила сайт об ОС Fuchsia Никто не знает, сколько тайных проектов в данный момент развивает Google, но даже если и узнает, нет никаких гарантий, что он представляет собой именно то, чем кажется. Именно так было в случае с проектом Fuchsia, которому прочили роль преемника Android, Wear OS и Chrome OS...

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

[Перевод] SMAA: улучшенное субпиксельное морфологическое сглаживание Данная статья основана на журнале Хорхе Хименеса, Хосе Эчеварриа, Тиаго Соуса и Диего Гутьерреса. Их демо реализации SMAA можно посмотреть здесь (файл .exe). На моём GTX 960 2GB оно работает вполне нормально. Старые способы сглаживания (антиалиасинга) Долгие годы стандарт...

[Перевод] Извлечение данных при машинном обучении Хотите узнать о трех методах получения данных для своего следующего проекта по ML? Тогда читайте перевод статьи Rebecca Vickery, опубликованной в блоге Towards Data Science на сайте Medium! Она будет интересна начинающим специалистам. Получение качественных данных — это пе...

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

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

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

Пошаговую стратегию Braveland можно забрать бесплатно в Steam В сервисе Steam идёт раздача пошаговой стратегии Braveland от российской студии Tortuga Team. Проект разрабатывался под руководством Дмитрия Санникова, который приложил руку к The Tiny Bang Story. Всем желающим добавить Braveland в библиотеку следует поспешить,...

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

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

Библиотеки Electronic Arts почти хорошего качества Наше внимание привлёк репозиторий Electronic Arts на GitHub. Он очень маленький и из двадцати трёх проектов нас заинтересовали только несколько C++ библиотек: EASTL, EAStdC, EABase, EAThread, EATest, EAMain и EAAssert. Проекты оказались тоже очень маленькими (около 10 файлов...

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

4 трудности при локализации мобильных игр на примере Fishing Clash — перевод Хабр, привет! Перевели статью Кевина Дабровски, креативного директора Ten Square Games. На примере их игры Fishing Clash он рассказал, какие у них случались факапы, и что делать, чтобы у вас такого не повторилось. Следует сразу разделить понятия: локализация и перевод — ...

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

RFID фронтенд стандарта ISO 11785 из старого FM-приёмника и обломков лифта Вступление Как-то в связи с одним проектом было предложено провести реверс-инжиниринг одного дальнобойного RFID-ридера для маркированного скота. При изучении готового устройства было обнаружено очень оригинальное решение построения входной части считывателя. Решение такого р...

Удалённое управление эмулятором Fceux с помощью Python В статье я опишу, как сделать эмулятор NES управляемым удалённо, и сервер для удалённой отправки команд на него. Зачем это нужно? Некоторые эмуляторы различных игровых консолей, в том числе и Fceux, позволяют писать и запускать пользовательские скрипты на Lua. Но Lua – пл...

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

Конкурс Теплицы и Бременских консультантов: напишите историю и получите бесплатную стратегию краудфандинга В октябре 2019 года команда «Бременских консультантов» задумала марафон по стратегии краудфандинга — «Упертый жертвователь». За четыре недели участники пересмотрят свою стратегию и составят план действий на этот и следующий год. Среди читателей Теплицы социальных технологий...

[Из песочницы] System.Console, Mono и NCurses Всем привет, в своей работе (а ранее и в учебе) я часто использую C# и этот язык стал мне, что называется, привычным. Решив немного потренироваться в программировании, я написал консольный текстовый редактор для Linux. Вкратце опишу полученный опыт. В Mono класс System.C...

«Перспектива» при поддержке «Пасеки» запустила портал по трудоустройству молодых людей с инвалидностью Команда региональной общественной организации «Перспектива» запустила сайт-портал по трудоустройству молодых людей с инвалидностью. Цель сайта – помочь молодым специалистам с инвалидностью найти работу и построить карьеру. Проект разработала команда Студии «Т»...

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

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

Какой могла бы быть официальная веб-версия Apple Music Сервис Apple Music присутствует на всех популярных платформах — Mac, iOS, Android и Windows. Но по какой-то причине музыкальный сервис так и не обзавелся веб-версией. Радует только то, что компания предоставляет разработчикам официальный доступ к API, что позволяет эн...

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

[Перевод] Стивен Вольфрам «Делая большие проекты» Я люблю делать проекты, которые кажутся безумными. И полагаю, делал это около 35 лет в науке (я начал молодым) и около 30 лет в технологической сфере. Сегодня я хочу рассказать немного о том, что такое «делать безумные проекты» и немного о моих проектах. В первом приближен...

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

MVP и Dagger 2 – скелет Android-приложения – часть 1 Данная статья нацелена на новичков в Android-разработке и призвана помочь в создании минимально необходимой структуры приложения. Так получилось, что я относительно недавно начал программировать под Android – после месяца без проекта в компании, где я работаю, меня определи...

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

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

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

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

[Перевод] Приключения неуловимой малвари, часть III: запутанные VBA-cкрипты для смеха и прибыли Эта статья является частью серии «Fileless Malware». Все остальные части серии: Приключения неуловимой малвари, часть I Приключения неуловимой малвари, часть II: Скрытные VBA-скрипты Приключения неуловимой малвари, часть III: запутанные VBA-скрипты для смеха и при...

[Из песочницы] Настройка связки php-fpm + nginx под WSL Я — виндузятник и всячески увиливаю от окончательного перехода на Linux на своём PC не смотря на все его преимущества. Поэтому последние пару лет для создания локальных площадок под проекты использовал Docker for Windows. Не сказать что штука сверхстабильная, но существенных...

Разворачиваем распределенное хранилище CEPH и подключаем его к Kubernetes Часть 1 Разворачиваем среду для работы с микросервисами. Часть 1 установка Kubernetes HA на bare metal (Debian) Здравствуйте, уважаемые читатели Хабра! В прошлой публикации я рассказал, как развернуть отказоустойчивый кластер Kubernetes. Но дело в том, что в Kubernetes удоб...

Как в Kiwi.com тестируют 1000 проектов на Python Original english version of this article is here. Это название доклада Alex Viscreanu на Moscow Python Conf ++. До выступления еще две недели, но я, конечно, уже обо всем расспросил Алекса и под катом поделюсь спойлерами и бэкстейджем подготовки доклада: что это за опенсорс...

Мелкая питонячая радость #8: мелкие удовольствия для работы с БД Беглый опрос коллег на моем текущем проекте показал, что при словах "ORM и работа с БД" в подавляющем большинстве случаев звучат слова "Алхимия" и "Django ORM". Знания этих двух слов, в общем, достаточно, чтобы писать чистый, аккуратный и рабочий код. Но расширение инженерно...

ОС Фантом: оконная подсистема — делаем контролы Сегодня речь пойдёт о том, как устроен графический UI Фантома. (Что такое ОС Фантом можно узнать, прочитав вот эти статьи.) Точнее — как этот графический UI появился на свет. Ибо долгое время у Фантома был только графический вывод — донести системе что-либо с помощью мышки...

ВИЧ, преступность, алкоголизм и наркомания в цифрах: зачем быть точным в России Как говорить о социальных проблемах объективно и трезво? Слова превращаются в эмоции, а цифры остаются беспристрастными. В 2018 году в России 1 335 166 человек пострадали от преступлений. Из них 66 297 погибли или получили тяжелые травмы – это чуть больше, чем населени...

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

[Перевод] Пол Грэм: Чему я научился у Hacker News Февраль 2009 Hacker News исполнилось два года на прошлой неделе. Изначально предполагалось, что это будет параллельный проект — приложение для оттачивания Arc и место обмена новостями между нынешними и будущими основателями Y Combinator. Он становился больше и требовал боль...

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

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

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

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

[Из песочницы] Записка frontend-архитектора #1. Нельзя просто так взять и использовать Redux Дисклеймер Уважаемый читатель! Если вы не имеете понятия, что такое React и Redux, читать дальше не имеет смысла, дальше технический бред. Я серьезно, понимание к чему эта записка, требует работы с указанными библиотеками — несмотря на то, что я постараюсь писать понятно, эт...

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

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

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

Найден новый претендент на звание самого далекого объекта Солнечной системы Molar Candanosa / Carnegie Institution for Science В конце прошлого года группа ученых во главе с Скоттом Шеппардом (Scott Sheppard) из Института Карнеги нашла объект, который можно было считать самым далеким из известных в нашей Солнечной системе. Он получил название 2...

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

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

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

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

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

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

[Из песочницы] Изучаем STM8S Медленный старт. Часть 0 МК семейства STM8S относительно STM8L/32 имеет меньший арсенал периферии, но позволяет без лишних усложнений разобраться с основами и получить необходимые навыки для работы с его старшими братьями. 0. На кого ориентирован материал, зачем и почему При написании данной стать...

Создаем отдел джунов в помощь основным командам, используя лишь Slack, Jira и синюю изоленту Почти вся команда разработки Skyeng, состоящая из более чем 100 человек, работает удаленно и требования к специалистам всегда были высоки: мы искали синьоров, fullstack-девелоперов и мидлов. Но в начале 2019 года мы впервые наняли трех джуниоров. Сделано это было по нескол...

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

[По докам] Flutter. Часть 1. Для Android разработчиков Про Flutter написано уже много статей. С каждым месяцем он становится всё популярнее. Поэтому я решил интерпретировать официальную документацию Flutter в лаконичный формат «вопрос — ответ». Думаю, многие, как и я, не имеют достаточно свободного времени для подробного изучени...

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

26 июля, Deworkacy — DocOps от Ростелекома Привет! Мы тут решили провести митап по DocOps — это почти как DevOps, только про документацию и всё, что с ней связано. Таких мероприятий обычно не так много, оно и понятно — документация не такая хайповая штука, как React, к примеру. Да и не только React, прямо скажем. Зл...

Концепты VueJS для backend разработчиков — мастер-класс 22 июня 22 июня в конгресс-центр «Альфа» пройдет мастер-класс «Концепты VueJS для backend разработчиков» Ведущий — Сергей Рябенко имеет пятнадцатилетний опыт коммерческой разработки в различных ролях. Работал разработчиком в LinguaLeo и Head of Engineering в SalesLift. Последний г...

Почему у одних ходит 100 000 км, а у других убивает мотор? В проблемах катализатора разобрался владелец Hyundai Creta Автолюбитель тщательно подошел к изучению данного вопроса и пришёл к неожиданным выводам. Для начала владелец Hyundai Creta обрисовал всю проблему в целом. В сообществе любителей популярного корейского кроссовера «ВКонтакте», он объяснил, что ему постоянно попадаются самые ...

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

[Из песочницы] Делаем простой Circuit Breaker на базе кеша в Spring Эта статья для тех, кто использует в своем приложении эффективный кеш и хочет простым добавлением 1 класса в проект добавить стабильности не только приложению, но и всему окружению. Если вы узнали себя, читайте дальше. Что такое Circuit Breaker Читать дальше →

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

[Перевод] Как работает Flutter Как Flutter работает на самом деле? Что такое Widgets, Elements, BuildContext, RenderOject, Bindings?.. Сложность: Новичок Вступление В прошлом году (прим: в 2018), когда я начал свое путешествие в сказочный мир Flutter, в Интернете было очень мало информации по сравнению с...

Как я делал desktop-приложение на Flutter (+ bonus) Недавно попалась на глаза новость, что вышел очередной релиз Flutter (1.9), который обещает разные вкусности и, в том числе, раннюю поддержку веб-приложений. На работе я занимаюсь разработкой мобильных приложений на React Native, но с любопытством поглядываю на Flutter. Для...

Организуем ML-проект с помощью Ocean Вступление За годы разработки ML- и DL-проектов у нашей студии накопились и большая кодовая база, и много опыта, и интересные инсайты и выводы. При старте нового проекта эти полезные знания помогают увереннее начать исследование, переиспользовать полезные методы и получить ...

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

[Из песочницы] Советы начинающим разработчикам Я работаю iOS разработчиком более шести лет. Мне довелось работать в нескольких различных компаниях и командах. Я работал как в outsource так и в outstaff, довелось даже поучаствовать в startup. И вот спустя несколько лет коммерческой разработки, а также пару-тройку лет прог...

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

[Из песочницы] Управление зависимостями в многомодульном проекте на градл Вступление Статья пишется с прицелом на нативные андроид проекты, но, так как градл универсальная система сборки, в принципе, подойдет и для других проектов, которые может собрать градл. Идея не моя, я ее подчерпнул из гитхаб проекта у Jake Wharton SdkSearch — набор програм...

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

Потенциальная замена Android. Google запустила сайт для разработчиков Fuchsia Как сообщил ресурс AndroidPolice, компания Google запустила сайт для разработчиков Fuchsia.dev. Как не трудно догадаться, он посвящён новой операционной системы Fuchsia.  На сайте размещается официальная документация с инструкциями и другой информацией, которая мо...

[Перевод] Обновление инструментов Web и Azure в Visual Studio 2019 Скорее всего вы уже видели, что состоялся релиз Visual Studio 2019. Как и следовало ожидать, мы добавили улучшения для веб-разработки и разработки с Azure. В качестве отправной точки Visual Studio 2019 предоставляет новые фичи для начала работы с вашим кодом, и также мы обно...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 1 — Приготовления Из этой части вы узнаете: Зачем это всё нужно Как скомпилировать FFmpeg в Docker Зачем это всё нужно Главные задачи у серии публикаций такие: Создать туториал по использованию Emscripten для компиляции C/C++ библиотек в JavaScript (более детальный и полезный, чем написа...

Что такое API Содержание Что такое API API — набор функций Как составляется набор функций При чем тут слово «интерфейс» Как вызывается API Вызов API напрямую Косвенный вызов API Что значит «Тестирование API» Резюме Слово «API» мелькает в вакансиях даже для начинающих тестировщико...

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

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

MPPT контроллер заряда на STM32F334C8T6 В комментариях под моими предыдущими статьями неоднократно возникал вполне резонный вопрос: "Зачем делать dc/dc преобразователи на микроконтроллере, когда есть готовые?" и я в качестве ответа постоянно упоминал, как наиболее яркий пример, контроллер заряда с алгоритмом MPPT....

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

Делаем JaCarta Editor «О Царстве Теней я могу сказать только одно: есть реальность и есть её Тень; в этом суть всего. В реальном Мире существует лишь Амбер, реальный город на реальной Земле, в котором собрано всё. А Царство Теней — лишь бесконечность ирреальности. Здесь тоже можно обнаружить всё ...

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

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

ObjectRepository — .NET in-memory repository pattern для ваших домашних проектов Зачем хранить все данные в памяти? Для хранения данных сайта или бекэнда первым желанием большинства здравомыслящих людей выберет SQL базу данных.  Но иногда в голову приходит мысль что модель данных не подходит для SQL: например, при построении поиска или социального графа ...

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

Security Week 19: уязвимости в IP-камерах, GPS-трекерах и беспроводных мониторах За неделю подобралось сразу несколько новостей на тему «что еще не так с IoT» (предыдущие выпуски: 1,2,3). Уязвимости были обнаружены в веб-интерфейсе для GPS-трекеров, в сетевых видеокамерах D-Link и аналогичных устройствах разных производителей из Китая, и даже в ЖК-панеля...

[recovery mode] Асинхронная библиотека для работы с API Mikrotik Категорически приветствую. Недавно мне понадобилось поработать с Mikrotik через его API. Вроде бы ничего примечательного, есть официальная библиотека , есть еще на гитхабе обёртка, но вот беда — мне надо было работать асинхронно через asyncio и использованием плюшек async/aw...

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

А не замахнуться ли нам на оптическую связь? Лазеры, космос, CubeSat Материал, описанный ниже, является результатом совместной работы с преподавателями ТУ Ильменау в рамках местного курсового проекта (Advanced Research Project). Опыт интересный, но и не лишенный определенных сложностей. Делали мы этот проект (и ещё один) вместе с моей тогда е...

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

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

BTRFS для самых маленьких Доброго времени суток, Хабравчане.  Я работаю в компании Veeam Software и являюсь одним из разработчиков нашего решения для бэкапа линукс систем. По роду занятий мне довелось столкнуться с BTRFS. Совсем недавно она перешла из статуса «еще не пригодно» в статус «стабильна». И...

[censored]-bot, или есть ли жизнь после китайского комплекта типа "соберисам" Предыстория. Пару лет назад был куплен FlyingBear p902, собран и запущен. Но как это обычно бывает в принтеростроении, пошел процесс модернизаций и разных улучшалок.В итоге были изменены- стол на Anycubic- мозги на Lerdge-S + тач-экран- Добавлен жирный мосфет для командовани...

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

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

Redux. Простой как грабли Мне уже доводилось заглядывать в репозиторий библиотеки redux, но откуда-то появилась мысль углубиться в его реализацию. Своим в некотором роде шокирующим или даже разочаровывающим открытием я хотел бы поделиться с сообществом. TL;DR: базовая логика redux помещается в 7 ст...

Facebook готовит к выпуску цифровые монеты, привязанные к корзине валют и обеспеченные капиталом компании Когда Telegram выпустит свою криптовалюту, то будет не единственным мессенджером с возможностью финансовых расчётов, пишет NY Times. Аналогичные планы есть у Facebook (монеты для мессенджера WhatsApp) и Signal, и не только у них. Информацию о разработке такого проекта подтв...

[Из песочницы] Антипаттерны в React или вредные советы новичкам Привет, Хабр. Ровно год прошел с момента, как я начал изучать React. За это время я успел выпустить несколько небольших мобильных приложений, написанных на React Native, и поучаствовать в разработке web-приложения с использованием ReactJS. Подводя итог и оглядываясь назад н...

Учимся использовать многозадачность на Samsung Galaxy под управлением One UI Совсем недавно мы рассказывали вам о том, почему дисплеи новых Samsung Galaxy S10 не иначе как чудо техники. Ко всему прочему, эти дисплеи, в хорошем смысле этого слова, просто огромны. К слову, в последних нескольких поколениях линейки Galaxy S экраны хоть и были меньше, н...

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

В интернете появилась новая энциклопедия – Вики Пользователям интернета теперь доступен аналог Википедии — сайт https://wiki.bio. Энциклопедия включает только самые актуальные на сегодняшний день статьи на темы разного характера: наука, история, философия, спорт, общество и другие. Главная ст...

WebStorm 2019.3: ускоренный запуск, усовершенствованная поддержка Vue.js и другие улучшения Всем привет! Давненько на Хабре не было блог-постов от команды WebStorm. Что же, будем исправляться, тем более, есть отличный повод: мы только что выпустили последнее крупное обновление WebStorm в этом году. Если у вас нет времени на чтение всей статьи, вот несколько сло...

Как выполнить 70 задач за день: жизнь в таск-трекерах — хорошая жизнь Систематически вести задачи я пытался, наверное, раз 20-25. И каждая попытка срывалась, как теперь я понимаю, по двум причинам. Во-первых, для того, чтобы выделять время ведению задач, нужно понять — зачем это делается. Ты начинаешь вести задачи, тратить на это время, дел...

ITIL и новые модные штуки В самом начале 2000-х мне, как и многим другим ребятам, было очень важно узнать: как организовать современный (на тот момент) ИТ-департамент коммерческой компании среднего размера. Скажем, на 50-200 «айтишников». То был не праздный интерес, а вполне реальная зад...

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

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

WAL в PostgreSQL: 1. Буферный кеш Предыдущий цикл был посвящен изоляции и многоверсионности PostgreSQL, а сегодня мы начинаем новый — о механизме журналирования (write-ahead logging). Напомню, что материал основан на учебных курсах по администрированию, которые делаем мы с Павлом pluzanov, но не повторяет их...

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

[Перевод] История электронных компьютеров, часть 4: электронная революция История реле Метод «быстрой передачи сведений», или Зарождение реле Дальнописец Гальванизм Предприниматели А вот, наконец, и реле Говорящий телеграф Просто соединить Забытое поколение релейных компьютеров Электронная эра История электронных компьютеров Пролог Колосс E...

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

Теперь официально: Microsoft точно работает над Windows Core OS Пару лет назад в Сети появились слухи о том, что Microsoft занимается разработкой новой операционной системы под названием Windows Core OS. После того о Core OS писали ещё несколько раз, и вот теперь были обнаружены первые следы данной программной платформы, которые поз...

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

Docker — это игрушка или нет? Или всё-таки да? Всем привет! Ооочень хочется прям сразу приступить к теме, но правильнее будет немного рассказать про мою историю: Вступление Я программист с опытом разработки frontend одностраничных приложений, scala/java и nodejs на сервере. Довольно долго (уже точно пару — тройку лет), ...

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

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

Google добавит буфер обмена и совместное использование телефонных номеров между Chrome OS и Android В настоящее время Google поддерживает только две операционные системы: Android для мобильных устройств и Chrome OS для ноутбуков. И хотя между ними много общего, они по-прежнему не состоят в единой экосистеме. Постепенно компания пытается изменить это, сначала представив Go...

#Главред: Зачем мне беспроводная зарядка для iPhone Возможность заряжать телефон «без проводов» появилась достаточно давно. Правда, не у сторонников продукции Apple. Мы же смогли прочувствовать эту функцию только с выходом iPhone 8 и iPhone X в 2017 году. Я, признаюсь честно, всегда с прохладой относился к такому с...

[Перевод] Как мы использовали отложенную репликацию для аварийного восстановления с PostgreSQL Репликация — не бэкап. Или нет? Вот как мы использовали отложенную репликацию для восстановления, случайно удалив ярлыки. Специалисты по инфраструктуре на GitLab отвечают за работу GitLab.com — самого большого экземпляра GitLab в природе. Здесь 3 миллиона пользователей и по...

«Серые песни» в Apple Music в iTunes и значения символов загрузки iCloud Пользователи гаджетов и сервисов от Apple «со стажем» во время работы с iCloud и iTunes чувствуют себя как рыба в воде. Тем не менее, у новичков могут возникнуть некоторые сложности с пониманием символов iCloud в сервисе Apple Music в приложении iTunes. Как разобраться в том...

[Перевод] Пришло время заменить GIF на AV1 видео Сейчас 2019 год, и нам пора бы принять решение относительно GIF (нет, речь не об этом решении! Здесь мы никогда не договоримся! — тут речь о произношении в английском, для нас это не актуально — прим. перев.). GIFы занимают огромное количество места (обычно по несколько ме...

Архитектура EBA aka реактивность на всю катушку Я пришел в Tinkoff пару лет назад, на новый проект Клиенты и проекты, который тогда только запускался. Сейчас уже не помню своих ощущений от новой тогда для меня архитектуры. Но точно помню: было непривычно, что Rx используется еще где-то, за пределами обычных походов в сеть...

[Перевод] Переносим 30 000 строк кода с Flow на TypeScript Недавно мы перенесли 30 тысяч строк кода JavaScript нашей системы MemSQL Studio с Flow на TypeScript. В этой статье я расскажу, почему мы портировали кодовую базу, как это происходило и что получилось. Дисклеймер: моя цель — вовсе не критика Flow. Я восхищаюсь проектом и ду...

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

[Перевод] Диаграмма Ганта vs Канбан доска Если коротко – диаграммы Ганта полезны, когда зависимости являются основным фактором формирования расписания, тогда как Канбан доски можно использовать для работ, которые не имеют зависимостей между собой. Кроме того, диаграммы Ганта подходят, когда существует предварительн...

[Из песочницы] MicroPyServer простой HTTP сервер для ESP8266 и ESP32 Всем привет! Хочу рассказать о библиотеке MicroPyServer написанной на Python, которая позволяет взаимодействовать с устройствами ESP8266 и ESP32 посредством простого HTTP сервера. Что такое MicroPyServer? MicroPyServer это простой HTTP сервер предназначенный для проектов на...

Протокол для общения между iframe и основным окном браузера Многим разработчикам периодически требуется наладить общение между несколькими вкладками браузера: возможность посылать сообщения из одной в другую и получать ответ. Такая задача встала и перед нами. Существуют стандартные решения вроде BroadcastChannel, однако поддержка в б...

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

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

Мониторинг производительности запросов PostgreSQL. Часть 1 — репортинг Инженер — в переводе с латыни — вдохновенный. Инженер может всё. (с) Р.Дизель. Эпиграфы. Или история о том, зачем администратору баз данных вспоминать свое программистское прошлое. Предисловие Все имена изменены. Совпадения случайны. Материал представляет собой исключител...

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

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

Что-что случится 1 февраля 2020 года? Это продолжение поста «Что-что случится 1 февраля?» от 24 января 2019 г. Читателю рекомендуется бегло ознакомиться с первой частью истории, дабы понимать контекст. Бангкок, вообще, место на любителя. Конечно, там тепло, дёшево, и кухня интересная, и визы половине населения ...

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

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

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

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

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

[Перевод] Рассказ о решении проблемы с производительностью Moment.js Moment.js — это одна из самых популярных JavaScript-библиотек для разбора и форматирования дат. В компании WhereTo используют Node.js, поэтому для них применение этой библиотеки было совершенно естественным ходом. Проблем с серверным использованием Moment.js не ожидалось. В ...

Лексическое окружение (LexicalEnvironment) и Замыкание (Closures) в EcmaScript Привет, Хабр! Давно ничего не писал, большая загруженность на проекте крайние несколько недель, но сейчас появилось свободное время, поэтому решил представить вашему вниманию новую статью. Сегодня мы продолжим разбирать ключевые концепции EcmaScript, поговорим о Лексическо...

[Перевод] Управление стейтом с помощью React Hooks – без Redux и Context API Всем привет! Меня зовут Артур, я работаю ВКонтакте в команде мобильного веба, занимаюсь проектом VKUI — библиотекой React-компонентов, с помощью которой написаны некоторые наши интерфейсы в мобильных приложениях. Вопрос работы с глобальным стейтом у нас пока открыт. Существу...

Книга «Vue.js в действии» Привет, Хаброжители! Цель этой книги — дать вам знания, с помощью которых вы без колебаний присоединитесь к любому проекту, использующему эту библиотеку. Книга предназначена для всех, кто заинтересован в изучении Vue.js и имеет опыт работы с JavaScript, HTML и CSS. От вас не...

На iOS 24 октября выйдет яркая «незамысловатая action-RPG» The Swords of Ditto The Swords of Ditto — красивая и яркая action RPG от издателя Devolver Digital, у которой в Steam только 55% положительных отзывов. На следующей неделе она выйдет на iOS. Основа геймплея знакома всем — прокачиваете своего героя, бегаете по локациям, сражаетесь с монстрами, ...

GraphQL Voyager как инструмент для поиска уязвимостей В настоящее время все больше компаний начинают использовать GraphQL. Это относительно новая технология (если быть более точным, то это язык запросов), которая призвана решить существующие проблемы REST. Если вы еще не знакомы с GraphQL, то рекомендую начать с ресурсов: ...

[Перевод] Тестирование фронтенда Эффективная стратегия автоматизированного тестирования кода чрезвычайно важна для обеспечения быстрой и качественной работы команд программистов, занимающихся поддержкой и развитием веб-проектов. Автор статьи говорит, что в компании StackPath, в которой он работает, с тестир...

WWDC 2014: Вспоминая QuickDraw 3D Может показаться что попытки разработать собственный процессор в 80-е и создать свою технологию 3D-графики в 90-е – явления одного порядка. А в новом веке Apple наступила на те же грабли, но с совершенно другим результатом. Так ли это? На пресс-конференции по случаю открыт...

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

[Из песочницы] Наша с девушкой первая видео игра. Разработка на Unity. Часть 1 Ну как первая… Если не считать релизы только под Android и с десяток заброшенных проектов у финиша, то да, это первая наша игра с замахом больше чем одну платформу. Как же всё начиналось? А всё просто, работали мы значит над другим проектом, назовем его «проект А», работали ...

[Перевод] Эффективное использование libdispatch Думаю, что большинство разработчиков использует libdispatch неэффективно из-за того как её представили сообществу, а также из-за запутанной документации и API. Я пришел к этой мысли после чтения обсуждения «concurrency» в рассылке посвященной развитию Swift (swift-evolution)...

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

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

Apple следует поработать над Apple Music Музыкальная платформа Apple Music была запущена в 2015 году, и с тех пор пользуется большой популярностью среди пользователей. Но, как и любой сервис, Apple Music не лишен недостатков. Один из пользователей портала Reddit решил проработать этот вопрос и составил объемный сп...

[Из песочницы] Настройка поиска Sphinx для интернет-магазина Информации по Sphinx не так много, как хотелось бы. Лишняя статья не помешает. Первые шаги в освоении Sphinx мне помогли сделать статьи Создание ознакомительного поискового движка на Sphinx + php и Пример Sphinx поиска на реальном проекте — магазин автозапчастей Tecdoc Совет...

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

[recovery mode] «Так я понял, что теперь я дата инженер, и по-другому можно себя спозиционировать на рынке» Хабр, привет! Еще одно интервью с нашим выпускником – Николай Рекубратский, тимлид команды разработчиков в компании XING. Николай рассказал о жизни в Германии, о ресурсе, на котором он нашел работу, чем европейские специалисты отличаются от российских в подходе к работе, о в...

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

[Из песочницы] Мы забыли про делегирование в JavaScript. Event delegation in React Всем привет. Статья о делегирование событий в JavaScript и реализация его в react.js. О чем собственно речь? Зачем и почему? Для начала давайте кратко обсудим: что есть событие; как происходит распространение; обработка DOM Level 2 с примером на JavaScript; И в конце: поч...

Делаем крутой sticky-эффект для слайдера на React Есть много разных библиотек для реализации слайдера со всеми возможными эффектами. Для React одни из лучших это: ReactSlick и Swiper. Но когда для моего проекта потребовался горизонтальный sticky-эффект, то ничего подходящего не нашлось. В этой статье мы попробуем поэтапно...

«Робот» – для овощной езды по городу»: Разницу в между LADA Vesta Cross 1.8, LADA XRray 1.8 и LADA Vesta 1.6 обсудили в сети Владелец LADA Vesta Cross с пробегом 12,5 тыс. км, 1,8-литровым двигателем и АМТ 2.0 вышел на трассу, чтобы посоревноваться с тремя другими «Ладами» с разными сочетаниями мотора и трансмиссии – к обсуждению неожиданного результата присоединились пользователи сети. Результат...

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

Shader — это не магия. Написание шейдеров в Unity. Введение Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Сегодня хочется поговорить про шейдеры. Умение писать шейдеры (и в целом работать с рендером) очень важно при разработке под мобильные платформы или AR/VR, если хочется добиться крутой графики. М...

[Из песочницы] Опыт применения Coroutines и Retrofit2 Что это? Кто еще не читал документацию — настоятельно рекомендую к ознакомлению. Что пишет джетбрейнс: Сопрограммы упрощают асинхронное программирование, оставив все осложнения внутри библиотек. Логика программы может быть выражена последовательно в сопрограммах, а базовая б...

Нужно ли чистить строки в JavaScript? Что? Строки могут быть «грязными»? Да, могут. //.....Какой-то код console.log(typeof str); // string console.log(str.length); // 15 console.log(str); // zzzzzzzzzzzzzzz Вы думаете, в этом примере строка занимает 30 байт? А вот и нет! Она занимает 30 мегабайт! Читать дальше...

[Из песочницы] Как я свой первый ИИ писал Привет, Хабр. История моя берёт начало в январе 2019 года. Мы с моей тимой геймдевелоперов решили взяться за самый большой проект в нашей истории- 2Д платформер. Нет, мы не делали до этого какие-нибудь FlappyBird'ы или змейки, но объём работы в этом проекте просто сносил на...

Комплексный маркетинг на реальных проектах с рекламными бюджетами Учим комплексному маркетингу на реальных проектах с рекламными бюджетами. Что даст обучение? Получите системные знания, освоите инструменты digital-маркетинга, научитесь создавать стратегию продвижения проекта. Для этого мы выделяем 25 часов теории и 55 часов практ...

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

#CES | Гарнитура-переводчик WT2 Plus от Timekettle позволяет разрушить языковой барьер Несмотря на то, что мы живем в современном мире, проблема языкового барьера при посещении других стран никуда не делась. Если вы не хотите изучать язык страны, которую хотите посетить, или вам просто не даются иностранные языки, но при этом вы очень любите путешествовать и ...

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

[Перевод] Axios или Fetch: чем пользоваться в 2019 году? Axios — это широко известная JavaScript-библиотека. Она представляет собой HTTP-клиент, основанный на промисах и предназначенный для браузеров и для Node.js. Если вы работали в последние несколько лет JavaScript-программистом, то вы, совершенно определённо, этой библиотекой ...

[Перевод] Глупая причина, по которой не работает ваше хитрое приложение машинного зрения: ориентация в EXIF Я много писал о проектах компьютерного зрения и машинного обучения, таких как системы распознавания объектов и проекты распознавания лиц. У меня также есть опенсорсная библиотека распознавания лиц на Python, которая как-то вошла в топ-10 самых популярных библиотек машинного ...

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

Базовая поддержка USB4 уже добавлена в ядро Linux Появление интерфейса USB4 в серийных устройствах ожидается лишь через год, но работы над подготовкой ведутся уже сейчас. Как сообщает источник, Intel добавила в Linux первоначальную поддержку нового стандарта. Компания выпустила первые 22 патча, обеспечивающие базовую ...

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

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

Новый билд Nemesida WAF Free для NGINX В прошлом году мы выпустили Nemesida WAF Free — динамический модуль для NGINX, блокирующий атаки на веб-приложения. В отличие от коммерческой версии, основанной на работе машинного обучения, бесплатная версия анализирует запросы только сигнатурным методом. Особенности рели...

В библиотеке jQuery устранена серьезная уязвимость В jQuery закрыта уязвимость, которая позволяет провести DoS-атаку или получить права администратора веб-приложения, использующего эту JavaScript-библиотеку на стороне клиента. Эксперт по кибербезопасности Лиран Тал (Liran Tal) из Snyk обнаружил брешь 26 марта; пропатченная в...

Математика в Gamedev по-простому. Триангуляции и Triangle.Net в Unity Всем привет! Меня зовут Гриша, и я основатель CGDevs. Математика – очень крутой инструмент при разработке игр. Но если скажем без понимания векторов и матриц обойтись в принципе сложно, то алгоритмы триангуляций не столь обязательная вещь, но с помощью них решается достаточн...

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

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

NoVerify: линтер для PHP от Команды ВКонтакте теперь в открытом доступе Расскажу, как нам удалось написать линтер, который получился достаточно быстрым, чтобы проверять изменения во время каждого git push и делать это за 5−10 секунд при кодовой базе в 5 миллионов строк на PHP. Мы назвали его NoVerify. NoVerify поддерживает базовые вещи вроде ...

Fantasy Stars: Battle Arena — очередная бесплатная стратегия в стиле Clash Royale Если вдруг вам кажется, что в магазинах мобильных игр недостаточно конкурентов Clash Royale, и как раз подыскиваете нечто похожее, то обратите внимание на Fantasy Stars: Battle Arena. Это новый проект от разработчиков олдскульной MMORPG Silkroad Online. По знакомому принцип...

[Из песочницы] Как отличить хороший SCRUM от плохого, используя подход основоположника квантовых вычислений В 1985 году Дэвид Дойч первым описал квантовую машину Тьюринга. Позже он соединил идеи Поппера, Докинза, Эверетта и того же Тьюринга в теорию разумных объяснений. А недавно я обнаружил, что улучшаю процессы разработки банковских продуктов на основе его подхода к методологии ...

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

[Из песочницы] Топ-8 полезных фильтров Google Analytics По умолчанию Google Analytics (GA) собирает всю статистику посетителей веб-сайта, но для анализа весь массив данных может не понадобиться. Очистить и переработать информацию можно с помощью фильтров на уровне представления. Самые полезные из них разберем в этой статье. Что ...

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

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

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

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

Обман нейронной сети для начинающих В рамках ежегодного контеста ZeroNights HackQuest 2018 участникам предлагалось попробовать силы в целом ряде нетривиальных заданий и конкурсов. Часть одного из них была связана с генерированием adversarial-примера для нейронной сети. В наших статьях мы уже уделяли внимание ...

Трансляция проектов и библиотек из Altium Designer в PADS Professional Часто у инженеров возникает необходимость транслировать проекты из одной САПР в другую. На предприятиях не редко бывает такая ситуация, когда разные отделы проектируют в разных САПРах. Также трансляция проектов может потребоваться, когда ваша система проектирования уже не с...

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

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

[Перевод] Sketch + Node.js: генерируем иконки для множества платформ и брендов Нет ничего проще, чем добавить иконку в проект: нужно всего лишь написать дизайнеру, он экспортирует её из Sketch и пришлет вам нужный вариант, а вы используете ее у себя в коде. Если же у вас с десяток проектов, несколько платформ и множество А/Б-тестов на дизайн, то дост...

[recovery mode] Вышел Embarcadero RAD Studio 10.3.2 или то что мертво… умерло Привет, Хабр! Присаживайтесь поудобней, заварите себе чайку, ибо я пишу немного затянуто и через правое ухо. Итак, Вы готовы? Отлично, тогда приступаем. ВНИМАНИЕ! Информация, описанная ниже, написана исключительно в исследовательских целях и не предназначена для использовани...

[Перевод] Профилирование кода Go-проекта и решение проблемы с выделением памяти Пожалуй, каждому программисту известны слова Кента Бека: «Make it work, make it right, make it fast». Сначала надо сделать так, чтобы программа работала, дальше — надо заставить её работать правильно, а уже потом можно переходить к оптимизации.  Автор статьи, перевод кото...

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

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

Что будет с вашим цифровым наследием после смерти? Какие технические последствия имеет смерть в цифровую эпоху? Что делать разработчикам? Кому и как оставить свое онлайн-наследство? На эти вопросы отвечает Джон Эванс (Jon Evans) в статье, опубликованной на TechCrunch. Cпециально для «РосКомСвободы» Илья Фесенко подготовил п...

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

Julia и рой частиц Продолжаем изучение методов многомерной оптимизации, и следующий на очереди — метод роя частиц осуществляющий поиск глобального минимума. Читать дальше →

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

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

WebRTC,stereopi: telepresense по-домашнему Для начала ролик с youtube для вдохновения: Предупреждение: проект на видео — лишь образец, который можно сделать по туториалу в статье в части стереозрения и «поворотов головой». Танки с пультами xbox не прилагаются. Не смотря на наглядность, скудный рассказ самого авт...

Как Яндекс перестал делиться прибылью кликов РСЯ с сайтами Тема на самом деле шокирующая, но что то все сидят засунув язык в жопу. Это похлеще пенсионной реформы.   Недавно я опубликовал ролик в Ютубе где рассказал какие сайты можно добавить в РСЯ, а какие нет. Можете его посмотреть и всё поймёте.       Этот рол...

Как соединить наушники Galaxy Bunds с любым вашим гаджетом На сегодняшний день практически все производители наушников для мобильных телефонов представили свои версии «убийц» AirPods. Однако одними из наиболее удачных (или, как минимум, наиболее известных) стали Galaxy Bunds от южнокорейской компании Samsung. Эти небольши...

По мнению астрофизиков, мы найдём инопланетян в течение 30 лет Так выглядит карта 4000 тысяч экзопланет, опубликованная NASA 8 октября, во вторник, космолог, которому была присуждена Нобелевская премия по физике, сказал, что он убежден, что внеземная жизнь существует и что мы, вероятно, найдем доказательства этого в течение 30 лет. Выст...

Прокачка проекта от Soft Launch до $1 млн выручки в месяц Привет, Хабр! Я руковожу отделом закупки трафика для мобильных и десктопных проектов в Mail.ru Group. Сегодня в этом посте я подробно расскажу про трафик для игр. Он написан по мотивам моего доклада на конференции The Big Deal. Но сначала немного о себе. Я работал с огромн...

[Перевод] SVG или canvas? SVG и canvas — это технологии, которые можно использовать для рисования чего-либо на веб-страницах. Поэтому их стоит сравнить и разобраться в том, когда стоит применять SVG, а когда — canvas. Даже весьма поверхностное понимание сути этих технологий позволяет сделать вполне...

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

Принцип Брета Виктора: «Творцам нужна мгновенная связь с тем, что они создают» Это одно из лучших выступлений, которое я встречал. Хоть про эту презентацию уже писали на Хабре и переводили 6 лет назад, я решил её красиво оформить и ещё раз обратить на неё внимание. Она того стоит. Брет Виктор: Я просто хочу рассказать вам о том, как прожить свою жиз...

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

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

[Перевод] Введение в Screen Capture API — Сканируем QR коды в браузере Введение В этой статье мы, как вы уже догадались, поговорим про Screen Capture API. Этот API появился на свет в 2014 году и новым его назвать сложно, однако поддержка браузерами все еще достаточно слабая. Тем не менее, его вполне можно использовать для персональных проектов ...

Полная капитуляция Nvidia. Компания добавит мониторам с G-Sync поддержку Adaptive-Sync В начале года компания Nvidia сделал то, чего от неё мало кто ожидал. Она добавила своим видеокартам поддержку Adaptive-Sync. Это позволило использовать видеокарты GeForce с мониторами без поддержки G-Sync, но с поддержкой Adaptive-Sync. При этом Nvidia создала список ...

APEX станет главным нововведением Android Q. Что это такое? Android Q покажут, как обычно, на Googe I/O. Уже сейчас известно, что в систему встроят полноценную темную тему, а все стандартные приложения компании к моменту выхода новой версии Android будут обновлены под данное нововведение. Однако тёмная тема — не главное в Andr...

3DToday Fest: как это было (будет). Впечатления участника В преддверии очередного 3DToday Fest, на который уже пора паковать чемоданы (т.е. принтер), вспомнилось аналогичное питерское мероприятие, проходившее в феврале. Тогда у меня так и не нашлось времени, чтобы изложить впечатления. А они были весьма неоднозначными. Со всем свой...

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

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 51. Устранение неполадок EIGRP Сегодня мы рассмотрим, как устранять неполадки реализации протокола EIGRP. Для этого вам нужно загрузить лабораторную работу на эту тему по ссылке www.nwking.org/product/resources-day-51-eigrp-troubleshooting, которая приведена под данным видео, а затем мы вместе займемся её...

[Из песочницы] FFmpeg начало работы с Visual Studio Привет! Начну с того, что я занимаюсь разработкой программы определения автомобильных номеров на дешевом слабо мощном процессоре типа Intel ATOM Z8350. Мы получили достаточно хорошие результаты в определении российских номеров на статической картинке (до 97%) с не плохим быс...

Spring JPA репозитории в CUBA Тема статьи достаточно узконаправленная, но, возможно, окажется полезной тем, кто разрабатывает свои собственные хранилища данных и думает об интеграции со Spring Framework. Предпосылки Разработчики обычно не очень любят менять свои привычки (зачастую, в список привычек вхо...

Почему я хочу перейти с MacBook Pro на iMac 5K Как-то этот зверь был в нашей редакции, впечатлений оставил море Мое знакомство с компьютерами Mac началось с «малыша» Mac mini — в паре с монитором ASUS он верой и правдой прослужил мне несколько лет, пока я не решил перейти на MacBook Air (а потом на «прошку»), чтобы...

В двух миллионах IoT-устройств обнаружена уязвимость Независимый ИБ-исследователь Пол Маррапезе (Paul Marrapese) обнаружил уязвимости в IoT-оборудовании десятков китайских производителей, которые можно использовать для MitM-атак и вмешательства в работу устройств. По подсчетам эксперта, угрозе подвержены более 2 млн IP-камер, ...

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

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

Оптимизация Unity UI В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые по...

VideoProc — мощнейший конвертер для работы с 4K видео Чтобы просто посмотреть любимый сериал на iPhone или iPad, нужно сильно заморочиться: или изначально найти видео в подходящем формате, или искать подходящий плеер для форматов, которые не воспроизводятся на iPhone. Все это напрочь убивает особенность устройств Apple — просто...

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

Samsung запустила магазин быстрых команд для Bixby Голосовой ассистент Bixby не очень популярен в России, а потому многие даже не догадываются о том, на что он способен. Samsung проделала большую работу, чтобы составить конкуренцию Google Assistant и Siri, обучив помощника множеству всевозможных навыков. Благодаря им Bixby ...

CLRium #6: Concurrency Как вы уже заметили, формат семинара эволюционировал и принял новую форму: каждый последующий семинар теперь посвящается целиком и полностью какой-либо теме. Пятый был посвящен теме Garbage Collector и за 10 часов раскрыл всё, что только возможно, оставив за скобками совс...

[Перевод] Продуманные запросы: стратегии кэширования в век PWA Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках програм...

Интернет-активисты заблокировали 100 тыс. опасных сайтов Авторы сервиса URLhaus отчитались о работе за 2018 год. Спустя неполные 10 месяцев с запуска проекта активисты вместе с интернет-провайдерами смогли закрыть около 100 тыс. сайтов, распространявших шифровальщики, рекламные, шпионские и банковские трояны. Проект URLhaus запуст...

МегаФон и Cinia готовят новый проект Компании МегаФон и Cinia представили свой грандиозный проект, который позволит соединить «кабелем» Токио и Хельсинки благодаря новой полосе. Данную полосу кладут на дне Серверного Ледовитого океана и общая длинна составит 10 тысяч километров. На текущий момент самой длинной ...

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

Win32-приложения будут работать на Windows 10X 2 октября Microsoft представила Windows 10X (новую версию Windows 10) вместе с Surface Neo и Surface Duo. По словам руководителей Microsoft, ОС специально создана для устройств с двумя экранами, но ожидается, что Windows 10X будет доступна и в конце 2020 года для ноутбуков. ...

В небе появилась “гирлянда” спутников и ее может увидеть каждый SpaceX Starlink objects train 24 May 2019 from Marco Langbroek on Vimeo. Но не стоит срочно бежать за шапочкой из фольги, «гирлянду» ждали и она имеет рукотворное происхождение. Марко Лангброек просто рассчитал примерные параметры орбиты новых спутников Starlink и вышел ...

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

Боль и слёзы в Svelte 3 Вместо предисловия Статья будет полезна тем, кто так-же как и Мы решил попробовать Svelte в живом проекте. В нашу небольшую компанию пришёл заказ на разработку веб-админки для сервиса с бекэндом на Mongodb Stitch. В последние пару лет frontend Мы пишем на React или Vue (в за...

[recovery mode] Бинарные деревья поиска Прелюдия Эта статья посвящена бинарным деревьям поиска. Недавно делал статью про сжатие данных методом Хаффмана. Там я не очень обращал внимание на бинарные деревья, ибо методы поиска, вставки, удаления не были актуальны. Теперь решил написать статью именно про деревья. Пожа...

[Перевод] 5 уроков, которые мы усвоили, написав более 300 000 строк инфраструктурного кода Краткий мастер-класс по разработке инфраструктурного кода В октябре этого года я выступил с докладом на конференции HashiConf 2018, где рассказал о 5 ключевых уроках, которые я и мои коллеги из Gruntwork усвоили в процессе создания и поддержки библиотеки из более чем 300 00...

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

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

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

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

Digital-мероприятия в Москве c 04 марта по 10 марта Подборка ключевых мероприятий на неделю. День открытых дверей «Digital MBA» 04 марта (понедельник) Ленинградский пр 39стр79 бесплатно Digital MBA — новый коммерческий образовательный проект Mail.ru Group и GeekBrains, посвященный цифровой трансформации современного российс...

Обзор программы С++ Russia 2019 Piter: асинхронность, модули, библиотеки… и такси Что общего у этих людей, помимо того, что все они известны в мире C++? Sean Parent Eric Niebler Marshall Clow Bryce Adelstein Lelbach Антон Полухин Андрей Давыдов Ответ: все они приедут на C++ Russia. Теперь, когда лето кончилось и все вернулись из отпусков, п...

Цветовой профиль был добавлен в Windows 10 on ARM на Lumia Сообщество Windows Phone в прошлом году объявило неофициальный проект по взлому телефонов Lumia для запуска Windows 10 на ARM. Разработчики также работают над мобильной оболочкой (Mobile Shell), чтобы настроить интерфейс Windows 10 on ARM и сделать его более мобильным.Было о...

Spring Boot 2 и JDK 8: Вы все еще используете аннотации @Param, @RequestParam и @PathVariable? Тогда статья для Вас Здравствуй, Хаброчитатель! Разрабатывая учебный проект по Spring Boot 2 решил поэкспериментировать с @Param в запросах Spring Data JPA, а точнее c их отсутствием: @Transactional(readOnly = true) public interface UserRepository extends JpaRepository<User, Integer> { ...

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

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

5 крутых сервисов digital-маркетинга, о которых не слышали в России Привет, Хабр! Поделюсь своим опытом работы с сервисами, которыми практически не пользуются в России, но при этом они мега-популярны в Европе и США. Кратко распишу, что это за сервисы и для чего они нужны, их плюсы/минусы на личном опыте, и дам для сравнения аналоги популяр...

[Из песочницы] Чётные числа Фибоначчи Навеяно комментарием под постом Фибоначчи на собеседовании. Пользователь pavellyzhin упомянул следующую задачу на собеседовании (комментарий): Больше года назад откликнулся на вакансию «php-программист», прислали ТЗ и там было задание с Фибоначчи: выбрать все четные числа Фи...

Что делать с разбитым экраном iPhone Разбитый экран iPhone X Разбитый дисплей айфона — в наше время штука далеко не редкая. Даже падение с небольшой высоты может вызвать трещины на экране, причем это касается как старых моделей iPhone (вроде «пятерки»), так и нового iPhone 11 Pro, который пусть и стал про...

[Перевод] Serverless: на 15% медленнее и в восемь раз дороже Недавно я решил поэкспериментировать с API на нашем сайте CardGames.io и попробовать фреймворк Serverless. Последние несколько лет он стал горячей темой в мире технологий, а я прокрастинировал хотел поддерживать технические навыки в актуальном состоянии и попробовать что-то ...

Книга «Классические задачи Computer Science на языке Python» Многие задачи в области Computer Science, которые на первый взгляд кажутся новыми или уникальными, на самом деле уходят корнями в классические алгоритмы, методы кодирования и принципы разработки. И устоявшиеся техники по-прежнему остаются лучшим способом решения таких задач...

Samsung опровергла июльский релиз Galaxy Fold Samsung не выпустит Galaxy Fold ни в этом, ни даже в следующем месяце. Об этом деловому южнокорейскому изданию The Korea Herald рассказали сотрудники компании, знакомые с ситуацией. Несмотря на стремление Samsung не затягивать с релизом складного смартфона, обстоятельства о...

[recovery mode] Как я свою онлайн игру создавал. Часть 1: Работа с сетью Привет всем! У меня недавно был отпуск, и появилось время спокойно попрограммировать свои домашние проекты. Захотел я, значит, свою простенькую онлайн игру сделать на Rust. Точнее, простенькую 2D стрелялку. Решил сначала сделать сетевую часть, а там уже видно будет, что да...

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

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

OTRS: LDAP аутентификация, авторизация и синхронизация (FreeIPA, AD) OTRS — система обработки заявок с открытым кодом (Open-source Ticket Request System), написанная на Perl. Существует в двух вариантах: OTRS Business Solution — платная версия ((OTRS)) Community Edition — бесплатная версия Перечислю немного из того фукционала, который ...

Проверка исходного кода библиотек .NET Core статическим анализатором PVS-Studio Библиотеки .NET Core — один из самых популярных C# проектов на GitHub. Неудивительно, с учётом его широкой известности и используемости. Тем интереснее попробовать выяснить, какие тёмные уголки можно найти в исходном коде этих библиотек, что мы и попробуем сделать с помощью...

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

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

Julia и метод покоординатного спуска Метод покоординатного спуска является одним из простейших методов многомерной оптимизации и неплохо справляется с поиском локального минимума функций с относительно гладким рельефом, поэтому знакомство с методами оптимизации лучше начинать именно с него. Поиск экстремума ве...

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

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

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

Re-ARM 32 bit. Установка Marlin 2.0 Давно хотелось поставить 32 битную плату управления принтером.Так как сейчас моя плата управления представляет собой стандартный бутерброд Mega+Ramps и свободное место для установки платы большего размера практически отсутствует, то первоначально рассматривался вариант замен...

На Lumia 950/XL с WoA имеется поддержка звонков и обмена сообщениями В прошлом году мы увидели, как команда разработчиков представила Windows 10 на ARM для Lumia 950 и 950 XL, двух последних флагманов, разработанных Microsoft. Lumia 950 и 950 XL – единственные два телефона, которые должны работать под управлением Windows 10 on ARM, поскольку ...

Внедряем OSGI на платформе Karaf OSGI это не сложно Я много раз встречал мнение, что OSGI это сложно. И более того, у самого когда-то такое мнение было. Году в 2009, если быть точным. На тот момент мы собирали проекты при помощи Maven Tycho, и деплоили их в Equinox. И это действительно было сложнее, чем раз...

Google Assistant упростит бронирование билетов через Chrome Google Chrome — теперь со встроенным Google Assistant Сегодня мало кого можно удивить бронированием билетов в кино или заказом пиццы через интернет. Достаточно зайти на сайт кинотеатра или пиццерии, добавить интересующий вас товар в корзину и оплатить его банковской ка...

Быть фулстеком и не быть им Я именно тот 40+ летний синглстек, который упоминался в нашумевшей статье. Когда я вижу таск, где бэкендер упоминает dTo, к которому нужно написать обвязку на фронте… Я запланировано выхожу из себя. Во-первых, я хорошо работаю, когда злой. А тут такой случай. А во-вторых (и ...

14-15 октября: Bootcamp глобального блокчейн-проекта Hyperledger впервые в Москве Нет лучшего места для первых шагов в блокчейне, чем буткемп глобального блокчейн-проекта Hyperledger, который пройдет в Москве 14 и 15 октября. Это первое подобное мероприятие в России и хорошая возможность не только своими глазами увидеть, как работает платформа, но и поп...

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

Робо-футболист от начинающих. Соревнования в МФТИ. Android & Arduino & Bluetooth Данная статья является полу-сиквелом к работе Love, Death and Robots «Машинка на Arduino, управляемая Android-устройством по Bluetooth, — полный цикл», состоящей из двух частей (раз, два). Вещи, описанные там, были немного доработаны-переделаны, а сам робот из ездящей машинк...

Работа с API КОМПАС-3D → Урок 16 → Управляющие символы Продолжаем цикл статей по работе с API САПР КОМПАС-3D. Управляющие символы уже несколько раз встречались нам на предыдущих уроках цикла. Тогда каждый раз говорилось, что выводимые строки не должны их содержать, так как КОМПАС обрабатывает их особым образом. Теперь пришло вре...

Toyota разрабатывает ровер для лунной миссии Буквально пару дней назад все человечество вспоминало о первой в истории высадке на Луну в рамках миссии «Аполлон-11». И при этом космические агентства всего мира вновь устремили свой взор в сторону спутника нашей планеты. Уже многие страны, включая США, Китай и Р...

Angular: создание и публикация библиотеки Начнем с начала Если мне не изменяет память, то с версии 6 в angular появилась возможность создавать в одном workspace проекты разных типов: application и library. До этого момента люди, которые хотели создать библиотеку компонент, скорее всего, пользовались отличным и поле...

[Из песочницы] Windows service. Поиск системных ошибок и отображение их в WinForm C# В этой статье мы разберем как с нуля создать приложение, которое будет работать со службами windows и отображать системные ошибки в WinForm (C#). План этой статьи: Создание службы Event Viewer Код службы Проверка работы службы(Запуск службы вручную) Отображение WinForm ...

[Из песочницы] Ускоряем сайт с JivoSite. Отложенная загрузка онлайн-консультанта При оценке скорости загрузки сайта сервисом Google, обратил внимание, что довольно много очков теряем из-за установленного онлайн-консультанта JivoSite. При удалении кода онлайн-консультанта с сайта, проект набирает на 16 очков больше для мобильной версии и на 19 очков больш...

Евгений Зубов: Устал объяснять, почему слово «добро» нельзя использовать. Доказываю на данных Не пишите в названии вашего социального проекта слово «добро», не повторяйте за другими. Так вы сольетесь с толпой и совсем не запомнитесь вашей потенциальной аудитории. В этом уверен автор портала по вопросам продвижения некоммерческих организаций Mercy.marketing ...

[Перевод] Самое простое объяснение принципа работы современных алгоритмов симметричного шифрования (Нашёл в твиттере тред с очень крутым объяснением работы симметричных шифров. Его написал Colm MacCárthaigh один из основных контрибьюторов Apache. Я спросил разрешение Колма на перевод, он любезно согласился). Я объясню вам доступным языком, что происходит при шифровании да...

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

[Из песочницы] Arduino и Processing. Как управлять микроконтроллером по COM порту. Двустороннее общение Всем привет! В интернете бытует заблуждение, что для управления компьютером при помощи самодельной электроники нужны только специальные платы, которые могут распознаваться как USB HID устройства. А касаемо Arduino все только и говорят о Arduino Leanardo. Такие популярные биб...

Что такое NFC и как эта технология работает В наши дни NFC является главной беспроводной технологией благодаря распространению систем бесконтактных платежей, таких как Samsung Pay и Google Pay. Совсем недавно эта технология была привилегией лишь дорогих флагманов, а сейчас добралась не только до среднего, но и до бюд...

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

Хакеры начали использовать популярный сервис Google для рассылки вредоносного кода Сохраняйте бдительность во время пребывания в сети. Даже если вы находитесь на проверенных ресурсах Есть много способов того, как оставаться в курсе самых последних событий на интересующие вас темы. Многие пользователи предпочитают пользоваться новостными агрегаторами или са...

В Москве расскажут, как управлять проектом без авралов 28 января 2019 года в 19:30 в Москве состоится митап на тему «Под лавиной аврала: как все успевать». Команда компании Aventica поделится своим опытом ведения нескольких проектов одновременно и методами организации работы. Ежедневно в работе НКО сталкиваются с внезапными пись...

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

One Web опережает SpaceX в развертывании сети интернет спутников С космодрома Куру (Французская Гвиана) 28 февраля стартовала российская ракета-носитель «Союз-СТ-Б» с шестью британскими спутниками OneWeb. Запуск прошел штатно, разместив первые шесть спутников OneWeb на круговой орбите на высоте 1000 км. Сам запуск несколько раз откладывал...

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

Разработка монолитной Unix подобной OS — Библиотека С В предыдущей статье мы научились запускать Hello World ядро и написали пару функций для работы со строками. Теперь пришло время расширить библиотеку С чтобы можно было реализовать kprintf и другие необходимые функции. Поехали! Читать дальше →

Мобильная разработка hh.ru и где она обитает В далеком 2000 году, когда hh.ru был совсем маленьким и ласково назывался “National Job Club”, а доступ к интернету получили всего 3% россиян, у нас, разумеется, не было никакой мобильной разработки. Тогда и смартфоны, в нынешнем их виде, были лишь далекой мечтой. Шли годы, ...

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

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

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

Железный подход к запуску тарифа, или как мы собрали кластер на новом Xeon E-2288G Если бы наш старый добрый тариф «Форсаж» был человеком, то сейчас он бы нервно курил в сторонке и вспоминал лучшие годы. А ведь как хорошо всё начиналось. Тогда, в 2018 году, мы первыми подключили NVMe и модифицировали тариф с гибким масштабированием ресурсов, который жил ...

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

[Из песочницы] Хороший, плохой, злой — тестирование в проекте новичков Предисловие: в университете было получено задание — собрать scrum команду, выбрать проект и работать над ним в течении семестра. Наша команда выбрала разработку веб-приложения (react + flask). В этой статье я постараюсь рассказать, какими тесты должны были быть, и проанализи...

2 дня скидок на всё от Арбайтена В последние 3 дня октября объявляю скидки на аудит и на обучение Ютубу.  Скидка на всё составляет 70%.   Вначале про аудит. Если вы продвигаете свой сайт, делаете какой то свой проект и хотите чтобы я посмотрел на него своим опытным взглядом и сказал, что правильно, что...

Принципы свободного рынка в понимании США Сей пост есть дубль записей из моего Телеграм канала. Посчитал нужным поделиться обнаруженными фактами c хабраобществом. Однажды я вам рассказывал про случай, когда служба CFIUS при Министерстве внутренней безопасности США заставила китайцев продать ЛГБТ соцсеть, ибо негоже...

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

Извините, но на работу я не приду, потому что сейчас зима Чудны дела твои, Господи. Примерно так я приговаривал недавно на конференции посвященной теории поколений X, Y, Z. Так уж получилось, что весь этот поколенческий хайп прошел мимо меня. И поэтому, когда мне начали рассказывать, что при управлении командами, нужно учитывать ...

Изучаем печально известное реле Wanhao Duplicator D6 / D6 Plus Изучение в интернете типовых неполадок, с которыми может столкнуться пользователь Wanhao Duplicator D6 / D6 Plus показало, что одной из наиболее часто встречающихся проблем является отказ реле. Типовые симптомы: ====quote====На этой неделе мой 3D-принтер перестал работать в ...

Настя Раца: Смотрим рекламу западных приютов и улучшаем свою В 2018 году Facebook выпустил инструмент для повышения прозрачности рекламы, позволяющий пользователям смотреть, какая реклама запущена в сети в данный момент. Это открытая библиотека, где каждый может отследить рекламу конкурентов или лидеров рынка. SMM-специалистка проект...

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

Кажется, памяти устройств, наконец, стало действительно хватать всем Почти новогодним подарком стало обнаружить на борту моего компактного «походного» ноута хранилище на полтерабайта, когда я думал, что там 256 ГБ максимум; впрочем, «потерявшиеся» 256 гигов тут же обнаружились на большом «стационарном» ноуте, который выглядел на все 512. Разу...

Определение кодировки текста в PHP вместо mb_detect_encoding Существует несколько кодировок символов кириллицы. При создании сайтов в Интернете обычно используют: utf-8 windows-1251 koi8-r Еще популярные кодировки: iso-8859-5 ibm866 mac-cyrillic Вероятно это не весь список, это те кодировки с которыми я часто сталкиваюсь. Иног...

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

[Из песочницы] Организация reducer'а через стандартный класс Приветствую, сегодня я собираюсь поговорить с вами о способе организации Reducer'a. И рассказать с чего я начал и к чему пришел. Итак, есть некий стандарт по организации Reducer и выглядит он следующим образом: export default function someReducer(state = initialState, action...

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

[Из песочницы] Angular schematics, или как я писал свой шаблон для angular cli Здравствуйте, меня зовут Максим. Уже несколько лет я занимаюсь front-end разработкой. Мне часто приходится иметь дело с версткой различных html шаблонов. В своей повседневной работе я обычно пользуюсь сборщиком webpack c настроенным шаблонизатором pug, а также использую мето...

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

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

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

Принципы работы протокола PIM Протокол PIM — это набор протоколов для передачи мультикаста в сети между маршрутизаторами. Отношения соседства строится аналогично как и в случае динамических протоколов маршрутизации. PIMv2 отправляет каждые 30 секунд Hello сообщения на зарезервированный мультикаст адрес 2...

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

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

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

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

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

Анонсирована мобильная версия одной из самых популярных MMORPG Китая Legend of Mir Eternal Вы, скорее всего, этого не знали, но с The Legend of Mir 2 началась эпоха мультиплеерных развлечений в Китае два десятка лет назад. За это была ответственна студия Shanda Games, которая перенесла игру с Южной Кореи. Оказывается, даже сегодня эта она остается одной из самых п...

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

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

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

Английский алфавит для Детей. Недавно увлекся изучением 3D моделирования. И решил за одно сделать что-то полезное) в итоге родился вот такой проект с Алфавитом. Эти буквы не просто нужно напечатать. Их можно раскрасить в месте с ребенком акриловыми красками, можно напечатать разными цветами, разные слои ...

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

«Секретики» DPAPI. Взгляд на осла В дополнение к нашей прошлой статье про расшифровку DPAPI-блобов расскажем еще о двух случаях, с которыми нам пришлось столкнуться. Речь пойдет о сохраненных паролях в браузерах MS IE11 и Edge. Стратегия остается прежней – будем все расшифровывать в режиме offline. Для это...

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

[Из песочницы] Создаем монорепозиторий с помощью lerna & yarn workspaces За последние несколько лет концепция монорепозиториев успешно зарекомендовала себя, так как позволяет значительно упростить процесс разработки модульных программных проектов, таких как инфраструктуры на основе микросервисов. Основные преимущества такого архитектурного подх...

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

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

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

Искать работу мечты и… остаться с пустым кошельком Адресатов рассылки завлекали интересной позицией в крупной корпорации. В письме содержалось приглашение бесплатно присоединиться к сервису по поиску работы: для этого предлагалось скачать на устройство специальное приложение. Чтобы процесс установки выглядел правдоподобным, ...

OpenCV 4.0 и 4.1 — что нового? Мы возвращаемся к рассказу об open source библиотеке компьютерного зрения OpenCV. Проект живет и развивается, движимый командой разработчиков, работающих в компании Intel, а также неугасающей поддержкой community. В конце 2018 года увидел свет первый стабильный релиз из ве...

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

Обзор: сервис для получения экспертных рекомендаций по профессиональной эмиграции в США RB Relocate Привет, Хабр! Меня зовут Александр, уже пару лет я живу в США, развиваю здесь свои проекты и рассказываю о них. Если вы состоите в хабе IT-эмиграция, то наверняка видели мои статьи о переезде, развитии компаний и сложностях, с которыми приходится сталкиваться на этом пути....

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

Авторизация в ESIA на сервере терминалов с ЭЦП по ГОСТ-2012 Добрый день Хабровчане. Коллеги работающие в сфере гос. закупок уже успели испытать на себе обязательное требование правительства касательно использования носителей с электронно цифровой подписью ГОСТ Р 34.10-2012. Использование ЭЦП по новому ГОСТу является обязательным с 1...

Netmarketshare: Windows 10 занимает почти 50% доли рынка Netmarketshare опубликовал свои цифры за май 2019 года, и они представляют собой смесь хороших и плохих новостей для Microsoft. Хорошая новость заключается в том, что Windows 10 наконец-то занимает 50% доли рынка, и теперь между Windows 10 и Windows 7 существует значительный...

Autodesk Maya: полезные базовые функции для работы с 3Д моделями Недавно я столкнулся лицом к лицу с таким зверем как Autodesk Maya. За плечами у меня не было опыта в работе с 3Д моделированием и пришлось в экстренном порядке прокачиваться, начиная с основ, а также ознакомится с функциональностью данного ПО, чтобы проверить работу плагина...

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

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

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

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

Atom – браузер на движке Chromium Сейчас многие крупные компании используют движок Chromium для создания своего браузера. Та же Microsoft поняла, что конкурировать с Хромом на движке Chromium практически невозможно, поэтому она также переходит на этот движок. Российские компании тоже активно используют данны...

[Из песочницы] «Брендированные» флешки. Кот в «брендовом» мешке Недавно у одного моего знакомого случился неприятный казус. Его сын делал школьное домашнее задание по информатике, но результат его трудов исчез. Ребенок использовал в качестве носителя информации USB-флешку, на которой был нанесен логотип фирмы моего знакомого, и вот именн...

Рынок труда: финансовый администратор в WWF, PR-менеджер в «Детские деревни – SOS» и другие вакансии Подборка актуальных вакансий от редакции «Теплицы».  Разработчик игровых механик в Теплицу социальных технологий  Команда Теплицы социальных технологий ищет творческого и ответственного человека на вакансию геймификатора для платформ «IT-волонтер» и «Теплосе...

«Детские деревни – SOS»: «Мы мечтаем закрыться» В работе некоммерческой организации, которая помогает большому количеству людей, не должно быть никакой спонтанности. В этом уверен исполнительный директор российского комитета «Детские деревни – SOS» Николай Слабжанин. Это благотворительная организация по поддержк...

Водяной пар и, возможно, дождь: астрономы обнаружили следы воды в атмосфере далёкой экзопланеты Астрономы обнаружили водяной пар в атмосфере планеты, которая примерно вдвое больше по размеру, чем Земля. K2-18b – самая маленькая экзопланета с атмосферным водяным паром, когда-либо обнаруженная людьми и, вполне возможно, что там есть даже облака, и идут дожди. Это делает ...

С новым годом, с новым MQTT/UDP Привет. Как я уже писал недавно (Первая краткая статья о MQTT/UDP), MQTT/UDP — протокол на базе MQTT, но: Ходит поверх UDP broadcast (не нужен брокер, почти не нужна конфигурация) До неприличия простой в реализации (10 строк на си + UDP/IP стек — и вы отправляете данные с...

Краеугольные камни уничтожения медленного кода в Wolfram Language: ускоряем код в десятки, сотни и тысячи раз Скачать файл с кодом и данные можно в оригинале поста в моем блоге Картинка к вебинару и посту взята не просто так: в определенном смысле символьное ядро Wolfram Language можно сравнить с Таносом — если бы его мощь была бы направлена в правильное русло, он мог бы стать самы...

[Перевод] Я выставил счёт $18 000 за статичную веб-страничку… и мне это сошло с рук Не так давно я работал контрактником, перескакивая с одного проекта на другой. С некоторыми краткосрочными проектами справлялся за неделю. Другие длились пару месяцев. Они приносили достаточно денег, чтобы взять отпуск. Но я предпочитал короткие, потому что там можно было ус...

Мой способ создания мастер-компонентов в Фигме Заметил, что многие продуктовые дизайнеры задаются вопросом «Как организовывать разные состояния компонентов?». Весь дизайнерский мир делится на 2 части. Первые делают один компонент, в котором несколько папок для всех состояний. Вторые делают для каждого состояния элемента ...

Как установить Android на Nintendo Switch Nintendo Switch — это не то устройство, которое мы обычно ассоциируем с разработкой для Android, однако, благодаря усердной работе двух разработчиков с ресурса XDA Developers, на любой взламываемой Nintendo Switch (обычно взлому или jailbreak поддаются те консоли, что...

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

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

WWDC 2014: история появления Swift Главное событие пресс-конференции по случаю открытия WWDC 2014 года случилось в самом её конце. Ему уделили совсем немного времени. Крис Латнер, умеющий захватить внимание аудитории и делать с ней все что захочет, был скован и непохож на себя. И тем не менее, WWDC 2014 вошл...

Вам может хватить 30 приложений на iPhone. Попробуйте Если раньше от установки большого количества приложений на iPhone останавливала нехватка памяти (еще в те времена, когда Apple предлагала максимум 32 ГБ, а все ходили с моделями на 8 ГБ), то сейчас такой проблемы нет: бери себе iPhone с 256/512 ГБ встроенной памяти и загруж...

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

[Из песочницы] Почему вы должны думать о функциональном программировании Привет, Хабр! Представляю вашему вниманию перевод своей статьи «Why you should think about functional programming», посвященной функциональному программированию. Почему вы должны думать о функциональном программировании? Давайте ответим на следующие вопросы: всегда ли в...

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

Наследование в C++: beginner, intermediate, advanced В этой статье наследование описано на трех уровнях: beginner, intermediate и advanced. Expert нет. И ни слова про SOLID. Честно. Beginner Что такое наследование? Наследование является одним из основополагающих принципов ООП. В соответствии с ним, класс может использовать пер...

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

[Из песочницы] Рендеринг 3D графики с помощью OpenGL Введение Рендеринг 3D графики — непростое занятие, но крайне интересное и захватывающее. Эта статья для тех, кто только начинает знакомство с OpenGL или для тех кому интересно, как работают графические конвейеры, и что они из себя представляют. В этой статье не будет точных ...

Следующая ступень: материнская плата ASUS ROG Maximus XI Hero (Wi-Fi) Казалось бы, совсем недавно был анонс чипсета Z370, восторженные отзывы о новом процессоре 8700K и поиск оптимальной платы для разгона, как уже пролетел год, перед нами Z390 и процессоры i9 на Coffee Lake Refresh. Снова нужно выбрать «правильную» материнку для освоения ...

[Из песочницы] Сказ о том, как чайник Autoplay Media Studio 8.5.3.0 ломал Как не трудно догадаться, то чайник — это я. Захотелось мне на днях в исходник одной утилитки заглянуть, очевидно сделанной средствами AMS (.cdd файл рядом с .exe и пара lua*.dll). Пару лет назад разбирал детально одну программу сделанную аналогичными средствами и предста...

Как увеличить пожертвования: мастерская по подготовке к #ЩедромуВторнику для новичков Вы впервые участвуете в международном дне благотворительности ##ЩедрыйВторник или еще сомневаетесь, участвовать ли? Нужна помощь в разработке креативной кампании? Хотите создать сайт и запустить сбор онлайн-пожертвований? Тогда предлагаем участвовать в мастерской по подгото...

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

174 игры в Steam получили поддержку сенсорного управления Логотип игрового сервиса Steam Технология Steam Remote Play позволяет пользователям популярного сервиса играть в игры с компьютера, транслируя их на планшет, смартфон или телевизор. Это очень удобно: телевизор находится в одной комнате, а компьютер в другой. И он занят. При ...

Решение задания с pwnable.kr 23 — md5 calculator. Разбираемся со Stack Canary. Подключаем библиотеки C в python В данной статье решим 23-е задание с сайта pwnable.kr, узнаем, что такое stack canary и подключим libc в python. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду п...

На развитие квантовых технологий в России может быть потрачено более 43 млрд рублей Как стало известно "Коммерсату", 24 мая проект "дорожной карты" рассмотрит набсовет АНО "Цифровая экономика" (АНО ЦЭ), а затем правительство. Проект предполагает, что к 2024 году РФ станет значимым игроком на рынке квантовых технологий: по отдел...

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

Прекращена поддержка Windows 10 April 2018 Update (версия 1803) Если вы по-прежнему используете устройства под управлением Windows 10 April 2018 Update (версия 1803) в редакциях Home или Pro, то пришло время обновить операционную систему, поскольку с сегодняшнего дня эта версия системы больше не поддерживается. Если вы используете редак...

Что делать тимлиду, чтобы команда не выгорала Недавно в подкасте "Цинковый прод" мы обсуждали выгорание. Я решил структурировать некоторые мысли и оформить в виде статьи История первая Однажды, когда я еще был простым линейным разработчиком, я решил пофрилансить. Друг попросил доработать одну довольно хитрую систему, п...

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

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

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

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

[Из песочницы] Шлем отчеты Veeam agent Linux на почту или в Telegram Приветствую, Habr! Относительно недавно компания, в которой я работаю, начала предлагать Veeam как основное средство резервного копирования. И все бы ничего, но еще в процессе ознакомления выяснилось следующее: инструменты Veeam заточены под Windows, включая развертывание...

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

[Из песочницы] Автоматизация конвертирования word файлов в другие форматы Некоторые гос. структуры формируют отчёты в doc файлах. Где-то это делается руками, а где-то автоматически. Представим, что вам поручено обработать тонну таких документов. Это может быть необходимо для вычленения какой-то конкретной информации или просто проверки содержимого...

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

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

Website Builder for Android 1.4.08 Simple Different — мобильная версия конструктора сайтов. Без сомнения каждый задумывался хотя бы раз о том, чтобы создать свой собственный сайт. Да, сейчас сайты есть абсолютно на любую тему, и их количество при изучении ужасно пугает, конкуренция невиданных масштабов и еще ...

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

Quiet.js: библиотека для приёма и передачи данных ультразвуком В нескольких эпизодах сериала «Мистер Робот» главный герой Эллиот взламывает и доксит своих жертв, записывая собранную информацию на аудио CD. Каждый диск он подписывает названием группы и альбома. Если злоумышленник получит доступ и поставит диск на воспроизведение — то у...

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

Распродажа издателя Raw Fury в App Store и Google Play: Kathy Rain, Dandara и Kingdom: New Lands по скидке Есть в App Store и Google Play некоторые проекты, на которые скидки установлены постоянно. Таким образом разработчики привлекают покупателей, которые могут подумать, что это их последний шанс забрать проект по выгодной цене. Есть, например, Hitman Sniper, который становится ...

RxSwift и корутины в Kotlin — факультатив по мобильной разработке от AGIMA и GeekBrains Знания — это хорошо, просто отлично. Но нужна еще и практика, чтобы можно было использовать полученные данные, переведя их из статуса «пассивное хранение» в статус «активное использование». Каким бы хорошим ни было теоретическое обучение, требуется еще работа «в поле». Ска...

Nasa анонсирует новый проект по поиску инопланетной жизни Специалисты NASA смогли придумать новый проект по поиску инопланетной жизни, объединив технологии телескопа TESS и Breakthrough Listen Согласно сообщению livescience.com, астрономы, занимающиеся программой Transiting Exoplanet Survey Satellite (TESS), уже в ближайшее время с...

Анализ производительности запросов в ClickHouse. Доклад Яндекса Что делать, если ваш запрос к базе выполняется недостаточно быстро? Как узнать, оптимально ли запрос использует вычислительные ресурсы или его можно ускорить? На последней конференции HighLoad++ в Москве я рассказал об интроспекции производительности запросов — и о том, что ...

Разворачиваем Kubernetes на десктопе за несколько минут с MicroK8s Начать работать с Kubernetes не всегда бывает просто. Не у всех есть необходимая для разворачивания полноценного кластера Kubernetes инфраструктура. Для локальной работы Kubernetes предлагет утилиту Minikube. Minikube — достаточно простое и удобное средство, и есть несколько...

Финансовый директор Xiaomi прокомментировал спад продаж смартфонов в III квартале Во время последней отчётной конференции Xiaomi Group за третий квартал 2019 года финансовый директор Xiaomi так прокомментировал снижении доходов и продаж смартфонов в III квартале: «Сейчас мы переходим с 4G на 5G. Поскольку рынок смартфонов находится под давлением, мы решил...

Как и зачем читать даташиты, если микроконтроллеры – ваше хобби Микроэлектроника – модное увлечение последних лет благодаря волшебному Arduino. Но вот беда: при должном интересе перерасти DigitalWrite() получается быстро, а что делать дальше – не совсем ясно. Разработчики Arduino приложили немало усилий для снижения порога вхождения в с...

Франшиза «Мама работает»: как масштабировать социальный проект Команда проекта «Мама работает» запускает одну из первых в России социальных франшиз. Коворкинги для мам будут открываться по всей стране. Журналист Теплицы Екатерина Ульянова спросила у основательницы проекта Олеси Кашаевой, почему проект выбрал такой формат масштабировани...

Крекинг в 3D или изучение утилиты Repetier-Server Начну с того, что возникла потребность делать таймлапсы (видео с ускорением), но рендить по 3-4 часа после печати весьма уныло... Многие знают утилиту Repetier-Server. Но те, кто в танке скажу в крацэ - это веб морда в которой есть много функций для удобного управления принт...

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

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

Реализация горячей перезагрузки С++ кода в Linux и macOS: копаем глубже *Ссылка на библиотеку и демо видео в конце статьи. Для понимания того, что происходит, и кто все эти люди, рекомендую прочитать предыдущую статью. В прошлой статье мы ознакомились с подходом, позволяющим осуществлять "горячую" перезагрузку c++ кода. "Код" в данном случае — ...

Angulareact У меня есть проблема. Приложение написано на Angular, а библиотека компонентов на React. Делать клон библиотеки слишком дорого. Значит, нужно использовать React-компоненты в Angular-приложении с минимальными затратами. Разбираемся как это делать. Читать дальше →

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

Как я пришел к формальной спецификации RISC-V процессора на F# Томными зимними вечерами, когда солнце лениво пробегало сквозь пелену дней — я нашел в себе силы заняться реализацией давней мечты: разобраться как же устроены процессоры. Эта мечта привела меня к написанию формально спецификации RISC-V процессора. Проект на Github Читать д...

Обзор англоязычных сайтов для поиска постоянной удаленной IT работы Для удаленной работы есть миллион причин. Торчать по 8-9 часов в офисе вовсе не так здорово, как это показано в сериалах. В один прекрасный день, летом 2018-го, я просто решила, что мне нужно больше личного пространства и собралась увольняться, тем более на моей должности в ...

C/C++ из Python (C API) Продолжаем тему как вызывать C/C++ из Python3. Теперь используем C API для создания модуля, на этом примере мы сможем разобраться как работает cffi и прочие библиотеки упрощающие нам жизнь. Потому что на мой взгляд это самый трудный способ. Читать дальше →

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

Книга «Kafka Streams в действии. Приложения и микросервисы для работы в реальном времени» Привет, Хаброжители! Эта книга подойдет для любого разработчика, который хочет разобраться в потоковой обработке. Понимание распределенного программирования поможет лучше изучить Kafka и Kafka Streams. Было бы неплохо знать и сам фреймворк Kafka, но это не обязательно: я ра...

Children of Morta — всем семейством против Скверны (Mac) В последнее время все больше разработчиков вспоминает о таком жанре как «рогалик». Однако далеко не у всех получается удачно соединить вместе процедурно генерируемые уровни, разных противников, героев с различными умениями и какой-никакой простой сюжет. Но иногда интересные ...

Цветущие сады на Марсе остаются мечтой: проект Mars One обанкротился О полете на Марс человечество (во всяком случае некоторые его представители) мечтает уже долгие десятилетия. Мечты так и остаются мечтами — реализовать такой масштабный и технически сложный проект весьма непросто, так что почти никто и не берется. За последние десять лет о...

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

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

Russian Railway Simulator (RRS): первый публичный релиз Наступил тот долгожданный мной день, когда я наконец могу представить эту разработку. Проект был начат ровно год назад, 1 сентября 2018 года, по крайней мере в репозитории RRS на Gtihub первый коммит имеет именно такую дату. Пассажирский поезд на станции Ростов Главный (кли...

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

[Из песочницы] Реверс-инжиниринг электрокарниза AM82TV Есть у меня пара электрокарнизов компании Akko — AM82TV. Модель эта выделяется из собратьев наиболее полным набором интерфейсов управления. Шторами можно управлять по радиоканалу, есть “сухие контакты”, пофазное управление (замыканием управляющих проводов с сетевыми). Есть и...

[Перевод] Как встроить С-библиотеку в Swift-фреймворк В 2014 году был представлен Swift, новый язык для разработки приложений экосистемы Apple. Новинка принесла не только новые возможности и функции, но и проблемы — тем, кто хотел пользоваться старыми добрыми C-библиотеками. В этой статье я рассмотрю одну из них — бандлинг C-...

Продвижение от IPM Group- гарантированный вывод в Топ и не только Когда человек заказывает продвижение сайта, он надеется оперативно попасть в ТОП выдачи поисковых систем. Как правило, это получается только в том случае если за работу взялась опытная компания специалистов. Одной из таких можно назвать ipm-group.org и здесь раскрутка сайта ...

Заводим Spring StateMachine Вступление В проектах я встречался с тремя примерами, так или иначе связанными с теорией конечных автоматов Пример 1. Занимательный говнокод код. Занимает уйму времени, на то чтоб понять что происходит. Характерной особенностью воплощения обозначенной теории в коде являет...

Опыт участия в GSoC: как двое (трое) студентов реально улучшили код CRIU Ежегодно Google проводит мероприятие Google Summer of Code, на котором ведущие OpenSource проекты находят себе новых талантливых разработчиков среди студентов. В 2019 нашему проекту CRIU удалось не только пройти отборочный тур, но также привлечь сразу несколько молодых разра...

Meizu 16S и Meizu 16S Plus на фото: еще больше экрана Как-то так получилось, что Meizu враз разучилась делать хорошие и дешевые смартфоны. Неудачный 2017 год настиг компанию сейчас и она, если и не дышит на ладан, то вынуждена просить поддержки от государства. Внутри Meizu идут реорганизационные процессы и чем они в итоге закон...

[Из песочницы] Интернет проект security.txt — знакомство с еще одним .well-known файлом Основная идея проекта — формализация взаимодействия между внутренней ИБ и внешними исследователями, давая четкое указание как и куда направлять информацию об уязвимостях или проблемах безопасности. Формализация взаимодействия — серьезная проблема, не все сайты имеют программ...

Новый взгляд на изучение и документирование исходного кода TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут. Проблема Недавно я проводил...

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

[Перевод] Пользователи и авторизация RBAC в Kubernetes Прим. перев.: Продолжая недавно затронутую нами тему безопасности Kubernetes в целом и RBAC — в частности, публикуем перевод этого материала от французского консультанта из международной компании Big Data-компании Adaltas. Автор в деталях показывает, как создавать пользовате...

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

Электрички Москвы (и не только): спасибо тем, кто помогал в этом году Электричка слева — Аэроэкспресс — теперь тоже добавлена в приложение. В день расписание у нас просматривают 600 тысяч человек, поэтому каждое маленькое изменение имеет эффект большого масштаба. Я хочу немного отчитаться о том, что мы добавили в приложение электричек по п...

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

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

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

Моя система домашней автоматики Привет, Хабр! Цель этой статьи(цикла) хабраэффект вводный рассказ о моей системе домашней автоматики, конечно я не придумал и создал всё с нуля, а только лишь собрал технологии и проекты которые посчитал наиболее подходящими для этой цели и добавил немного от себя. Уровень ...

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

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

#видео | Японский космический аппарат собрал образцы грунта астероида. Что он там ищет? Японский космический зонд «Хаябуса-2» провел уже вторую успешную миссию по сбору образцов грунта с поверхности астероида Рюгу. Ранее мы сообщали о том, что аппарат передал на Землю новые снимки малого небесного тела в ходе выполнения этой операции. И хотя первые анимированн...

Реализация паттерна Page Object на Python + pytest Когда я начинал изучать автоматизацию тестирования, не мог понять — “что такое Page Object и как его реализовать на Python + pytest?”. Штудируя интернет, нашел реализацию на других языках и фреймворках: обучающие статьи, которые были непонятны для меня. Поэтому решил написат...

Студия Happy Doze ищет бета-тестеров для динамичного мультиплеерного 2D-шутера mini PVP Осенью прошлого года на iOS вышел динамичный соревновательный платформер Planet Runners. У его разработчиков в портфолио есть еще один проект, BIT QUAKE, представляющий собой мультиплеерный шутер с видом сбоку. Анонсированная сегодня игра mini PVP – это смесь двух прошлых пр...

Proof of Concept: целесообразность внутреннего ML проекта Недавно в уютном чатике дата сатанистов подняли вопрос, как правильно "продавать" внутренние проекты по машинному обучению. Оказалось, что многие из нас весьма брезгливо относятся к экономическому обоснованию своей деятельности. Меж тем, чтобы провести минимальную оценку рен...

Когда из интернета будут делать «чебурнет»: обзор проекта Как вы помните, в начале мая 2019 года президент подписал закон «О суверенном интернете», который вступит в силу 1 ноября. Закон номинально призван обеспечить стабильную работу российского сегмента интернета при отключении от всемирной сети или скоординированных атак. А чт...

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

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

Информация о модульной Windows Core OS обнаружена в документе поддержки Microsoft На октябрьском мероприятии 2019 года Microsoft может анонсировать давно известное устройство с двумя экранами и облегченной Windows Core OS, специально разработанной для поддержки оборудования с двумя дисплеями.За последние несколько лет, особенно за последние несколько меся...

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