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

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

RequireJS для приложений Vue.js + Asp.NETCore + TypeScript Создаем на Visual Studio 2017 модульное приложение Vue.js + Asp.NETCore + TypeScript. В качестве системы сборки вместо Webpack используем компилятор TypeScript + Bundler&Minifier (расширение к VS2017). Загрузку модулей приложения в рантайм обеспечивает SystemJS или Requ...

18 правил идеального psd-макета — полезный чек-лист для дизайнеров Общий принцип — Не делай брак. Не бери брак. Не передавай брак. Тойота. Мы редко берём в разработку проекты с уже реализованным дизайном, но такое случается. Когда макеты создаются внутри студии, на любом проблемном этапе вёрстки разработчик может уточнить у менеджера прое...

[recovery mode] Интеграция 3CX с собственной CRM-системой: генератор шаблонов CRM Начиная с v15.5 SP2 в АТС 3CX появился механизм серверной CRM интеграции. Он позволяет передать входящий Caller ID в CRM-систему и найти в ней соответствующую запись о клиенте. При этом 3CX получает имя и фамилию клиента из CRM, добавляет их в корпоративную адресную книгу АТ...

Генерация кода во время работы приложения: реальные примеры и техники Генерация кода в рантайме — очень мощная и хорошо изученная техника, но многие разработчики все еще неохотно её используют. Обычно изучение Expression Trees начинают с какого-нибудь простого примера типа создания предиката (фильтра) или математического выражения. Но не Expre...

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

Погружение в шаблоны и приручение GPO Windows В очередной статье из цикла «конспект админа» мне хотелось бы освежить в памяти несколько нюансов использования групповых политик. Заодно поразвлекаемся с созданием своих шаблонов и с автоматизацией работы с этими самыми политиками. Читать дальше →

[recovery mode] Классическое наследование в JavaScript. Разбор реализации в Babel, BackboneJS и Ember В этой статье мы поговорим о классическом наследовании в JavaScript, распространённых шаблонах его использования, особенностях и частых ошибках применения. Рассмотрим примеры наследования в Babel, Backbone JS и Ember JS и попытаемся вывести из них ключевые принципы объектно-...

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

[Из песочницы] Настройка Sublime Text 3 для работы с VHDL файлами Работа с VHDL в Sublime Text 3 Редактор Sublime Text существенно экономит время при работе с vhdl и verilog файлами. Для тех, кто не работал с редакторами типа Sublime Text, Notepad++ и т.п. опишу основные полезные функции данных редакторов: множественное выделение/редакти...

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

[Из песочницы] Пишем Telegram-бота на Go для поиска в Википедии Содержание Создаем бота Пишем код Разворачиваем бота Заключение Сейчас очень популярен телеграм и написание ботов для него стало неким hello world наших дней, ввиду чего при мысли о том что можно написать сейчас, многие сразу же думают о написании телеграм бота. Будучи студ...

[Из песочницы] Гейм дизайн в жизнь. Пример разбора механики игры Доброго дня! Немного об авторе: меня зовут Мария, начинающий гейм дизайнер. С этой статьи начинаем цикл статей по применению теории гейм дизайна в жизни. В этой статье попытаемся разобрать механику игры на примере Northgard от студии Shiro Games (находящуюся на стадии ранн...

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

Учебник Thymeleaf: Глава 16. Кэш шаблонов Оглавление 16 Кэш шаблонов Thymeleaf работает благодаря набору парсеров для разметки и текста — который анализирует шаблоны в последовательности (открытый тег, текст, тег закрытия, комментарий и т. д.). И ряд процессоров по одному для каждого типа поведения, которые применя...

[Перевод] Использование ReSwift: написание приложения Memory Game Примечание. В этой статье используются Xcode 8 и Swift 3. По мере того, как размеры iOS приложений продолжают увеличиваться, паттерн MVC постепенно теряет свою роль как «подходящего» архитектурного решения. Для iOS разработчиков доступны более эффективные архитектурные п...

DoctrineSolrBundle — поиск по Doctrine entity на базе Solr в Symfony2 DoctrineSolrBundle Добрый день, хочу представить свой symfony 2 бандл для автоматической синхронизации Doctrine entity в Solr и последующим поиском. Бандл предназначен для работы с Solr на уровне Doctrine entity и позволяет избежать написания низкоуровневых запросов в solr. ...

[Из песочницы] GObject: основы GObject — часть библиотеки GLib, реализующая объекто-ориентированнные расширения для чистого Си. Подобная концепция, помимо самой GLib, используется в таких проектах, как GStreamer, GSettings, ATK, Pango и весь проект GNOME в целом, а также в большом количестве прикладных пр...

Vue.js + Asp.Net Core MVC + TypeScript и ещё Bootstrap4 По стандартному шаблону Asp.Net Core MVC в Visual Studio 2017 создаем новый проект, переводим его на четвертый Bootsrtrap, встраиваем туда модульное приложение Vue.js на TypeScript. Получаем простую, обозримую и легкую заготовку для создания своих веб-приложений на VS2017 с...

Учебник Thymeleaf: Глава 1. Знакомство Оглавление 1 Знакомство с Thymeleaf 1.1 Что такое Thymeleaf? Thymeleaf — современный серверный механизм Java-шаблонов для веб- и автономных сред, способный обрабатывать HTML, XML, JavaScript, CSS и даже простой текст. Основной целью Thymeleaf является создание элегантного ...

[Перевод] Ответы на распространённые вопросы о шаблоне render prop Кент С. Доддс, автор материала, перевод которого мы публикуем сегодня, говорит, что недавно группа программистов, с которыми он должен был провести тренинг по React, заинтересовалась шаблоном «render props», который ещё называют шаблоном «функция как потомок» (в разных публи...

[Перевод] Как легко начать писать на PowerShell или несложная автоматизация для управления Active Directory Изучить основы PowerShell Данная статья представляет собой текстовую версию урока из нашего бесплатного видеокурса PowerShell и Основы Active Directory (для получения полного доступа используйте секретное слово «blog»). Данный видеокурс оказался необычайно популярным по в...

Как победить рутину, или Готовое приложение в Xcode за пару кликов У каждого опытного разработчика есть набор инструментов, к которым он привык и с которыми ему удобно работать. Это может быть простейшая настройка окружения, утилиты для промежуточных операций (к примеру, помощник по тестированию API Postman), проверенные временем и лично ра...

Релиз Yii 2.0.15 и расширений баз данных с исправленными уязвимостями Сегодня мы выпускаем обновления Yii для нескольких последних версий 2.0.x и официальных расширений поддержки нереляционных баз данных для исправления найденных уязвимостей. Патчи исправляют проблему в методах слоя ActiveRecord: findOne() и findAll(), которые могут допустить ...

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

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

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

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

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

[Перевод] Элегантные паттерны современного JavaScript: Ice Factory Предлагаем вашему вниманию перевод очередного материала Билла Соро, который посвящён шаблонам проектирования в JavaScript. В прошлый раз мы рассказывали о паттерне RORO, а сегодня нашей темой будет шаблон Ice Factory. Если в двух словах, то этот шаблон представляет собой фун...

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

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

[recovery mode] Личный опыт работы с Firebase Cloud Firestore Всем привет! В последнее время все чаще использую Firebase в своих проектах: очень удобно обходится без фактического написания серверной части. Хочу поделиться небольшим опытом работы на стороне фронтенда. В данном случае это Angular, поэтому используется официальная библиот...

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

[Из песочницы] Spring Boot. Фоновые задачи и не только Введение В данном туториале я хочу привести пример приложения для отправки email-ов юзерам, основываясь на дате их рождения(например с поздравлениями), используя аннотацию Scheduled. Я решил привести данный пример, т к по моему мнению он включает в себя довольно многие вещи,...

[Перевод] Создание игры на Lua и LÖVE — 7 ОглавлениеОглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игро...

[Из песочницы] Выгрузка сообщений с использованием Telegram API. С чего начать На просторах интернета можно найти множество описаний и примеров по созданию telegram bot-ов.Но Telegram Bot Api имеет ограниченный функционал. Для решения задачи по выгрузке сообщений из Telegram по ключевому слову необходимо использовать Telegram API. За основу была взята ...

Компилятор на JavaScript с использованием ANTLR В начале этого года я присоединилась к команде, работающей над MongoDB Compass — графическим интерфейсом для MongoDB. Пользователи Compass через Intercom запросили инструмент, позволяющий писать запросы к базе данных, используя любой удобный им язык программирования, подд...

[Перевод] Воссоздание эффекта воды из Super Mario Sunshine для Nintendo GameCube Примечание: В оригинале статьи есть демо на WebGL2, которые в переводе заменены на видео и GIF. Одно из моих хобби — написание программ просмотра моделей и графических инструментов для игр. Это хорошее соединение интересных мне тем — графики, рендеринга, реверс-инжиниринга...

[Из песочницы] Blockchain на Go. Часть 4: Транзакции, часть 1 Привет, Habr! Представляю вашему вниманию перевод статьи "Building Blockchain in Go. Part 4: Transactions 1". Содержание Blockchain на Go. Часть 1: Прототип Blockchain на Go. Часть 2: Proof-of-Work Blockchain на Go. Часть 3: Постоянная память и интерфейс командной строки ...

[Перевод] Операторы ?., ?? и |>: будущие возможности JavaScript, которые вам понравятся Джастин Фуллер, автор материала, перевод которого мы сегодня публикуем, предлагает рассмотреть три новых возможности, появление которых ожидается в JavaScript в обозримом будущем. Сначала он расскажет о процессе развития JS, а после этого представит обзор этих возможностей и...

[Перевод] Реализация быстрых 2D-теней в Unity с помощью 1D shadow mapping Введение Недавно я приступил к реализации системы 2D-теней в Unity, которую можно было бы использовать в настоящей игре. Как известно профессиональным разработчикам, есть большая разница между тем, чего можно достичь в техническом демо и тем, что применимо для интеграции в ...

Android-приложение поверх других приложений В 2013-году Facebook выпустил функцию Chat Heads для своего мессенджера, который позволяет вести переписку, не открывая сам мессенджер путем нажатия на маленькое круглое окошко, которое всегда висит на дисплее даже поверх других приложений: Facebook одним из первых продемо...

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

[Из песочницы] Есть ли порох в пороховницах? Hackathon Radio Canada 2018 (Часть первая, собираем команду) В этой статье я хочу представиться, рассказать что толкнуло меня на участие, как я смог собрать команду, какие выводы для себя я вынес и просто поделиться своим опытом участия моем первом хакатоне. Извините коротко не получилось, текста много и не всё по теме. Надеюсь, э...

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

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

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

Преобразователи Time-To-Digital (TDC): что это такое и как они реализованы в FPGA На рисунке — первый в мире спутник квантовой связи «Мо-Цзы», который запустили из Китая в 2016 году, в нем летает TDC, реализованная в FPGA. Объяснить своей девушке (или парню), что такое ADC и DAC, и в каких домашних приборах они используются, может каждый человек, называ...

[Перевод] Node.js + face-recognition.js: простое и надёжное распознавание лиц с помощью глубокого обучения Перевод статьи Node.js + face-recognition.js: Simple and Robust Face Recognition using Deep Learning. В этой статье мы расскажем, как реализовать надёжную систему распознавания лиц с использованием face-recognition.js. Мы искали подходящую Node.js-библиотеку, которая умел...

Чем Google заменит SMS? Существует немало приложений для текстового общения — мессенджеров. И тем не менее в качестве стандартного инструмента для текстовых сообщений в развиваемой компанией Google операционной системе Android до сих пор используются SMS. Уже довольно скоро может появиться ...

Универсальные приложения React + Express В прошлой статье рассматривалась библиотека Next.js, которая позволяет разрабатывать универсальные приложения «из коробки». В обсуждении статьи были озвучены существенные недостатки этой библиотеки. Судя по тому, что https://github.com/zeit/next.js/issues/88 бурно обсуждаетс...

Google представила на MWC 2018 проект Flutter для разработчиков мобильных приложений Отличная новость для разработчиков мобильных приложений: на выставке MWC 2018 компания Google анонсировала бета-версию Flutter – это новый фреймворк, который помогает разработчикам в создании высококачественного графического интерфейса приложений сразу для двух наиболе...

[Перевод] Туториал по Unreal Engine: Cel Shading Благодаря физически точному рендерингу в Unreal Engine 4 удобно разрабатывать реалистичные игры. Модель рендеринга имитирует взаимодействие света с материалами, что приводит к созданию реалистичной картинки. Однако если вы хотите разработать игру со стилизованным внешним ви...

[Из песочницы] ECO Flow в Vivado или работа в режиме редактирования нетлиста Аннотация В статье рассмотрен режим работы Vivado, позволяющий вносить изменения в проект на уровне редактирования списка соединений (в дальнейшем – нетлиста). Описаны как сам режим ECO, так и некоторые нюансы, которые появляются во время работы в нём. Приведён демонстрацион...

[Из песочницы] Какие привычки делают меня лучше как разработчика ПО? Привет, Хабр! Представляю вашему вниманию перевод статьи «What habits made me a better Software Engineer?» от Sonny Recio. Наши привычки — это ежедневные шаблоны поведения в жизни. Они могут быть как плохими, так и хорошими. Привычки могут быть жизненно необходимыми, наприм...

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

[Из песочницы] Android Lifecycle-aware Architecture Components 6 ноября 2017 года компания Google опубликовала информацию об анонсе стабильной версии архитектурных компонентов. Разработчики Google предоставили руководство по архитектуре приложений и представили ряд классов и интерфейсов, которые упрощают создание приложений с выстрое...

[Перевод] Dependency injection От переводчика Представляемый вашему вниманию перевод открывает серию статей от Jakob Jenkov, посвященных внедрению зависимостей, или DI. Примечательна серия тем, что в ней автор, анализируя понятия и практическое применение таких понятий как «зависимость», «внедрение зависи...

Операционные системы с нуля; Уровень 1 (младшая половина) Эта часть посвящена улучшению навыков работы с Rust и написанию парочки полезных утилиток и библиотек. Напишем драйверы для GPIO, UART и встроенного таймера. Реализуем протокол XMODEM. Используя это всё, напишем простенький шелл и загрузчик. Перед прочтением настоятельно ре...

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

Юнит тесты при использовании корутин в Android приложении Перевод статьи. Оригинал находиться здесь. В этой статье не рассматривается принцип работы корутин. Если вы не знакомы с ними, то рекомендуем прочитать введение в kotlinx git repo. Статья описывает трудности при написании юнит тестов для кода, использующего корутины. В конц...

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

[Перевод] Погружение в службы Android Перевод статьи "Deep Dive into Android Services" от Nazmul Idris. Я оставил оригинальное название автора, хотя это скорее не "погружение", а "знакомство". Думаю, текст будет полезен начинающим разработчикам. Статья отлично дополняет офф. документацию по службам на Android. ...

[Перевод] Упрощение кода с помощью if constexpr в C++17 Несколько новых возможностей C++17 позволяют написать более компактный и ясный код. Это особенно важно при шаблонном мета-программировании, результат которого часто выглядит жутко… Например если вы хотите выразить if, который вычисляется во время компиляции, вы будете вынужд...

[Из песочницы] Angular 5: Unit тесты С помощью unit тестов мы можем удостовериться, что отдельные части приложения работают именно так, как мы от них ожидаем. Это в некоторой степени спасает от поломок существующий код, помогает прояснить — как он будет работать в тех или иных случаях. И, в конце концов, позв...

Amazon Lambda with Golang В середине января этого года Амазон анонсировал поддержку Go в своих лямбдах. Отличная новость, но сейчас я пишу эти строки не имея никакого опыта написания кода на Golang, чтобы, проходя через пеньки и ухабы, параллельно с написанием статьи, прийти к первой своей работающей...

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

Расширяем функционал Ansible с помощью модулей Под капотом сервиса d2c.io мы активно используем Ansible – от создания виртуальных машин в облаках провайдеров и установки необходимого программного обеспечения, до управления Docker-контейнерами с приложениями клиентов. В статье о раширении функциональности Ansible мы част...

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

Учебник Thymeleaf: Глава 15. Подробнее о конфигурации Оглавление 15 Подробнее о конфигурации 15.1 Resolver шаблонов Для нашего виртуального бакалейного магазина Thymes мы выбрали реализацию ITemplateResolver под названием ServletContextTemplateResolver, которая позволила получить шаблоны в качестве ресурсов из контекста сервле...

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

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

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

Управляем состоянием приложения без шаблонного кода и магии Хочу поделиться с сообществом своей реализацией концепции flux как единого источника данных и видением построения веб-приложений. Мотивом к созданию своего решения послужило желание избавиться от большого количества шаблонного кода и сделать взаимодействие с источником дан...

Разработка драйвера PCI устройства под Linux В данной статье я рассматриваю процесс написания простого драйвера PCI устройства под OC Linux. Будет кратко изучено устройство программной модели PCI, написание собственно драйвера, тестовой пользовательской программы и запуск всей этой системы. В качестве подопытного вы...

Учебник Thymeleaf: Глава 8. Макет шаблона Оглавление 8 Макет шаблона / Template Layout 8.1 Включение фрагментов шаблонов Определение и ссылка на фрагменты В шаблоны мы часто включаем фрагменты из других шаблонов, такие как подвал, заголовок, меню… Читать дальше →

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

Biostar раскрыла характеристики своей платы на чипсете Z390 Одним из самых ожидаемых релизов этого года является выход восьмиядерных процессоров Intel Core для платформы LGA1151. Компанию им составят материнские платы на новом чипсете Z390, правда, пока не ясно, будет ли покупка таких плат обязательным условием для работы в ...

[Перевод] Элегантные паттерны современного JavaScript: RORO Автор материала, перевод которого мы публикуем сегодня, Билл Соро, говорит, что написал первые строки кода на JavaScript вскоре после появления этого языка. По его словам, если тогда ему сказали бы, что однажды он выпустит серию статей об элегантных шаблонах проектирования в...

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

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

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

Cluster of Puppets: опыт использования Amazon ECS в iFunny Несмотря на название, эта статья не имеет ничего общего с системой управления конфигурацией Puppet. Вместе с трендом «распила» больших монолитов на небольшие микросервисы в эксплуатацию веб-приложений пришёл тренд на оркестрацию контейнеров. Сразу после хайпа на Docker подн...

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

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

pdbe — помощник встроенного Python-дебаггера и процесса отладки Привет, Хабрахабр! В этой статье буду делиться собственным опытом отладки большой незнакомой системы, но со стороны собственно написанного инструмента — pdbe. Он поможет с самого начала проекта разобраться в потоке выполнения кода в проекте. Если вам интересно, что спрятано...

[Из песочницы] Описание прототипа моего игрового мультиплейерного сервера Привет, Хабр. Рад представить свою первую статью: описание прототипа игрового мультиплейерного сервера. → Исходный код (под лицензией Apache 2.0) Содержание: Архитектура обработки входящих запросов Краткое описание прочих моментов Модули и взаимодействия основных классо...

[Перевод] Введение в модули Angular — корневой модуль (Root Module) Прим. перев.: для понимания данной статьи необходимо обладать начальными знаниями Angular: что такое компоненты, как создать простейшее SPA приложение и т.д. Если Вы не знакомы с данной темой, то рекомендую для начала ознакомиться с примером создания SPA приложения из оф. до...

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

[Из песочницы] Amazon S3 + 1С. Часть 1. Интерфейс Всем привет, с вами Низамов Илья и сегодня я начинаю цикл статей по написанию обработки взаимодействия с облаком Amazon s3 из 1С. Обработка Amazon s3 позволяет получат список файлов по фильтру, скачать необходимые файлы с Amazon s3 используя amazon s3 api, отправлять фай...

Как поймать педофила? Интернет чаты предлагают как много свобод, так и таят опасности. Новый алгоритм призван помочь в ловле педофилов. Известный как инструмент анализа чата (CATT), алгоритм был создан командой из Университета Пердью из Индианы. Возглавляла исследование доцент Кэтрин Сеигфрид-Сп...

Пишем простой плагин для VirtualDub Несмотря на то что обработка видео не спеша переезжает на OpenCL / CUDA VirtualDub остается удобным средством для простых действий с видео. Обрезка кадра, добавление фильтров или наложение выполняется гораздо удобнее чем из консоли ffmpeg. Кроме того за годы существования бы...

Ульяновским активистам представили конструктор сайтов «Кандинский» 27 января 2018 года в Ульяновске прошла презентация проекта «Кандинский». Участники узнали об основных преимуществах и возможностях бесплатного конструктора сайтов. О проекте «Кандинский» Конструктор сайтов «Кандинский» работает на базе WordPress. Цель пр...

Учебник Thymeleaf: Глава 2. Хорошая виртуальная бакалейная лавка Thymes Оглавление 2 Хорошая виртуальная бакалейная лавка Thymes Исходный код примеров, показанных в этом и будущих главах руководства, можно найти в репозитории Good Thymes Virtual Grocery GitHub https://github.com/thymeleaf/thymeleafexamples-gtvg. 2.1 Вебсайт для бакалейной лавк...

Canva 1.0.3 Благодаря Canva создание дизайнов становится невероятно легким 🙌 (и веселым). Без труда создавайте красивые дизайны для работы, учебы и развлечений вместе с Canva — без специального обучения или ПО. Хотите сделать запись в Instagram или заголовок в Facebook? Ище...

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

[Перевод] Обзор новшеств ECMAScript 2016, 2017, и 2018 с примерами Сложно уследить за новшествами различных версий ECMAScript, а ещё сложнее — найти полезные примеры их применения, не перекапывая горы информации. Поэтому сегодня мы публикуем перевод материала, автор которого проанализировал 18 новых возможностей ECMAScript, в число которых ...

[Перевод] Операционная система на Rust: минимальный multiboot загрузчик Эта статья объясняет как создать минимальное ядро операционной системы, используя стандарт мультизагрузки. По факту, оно будет просто загружаться и печатать OK на экране. В последующих статьях мы расширим его, используя язык программирования Rust. Я попытался объяснить всё ...

[Из песочницы] Система вызова смарт-контрактов в блокчейне Ethereum Задача Часто разработчики смарт контрактов под Ethereum сталкиваются с, казалось бы, простой проблемой — вызов кода смарт-контракта в будущем или по расписанию. Но подходящего решения нет, и приходится разрабатывать отдельный сервис для вызова контрактов. Разрабатывая конт...

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

[Из песочницы] Учимся быть фуллстек разработчиками. Пишем приложение на React/Redux/Webpack/ASP.NET Core 2.0/EF Core Ни для кого не секрет, что .net сейчас используется в большинстве случаев как инструмент бэкенд разработки, а в клиентской разработке последние лет 5 правит js сообщество с своей экосистемой и инструментами для разработки. Это все безобразие с каждым годом усиливает пропасть...

Библиотека Постапокалипсиса Описание Мобильное приложение «Библиотека Постапокалипсиса» – это интерактивная библиотека, которая полностью посвящена тематике Постапокалипсиса. Особенности: — Проработанный под тематику и одновременно предельно доступный пользовательски...

Chrome OS становится ближе к Android, и наоборот В ближайшее время может появиться планшет Acer на базе Chrome OS. Таким образом, данная ОС впервые будет официально установлена в устройстве, форм-фактор которого является типичным для Android. Кроме того, уже скоро Chrome OS может получить обновление, которое позволит ему б...

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

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

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

Advanced Android Testing Тестирование — одна из важнейших частей разработки качественных программных продуктов. Сегодня мы поговорим о некоторых методологиях и библиотеках, разработанных и используемых нашей командой для написания тестов Android приложений. Начнем с самых базовых вещей, потому боле...

Обучение программированию на Python За 25 лет развития Python показал себя как язык-универсал: на нем пишут бизнес-приложения и веб-сервисы. Основной код игр World of Tanks, Battlefield 2 и Civilization 4 написан на Питоне. Intel, Cisco и HP используют его, что...

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

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

22 полезных расширения для начинающего программиста Расширения для Chrome и Visual Studio Code, которые облегчат многие задачи при написании кода и сэкономят ваше время.

TP-Link T2600G-28MPS: работа с PoE, LLDP и Voice VLAN Около полугода назад мы опубликовали пример построения Wi-Fi сети на базе нашего беспроводного оборудования: точек доступа и контроллера. Сегодня расскажем в деталях о коммутаторе T2600G-28MPS уровня 2+, который может использоваться для построения проводных сегментов сети, о...

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

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

Выставка картин «К России с любовью» открылась в Вашингтоне 20 апреля в Вашингтоне состоялась картинная выставка под названием «К России с любовью», инициированная российским Культурным центром. Посетители выставки могли посмотреть картины, написанные Викторией и Юрием Бондаренко. Картинная выставка, получившая название «К России с...

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

Джейлбрейк: стоит ли оно того? Инструкция для iOS 10/11 Изначально при установке оригинальной прошивки у пользователя нет возможности редактировать важные системные файлы, и именно это делает iOS такой безопасной. Однако из-за этого теряется возможность полностью настроить устройство «под себя». Сделать систему открытой позволя...

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

[Из песочницы] Асинхронная работа с PostgreSQL в C Сегодня захотелось написать небольшую заметку об асинхронной работе с PostgreSQL в C. Мотивы просты: для небольшой утилитки встала необходимость реализовать такой функционал, гугл на тему понятных и рабочих примеров предательски молчал (нашелся только пример в pqxx для C++ —...

[Перевод] Создание игры на Lua и LÖVE — 5 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игровой цикл Ч...

Google и 3M присоединились к разработке общего стандарта для стилусов USI “Смиренное перо не мертво”, по крайней мере стилус – точно, хотя его неоднократно пытались “похоронить”. Поскольку стилусы занимают значительную часть рынка мобильных аксессуаров, компаниями Google и 3M было принято решение присоединиться к Univ...

[Перевод] ES6: полезные советы и неочевидные приёмы Стандарт EcmaScript 2015 (ES6) существует уже несколько лет. Он принёс с собой множество новых возможностей, разные способы использования которых далеко не всегда очевидны. Вот обзор некоторых из этих возможностей с примерами и комментариями. Читать дальше →

7 расширений (Chrome, Safari, Firefox) для Gmail, которые помогут упростить работу с e-mail почтой Gmail – один из наиболее популярных почтовых сервисов, предлагающий большое количество различных функций, в том числе возможность блокировки спама и создания адресной книги. Существует немало расширений для выполнения задач, связанных с электронной почтой, которые помогут сэ...

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

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

[Перевод] Пять причин проникнуться симпатией к Flutter На конференции Google I/O ’17 Google представила Flutter — новую опенсорсную библиотеку, предназначенную для создания мобильных приложений. Как вы, возможно, знаете, Flutter — это решение для разработки кросс-платформенных мобильных приложений с симпатичным пользовательским...

Несколько советов по организации Python-приложения на сервере В этой статье я хочу поделиться несколькими удобными способами организации вашего проекта на рабочем (даже продакшен) сервере. Я работаю, в основном, с Python/Django стеком, поэтому все примеры будут, в первую очередь, применительно к этому набору. Также ключевые технологии...

Релиз CLion 2018.1: новые возможности из С++17, поддержка WSL, CMake Install, плагин для Rust и многое другое Привет, Хабр! Вот и подоспел первый релиз CLion в этом году — 2018.1! В этом посте мы расскажем, что мы успели реализовать за эти месяцы и какие планы у нас на следующий релиз. Cначала очень коротко о главном. В этот релиз вошли: Поддержка языка C++ Поддержка возможн...

[Перевод] Создание игры на Lua и LÖVE — 4 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игровой цикл Ч...

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

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

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

Баг в WordPress помогает положить сайт Израильский исследователь Барак Тавили (Barak Tawily), известный в Сети как Quitten, обнаружил в WordPress незакрытую уязвимость, позволяющую без особого труда вызвать отказ в обслуживании на сервере. По словам автора находки, данная брешь (CVE-2018-6389) актуальна почти для...

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

[Перевод] Создание игры на Lua и LÖVE — 6 ОглавлениеОглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игро...

Гибкий сетевой слой в iOS-приложении Практически любое мобильное приложение взаимодействует с серверами через их API. Перед разработчиком в таком случае стоит задача реализовать сетевой слой своего приложения. Провайдеры того или иного API разрабатывают его интерфейс, зачастую, одинаково, но бывает и так, что A...

[Перевод] Иллюстрированное руководство по устройству сети в Kubernetes Прим. перев.: Автор статьи — Amanpreet Singh — называет себя «всё ещё начинающим в мире сетей», однако именно это и побудило его разобраться в их базовом устройстве в Kubernetes (который он использует в production), а затем — поделиться с сообществом очень доступным материал...

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

[Из песочницы] Написание Telegram-бота для Habrahabr В этой статье я хочу рассказать о том, как происходило написание Telegram-бота, который мог бы отправлять статьи Habrahabr, сначала на Python, а потом и на Go, и что из этого вышло. Читать дальше →

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

[Перевод] Разработка игр под NES на C. Главы 14-16. Работа со звуком В этой части базовая информация о работе со звуком. Звуковая подсистема NES весьма низкоуровневая, ее описание весьма запутано и использует специфическую терминологию, так что описание местами может быть не очень внятное. Источник Начало работы со звуком Обзор инструментов,...

Связка Apache PHP MySQL в Solaris 11.3 При первом знакомстве с Solaris единственным для меня недостатком был тот факт, что пакеты которые возможно установить являются довольно устарелыми, но к счастью актуальные версии можно собрать из исходного кода. В данной публикации пойдёт речь о сборке apache и php из исход...

[Перевод] Эксперимент с бинарным кодом в Glimmer Перевод статьи об эксперименте с бинарным кодом в Glimmer, соавторы публикации: Сара Клаттербак, Чад Хиетала и Том Дейл. Чуть более года назад Ember.js претерпел значительные изменения. В тесном сотрудничестве между инженерами LinkedIn и Open Source сообществом, мы заменили...

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

Mozilla разработала открытый шлюз для Интернета вещей Apple, Google, Amazon, Samsung — у каждой из этих компаний собственные стандарты и программы для управления «умными» устройствами собственной марки. В результате они зачастую могут общаться только со своими «родственниками» производства той же фирмы. Смарт-колонка Apple Ho...

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

[Перевод] Предсказание случайных чисел в умных контрактах Ethereum Ethereum приобрёл огромную популярность как платформа для первичного размещения монет (ICO). Однако она используется не только для токенов ERC20. Рулетки, лотереи и карточные игры — всё это можно реализовать на блокчейне Ethereum. Как любая реализация, блокчейн Ethereum не...

[Из песочницы] Деньги & Дизайн. Как заработать больше 200.000 ₽, если ты работаешь один Умение зарабатывать – это навык, а не показатель исключительности. А любой навык тренируется. Например, некоторые панически боятся выступать, и им приходится перебарывать себя, если того требуют профессиональные обязанности. Но работа не требует от вас зарабатывать больше,...

[Из песочницы] Управление интровертами интровертом или опыт руководства техническими командами Для начала об авторе – я более 20 лет проработал в ИТ в трех компаниях: EMC, IBM, Sun (в алфавитном порядке). Начинал как системный инженер сразу после университета, потом был старшим инженером, техническим консультантом, руководителем технических консультантов и, наконец, т...

Google создаст свой iMessage и откажется от Allo С тех пор, как компания Apple запустила iMessage на iOS, Google всячески пытается придумать что-нибудь подобное. У поискового гиганта за добрый десяток лет уже накопилось несколько сервисов для обмена сообщениями, но ни один из них по своим возможностям не сравнится с прилож...

[Перевод] Архитектура приложения Angular. Используем NgModules Прим. перев.: для понимания данной статьи необходимо обладать начальными знаниями Angular: что такое компоненты, как создать простейшее SPA приложение и т.д. Если Вы не знакомы с данной темой, то рекомендую для начала ознакомиться с примером создания SPA приложения из оф. до...

[Из песочницы] Почему ранний возврат из функций так важен? Привет, Хабр! Представляю вашему вниманию перевод статьи «Why should you return early?» автора Szymon Krajewski В начале моего приключения в роли программиста мой код зачастую напоминал вермишель. В любых условных выражениях я только и делал, что сразу переходил к описани...

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

[Перевод] Разработка игр под NES на C. Главы 7-10. Работа с джойстиком. Коллизии спрайтов Плавно движемся к написанию игры. В этой части описана работа с джойстиками и коллизиями спрайтов. <<< предыдущая следующая >>> Источник Пользовательский ввод Работа с джойстиками довольно простая. Нажатия кнопок первого джойстика читаются по адресу $4016,...

Три аспекта оптимизации (БД и ПО) Предисловие Довольно часто пользователи, разработчики, администраторы и т д СУБД MS SQL Server встречаются с проблемами производительности БД или СУБД в целом. В данной статье будут даны общие рекомендации по настройке оптимизации как БД, так и всей СУБД в целом. Также буду...

Diasoft Database Adapter адаптирует приложения на СУБД Oracle или MS SQL к PostgreSQL без изменения их исходного кода Описание Диасофт (Diasoft) Database Adapter – программный транслятор, позволяющий информационным системам работать на разных СУБД. С помощью данного решения можно адаптировать приложения, созданные в расчете на использование Oracle database или Microsoft SQL Server, к рабо...

Oppo A1 с функцией Face Unlock и ценником в 220 долларов Компания Oppo анонсировала выход своего нового смартфона среднего класса под названием A1, старт продаж которого запланирован на 1 апреля 2018 года с ценников в 220 долларов. По свежей информации, новинка будет доступна в цветовых схемах: Blue, White и Red, а работать она бу...

Пишем собственный хитрый thread_pool-диспетчер для SObjectizer-а О чем эта статья? Одной из основных отличительных черт C++ного фреймворка SObjectizer является наличие диспетчеров. Диспетчеры определяют где и как акторы (агенты в терминологии SObjectizer-а) будут обрабатывать свои события: на отдельной нити, на пуле рабочих нитей, на одно...

Как мы общаемся с React-компонентам при помощи декораторов в TypeScript При разработке приложений на React довольно неудобно создавать независимые друг от друга компоненты, т.к. стандартным способом для обмена данными между ними является "Lifting State Up". Этот подход постепенно загрязняет ненужными свойствами промежуточные компоненты, делая их...

[Из песочницы] Паттерны проектирования в Cocos2d-x Привет, Хабр! Представляю вашем вниманию перевод статьи "Design Patterns in Cocos2d-x" автора Aleksei Pinchuk. Статья будет интересна для разработчиков Cocos2d-x и тех, кто изучает паттерны. Она выполнена в форме краткого конспекта, в котором можно быстро посмотреть где при...

Погружение в разработку на Ethereum. Часть 4: деплой и дебаг в truffle, ganache, infura В прошлой статье мы рассмотрели разработанное приложение на Ethereum. Но обошли стороной вопрос как происходит процесс разработки. Ясно, что это не просто написание кода, который сразу работает. Большую часть времени придется потратить на то, чтобы доводить код, который “поч...

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

Расширение и использование Linux Crypto API [0] Интро Криптографический API в Linux введён с версии 2.5.45 ядра. С тех пор Crypto API оброс всеми популярными (и не только) международными стандартами: симметричного шифрования: AES, Blowfish, ... хэширования: SHA1/256/512, MD5, ... имитозащиты: hMAC-SHA1/256/512, hMAC-...

Google leanback — забота большого брата Добрый день, читатели Хабра. Хотел бы поделиться своим опытом разработки приложения для Android TV на примере DetailsFragment. Есть официальные примеры тут и официальная документация тут. Что сподвигло меня выразить свое мнение? Это то, что официальные примеры не отвечают...

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

[Из песочницы] Qt: Пишем обобщенную модель для QML ListView Кому-то материал этой статьи покажется слишком простым, кому-то бесполезным, но я уверен, что новичкам в Qt и QML, которые впервые сталкиваются с необходимостью создания моделей для ListView, это будет полезно как минимум как альтернативное*, быстрое и довольно эффективное р...

[Перевод - recovery mode ] Hyperapp + Parcel В данном посте, мы рассмотрим два новых инструмента из мира фронт-енд разработки. Они оба разработаны с мыслью о простоте и легкости использования. Первый инструмент это очень маленький фронт-енд фреймворк Hyperapp, а второй это бандлер Parcel. Вместе они могут быть лучшим в...

Тысячи АЗС по всему миру оказались уязвимыми Существенную дыру в безопасности системы для управления автозаправочными станциями обнаружили израильские специалисты по кибербезопасности. Идо Наор (Ido Naor) и Амихай Нейдерман (Amihai Neiderman) проанализировали исходный код программного обеспечения SiteOmat и нашли в нем...

[Перевод] Сравнение Draft, Gitkube, Helm, Ksonnet, Metaparticle и Skaffold В последнее время Kubernetes пользуется большой популярностью, и разработчики ищут дополнительные способы и методы для развёртывания приложений в кластере этой системы. Даже командная строка kubectl стала восприниматься как инструмент низкого уровня, при этом пользователи п...

Запуск приложений с блокчейн на SAP Cloud Platform SAP Cloud Platform — это облачная платформа, которая работает по модели PaaS или платформа-как-сервис (Platform as a Service). С её помощью компании могут разрабатывать собственные приложения, расширения или дополнения для уже существующих продуктов SAP или же создавать гибр...

[Перевод] Разбираемся в redux-saga: От генераторов действий к сагам Любой redux разработчик расскажет вам, что одной из самых тяжелейших частей разработки приложений являются асинхронные вызовы — как вы будете обрабатывать реквесты, таймауты и другие коллбэки без усложнения redux действий(actions) и редьюсеров(reducers) В этой статье я опи...

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

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

[Перевод] Immer: новый подход к иммутабельности в JavaScript Иммутабельные структуры данных, реализующие методику совместного использования неизменяемых фрагментов информации (structural sharing), выглядят как отличная технология для хранения состояния приложения. Особенно — в комбинации с архитектурой, основанной на событиях. Однако ...

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

Простой статический сайт на Webpack 4 После прочтения ряда статей (например, этой) решил перейти на современный подход с использованием Node.js при написании простых сайтов с подхода «динозавров». Ниже представлен разбор примера сборки простого статического сайта с помощью Webpack 4. Статья написана, так как ин...

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

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

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

Полезное дизайнеру / разработчику. Свежие утилиты и инструменты для ускорения работы. Выпуск № 9 Пока дизайнеры продолжают испытывать восторг от появления возможности прототипирования в двух известных инструментах, анонсированных в один день; мир независимых разработчиков продолжает выпускать всякие нужные инструменты. В 9-м выпуске 21 ссылка Читать дальше →

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

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

Использование rrd4j для OpenHab2 persistence OpenHab – популярный сервер «умного дома» (или IoT, как сейчас модно говорить) и уже обозревался на Хабре. Тем не менее, документации по отдельным аспектам настройки сервера не так много, как хотелось бы. А на русском её, считай что и нет. Важной особенностью OpenHab являет...

Переводчик для браузера: 5 лучших Chrome-расширений для быстрого перевода Очень часто интенет-пользователи сталкиваются с ситуациями, когда необходимо перевести неизвестное слово или отрывок текста. Предлагаем вашему вниманию пять полезных расширений Google Chrome, предназначенных именно для этих целей.   LinguaLeo English Translator Расширен...

Android P, первое знакомство Новая мобильная операционная система будет поддерживать экраны с вырезом и сможет определять местоположение устройства внутри помещения. Выпущена первая предварительная версия Android P для разработчиков, в которой компания Google продемонстрировала очередной этап своего ...

«CI плохо справляются с требованиями мобильной разработки»: интервью с создателем fastlane Феликсом Краузе Многие мобильные разработчики любят инструмент fastlane, автоматизирующий задачи при выпуске приложения (генерацию скриншотов, code signing в случае с iOS, деплой в магазин или в систему бета-тестирования). Долгое время fastlane можно было использовать только на macOS, но ...

Графическая библиотека Vulkan 1.1 доступна для разработчиков в Android P В новой версии Android P для разработчиков станет доступна графическая библиотека Vulkan 1.1, в ней сильно оптимизирована и переработана работа с 2D и 3D графикой. Пользователи смогут почуствовать на себе все преимущества новой библиотеки, как только разработчики игр выпуст...

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

tdlib-ruby: как сделать Telegram-клиент на Ruby Одна из особенностей мессенджера Telegram — широкие возможности API (Bot API и Telegram API). Команда Telegram пошла ещё дальше и выпустила библиотеку TDLib (Telegram Database Library), позволяющую разрабатывать альтернативные клиенты Telegram и не задумываться о низкоуровн...

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

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

Office 365. Пример работы с Microsoft Graph API в Angular5 с помощью ADAL JS. ADAL JS vs MSAL JS В прошлый раз мы обсудили механизм авторизации для работы с Office 365 API (в частности с Microsoft Graph API): при каждом вызове API нужно передать token. Token имеет ограниченный срок жизни token выдает сервис Microsoft, так называемый “Azure AD Authorization Endpoint” п...

Смартфон MIG C55V выходит на российский рынок Мобильный комплекс MIG C55V состоит из двух компонентов – корпоративного смартфона и выносной камеры с высоким разрешением. Смартфон MIG C55V соответствует требованиям защищенности класса IP67. Камера так же MIG C55V имеет высокую степени защиты и заключена в корпус ...

[Из песочницы] Операция «Ы» и новая библиотека ABI Рад приветствовать тебя, дорогой читатель! В данной статье пойдет речь о новой библиотеке «ABI Model Pattern». Наверное, было бы логично предоставить какой-то пример, чтобы показать все возможности этой библиотеки, но вот и нетушки… Сейчас я опишу только достаточный минимум...

Изучаем и реализуем алгоритм работы правильного observer паттерна для react компонентов Итак продолжаем развивать observer-паттерн. В предыдущей статье от старого и очень простого паттерна "observer" маленькими шагами мы пришли к mobx и написали его мини-версию. В этой статье мы напишем полноценную версию mobx которая реализует алгоритм обновления зависимостей...

Создаем TUI на python Привет, Хабр! В этой статье я расскажу про npyscreen — библиотеке для создания текстовых интерфейсов для терминальных и консольных приложений. Читать дальше →

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

Как мы в Smart Engines учили Sailfish OS распознаванию Всем привет! Как вы уже знаете по нашим статьям, мы в Smart Engines занимаемся распознаванием, причем распознавать мы стараемся на чем угодно и в любых условиях. Мы поддерживаем все популярные операционные системы: iOS, Android, Windows, Linux, MacOS, Solaris. Поддерживаем ...

[Перевод] Неявность Часто, когда я обсуждаю дизайн Rust на RFCs или на internals-форуме с другими пользователями, я замечаю характерные высказывания насчет явности. Обычно что-то в духе: Мне не нравится <дизайн возможности X>, потому что он менее явный. Всякая магия уместна в <другом я...

[Перевод] Руководство по фоновой работе в Android. Часть 4: RxJava Обработка событий — это цикл. В прошлой части мы говорили об использовании thread pool executors для фоновой работы в Android. Проблема этого подхода оказалась в том, что отправляющий события знает, как должен быть обработан результат. Посмотрим теперь, что предлагает RxJ...

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

[Перевод] Изучаем KTX для Android Привет, «Хабр»! Прошло почти 9 месяцев с тех пор, как на Google I/O 2017 компания Google анонсировала Kotlin в качестве официального языка разработки под Android. Кто-то использует его как основной инструмент намного дольше, учитывая, что на нём можно было писать уже с серед...

[Из песочницы] NRF51822: дружим BLE и RTOS Современные тенденции в технике идут по пути все большей интеграции – прогресс позволяет делать процесс разработки электронных устройств все больше похожим на сборку конструктора. Одним из наиболее ярких примеров является огромное количество так называемых «систем на чипе»...

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

[Перевод] Разработка статического блога на Gatsby и Strapi Статические веб-сайты содержат страницы с неизменным содержимым. Технически — это набор HTML-файлов, которые, для каждого посетителя сайта, выглядят одинаково. В отличие от динамических веб-сайтов, для разработки таких сайтов не нужно серверное программирование или базы данн...

Lenovo представила новые ноутбуки-трансформеры YOGA на MWC 2018 и не только… На выставке MWC 2018 компания Lenovo представила свою стратегию, направленную на развитие «дополненного интеллекта» (Augmented Intelligence). Представленные разработки на базе технологий дополненной и виртуальной реальности и голосового управления включают ряд устройств, от ...

Honor 9 Lite официально поступит в продажу в России 8 февраля Бренд Honor, который является дочерним предприятием компании Huawei, официально представил на российском рынке свой новый аппарат под названием Honor 9 Lite, основной изюминкой которого является не только дисплей с соотношением сторон 18:9, но и наличие на борту сразу четыре...

[Из песочницы] FastReport.Mono. Часть 1: Запуск демонстрационного Web-отчета В связи с тем, что официальная документация FastReport.Mono устарела, и даже не понятно к какой версии дистрибутива Debian она относится (могу предположить, что к 6 или младше), решил написать более-менее вменяемую инструкцию по установке демонстрационного Web-интерфейса для...

Дизайнер и фанат видеоигр из Швеции создал кастомный ретрокомпьютер Шведский дизайнер Лав Хюльтен (Love Hultèn) известен своими ретрофутуристичными игровыми автоматами и консолями, которые он создаёт по собственным чертежам для себя и под заказ. Вдохновляясь классическими формами ретрокомпьютеров, кабинетов и домашних игровых систем 70-80-...

[Перевод] Как работает JS: веб push-уведомления Сегодня публикуем перевод девятой части серии статей, посвящённых применению веб-технологий и JavaScript. В этом материале мы исследуем веб push-уведомления. А именно, поговорим о механизмах, лежащих в их основе, и о том, как осуществляется подписка на уведомления, как устро...

Microsoft открыла свой инструмент оптимизации 3D-файлов для промышленного сектора В прошлом году Microsoft приобрела стартап Simplygon, которому принадлежит инструмент для оптимизации обработки 3D-объектов. Продуктом Simplygon чаще всего пользуются создатели игр дополненной и виртуальной реальности. С помощью Simplygon Studios разработчики упроща...

Grammarly залатала брешь в расширении для Chrome и Firefox Компания Grammarly исправила ошибку в расширении для браузера Chrome, через которую веб-сайты могли получать его токены авторизации. Это, в свою очередь, давало сайтам возможность просматривать документы, имеющиеся в учетных записях пользователей, от их имени. «Я считаю...

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

Управление трафиком с использованием Fiddler Автор: Ольга Еременко, QA Engineer При тестировании сайтов или мобильных приложений иногда возникает необходимость не только отловить трафик между клиентом и сервером, но и модифицировать его, чтобы посмотреть, как это обработает бэкенд и что поменяется на UI. В таких сл...

Жители Сан-Франциско смогут использовать приложение Uber для аренды велосипедов Разработчики Uber Technology Inc. анонсировали расширение функциональности собственного мобильного приложения за счет добавления возможности аренды велосипедов.

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

Детект песочницы. Учимся определять, работает ли приложение в sandbox-изоляции Для подписчиковОпределение факта изоляции программы — полезный навык, который помогает и разработчикам защит, и вирмейкерам: если программа работает в изолированной среде, это может означать, что она изолирована защитными средствами либо ее поведение хотят исследовать реверс...

Google намерена унифицировать приложения для iOS и Android Google начинает бета-тестирование фреймворка Flutter, который позволит разработчикам создавать универсальные приложения для Android и iOS. Об этом пишет TechCrunch со ссылкой на официальных представителей компании. По их словам, новейший продукт призван облегчить жизнь раз...

VDOM своими руками Привет. У многих frontend-разработчиков бытует мнение, что технология VDOM, которая, в частности, используется в React.js, работает как черный ящик. Так же на просторах npm есть куча библиотек, реализующих эту технологию, однако вот как по мне — так в них черт ногу сломит. С...

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

[Из песочницы] Знакомство с Gjallarhorn.Bindable.WPF (F#) на примере выполнения тестового задания В статьях на русском языке теме использования F# совместно с WPF уделяют немного внимания. Сегодня я попробую познакомить вас с одной из F# библиотек, которая значительно упрощает такую разработку. В качестве демонстрационного примера возьмем одно из тестовых заданий по WPF,...

Google выпустила бета-версию фреймворка Flutter для разработки приложений на Android и iOS Компания Google воспользовалась проходящей в эти дни выставкой MWC 2018, чтобы представить бета-версию кроссплатформенного фреймворка Flutter, который позволит создавать приложения для iOS и Android одновременно. Инструмент должен значительно значительно сократить время напи...

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

Online-Визитка | Мобильная Визитка | СМС-Визитка 5.2.2 После разговора с новым клиентом отправляет вашу «мобильную визитку» с благодарностью за звонок и с вашими контактами по sms, WhatsApp или Viber, в один клик не добавляя номер в телефонную книгу ✔ Получив ВИЗИТКУ сразу после звонка, клиенты точно не потеряют ваши контакты,...

[Из песочницы] Большой комок грязи Привет, Хабр! Представляю вашему вниманию перевод статьи "Big Ball of Mud" авторов Brian Foote и Joseph Yoder. От переводчика: Статья Big Ball of Mud написана Брайаном Футе и Джозефом Йодером летом 1999 года. Она рассказывает о наиболее распространённых антипаттер...

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

Список нововведений в Android 9.0 P (Developer Preview 1) По последней инсайдерской информации, анонс Android P Developer Preview ожидался 14 марта, но поисковый гигант выпустил новую версию своей мобильной системы на неделю раньше. Как обычно, пока это безымянная операционная система, просто Android P без единого намёка на будущее...

Ускорение перечисления процессов и потоков в ОС Windows Иногда бывает нужно перечислить все процессы или потоки, которые в данный момент работают в ОС Windows. Это может понадобиться по разным причинам. Возможно, мы пишем системную утилиту вроде Process Hacker, а может быть мы хотим как-то реагировать на запуск/остановку новых пр...

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

Для ИИ-разработчиков представлен новый облачный сервис машинного обучения Запуск новой программы машинного обучения, получившей название Deep Learning as a Service (DLaaS), анонсировала компания IBM.   Новый сервис работает на базе платформы WatsonС. С его помощью, используя популярные фреймворки (например...

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

Настройка среды разработки: кофейная гуща (Часть 2) Привет, дорогой читатель! В этот раз я хочу поделиться своим результатом настройки персонального окружения для работы с различными PHP-based проектами с использованием Puppet. В данной статье описываются результаты, которые были получены в процессе изучения и написания Puppe...

Создание анимаций переходов между Activity в Android Начиная с Android 4.4 в арсенале разработчиков появился дополнительный инструмент для создания анимаций — Transitions Framework. Изначально он предназначался для создания анимаций изменения состояния приложения путём манипулирования несколькими View. С выходом Android 5.0 на...

Изучаем параллельные вычисления с OpenMPI и суперкомпьютером на примере взлома соседского WiFi Во время написания диссертации одним из направлением исследований было распараллеливание поиска в пространстве состояний на вычислительных кластерах. У меня был доступ к вычислительному кластеру, но не было практики в программировании для кластеров (или HPC — High Performanc...

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

Угрозы прошлого и протоколы будущего Как многие из читателей блога Qrator Labs, вероятно, уже знают, DDoS-атаки могут быть нацелены на разные уровни сети. В частности, наличие у злоумышленника крупного ботнета позволяет ему осуществлять атаки на уровень L7 (application/прикладной) и пытаться мимикрировать под...

В следствии утечки появилось новое видео, демонстрирующее работу Microsoft Xbox Avatar Новые аватары Xbox Live от Microsoft были обещаны ещё в прошлом году, но в открытом доступе не появились по сей день.  Но судя по всему, работа над сервисом идёт полным ходом. Появилось видео, на котором показано, как именно будут выглядеть новые аватары и интерфейс реда...

Книга «Linux API. Исчерпывающее руководство» Привет, Хаброжители! Недавно у нас вышел фундаментальный труд Майкла Керриска по программным интерфейсам операционной системы Linux. В книге представлено практически полное описание API системного программирования под управлением Linux. Сейчас мы рассмотрим раздел «Потоки ...

The Metrix has you… Для многих разработчиков процесс релиза их продукта похож на выбрасывание слепого котёнка в пасти диких псов. После этого главная задача авторов — отбиваться от случайно долетевших до них багов. На самом деле, приложение не заканчивает свой жизненный путь в зубах пользовател...

Система мониторинга как точка проникновения на компьютеры предприятия Это продолжение памятки про систему мониторинга Zabbix, опубликованной недавно в нашем блоге. Выражаем огромную благодарность пользователю Shodin, который внес значительный вклад в исследование и написал данную статью. Системы мониторинга — это очень практичный компонент д...

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

«Привет, Хабр» на частоте 835 кГц Как-то раз в голове возникла мысль, а что бы сделать такое, чтобы скрестить старый радиоприемник в деревянном корпусе и современный контроллер для интернета-вещей ESP32? То ли с головой не так что-то, то ли делать мне нечего, но скрестить получилось. Не шаблонно, в целом, х...

Система процедурной генерации уровня в Unreal Engine Здравствуйте, меня зовут Дмитрий. Я занимаюсь созданием компьютерных игр на Unreal Engine в качестве хобби. Сегодня я расскажу как я создал процедурную генерацию уровней для моей игры «The Future City Project». Все исходники будут представлены в конце статьи. И ещё будет с...

Вам действительно нужен Redux? Не так давно React позиционировал себя как "V in MVC". После этого коммита маркетинговый текст изменился, но суть осталась той же: React отвечает за отображение, разработчик — за все остальное, то есть, говоря в терминах MVC, за Model и Controller. Одним из решений для упра...

Эпизод 0. Hack vs Mac. Xcode build time Эта статья начинает собой цикл из нескольких об использовании Hackintosh в повседневной работе и особенно с IDE Xcode 9 и будет больше интересна разработчикам под языки objc/swift. 
С другой стороны, мой первый хак был собран, когда я не был знаком с этими языками и может пр...

Книга «Head First. Паттерны проектирования. Обновленное юбилейное издание» В мире постоянно кто-то сталкивается с такими же проблемами программирования, которые возникают и у вас. Многие разработчики решают совершенно идентичные задачи и находят похожие решения. Если вы не хотите изобретать велосипед, используйте готовые шаблоны (паттерны) проекти...

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

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

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

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

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

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

[Перевод] Параллельное программирование в Swift: Operations В параллельном программировании в Swift: Основы Я представил множество низкоуровневых способов для управления параллелизмом в Swift. Первоначальная идея состояла в том, чтобы собрать все различные подходы, которые мы можем использовать в iOS в одном месте. Но при написании э...

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

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

[Из песочницы] Адаптивная верстка с помощью SCSS и Gulp Доброго времени суток, коллеги! Давно задавался вопросом, как оптимизировать и сделать более удобным код используя @media screen. Ибо код body{font-size: 1em;} @media screen and (max-width: 1024px){ body{font-size: 0.8em;} } создает достаточно крупные файлы. Читать дал...

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

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

Acer Chromebook Tab 10 - первый планшет на Chrome OS Ни для кого не секрет, что на рынке имеется огромное количество электроники, работающей под управлением предустановленной Chrome OS, но ни единого полноценного планшета без присоединяемой клавиатуры до сих пор представлено не было. Первым устройством подобного класса стал но...

[Перевод] Современный CSS для динозавров — Двигать пиксели в CSS и так было трудно! А теперь мне говорят, насколько круто использовать несемантические названия классов, встроенные стили в HTML и даже писать стили CSS на JavaScript! [Вставь тут гифку из «Гриффинов»] — Ха! Иллюстрации из Dinosaur Comics Райана Норта...

Мега-Учебник Flask, Часть XIII: I18n и L10n (издание 2018) Miguel Grinberg Туда Сюда Это тринадцатая часть серии Мега-Учебник Flask, в которой я расскажу вам, как реализовать поддержку нескольких языков для вашего приложения. В рамках этой работы вы также узнаете о создании собственных расширений CLI для flask. Для справки ниже ...

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

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

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

Новая многоступенчатая атака через Word Trustwave наблюдает новую спам-кампанию, использующую документы Word для доставки целевой полезной нагрузки — крадущего пароли зловреда. По словам экспертов, в данном случае распространители вредоносного ПО полагаются не макросы Microsoft Office, а на OLE-функциональность, п...

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

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

[Перевод] Rekit Studio: IDE для React-приложений Сегодня мы публикуем перевод материала Нейта Ванга, создателя Rekit. Здесь он рассказывает о новом стабильном релизе системы, Rekit Studio. Это — полноценная IDE для разработки приложений, созданных с использованием технологий React, Redux и React Router. Он говорит, что его...

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

«Яндекс» поможет интегрировать свои карты в мобильные приложения Компания «Яндекс» сообщила о выпуске нового инструмента Yandex MapKit, позволяющего интегрировать карты в мобильные приложения для операционных систем Android и iOS. Инструмент даёт возможность встроить в приложение практически любую функцию «Яндек...

Бюджетный смартфон Vivo Y71 с функцией распознавания лица Компания Vivo официально представила свой новый бюджетной смартфон под названием Y71, который стал первым аппаратом из Y-серии, получившим дисплей с соотношением сторон 18:9. По свежим данным, Vivo Y71 получил 5,99-дюймовый HD+ дисплей с разрешением 720 х 1440 пикселей, 8-яд...

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

Учебник Thymeleaf: Глава 11. Комментарии и Блоки / Blocks Оглавление 11 Комментарии и Блоки / Blocks 11.1. Стандартные HTML/XML комментарии Стандартные HTML/XML комментарии <!--… --> можно использовать в любом месте шаблонов Thymeleaf. Все, что внутри этих комментариев, не будет обрабатываться Thymeleaf и будет скопировано д...

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

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

Microsoft добавит поддержку Progressive Web Apps в Windows 10 Стало известно, что компания Microsoft планирует добавить поддержку Progressive Web Apps в ОС Windows 10 и браузер Microsoft Edge. С приходом обновления Redstone 4, релиз которого запланирован на следующий месяц, пользователи смогут опробовать функциональность «продвинутых в...

Автоматизация действий атакующего, используя metasploit и Python Известно, что метасплойт написан на Ruby и не поддерживает скрипты, написанные на Python. Несмотря на это у метасплойта есть двусторонний RPC–интерфейс, при помощи которого можно запускать задачи. Есть две библиотеки, позволяющие взаимодействовать с remote procedure call (R...

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

Intel анонсировала Accelerated Memory Scanning Компания Intel анонсировала технологию Accelerated Memory Scanning, которая будет помогать антовирусным системам обнаруживать вредоносные программы при помощи интегрированной графики. Дело в том, что в большинстве современных компьютеров есть дискретная графика, которая рабо...

6-дюймовый смартфон Alcatel 3V будет представлен на MWC 2018 Компания Alcatel собирается представить на выставке MWC 2018, которая пройдет в Барселоне уже в конце февраля, свой новый смартфон под названием 3V, который получит дисплей с соотношением сторон 18:9. Сегодня в сети появились его первые снимки и практически полные технически...

Модульное тестирование react компонетнов withRouter (jest, enzyme) При разработке модульных тестов для react компонента, обернутого в вызов withRouter(Component) столкнулся с сообщением об ошибке, что такой компонент может существовать только в контексте роутера. Решение этой проблемы очень простое и не должно по идее вызывать вопрсов. Хотя...

Защищённый смартфон NOMU M6 с впечатляющей тонкостью уже в продаже На всемирной торговой площадке Amazon появился стильный защищённый смартфон NOMU M6. Китайский производитель всячески акцентирует внимание потенциальных покупателей на его толщине — всего 10 мм. Этот показатель является весьма впечатляющим для защищённых от повреждений смарт...

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

Защищенный смартфон Archos Saphir 50X за 220 долларов Компания Archos представила свой новый защищенный от внешних факторов смартфон под названием Saphir 50X, построенный на платформе MediaTek и работающий под управлением предустановленной ОС Android 7.0 Nougat. Аппарат получил защищенный корпус, который способен поглощать удар...

[Перевод] Руководство по фоновой работе в Android. Часть 3: Executors и EventBus Приветствую, коллеги. Рад видеть вас снова в третьей части «Руководства по фоновой работе в Android». Если не видели предыдущие части, вот они: Часть 1: AsyncTask Часть 2: Loaders В прошлый раз мы разобрались, как работают Loaders, а сразу после этого Google взял и соо...

Карточные платежные системы объединяются для конкуренции с PayPal Сервис PayPal является популярным средством быстрой оплаты, к которому можно привязать пластиковые карты. Карточные платежные системы Visa и Mastercard пытались предложить альтернативы — Visa Checkout и Masterpass соответственно, но они проигрывали PayPal в универ...

Распознавание речи на python с помощью pocketsphinx или как я пытался сделать голосового ассистента Это туториал по использованию библиотеки pocketsphinx на Python. Надеюсь он поможет вам побыстрее разобраться с этой библиотекой и не наступать на мои грабли. Читать дальше →

Разработчик создал приложение AR для iPhone X, которое создает интересные иллюзии Шведский разработчик Питер Норрби (Peter Norrby) создал приложение для iPhone X на базе технологии дополненной реальности (AR), которое должно быть выпущено в App Store под названием The Parallax View. В данный момент приложение The Parallax View уже отправлено на согла...

Shortcut Creator 2.5.2 Это приложение позволяет создавать ярлыки на файлы, приложения, настройки, контакты и сообщения. Вы можете задать имя ярлыка и использовать большой выбор инструментов для выбора его иконки — иконку из темы, импортировать ее из файла (и создавать целые коллекции), обрезать из...

История ES6-модулей Владислав Власов, инженер-программист в Developer Soft и преподаватель курса Нетологии, специально для блога написал цикл статей о EcmaScript6. В первой части на примерах рассмотрели динамический анализ кода в EcmaScript с помощью Iroh.js, во второй сосредоточились на реализ...

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

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

Google Pay приходит на смену Android Pay В январе компания Google сообщила о своём решении объединить платежные сервисы Android Pay и Google Wallet под единым брендом Google Pay, создав универсальное платежное решение. И вот сегодня компания начала внедрять его в жизнь. Обновленное приложение Android Pay уже переи...

Алиса, Google Assistant, Siri, Alexa. Как писать приложения для голосовых ассистентов Рынок голосовых ассистентов расширяется, особенно для русскоязычных пользователей. 2 недели назад Яндекс рассказала впервые про платформу Яндекс.Диалоги, 2 месяца назад Google представила возможность писать диалоги для Google Assistant на русском языке, 2 года назад со сце...

Анонс Windows 10 Build 17623 (Redstone 5) Привет, привет! Microsoft выпустила новенькую Redstone 5 сборку под номером 17623 для инсайдеров из Skip Ahead круга. Об этом, как всегда, в своем Twitter-аккаунте сообщила глава программы Windows Insider Дона Саркар. Hey #WindowsInsiders! We have released Build 17123 to Fa...

[Перевод] Как подобрать хорошее освещение для реалистичных интерьеров? Родриго Льорет показал способ, которым он добился такой реалистичной картинки для своей последней работы в UE4. Введение Меня зовут Родриго Льорет, я ведущий художник окружений, живу в Мальмё и сейчас работаю в Massive Entertainment ведущим художником пропсов. Я участвую в...

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

[Перевод] Создание игры на Lua и LÖVE — 3 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги 9. Director and Gameplay Loop 10. Coding ...

[Из песочницы] Совершенствуем Redux Привет, Хабр! Представляю вашему вниманию перевод статьи "Redesigning Redux" автора Shawn McKay. Должно ли управление состоянием вызывать проблемы на сегодняшний день? Интуитивно, разработчики видят скрытую правду: управление состоянием куда сложнее, чем должно бы...

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

[Из песочницы] Почему не стоит использовать LocalStorage Привет, Хабр! Представляю вашему вниманию перевод статьи "Please Stop Using Local Storage" автора Randall Degges. Все больше разработчиков используют localStorage для хранения данных, в том числе и конфиденциальных, даже не подозревая, что тем самым подвергают свои сайты взл...

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

Гибридный ноутбук HP Chromebook x2 со съемной клавиатурой Компания HP пополнила свое портфолио новым планшетом с подсоединяемой клавиатурой под названием Chromebook x2, который работает под управлением Chrome OS. По сути, устройство является гибридом между планшетом и ноутбуком, ведь по утверждению производителя, это первый в мире ...

Онлайн статистика в Telegram Вам нравится процесс ожидания? Когда необходимо сидеть и ждать, пока одна из статистик/аналитик/метрик загрузится… «Но у нас все нормально, — ответите вы. — У нас крутые спецы, наши страницы грузятся за доли секунд, мы даже кешировать умеем.» А как на счет мобильного интер...

Супер-полное руководство по публикации в Microsoft Store Привет, хабр! У меня часто случаются подобные ситуации: занимаюсь чем-нибудь сложным и в какой-то момент вылезает ошибка. Начинаю искать проблему в, соответственно, замороченных вещах, часто делая то, что не надо. И так проблемы нарастают. А в конце оказывается, что неполадк...

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

Веб-разработчики хотят повысить безопасность PHP Сообщество FriendsOfPHP («Друзья PHP») собирает на GitHub базу известных уязвимостей этого языка, чтобы упростить создание безопасных программных продуктов. Проект под названием PHP Security Advisories Database («База рекомендаций по безопасности PHP») пр...

Создание руководства пользователя по ГОСТ теперь доступно в программе Dr.Explain Компания "Индиго Байт" выпустила новую версию приложения Dr.Explain 5.5, которая позволяет создавать пользовательскую и справочную документацию к ПО или автоматизированным системам в соответствии требованиям государственных стандартов РФ серии ГОСТ 34 и ГОСТ 19.

[Из песочницы] Установка Linux без .ISO и виртуализации Установка Linux без .ISO и виртуализации Создание файловой системы, установка и клонирование Debian и Ubuntu с помощью скриптов radish. 1. Назначение и возможности скриптов radish Обычно установка системы Linux производится путём запуска какой-либо программы-установщика, пос...

Асинхронные HTTP-запросы на C++: входящие через RESTinio, исходящие через libcurl. Часть 1 Преамбула Наша команда занимается разработкой небольшого, удобного в использовании, встраиваемого, асинхронного HTTP-сервера для современного C++ под названием RESTinio. Начали его делать потому, что нужна была именно асинхронная обработка входящих HTTP-запросов, а ничего го...

[Из песочницы] Научиться программировать становится сложнее Привет, Хабр! Представляю вашему вниманию перевод статьи Аллена Б. Дауни, автора таких книг как Think Python, Think Java, Think Bayes и других, опубликованной в личном блоге автора. Я написал несколько книг, в которых c использованием языка программирования Python объясняют...

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

[Перевод] Реактивное программирование в Objective-C Со временем языки программирования постоянно изменяются и развиваются из-за появления новых технологий, современных требований или простого желания освежить стиль написания кода. Реактивное программирование можно реализовать с помощью различных фреймворков, таких как Reactiv...

[Перевод] Как я заработал 200 000 $ в 16 лет Года три назад я опубликовал рассказ о приложении Follow для Twitter, которое сделал еще в старшей школе, и о том, как оно собрало 150 000 скачиваний за два года. В той статье я мимоходом упомянул, что мои первые шаги в программировании — это отдельная, еще более пространная...

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

Моделирование динамических систем: введение в GNU Octave Жили-были умные, но очень жадные люди, которые написали замечательную программу Matlab. Умные они были потому, что программа вышла хорошей, а жадными, потому что очень любили деньги. Так любили, что брали их за свой Matlab не только с дядек серьезных, матлабом деньги зарабат...

Создан полноценный 3D-шутер на основе Microsoft Excel Иногда симбиоз задатков программиста и геймера даёт небывалые результаты — пользователи мастерят интересные вещи из тех программ и их возможностей, которые ранее применялись совсем для других дел. Например, многие разработчики компьютерных игр используют Microsoft Excel как ...

Автоконцерн Jaguar Land Rover представил свой собственный смартфон Автомобилестроительная компания Land Rover Explore представила общественности свой собственный смартфон. Модель под названием Land Rover Explore предназначена для интенсивной эксплуатации в условиях, далеких от идеальных. Смартфон был разработан Bullitt Group, которая уже п...

Vernee анонсировал новые смартфоны M7 и V2 на выставке MWC 2018 Компания Vernee анонсировала на выставке MWC 2018 сразу два своих новых смартфона под названиями M7 и V2, которые получили весьма интересный внешний вид и технические характеристики. Основной изюминкой смартфона Vernee M7 является его дизайн, который очень схож лицевой сторо...

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

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

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

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

Использование библиотеки Python Control Systems Library для проектирования систем автоматического управления Здравствуйте! С появлением библиотеки Python Control Systems Library [1], решение основных задач проектирования систем автоматического управления (САУ) средствами Python значительно упростилось и теперь практически идентично решению таких задач в математическом пакете Matla...

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

[Из песочницы] Смена профессии: из графического дизайнера в фронтенд-разработчика Привет, Хабр! Представляю вашему вниманию перевод статьи "How I transitioned from a graphic designer to front-end developer in 5 months" автора Vince MingPu Shao. 2017 год оказался для меня сложным, но захватывающим. Я бросил работу графического дизайнера в Марте,...

Picaso PRO 250 Если не чистится второе сопло. Так получилось, что несмотря на идеальные калибровки нулей и смещения сопел, на моей ПРОшке не чистилось второе сопло. Причина банальная - второе сопло не попадает в свой сопливчик. Включив режим трабл-шутинга я "изобрёл" следующее решение - регулируемый держатель сопливчика...

Готовый шаблон сайта с регистрацией, юзерами и админами на Flask Бывает, приходится делать сайты на flask, у которых есть пользователи и админы. Чисто для себя решил как-то это стандартизировать и, главное, не терять время, когда такая задача появляется. Цель — в несколько команд получить рабочий сайт у которого есть: Регистрация Email...

Официально: Build 2018 пройдёт с 7 по 9 мая в Сиэтле Несколько дней назад в сеть утекла информация, из которой следовало, что ежегодная конференция разработчиков Microsoft Build 2018 пройдёт с 7 по 9 мая в Сиэтле. Теперь же эта информация подтверждена компанией Microsoft и опубликована на официальном сайте конференции. Регист...

LG показала прототип G7 (NEO) на выставке MWC 2018 Во время закрытого показа на выставке MWC 2018 компания LG анонсировала свой новый флагман под названием G7 (NEO), который получил внешний вид, схожий с iPhone X, и топовые технические характеристики. По свежим данным, LG G7 (NEO) оснащен 6,0-дюймовой OLED матрицей с соотнош...

Сервис для опросов позволял атаковать веб-серверы Исследователи из компании RIPS Technologies нашли опасные уязвимости в популярном сервисе для организации онлайн-опросов LimeSurvey. Бреши позволяют запускать произвольный код на веб-серверах. LimeSurvey — это бесплатное open source интернет-приложение. По информации Securit...

#промо: Alpari Invest — приложение для инвестиций на iPhone Инвестиции в наше время — это возможность получить дополнительный заработок. Можно выбрать криптовалюты и столкнуться с проблемами ввода фиатов, конвертации и вывода средств. Можно использовать банковские вклады для приумножения своих средств, но почти весь доход съест инф...

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

Стали известны ограничения Windows на ARM Microsoft прилагает все усилия, чтобы популяризировать Windows 10 на ARM, тем самым конкурируя с Chrome OS и мобильными платформами Android и iOS. На этой неделе компания опубликовала полную документацию для OEM-производителей, планирующих использовать Windows 10 на устройст...

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

Как устроена расширенная защита от DDoS в Selectel Прошло больше двух лет с момента запуска услуги Защита от DDoS в Selectel. За прошедшее время ею воспользовались более 100 клиентов компании, на защиту поставлено более 200 единичных IP-адресов, а некоторые клиенты защищают сразу подсети /24. За это время система отразила ...

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

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

[Из песочницы] Почему Ramda? Пост содержит перевод статьи «Why Ramda?», которую подготовил один из контрибьютеров Скот Сайет. Статья была опубликована 10 Июня 2014 года на сайте и рассказывает о том почему стоит обратить своё внимание на библиотеку Ramda и функциональное программирование в целом. Примеч...

Microsoft PowerPoint 16.0.9029.2068 Приложение Microsoft PowerPoint для Android предназначено для работы на ходу. Оно сочетает знакомый внешний вид, интерфейс и качество Office с интуитивным сенсорным управлением, разработанным для телефонов и планшетов с Android. Приложение PowerPoint идеально подходит для со...

Начинаем работать с Firebase Cloud Storage на Android Работа с облачным хранилищем может быть очень трудной, особенно если вы не знаете, что делать. К счастью, Firebase упрощает ее насколько это вообще возможно. В статье мы обсудим, почему вам нужно использовать Firebase Cloud Storage вместо других облачных сервисов хранения, а...

Интерфейсы: как сообщать пользователю, если «Упс, что-то пошло не так» Здесь вы не увидите ни строчки кода. Мы поговорим об обычных людях — о наших пользователях, точнее о том, как сообщать им, если в системе возникла какая-то непредвиденная ситуация. В основе статьи доклад Антонины Хисаметдиновой с Heisenbug 2017 Moscow, которая занимается п...

Игровой флагман Xiaomi Black Shark Gaming Phone за 477 долларов Компания Xiaomi, как и обещала ранее, сегодня представила свой новый игровой флагман под названием Black Shark Gaming Phone, стоимость в продаже которого будет стартовать с отметки в 477 долларов. Производитель позиционирует свое устройства в качестве основного конкурента дл...

[Из песочницы] Создание Telegram-бота для получения информации о криптовалютном кошельке Dogecoin Со времени описания технологии блокчейн в 2008-м году и появления первой реализации в 2009-м (биткоин) по настоящее время создано более тысячи криптовалют. Каждые несколько дней проводятся ICO. Многие занимаются майнингом или игрой на криптовалютных биржах. В связи с тем,...

Настройка Zones в Solaris 11.3 Введение Моё первое знакомство с контейнерной виртуализацией было с jail в FreeBSD, данный подход позволяет изолировать различные службы в безопасном окружении. Недостаток jail в том, что в нём нет возможности создать собственную сетевую подсистему, в отличии от Zones Solar...

«Цифровые государства»: как они развивались В прошлой статье мы разобрались, что из себя представляют цифровые государства по своей сути, на каких идеях они базируются и какими были первые работающие системы в США и СССР. Теперь предлагаем перейти к важному периоду, когда возможность объединения разрозненных технолог...

[Перевод] Использование шаблона render props вне рендера React представляет новое API (context API), которое использует "паттерн" (шаблон) render props (подробнее). На семинарах, встречах и в твиттере я вижу, что возникает много вопросов об использовании render props вне рендера, например, в обработчиках событий или "хуках" жизнен...

Безрамочный смартфон Nokia 7 Plus вышел в России Компания HMD Global объявила о старте продаж смартфона Nokia 7 Plus. Это довольно продвинутая модель в модном сейчас безрамочном дизайне с двойной камерой. Российским пользователям Nokia 7 Plus предлагается за 27 990 рублей с 4 ГБ оперативной и 64 ГБ встроенной флеш-памяти....

Беспроводные локальные сети или как работает Wi-Fi по стандарту IEEE 802.11. Лабораторная работа в Packet Tracer Введение В данной статье в лабораторных работах изучается технология беспроводных локальных сетей по стандарту IEEE 802.11. Стандарт IEEE был разработан институтом инженеров по электротехнике и электронике (Institute of Electrical and Electronic Engineers). Отсюда он и полу...

[Из песочницы] СХД NetApp — преемственность поколений, проблемы и способы их решения Кому интересна эта статья К написанию настоящей статьи меня подтолкнул кейс, случившейся c одной уважаемой компанией, которая давно и успешно эксплуатирует решения NetApp для хранения данных. Управление данными средствами NetApp происходит в международном масштабе, в том чис...

Triton vs Kao’s Toy Project. Продолжаем хорошую традицию В данной статье речь пойдет про SMT-решатели. Так сложилось, что в исследовательских материалах, посвященных данной теме, появилась хорошая традиция. Уже несколько раз в качестве подопытного алгоритма для SMT-решателей разные исследователи выбирали один и тот же пример – кр...

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

[recovery mode] Как написать одностраничное приложение (SPA) с использованием Vue.js Одностраничные приложения (SPA) имеют мнжество преимуществ, таких как скорость, по-настоящему хороший UX, и полный контроль HTML-разметки. Становится всё больше и больше сайтов SPA; всё больше инструментов, которые упрощают процесс разработки SPA. Вы, вероятно уже читали о...

Устройство спецэффектов для игр под NES. Часть 1 Существует несколько серий статей про программирование под NES, одна из них уже даже переведена на русский язык на хабре. Однако ни одна из них не заходит дальше обзора базовых возможностей консоли – рассматривается общая архитектура консоли, основы ассемблера, вкратце расск...

Модуль Osram WSLC позволяет управлять наружным освещением по беспроводному каналу Компания Osram представила устройство под названием Wireless Site Lighting Control (WSLC) Module. По словам производителя, модуль WSLC расширяет возможности системы управления освещением с сетевым подключением ENCELIUM EXTEND Networked Light Management System на осветит...

[Из песочницы] Удивительно простой обмен сообщениями с Spring Cloud Stream Привет, Хабр! Представляю вашему вниманию перевод статьи "Surprisingly simple messaging with Spring Cloud Stream" автора Richard Seroter. Существует множество вариантов взаимодействия микросервисов. Вы можете использовать обнаружение сервисов (Service Discovery, н...

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

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

Бесплатная GPU Tesla K80 для ваших экспериментов с нейросетями Около месяца назад Google сервис Colaboratory, предоставляющий доступ к Jupyter ноутбукам, включил возможность бесплатно использовать GPU Tesla K80 с 13G видеопамяти. Если до сих пор единственным препятствием для погружения в мир нейросетей могло быть отсутствие доступа к G...

Интерфейс Vulkan выведет качество игр для iOS и macOS на новый уровень Кросс-платформенный интерфейс Vulkan, обеспечивающий большую производитель и улучшенное отображение графики в играх, стал доступен на платформах iOS и macOS. Об этом говорится на официальном сайте консорциума Khronos Group, являющегося разработчиком открытых стандартов инт...

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

[Перевод] Интервью портала A Cloud Guru с Келси Хайтауэром: о DevOps, Kubernetes и serverless Наверняка не все знают, что по нагрузке и числу пользователей iFunny является настоящим highload-сервисом. API обслуживает в пиках порядка 15000 запросов в секунду, система аналитики обрабатывает около 5 миллиардов событий в сутки, а для поддержки полного функционала работа...

Анонс Windows 10 Insider Preview Build 17120 (Fast) Добрый вечер, инсайдеры! Самое время для новой сборки Windows 10 под номером 17120, которая уже сейчас доступна на быстром канале обновлений. А пока что предлагаем вам ознакомиться со списком изменений. Windows Mixed Reality Некоторое время назад компания Microsoft объявила...

Строгая типизация для приложений Vue.js на TypeScript Вопрос: Каковы самые слабые места Vue? Oтвет: На данный момент, наверное, недружественность к типизации. Наш API разрабатывался без планирования поддержки типизированных языков (типа TypeScript), но мы сделали большие улучшения в 2.5. Вопрос: Тони Хор (Tony Hoare) назвал n...

Нацстандарты на госзакупки для IoT, Big Data и ИИ в России разработают к июлю 2019 года Российское правительство утвердило план по созданию «системы одного окна» и упрощения международной сертификации для компаний, создающих испытательные лаборатории и ПО, сообщает «Прайм». Документ предусматривает разработку национальных стандартов на государственные и муни...

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

Barco уходит из Digital Signage, а что дальше? Телодвижения крупных игроков всегда очень интересны - они отражают новые тенденции рынка и серьезно затрагивают интересы партнеров этих компаний "Digital Signage больше не в фокусе наших стратегических интересов" - сказал Ян Де Витте, Генеральный Директор (CEO) Bar...

Часть старых приложений «отвалится» в Android P Разработчики нашли очередное ограничение в Android P Developer Preview, которое теперь задаёт минимальную версию API. Если она не совпадает с той, что использована при создании приложения, то такая программа работать в системе уже не будет, а выдаст предупреждение, что она...

В AdBlock Plus добавят функцию кеширования популярных JavaScript-библиотек Бета-версия нового функционала уже работает в расширении для браузера Chrome

Системная шина ПК передаёт музыку на средних частотах В качестве антенны радиопередатчика используется шина между процессором и памятью В информационной безопасности есть понятие «физической изоляции» (air gap), когда безопасная компьютерная сеть физически изолирована от небезопасных сетей: интернета и локальных сетей с низки...

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

Используем Apple Pay и карту Тройка в качестве пропуска на работу TL;DR В статье описывается процесс создания системы контроля доступа (СКУД), в которой в качестве идентификатора могут использоваться карты Тройка, любые бесконтактные банковские карты EMV, а также телефоны с Apple Pay и Android Pay. Управление системой происходит через Te...

Мобильные устройства изнутри. Снятие блокировки загрузчика планшета Все публикации из серии Мобильные устройства изнутри1.Структура образов разделов, содержащих файловую систему. Часть 1. 2.Разметка памяти, структура файлов описания и разметки памяти. 3.Структура образов разделов, содержащих файловую систему. Часть 2. 4.Что такое GPT? 5.Изме...

День, когда Twitter испортился 13 апреля 2010 года Twitter начал продавать рекламные твиты, которые изначально отображались только в результатах поиска. Нововведение было названо Promoted Tweets и предназначалось для компаний, желавших донести свои сообщения до более широкой аудитории. Вот как выглядел ти...

Объект в футляре или Optional в Java 8 и Java 9: Часть 5: Недосказанное и постер в подарок Это пятая и последняя статья серии, посвящённая использованию класса Optional при обработке объектов с динамической структурой. В первой статье было рассказано о способах избежания NullPointerException в ситуациях, когда вы не можете или не хотите использовать Optional. Вт...

как добавить свой счетчик в PRTG. И кратенько о форматах датчиков с примерами на powershell Почему бы не добавлять в систему мониторинга показатели работы из 1С (да и вообще чего угодно)? По мере изучения оказалось что вывести можно из скриптов, батников, VB скриптов, исполняемых файлов, по SSH, прямым исполнением sql запросов и еще куча способов. Чтобы не получила...

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

Работа будущего: насколько интересней станут рабочие места? Кто не читал в заголовках: роботы грядут и отнимут у нас рабочие места? На самом деле, до 45% рабочих задач, выполняемых в настоящее время работниками разного рода, могут быть автоматизированы с использованием уже имеющихся технологий. А какие появятся в будущем? Тем не ме...

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

Сбербанк проводит цифровую трансформацию в области кадров Переход был реализован совместной командой SAP Консалтинг и Сбербанка в течение одного года и признан самым быстрым проектом по внедрению "облачной" системы для работы с персоналом среди крупнейших заказчиков SAP в мире. Целью проекта было обеспечить новое качество...

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

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

Знакомство с гео-библиотекой S2 от Google и примеры использования Привет, Хабр! Меня зовут Марко, я работаю в Badoo в команде «Платформа». Не так давно на GopherCon Russia 2018 я рассказывал, как работать с координатами. Для тех, кто не любит смотреть видео (и всех интересующихся, конечно), публикую текстовый вариант своего доклада. Вв...

Как адаптировать игру на Unity под iPhone X к апрелю Месяц назад Apple предупредила всех разработчиков, что с апреля все приложения, которые заливаются в App Store, должны быть собраны с использованием последнего iOS 11 SDK. О том, как правильно позиционировать контент, используя новый API, уже давно можно почитать в официал...

Пользователи Bentley Systems используют машинное обучение Благодаря машинному обучению AssetWise  обеспечивает повышенный уровень ситуационного анализа для управления и  раннего прогнозирования о сбоях в работе активов. Bentley Systems объявила о доступе к новым технологиям в области обработки данных и машинного обучения на основе ...

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

[Из песочницы] Мониторим каналы связи посредством Juniper RPM и Zabbix На написание статьи меня натолкнул этот материал — Автоматическое переключение маршрута в Juniper SRX. Захотелось немного расширить тему использования RPM. Эта технология является аналогом механизма SLA в мире Cisco, и как и у Cisco предназначена больше не для переключения к...

Panasonic использует AR-очки, искусственный интеллект и IoT в ресторанах будущего AR-очки, искусственный интеллект и Интернет вещей будут широко использоваться в ресторанах будущего – такой смелый прогноз сделали японская корпорация Panasonic и ее инкубатор идей Game Changer Catapult. Стороны даже представили прототип решения Kronosys, сочетающего все ука...

Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018 Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018 Представляем вам перевод статьи по ссылке и оригинальный докеризированный код. Данное решение позволяет попасть примерно в топ-100 на приватном лидерборде на втором этапе конкурса среди общего чи...

Как выбирать и контролировать журналистов(копирайтеров) при написании статей для информационных сайтов Сегодня я расскажу о том как контролировать журналистов(копирайтеров) при написании статей для информационных сайтов. В первую очередь нужно разделять журналиста и копирайтера. Журналист это тот кто продумывает текст и пишет интересную статью. Коприайтер это тот кто НАБИРАЕТ...

[Из песочницы] Приложение Vue.js + Asp.NETCore + TypeScript без Webpack Создаем на Visual Studio 2017 модульное приложение Vue.js + Asp.NETCore + TypeScript без использования Webpack или Broserify. Причем сначала делаем проект с использованием Webpack, а потом без него. Чтобы прочувствовать, от какого счастья мы отказываемся. Материал рассчита...

Учебник Thymeleaf: Глава 20. Приложение C: Синтаксис селектора разметки Оглавление 20 Приложение C: Синтаксис селектора разметки Селекторы разметки Thymeleaf напрямую заимствованы из библиотеки парсера Thymeleaf: AttoParser. Синтаксис для этих селекторов имеет большое сходство с синтаксисом селекторов в XPath, CSS и jQuery, что делает их удобн...

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

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

Асинхронные HTTP-запросы на C++: входящие через RESTinio, исходящие через libcurl. Часть 2 В предыдущей статье мы начали рассказывать о том, как можно реализовать асинхронную обработку входящих HTTP-запросов, внутри которой нужно выполнять асинхронные исходящие HTTP-запросы. Мы рассмотрели реализованную на C++ и RESTinio имитацию стороннего сервера, который долго ...

Работа и жизнь в Болгарии — 3. Собеседования, виза, рабочие моменты Всем привет! Немного затянул с написанием третьей части (почти полгода аж прошло), но на то были свои причины. И сегодня пришло время завершить мой обзор про жизнь и работу в Болгарии с освещением самых свежих данных про рынок IT, оформление рабочей визы, собеседований и м...

Western Digital анонсировала карту microSD емкостью 400 ГБ В рамках MWC компания Western Digital представила карту с большой скоростью UHS-I – 400GB SanDisk Extreme UHS-I microSDXC, а также продемонстрировала будущее технологий карт флеш-памяти, представляя устройства с поддержкой интерфейса Peripheral Component Interconnect Express...

Snapchat приступает к созданию AR линз Snapchat планирует усовершенствовать диапазон фильтров и новинок AR, чтобы удивить своих пользователей. Уже в конце марта, вы сможете создавать собственные линзы плюс, в приложении появятся шаблоны линз от Snapchat. Подробнее об этом читайте на THG.ru.

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

[Перевод] Как создать нейросеть всего из 30 строк JavaScript-кода Перевод How to create a Neural Network in JavaScript in only 30 lines of code. В этой статье мы рассмотрим, как можно создать и обучить нейросеть с помощью библиотеки Synaptic.js, позволяющей проводить глубокое обучение в связке Node.js с браузером. Давайте создадим прост...

Защищенный Energizer Hardcase H590S с аккумулятором на 5800 мАч Компания Energizer привезла на выставку MWC 2018 свой новый смартфон под названием Hardcase H590S, который получил не только прочный и водонепроницаемый корпус, но еще и мощный встроенный аккумулятор. Смартфон сертифицирован по стандарту IP68, что позволяет ему выдерживать п...

Смартфон Zenfone 5 Lite Компания ASUS, выпустит смартфон в первой половине года с низкой ценой. Разработчики указывают на исключительные фотографические качества смартфона Zenfone 5 Lite. Раскрыть их в полной мере позволят две 2-линзовые камеры девайса. Основная сдвоенная камера создана на базе оп...

Яндекс разрешил встраивать Карты в мобильные приложения Разработчики Яндекса объявили о запуске нового инструмента — Yandex MapKit. Он позволяет встраивать карты в мобильные приложения сторонним разработчикам, использовать картографические данные и технологии Яндекс.Карт в продуктах для iOS или Android. Как отмечают разраб...

В новой версии Joomla исправлено несколько ошибок Новая версия CMS Joomla — 3.8.4 — содержит более ста исправлений и улучшений, некоторые из них закрывают бреши в системе безопасности. Компания исправила три уязвимости, связанные с межсайтовым скриптингом (XSS) — технологией внедрения вредоносного кода на страницы веб-ресур...

WSTester – JS библиотека для тестирования веб-сервисов с ВебСокетами Добрый день, Хабрасообщество! Как и большинству айтишников, мне нравится создавать что-то новое, классное, нечто способное как-то повлиять на мир или хотя бы принести небольшую пользу другим людям. Надеюсь, что описываемый далее инструмент для тестирования онлайн систем с Ве...

Веб-компоненты. Часть 2: теневой DOM Вступление Приветствую, коллеги, и представляю вашему вниманию продолжение серии статей о веб-компонентах, первая часть которой доступна вот тут В этой статье речь пойдет о спецификации теневого DOM (shadow DOM) версии от 01.03.2018 г.. Последний черновик спецификации датиро...

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

Недорогой смартфон Huawei Mate SE со сдвоенной камерой Компания Huawei запустила в продажу свой новый недорогой смартфон среднего класса под названием Mate SE, стоимость которого составляет 230 долларов. Смартфон Huawei Mate SE получил 5,93-дюймовый full-HD+ дисплей с разрешением 1080 х 2160 пикселей и соотношением сторон 18:9, ...

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

Сервис цифровых подписей GlobalSign интегрирован в облако Adobe Document Cloud 10 апреля 2018 года компания GlobalSign объявила о присоединении к консорциуму Cloud Signature и партнёрской программе Adobe Cloud Signature. Оба соглашения предусматривают, что фирменный сервис облачных подписей Digital Signing Service теперь напрямую интегрирован с решен...

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

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

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

Новые смартфоны Nokia HMD Global, дом для телефонов Nokia, обещает пользователям расширение своей линейки смартфонов на Android и представляет 4 новинки — Nokia 8 Sirocco, Nokia 7 Plus, Nokia 6 и Nokia 1. Каждый из новых смартфонов выполнен с традиционным для Nokia высочайшим качест...

Анонс Windows 10 Insider Preview Build 17115 Компания Microsoft продолжает работать над следующим крупным обновлением Windows 10, известным под кодовым названием «Redstone 4». Поскольку до релиза остаётся уже не так много времени, особое внимание уделяется поиску и исправлению ошибок, однако и некоторые новшества всё ...

Смартфон Zenfone 5 Lite и его характеристики Компания ASUS, выпустит смартфон в первой половине года с низкой ценой. Разработчики указывают на исключительные фотографические качества смартфона Zenfone 5 Lite. Раскрыть их в полной мере позволят две 2-линзовые камеры девайса. Основная сдвоенная камера создана на базе оп...

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

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

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

Полный перечень intrinsic-функций в HotSpot в JDK 7, 8, 9 и 10 Интринсик или intrinsic-функция — функция, которую JIT-компилятор может встроить вместо вызова Java- и JNI-кода с целью оптимизации. Важный вывод из этого — intrinsic-функции не доступны в режиме интерпретатора. По умолчанию в HotSpot используется два JIT-компилятора C1 и C2...

Смартфон Vivo V9 Youth с FullView дисплеем и сдвоенной камерой Компания Vivo представила свой новый смартфон под названием V9 Youth, который станет довольно привлекательным предложением для молодых людей. По свежей информации, Vivo V9 Youth получил 6,3-дюймовый FullView Full-HD+ дисплей с соотношением сторон 19:9 и разрешением 1080 х 22...

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

[Перевод] 20 модулей для Node.js, о которых полезно знать Филип Акерман, автор статьи, перевод которой мы сегодня публикуем, говорит, что в последние годы платформа Node.js становится всё популярнее и популярнее. Она часто используется для создания серверных частей веб-приложений, а также для решения других задач, возникающих в про...

«ВITАМИН РОСТА»: как ЛАНИТ привлекает молодежь и как молодым специалистам попасть в ЛАНИТ В этой статье я расскажу о том, как устроена работа с молодыми джедаями специалистами в группе компаний ЛАНИТ, и поделюсь итогами нашей специальной программы «ВITАМИН РОСТА», которой исполнился год. Приглашаю вас обсудить эффективность инструментов поиска, привлечения и погр...

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

Приглашаем на MiniAiCup#2. В этот раз мы испортили AgarIO Шесть лет подряд мы (Mail.Ru Group) совместно с СГУ проводим Russian Ai Cup (соревнование по написанию игровых ботов). Придумываем игровой мир, пишем к нему API и сталкиваем лбами стратегии, написанные участниками. Выходит каждый раз довольно интересно, самобытно и вообще э...

Клон медиаплеера VLC с более чем 5 млн загрузок удалён из Google Play Секрет популярности медиаплеера VLC очень простой — он бесплатный, «всеядный» и не содержит рекламы. Android — одна из многих платформ, где представлен плеер. Это его преимущество и одновременно недостаток, поскольку в Google Play появилось много клонов, зарабатывающих на по...

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

Intel может купить Broadcom, которая пытается купить Qualcomm Несмотря на то, что Intel фактически является лидером процессоров для настольных компьютеров и ноутбуков, Intel никогда не преуспевала на рынке чипов для смартфонов. Компания потратила около 10 миллиардов долларов, пытаясь конкурировать с Qualcomm и другими компаниями, но в ...

Сыграем в квиддич с TensorFlow Object Detection API Руководство по обучению модели для распознавания одновременно нескольких классов объектов на изображении, а также созданию своих классов на примере мячей для квиддича.

PHP 5.x – старикам здесь (не) место Индустрия хостинга неразрывно связана с PHP, на котором полностью или частично написаны более 80% сайтов в Internet. Это сильно влияет на разработку любого софта, предназначенного для работы с хостингом — в том числе такого, как контрольная панель Plesk. Мы делаем продукт дл...

Пользователи iOS помешались на встроенных покупках Популярность встроенных покупок, являющихся основной статьей дохода для многих разработчиков приложений, растет небывалыми темпами. Такой вывод сделали аналитики консалтинговой компании Sensor Tower. По данным исследователей, по итогам 2017 года владельцы iPhone потратили ...

Коммутатор Aten US7220 с интерфейсом Thunderbolt 2: дорогое специфическое устройство скорее для пользователей компьютеров Apple Компания Aten, один из наиболее известных производителей KVM-оборудования, представила в этом году US7220 — двухпортовый коммутатор Thunderbolt 2. Учитывая достаточно ограниченные возможности модели, компания позиционирует устройство как «док-станцию с функцией KVM». Безусло...

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

Google удалила 89 вредоносных расширений нового типа из магазина Chrome Недобросовестные разработчики расширений используют новый способ кражи конфиденциальной информации жертв. Исследователи из Trend Micro назвали новое семейство вредоносных расширений Droidclub. Расширение Droidclub включают в себя так называемые «скрипты повтор...

Cumulocity IoT признана лучшей в рейтинге IoT-платформ Аналитическая компания MachNation признала платформу Cumulocity IoT лучшей лучшей среди 21 поставщика решений IoT в рейтинге платформ для расширения возможностей приложений IoT, подготовленном компанией в январе 2018 г. MachNation отмечает высочайшее качество и эффективность...

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

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

Патчи Drupal закрыли несколько серьезных уязвимостей Свежие обновления исправили несколько серьезных ошибок в популярной системе управления контентом (CMS) с открытым кодом Drupal. Апдейты коснулись версий 7.х и 8.х. Разработчики Drupal используют систему ранжирования ошибок Национального института стандартов и технологий США,...

Работа большой распределенной команды: преимущества удаленки, решения проблем, полезные инструменты Всем привет! Меня зовут Алексей, я тимлид команды Vimbox (платформа для обучения в Skyeng). Не так давно я выступал на конференции с докладом об удаленной работе и особенностях распределенной команды. Неожиданно темой заинтересовалось много людей, хотя я думал, что хайп уже...

Wine 3.0 и много плюшек На Хабре незамеченным прошел выход 3-й версии Wine — открытой реализацией Win32 API. Трудно найти другой проект с открытыми исходниками, пожалуй кроме самого ядра, который настолько много значит для пользователей Linux, MacOS, FreeBSD и других POSIX-совместимых ОС. Каждый ус...

Oracle расширяет возможности управления финансами Применяя к данным Oracle Data Cloud и данным партнерских платформ передовые достижения науки о данных и алгоритмы машинного обучения, новые решения Oracle Adaptive Intelligent Applications для систем планирования ресурсов предприятия (Enterprise Resource Planning, ERP) помог...

Видео: портал в другой мир в экране iPhone X Художник и дизайнер из Швеции Питер Норрби (Peder Norrby) создал оптическую иллюзию с помощью технологии ARKit в виде пугающей дыры в своём iPhone X.  Используя платформу для создания контента дополненной реальности ARKit, а также аппаратные возможности камеры TrueDepth...

Смарт-динамик Mark II стал второй колонкой Mycroft с фирменным голосовым ассистентом Авторы проекта Mycroft приобрели известность благодаря одноимённой программной платформе для голосового управления по типу Amazon Alexa или Microsoft Cortana. Цифровой ассистент Mycroft изначально ориентирован на дистанционное управление домашней элек...

[Перевод] Знакомство с реактивными потоками – для Java-разработчиков Привет, Хабр! Сегодня мы вернемся к одной из тем, затрагиваемых в нашей замечательной книге "Реактивные шаблоны проектирования". Речь пойдет об Akka Streams и потоковой передаче данных в целом — в книге Роланда Куна этим вопросам посвящены главы 10 и 15-17. Читать дальше →

Windows 10 сможет распознавать пользователей по рисунку вен Компании Fujitsu и Microsoft объединили усилия с целью интеграции в операционную систему Windows 10 дополнительной технологии биометрической идентификации пользователей. Речь идёт о расширении возможностей инструмента Windows Hello, который позволяет входить на устр...

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

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

Вышло дополнение Civilization VI: Rise and Fall В продажу поступило дополнение Rise and Fall для тактической стратегии Sid Meier’s Civilization VI. Пользовательские оценки DLC в Steam «смешанные». Некоторые сетуют на малое количество нововведений, другие ругают разработчиков за жадность – оригиналь...

Как сделать Chrome ещё удобнее: 21 расширение для работы с вкладками Эти расширения помогут организовать рабочее пространство и навести порядок в браузере, особенно если вы привыкли открывать сразу много вкладок.

Динамическое генерирование прокси-классов в Java Наверно каждому java разработчику рано или поздно потребуется использовать прокси-классы. Под катом представлены простые примеры, выполненные при помощи JDK proxy, cglib, javassist и byte buddy. Читать дальше →

Microsoft рассказала об ограничениях ARM-версии Windows 10 В декабре Microsoft представила первые ноутбуки на базе ARM-версии Windows 10, способные работать без зарядки большую часть дня. Устройства от HP, Asus и Lenovo ещё не поступили в продажу, поэтому об ограничениях операционной системы для этих компьютеров не было изв...

Мобильная «Яндекс.Почта» научилась работать со сторонними почтовыми сервисами Компания «Яндекс» расширила возможности мобильного почтового приложения для устройств под управлением операционных систем Android и iOS. Сообщается, что в клиенте «Яндекс.Почта» появилась возможность работать с почтовыми ящиками на других сер...

Грандиозный факап. Разбираем уязвимости проверки сертификатов SSL/TLS в небраузерном софте Для подписчиковПервоначально разработанный для браузеров, SSL/TLS-протокол стал стандартом де-факто вообще для всех защищенных интернет-коммуникаций. Список ситуаций, когда обмен информацией требует максимальной безопасности, довольно внушителен. В этой статье мы рассмотрим,...

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

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

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

Следующая версия Windows 10 будет включать в себя новую платформу ИИ Компания Microsoft на мероприятии Developer Day анонсировала новую платформу искусственного интеллекта, которая войдёт в состав следующей версии Windows 10. Новая платформа предоставит разработчикам инструменты, с помощью которых они смогут легко использовать ИИ и машинное ...

Обзор и практическое руководство по Katalon Recorder (Selenium IDE++ для Chrome и Firefox) Когда Firefox, начиная с версии Firefox 55, перестал поддерживать Selenium IDE, миллионы тестировщиков и разработчиков столкнулись с тем, что привычный ход работы по автоматизированному тестированию был нарушен, что вызвало среди них немалое беспокойство. К счастью, разработ...

Написание blockchain менее чем за 200 строк кода на Go Данный урок является хорошо адаптированным постом про простое написание blockchain на Javascript. Мы портировали его на Go и добавили дополнительных фич, таких как просмотр цепочек в браузере. Читать дальше →

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

Введение в Postman “Разработка API сложна, Postman делает её лёгкой” © Postdot Technologies, IncКогда видишь описание инструментов Postman — захватывает дух, просыпается чувство всевластия над своим будущим детищем. Кажется, что и взрощенные в прошлом "монстры" наконец-то падут перед тобой! В...

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

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

Это приложение перенесет уникальную функцию Pixel 2 на ваш смартфон Возможность управлять интерфейсом смартфона путем сдавливания боковых граней, являющаяся уникальной фишкой HTC U11 и Google Pixel второго поколения, могла быть реализована на гораздо большем количестве устройств. Это подтвердили разработчики студии Pocketdevelopers, выпусти...

Глобальное освещение с использованием трассировки вокселей конусами В этой статье я расскажу о реализации одного из алгоритмов расчёта глобального (переотражённого / ambient) освещения, применяемого в некоторых играх и других продуктах, — Voxel Cone Tracing (VCT). Возможно, кто-то читал старенькую статью ([VCT]) 2011 года или смотрел видео. ...

Netronome выпускает самую маленькую в мире сетевую карту 50GbE Компания Netronome, специализирующаяся на высокоскоростных сетевых решениях, представила сетевые карты Agilio CX SmartNIC for OCP, основанные на спецификациях OCP v2.0. Эти мезонинные карты расширения стали самыми маленькими сетевыми адаптерами, поддерживающими скорости...

Плюсы и минусы ведения бизнеса в США: наблюдения после года развития своей компании В прошлом году я рассказывал на Хабре о том, как получил визу О1 и переехал в США развивать собственный бизнес. В комментариях читатели задавали вопросы о том, каково это работать на себя в Америке. И если тогда мой опыт был слишком скудным, чтобы ответить, то теперь после...

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

Что такое Launcher 3, и откуда берется «Ошибка Launcher» Launcher 3 - пользовательская оболочка, которая довольно часто встречается на Android-устройствах. У ряда моделей смартфонов китайского производства она используется в качестве стандартной и является предустановленной. Некоторые пользователи устанавливают Launcher 3 для Andr...

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

Производство информационных систем. Часть 2. Формирование проектного решения V РАЗРАБОТКА ПЛАНА-ГРАФИКА ПРОЕКТНЫХ РАБОТ Чтобы выполнить большой и важный труд, необходимы две вещи: ясный план и ограниченное время. Элберт Хаббард И вот заказчик и исполнитель ударили по рукам, решив, что именно они будут производить, определив примерные сроки и стоимос...

Поиск по сайту с Reindexer — это просто. Или как сделать «instant search» по всему Хабрахабр-у Всем привет, В предыдущей статье я писал о том, что мы сделали новую in-memory БД — быструю и с богатыми функциональными возможностями — Reindexer. В этой статье хочу рассказать как при помощи Reindexer можно реализовать полнотекстовый поиск по сайту, написав минимум applica...

Разрешения во время выполнения Всем доброго! Вот мы и добрались теперь и до мобильных: стартовал набор на курс «Разработчик Android». Очередная небольшая веха и совершенно новое направление. Наш преподаватель — Семён Пилунц делится по этому поводу некоторыми своими размышлениями о разреще. Если ваше при...

Сетевые накопители QNAP D2 Pro и D4 Pro на платформе x86: обновление удачных недорогих моделей на 2 и 4 диска Компания QNAP решила закрепить успех устройств, представленных на нашем рынке в прошлом году, и предлагает новую линейку локализованных моделей уже на платформе x86. Сетевые накопители QNAP D2 Pro и D4 Pro позиционируются для требовательных домашних пользователей и в сегмент...

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

Разработка AI для пошаговой игры на Node.js (часть 1) Всем привет! Прошло целых полтора года с момента написания моей первой статьи на Хабре. С тех пор проект FOTM претерпел ряд изменений. В начале пройдёмся вкратце по всем модернизациям, а затем перейдём к детальному разбору основной фичи — AI. Читать дальше →

Обзор web-доступа к системе управления проектами Pilot-ICE Введение Зачем нужен web-доступ к системе управления проектами? Был ли с вами случай: когда вы забывали флешку, когда шли к заказчику или клиенту? Или оказывалось, что файл на флешке оказался другой версии? Согласно истории, именно это побудило Дрю Хьюстона, создать Dropbox....

Возрожден культовый плеер Winamp В основу своего проекта Элдредж положил версию Winamp 2.9, вышедшую в 2003 г. Его браузерный вариант включает в себя все памятные пользователям элементы оригинального Winamp, реализованные с помощью Web Audio API. Присутствует возможность настройки эквалайзера, загрузки MP3-...

Бюджетный смартфон Sharp Pi со сдвоенной камерой Компания Sharp сегодня представила свой новый бюджетный смартфон под названием Pi, который получил процессорную платформу от MediaTek и работает под управлением предустановленной ОС Android 7.0 Nougat. Как стало известно, Sharp Pi имеет 5,2-дюймовый HD IPS дисплей с разрешен...

Что будет вместо Windows 10 S? Windows 10 S — необычная версия самой популярной компьютерной операционной системы. Она была представлена в мае минувшего года, и похоже, в будущем ее сменит другое программное решение, которое будет доступно в версиях Home, Enterprise и Pro операционной системы Wind...

Применение методологии OWASP Mobile TOP 10 для тестирования Android приложений Согласно BetaNews, из 30 лучших приложений с более чем 500 000 установок 94% содержат по меньшей мере три уязвимости среднего риска, а 77% содержат хотя бы две уязвимости с высоким уровнем риска. Из 30 приложений 17% были уязвимы для атак MITM, подвергая все данные перехвату...

Как я искал идеальный инструмент для проектирования разговорных интерфейсов, или В поиске священного Грааля Павел Гвай, android-разработчик KODE Привет, меня зовут Павел pavelgvay, я работаю в калининградской студии разработки мобильных приложений KODE и около года назад активно погрузился в процесс разработки приложений для Google Assistant и просто-таки залип над этапом проект...

Отменяемые Promises в EcmaScript6 Владислав Власов, инженер-программист в Developer Soft и преподаватель курса Нетологии, специально для блога написал цикл статей о EcmaScript6. В первой части на примерах рассмотрели динамический анализ кода в EcmaScript с помощью Iroh.js. В этой статье расскажем, как реализ...

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

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

[Перевод] Как компания Atlassian построила бизнес стоимостью 10 млрд долларов. Часть 2 Продолжаем рассказывать историю Atlassian. 1 часть вы можете прочитать тут. 2015 год — настоящее время: расширение на прибыльные конкурентные рынки Для многих SaaS-компаний сегодняшний бизнес Atlassian выглядит как «конечная цель»: вырасти в огромную работающую на мировом...

Казначейство России переделают в платежную систему Об этом сообщил министр финансов Антон Силуанов на коллегии ведомства в Москве, передает CNews со ссылкой на информационное агентство "Интерфакс".По словам Силуанова, в 2018 г. в Бюджетный кодекс будут внесены поправки, которые сделают возможной работу системы казн...

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

Новая поисковая система по товарным знакам в РФ стартовала в рунете В России появился новый сервис онлайн-поиска по зарегистрированным и заявленным на регистрацию товарным знакам – linkmark.ru («Линкмарк»). Его создатели – команда профессиональных экспертов в области регистрации и защиты исключительных прав на объекты интеллектуальной собств...

От такой iOS 12 мы бы не отказались Недавно на площадке Behance дизайнерами был опубликован новый концепт iOS 12. По задумке авторов, Apple хоть и поставит большой упор на стабильность и производительность новой операционной системы, однако при этом не откажется от нововведений. В концепте представлены новый...

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

RoboCon 2018: отчёт о первой конференции по Robot Framework В начале года в Хельсинки прошла первая официальная конференция RoboCon 2018, посвящённая инструменту автотестирования Robot Framework. И мы, мейнтейнеры группы автоматизации интеграционного и системного тестирования компании «Петер-Сервис», не могли такое событие пропусти...

Смартфон среднего класса Huawei Y9 (2018) с четырьмя камерами Компания Huawei, как и обещала ранее, представила свой новый смартфон среднего класса под названием Y9 (2018), оснащенный четырьмя камерами на борту, стоимость которого будет составлять приблизительно 250 долларов. Huawei Y9 (2018) получил 5,93-дюймовый full-HD+ дисплей с ра...

Все пользователи в восторге от новых возможностей «Яндекс Браузера» Веб-браузер «Яндекс Браузер» является крайне популярным инструментом для серфинга по глобальной сети в России. Миллионы людей предпочитают использовать именно его, а не зарубежные Google Chrome, Mozilla Firefox или тот же Apple Safari. Виной всему крайне

IQBuds Boost планирует выпустить новые наушники Небольшая австралийская компания IQBuds Boost планирует выпустить новые наушники. Пара наушников для увеличения громкости Bluetooth, которая стоит $ 449, может тестировать и настраивать ваш слух, подключаться к телефону и отделять голоса от фонового шума. IQBuds от Nuheara –...

PhotoFast объявлет о полной совместимости своих новых устройств с iPhone X Компания PhotoFast представляет новые устройства для Компания PhotoFast, производитель мирового уровня устройств и аксессуаров iOS премиум-класса, базирующаяся в Тайване, объявила о совместимости своих новых устройств с iPhone X. Катридер SD CR-8700 Plus, картридер microS...

Модульное тестирование интерфейсов в Headless Chrome. Лекция Яндекса Чтобы непрерывно улучшать большие клиентские интерфейсы, нужна мощная система автотестов. Разработчик Яндекса Дмитрий Андриянов dima117 кое-что про это знает — пару месяцев назад он поделился своим опытом на Я.Субботнике в Нижнем Новгороде. — Сегодня я расскажу, как мы в ...

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

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