Социальные сети Рунета
Пятница, 29 марта 2024

Особенности настройки и запуска PVS-Studio в Docker на примере кода Azure Service Fabric Технологии контейнеризации активно используются для сборки и тестирования программного обеспечения. С появлением PVS-Studio для Linux, пользователям стала доступна возможность добавить статический анализ к другим методам тестирования своего проекта на этой платформе, в том ...

Hessian-Free оптимизация с помощью TensorFlow Добрый день! Я хочу рассказать про метод оптимизации известный под названием Hessian-Free или Truncated Newton (Усеченный Метод Ньютона) и про его реализацию с помощью библиотеки глубокого обучения — TensorFlow. Он использует преимущества методов оптимизации второго порядка ...

[Из песочницы] Как начать работать с Лямбда-выражениями в Java Привет, Хабр! Представляю вашему вниманию перевод статьи "How to start working with Lambda Expressions in Java" автора Luis Santiago. До того как Лямбда-выражения были добавлены в JDK 8, я использовал их в таких языках как C# и С++. Когда они были добавлены в Java...

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

Опять про пустые перечисления в C# На этот пост мня вдохновила свежая статья на Хабре отсылающая к уже давней проблеме (и советующей статье) о том, как же проверить, что IEnumerable является пустым. Однако в оригинальных статьях, авторы больше сфокусировались на том как оформить проверку, предположив, что про...

Три способа обновить запрос в Jira из ScriptRunner, используя Jira Java API В этой статье будут рассмотрены три способа обновления запроса в Jira, используя Jira Java API. Я буду использовать следующие методы Jira Java API: Issue.setCustomFieldValue(CustomField customField, Object value) CustomField.updateValue(FieldLayoutItem fieldLayoutItem, Is...

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

Для борьбы с читерами Valve использует сервер с 3456 процессорами и систему VACnet, основанную на методах глубокого обучения Практически перед всеми разработчиками популярных многопользовательских игр стоит проблема читеров. Её масштабы отличаются в зависимости от проекта, так что некоторые обходятся простым ПО, а некоторым приходится изгаляться другими способами. Как сообщают источники, ком...

Ускоряем метод Виолы-Джонса (Viola-Jones) В последнее время метод Виолы-Джонса, который долгое время был основным способом детектирования объектов на изображении, отступает под натиском более новых и совершенных алгоритмов. Тем не менее, актуальность этого метода еще сохраняется и в настоящем времени. Да, каскадный...

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

Отслеживаем действия пользователя с помощью CSS В этом посте вы сможете узнать, почему даже с выключенным JavaScript и без плагинов, вы все равно можете отсылать поведенческие данные на сторонний сервер. Также здесь мы рассмотрим метод, как получить поведенческую информацию от пользователей используя только HTML и CSS. В...

[Перевод] Что нового в Swift 4.1? Xcode 9.3 и Swift 4.1, наконец-то, уже не являются бета! Данный релиз содержит долгожданные улучшения стандартной библиотеки и самого языка. Если вы не следите за процессом Swift Evolution, то эта статья для Вас. В этой статье вы узнаете о наиболее значительных изменениях,...

Основы разработки под Microsoft Exchange Server На форуме TechNet Microsoft каждый день появляются новые вопросы, касающиеся разработки для Exchange\Exchange Online. Актуальными на сегодняшний день являются два метода разработки: с использованием веб-сервисов (EWS Exchange и другие) и без их использования. В этой статье р...

[Перевод] Медиа-запросы в адаптивном дизайне 2018 В июле 2010 года я написала статью «Как использовать CSS3 медиа-запросы для создания мобильной версии вашего сайта» для журнала Smashing. Спустя почти восемь лет эта статья по-прежнему очень популярна. Я решила вернуться к этой теме, поскольку теперь у нас есть такие метод...

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

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

Программный синтез звука на ранних персональных компьютерах. Часть 2 Это статья о первых программных синтезаторах, которые были когда-то созданы на самых обычных персональных компьютерах. Я даю несколько практических примеров по реализации простых методов звукового синтеза в историческом контексте. Перейти к первой части Читать дальше →

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

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

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

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

[Перевод] Как работает JS: веб-воркеры и пять сценариев их использования Публикуем перевод седьмой части часть серии материалов об особенностях работы различных механизмов JavaScript. Наша сегодняшняя тема — веб-воркеры. В частности, речь пойдёт о различных типах веб-воркеров, о том, как организована совместная работа тех частей, из которых они с...

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” п...

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

[Из песочницы] Социальная инженерия как метод атаки «Only for fun» — такой девиз мы часто использовали, атакуя какие-либо системы. За довольно короткий период своей деятельности скопилось большое количество материала. Передо мной встала задача, как его упорядочить. Целью данной статьи не является обучение взлому. Это просто и...

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

Ассоциативные правила, или пиво с подгузниками Введение в теорию Обучение на ассоциативных правилах (далее Associations rules learning — ARL) представляет из себя, с одной стороны, простой, с другой — довольно часто применимый в реальной жизни метод поиска взаимосвязей (ассоциаций) в датасетах, или, если точнее, айтемс...

[Из песочницы] 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: Постоянная память и интерфейс командной строки ...

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

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

Сборка проектов с dapp. Часть 1: Java Эта статья — начало цикла о сборке dapp'ом приложений на различных языках, платформах, технологических стеках. Предыдущие статьи про dapp (см. ссылки в конце материала) были больше обзорными, описывали возможности dapp. Теперь же пора поговорить более предметно и поделитьс...

Работа с API КОМПАС-3D → Урок 8 → Более сложные методы записи в основную надпись Продолжаем цикл статей по работе с API САПР КОМПАС-3D Сергея Норсеева, инженера-программиста АО «ВНИИ «Сигнал», автора книги «Разработка приложений под КОМПАС в Delphi». В качестве среды используется C++ Builder. Мы уже рассматривали работу с основной надписью в четвертой ча...

Изменения в стандартной библиотеке Java 10 Недавно состоялся релиз-кандидат Java 10, и на Хабре вышла статья, где перечислены JEP'ы, вошедшие в новый релиз. Однако не все изменения в Java получают свой JEP. В частности, небольшие дополнения стандартной библиотеки практически всегда происходят без JEP'ов. При этом час...

Дополнительные факторы оценки спам активности IP/Email адресов в Anti-Spam/Anti-Fraud API CleanTalk Cloud Anti-Spam в процессе работы, собирает данные о спам активности IP/Email адресов. На основе этих данных формируется база данных спам IP/email. CleanTalk предоставляет несколько API методов для работы с имеющимися у нас данными. Недавно нами были добавлены нов...

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

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

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

[Перевод] Lightning Network In Depth, part 2: HTLC And Payment Routing В прошлой статье мы с вами подробно разобрали работу платежных каналов, а также несколько различных методов по обеспечению безопасности платежей, проходящих через них, однако этого все еще недостаточно для построения рабочей сети каналов: даже если мы уверены в том, что внут...

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

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

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

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

[Перевод] Чего из Rust мне не хватает в C Об авторе. Федерико Мена-Кинтеро — мексиканский программист, один из основателей проекта GNOME, автор книги «Язык программирования Rust» Librsvg достиг переломного момента: внезапно выясняется, что легче портировать некоторые основные части из C на Rust, чем просто добавит...

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

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

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

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

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

Z̴a҉̠͚l͍̠̫͕̮̟͕g͚o̯̬̣̻F̮̫̣̩͓͟ͅu̯z̡͉͍z̪͈̞̯̳̠ͅi̴̜̹̠̲͇n̰g̱͕̫̹͉͓: использование нестандартных методов размытия пейлоадов   Использование нестандартных техник обфускации пейлоада (полезной нагрузки) при проведении тестирования на проникновение веб-приложений может позволить обходить фильтрацию защитных средств и способствовать реализации вектора атаки. В этой статье я расскажу про т.н. Z̴a҉̠͚l...

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

Масштабирование Selenium Представьте, что у вас есть всего один тест с использованием Selenium. Что может сделать его нестабильным? Как его ускорить? Теперь представьте, что тестов стало два. Теперь представьте сотню. Как заставить быстро отработать такую кучу тестов? Что произойдет, если количество...

[Перевод] Программируй меньше, думай больше… инкрементально К сожалению, примеры проектов, на которые разработчики потратили много времени, скажем более полугода, но так никогда и не выпустили в свет, нередки. Фагнер Брек считает, что такое происходит потому, что эти проекты не реализовывали принци...

[Перевод] Руководство по фоновой работе в Android. Часть 2: Loaders Это вторая из серии статей об инструментах и методах фоновой работы в Android. Ранее уже были рассмотрены AsyncTask, в следующих выпусках — ThreadPools с EventBus, RxJava 2 и корутины в Kotlin. Читать дальше →

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

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

[Перевод] Создаем своих криптокотиков (Часть 1) В первых числах декабря 2017 года, пользователи блокчейн-проекта Ethereum столкнулись с неприятным открытием — любые их транзакции просто перестали подтверждаться. Фактически, вся сеть перестала функционировать из-за неожиданно разросшегося в размерах мемпула. Совсем скоро ...

Автоэнкодер в задачах кластеризации политических событий Я не люблю читать статьи, смотрю demo и кодДемо TensorBoard Projector Работает в Chrome. Открываем и нажимаем на Bookmarks в нижнем правом углу. В верхнем правом углу можем фильтровать классы. В конце статьи есть GIF картинки с примерами использования. Проект на GitHub ...

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

[Из песочницы] Использование Reflection.Emit для предварительной компиляции выражений в MSIL Привет, Хабр! Представляю вашему вниманию перевод статьи "Using Reflection.Emit to Precompile Expressions to MSIL" автора Steve Marsh. Введение Классы в этом проекте позволяют анализировать текстовые выражения, введенные пользователем, и компилировать их на сборк...

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

Секционирование в PostgreSQL 10 и не только У многих достижений версии PostgreSQL 10 прописка в разделе Секционирование (Partitioning). И это справедливо: очевидно, что при переходе от 9.6 к 10 произошел мощный технологический скачок. В предыдущих версиях секции строили и управляли ими, теми средствами, что уже имели...

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

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

Splunk + Excel. Что получится? В предыдущих статьях мы много рассказывали о Splunk. Это продукт, который позволяет собирать и анализировать данные с любых IT-систем в режиме реального времени, например, это могут быть результаты работы web-сервера, почтового сервера, Windows, различных приложений и тд. Зн...

Индексы в PostgreSQL — 10 В прошлых статьях мы рассмотрели механизм индексирования PostgreSQL и интерфейс методов доступа, а также хеш-индексы, B-деревья, GiST, SP-GiST, GIN, RUM и BRIN. Нам осталось посмотреть на индексы Блума. Bloom Общая идея Классический фильтр Блума — структура данных, позволя...

Программный синтез звука на ранних персональных компьютерах. Часть 1 Это статья о первых программных синтезаторах, которые были когда-то созданы на самых обычных персональных компьютерах. Кроме того, это еще и набор уроков по реализации простых методов звукового синтеза в историческом контексте. Читать дальше →

[Перевод] Руководство по SEO JavaScript-сайтов. Часть 2. Проблемы, эксперименты и рекомендации В первой части перевода этой статьи мы говорили о том, как веб-мастер может взглянуть на свой ресурс глазами Google, и о том, над чем стоит поработать, если то, что увидит разработчик сайта, окажется не тем, чего он ждёт. Сегодня, во второй части перевода, Томаш Рудски ра...

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

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

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

От установки AWX до запуска первого плейбука — настройка централизованного управления Ansible Количество серверов в нашей инфраструктуре уже перевалило за 800, хотя еще год назад их было около 500. Для работы с этим всем активно используются решения от Red Hat. Про FreeIPA — для организации и управления доступами для Linux-серверов — мы уже писали, сейчас же я хочу...

[Из песочницы] Парсеры, обработка текста. Просто о сложном. CFG, BNF, LL(k), LR(k), PEG и другие страшные слова Наверное, каждому программисту приходилось сталкиваться с задачами вида «прочитать что-то в формате А и произвести с ним некие манипуляции». Будь то json, логи nginx, cfg, sql, yaml, csv или что-то еще. Хорошо, когда можно воспользоваться библиотекой, однако, по разным причи...

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

[Перевод] Leakpocalypse: Rust может неприятно удивить Прим. пер.: Кто-то должен был сделать перевод этой статьи, несмотря на то, что она достаточно стара (2015 год), поскольку она показывает очень важную особенность работы с памятью в Rust — с помощью безопасного (не помеченного как unsafe) кода можно создавать утечки памяти. Э...

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

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

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

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

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

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

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

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

[Перевод] Новшества React 16.3(.0-alpha) React 16.3-alpha опубликован в npm, его уже можно загружать и использовать. Сегодня мы поговорим о самых крупных и интересных нововведениях этого релиза. В частности, речь пойдёт об API Context, о новых методах жизненного цикла, о статическом методе getDerivedStateFromProps,...

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

О портировании проекта MIPSfpga Перенос программного обеспечения с одной компьютерной архитектуры на другую в принципе, с некоторыми оговорками, дело относительно простое. Здесь на помощь приходят такие общеизвестные инструменты, как autoconf / automake/ libtool / gnulib. Собрать программу из исходников ...

Анимации в Android по полочкам (Часть 3. «Низкоуровневые» анимации) Часть 1. Базовые анимации Часть 2. Комплексные анимации Часть 3. «Низкоуровневые» анимации Часть 4. Анимации переходов Часть 5. Библиотеки для работы с анимацией Все методы рассмотренные в предыдущих частях хороши и удобны, однако если нам нужно анимировать большое количест...

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

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

[Перевод] UX-исследования и сила доказательств Привет всем! Предлагаю вашему вниманию перевод статьи Dr. Philip Hodgson (@bpusability в Twitter). Он имеет BSc, MA и PhD в экспериментальной психологии. У него за спиной более чем 20-летний опыт работы в качестве исследователя, консультанта и тренера по юзабилити, пользоват...

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

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

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

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

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

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

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

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

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

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

Каждый проект ICO содержит в среднем 5 уязвимостей Как говорится в отчете, подготовленом Positive Technologies, в каждом третьем проанализированном проекте были обнаружены недостатки, позволяющие атаковать непосредственно организаторов ICO. Пример - атака с целью получения доступа к электронной почте для восстановления парол...

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

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

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

[Перевод] Optimistic UI, CQRS and EventSourcing При разработке высоконагруженных веб-приложений для лучшего масштабирования часто применяется такой принцип, как CQRS. Он гласит, что метод должен быть либо командой, выполняющей какое-то действие, либо запросом, возвращающим данные, но не одновременно и тем, и другим. Друг...

Как выпустить самоподписанный SSL сертификат и заставить ваш браузер доверять ему Все крупные сайты давно перешли на протокол https. Тенденция продолжается, и многие наши клиенты хотят, чтобы их сайт работал по защищенному протоколу. А если разрабатывается backend для мобильного приложения, то https обязателен. Например, Apple требует, чтобы обмен данны...

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

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

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

Скрипт получения информации из образа Windows Имею серию статей посвящённых теме обслуживания образов Windows командами системы DISM. В моих статьях приводились примеры скриптов на языке интерпретатора командной строки cmd.exe. В результате работы исходный образ Windows (живая система или автономный файл *.wim) изменялс...

[recovery mode] Анализ данных — основы и терминология В этой статье я бы хотел обсудить базовые принципы построения практического проекта по (т. н. «интеллектуальному») анализу данных, а также зафиксировать необходимую терминологию, в том числе русскоязычную. Согласно википедии, Анализ данных — это область математики и информа...

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

Предсказание случайности. Изучаем ASLR в Linux и GNU libc, обходим защиту адресного пространства и stack canary Для подписчиковЗа время существования в ядре Linux появилось множество различных механизмов защиты от эксплуатации уязвимостей: в частности, это ASLR и stack canary, противодействующие эксплуатации уязвимостей в приложениях. В данной статье мы внимательно рассмотрим реализац...

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

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

[Перевод] Топ-10 ошибок из 1000+ JavaScript-проектов и рекомендации по их устранению В компании Rollbar, которая занимается созданием инструментов для работы с ошибками в программах, решили проанализировать базу из более чем 1000 проектов на JavaScript и найти в них ошибки, которые встречаются чаще всего. В результате они сформировали список из 10 наиболее ч...

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

Удостоверяющий Центр на базе OpenSSL, SQLite3 и Tcl/Tk Если прогуляться по просторам Хабрахабра, то можно найти различные публикации на тему создания цифровых сертификатов, организации Центров сертификации (ЦС) или даже Удостоверяющих Центров (УЦ) на базе OpenSSL. В основном эти статьи в той или иной мере полноты описывают испо...

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

UE4 и мобильная разработка: мифы и реальность Широко распространено мнение, что Unreal Engine 4 — слишком «тяжелая» технология для мобильных игр. В то же время число проектов, выпущенных на этом движке в мобильных сторах, растёт с каждым днём. Почему все больше разработчиков выбирают для своих проектов UE4? С какими сл...

Yoink – кроссплатформенный карман для избранных файлов и папок С приложением Yoink для Mac мы познакомились в 2013-том году, когда пользователи и разработчики ещё не сходили с ума по методу Drag & Drop, как сейчас. Тогда редакция присудила приложению 9 баллов и выбрала его для решения проблемы по перетаскиванию часто используемых о...

Сопроводительное письмо. Что стоит писать? Резюме написано. Вакансия мечты найдена. Остается одна маленькая, но порой непосильная задача – написать сопроводительное письмо. О том, что нужно писать, а чего стоит избегать в сопроводительных письмах, поделилась Alison Doyle, специалист по найму в США и основатель сервис...

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

TSI Analytics запустила аналитическое шоу о криптовалютах Международная компания TSI Analytics запустила на своем Youtube-канале построенное в формате дискуссии новое аналитическое ток-шоу о криптовалютах. В первом выпуске шоу #АналитикLIVE трейдер Александр Росачинский и аналитик Олег Сергеев ведут спор о том, каким методом анализ...

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

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

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

Большой обзор ПО и его возможностей Среди миллионов пользователей персональных компьютеров есть много тех, кто понимает важность постоянного совершенствования своих навыков. На soft-ok.net найдется много полезной информации для опытных юзеров и для тех, кто только недавно приобрел свой первый персональный комп...

[Из песочницы] Рекомендации по информационной безопасности для малого и среднего бизнеса (SMB) Привет, Хабр! Представляю вашему вниманию перевод и адаптацию статьи "CIS-Controls Implementation Guide for Small- and Medium-Sized Enterprises (SMEs)". Введение Утечки информации о кредитных картах, кража персональных данных, программы-вымогатели (например, Wann...

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

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

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

Созданы 4D-очки с эффектом приближения объектов Разработчики из университета Калифорнии создали «4D-очки», которые позволят объектам из фильмов прикоснуться к зрителю во время просмотра. Для того, чтобы усилить эффект присутствия, очки начинают в буквальном смысле «трогать» пользователя, добавляя доп...

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

Spring AOP и JavaConfig в плагинах для Atlassian Jira В этой статье разработаем плагин для Atlassian Jira, где с помощью JavaConfig определим бин с областью видимости прототип, залогируем вызовы методов бина, используя AOP, и выведем информацию из внешних бинов (ApplicationProperties, JiraAuthenticationContext и ConstantsManag...

[Из песочницы] Что такое gtag.js в Google Analytics и нужен ли он вам? Вы читаете перевод статьи "What Is gtag.js with Google Analytics and Do I Need It?" автора Amanda Schroeder. Если недавно вы добавляли код отслеживания Google Analytics на сайт, то заметили совершенно другой код счётчика, который выглядит так: Сложилась какая-то ...

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

[Перевод] Как решить 90% задач NLP: пошаговое руководство по обработке естественного языка Неважно, кто вы — зарекомендовавшая себя компания, или же только собираетесь запустить свой первый сервис — вы всегда можете использовать текстовые данные для того, чтобы проверить ваш продукт, усовершенствовать его и расширить его функциональность. Обработкой естественног...

Huobi и 500 Startups займутся поддержкой перспективных блокчейн-проектов Акселератор стартапов из Кремниевой долины 500 Startups объявил о партнерстве c Huobi Labs, подразделением некогда популярной китайской биржи Huobi, в рамках которого компании займутся поддержкой начинающих блокчейн-проектов, сообщает Coindesk. Начинающие проекты смогут расс...

Git: советы новичкам – часть 3 В финальной части нашей серии статей о работе с Git мы продолжим разговор о ветках, рассмотрим особенности работы с командой push и расскажем, что такое rebase. Первую и вторую статьи серии мы можете прочитать по ссылкам. Читать дальше →

[Перевод] Генерируем уровни для игры с помощью нейросетей Предисловие За последние несколько лет прогресс в области искусственного интеллекта привёл к созданию методов машинного обучения на основе обучения представлениям (representation-learning) с несколькими слоями абстракции — так называемому «глубокому обучению». Общественное ...

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

Как поднять проект на PHP в Docker под Windows Чем является статья Статья является набором простых, понятных инструкций и советов для пользователей Docker под Windows. Статья поможет разработчикам на PHP быстро поднять проект. Описываются проблемы и их решения. Статья полезна тем, кто не обладает бесконечным ресурсом вре...

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

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

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

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

Метрики на службе у QA Апрельская статья из цикла «Календарь тестировщика» посвящена метрикам. Кирилл Раткин, тестировщик Контур.Экстерна, расскажет как повысить эффективность тестирования с их помощью и не уйти в крайности. Как часто вам приходится что-либо оценивать? Наверное, каждый день. Хо...

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

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

«Газпромнефть-Логистика» будет обучать персонал с помощью VR-тренажеров В рамках реализации проекта было закуплено 6 комплектов Samsung Gear VR. Кроме того, было создано 11 комплексных VR-симуляций, моделирующих реальные производственные объекты, имитацию действий персонала в рамках штатных процессов работы и в аварийных ситуациях.

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

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

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

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

Разбор ICO TenX: scam или нет? 2017 год был годом бума криптовалют и ICO. Миллиарды долларов были собраны проектами у большинства из которых был только whitepaper и честное слово. Не было ни юрлиц, ни собственности, ни продукта, ни команды. Я решил пристальнее разобрать проекты собравшие десятки миллионов...

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

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

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

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

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

Статистика Backblaze, научный подход к анализу надёжности накопителей Фирма Backblaze регулярно публикует статистику по отказам своих жёстких дисков, и даже выложила в свободный доступ полный архов со статистикой S.M.A.R.T параметров всех своих накопителей. В этой статье я покажу как с помощью при помощи лома и какой-то матери с помощью научны...

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

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

Как собирать данные с сайтов: онлайн-сервисы и Python 31 марта 2018 года в Перми состоялся митап Теплицы социальных технологий, посвященный технологии веб-скрейпинга с помощью программного кода. Участники обсудили необходимость сбора данных и рассмотрели сценарии использования собранных данных для исследования проблемы, из...

[Из песочницы] Обзор кейсов интересных внедрений Big Data в компаниях финансового сектора Кейсы практического применения Больших данных в компаниях финансового сектора Зачем эта статья? В данном обзоре рассматриваются случаи внедрения и применения Больших данных в реальной жизни на примере «живых» проектов. По некоторым, особенно интересным, во всех смыслах, кей...

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

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

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

Пишем плагин для Unity правильно. Часть 1: iOS Когда делаешь на Unity игры для мобильных платформ, рано или поздно придется писать часть функционала на нативном языке платформы, будь то iOS (Objective C или Swift) или Android (Java, Kotlin). Это может быть свой код или интеграция сторонней библиотеки, сама установка мо...

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

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

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

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

Проблемы при работе с кэшем и способы их решения Привет, Хабр! Меня зовут Виктор Пряжников, я работаю в SRV-команде Badoo. Наша команда занимается разработкой и поддержкой внутреннего API для наших клиентов со стороны сервера, и кэширование данных — это то, с чем мы сталкиваемся каждый день. Существует мнение, что в прог...

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

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

Как мы адаптировали стек ELK для мониторинга и анализа ошибок на Java и .NET проектах Пациент приходит к врачу и жалуется на боль в животе. «Срочно на операцию! — отвечает врач. — Сейчас мы вас разрежем, покопаемся и постараемся зашить как было». Когда пользователи ругались на работу системы, называя программистов негодяями, мы поднимали журнал событий и смо...

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

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

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

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

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

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

Видео: командная работа в первом геймплейном трейлере LEGO The Incredibles Компания Warner Bros. Interactive Entertainment представила трейлер экшена «LEGO Суперсемейка» (LEGO The Incredibles), в котором впервые показала реальный игровой процесс «нового захватывающего приключения, созданного по мотивам знаменитой дилогии ...

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

[Из песочницы] Разработка высоконагруженного WebSocket-сервиса Как создать веб-сервис, который будет взаимодействовать с пользователями в реальном времени, поддерживая при этом несколько сотен тысяч коннектов одновременно? Всем привет, меня зовут Андрей Клюев, я разработчик. Недавно я столкнулся с такой задачей – создать интерактивный ...

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

Книга «Node.js в действии. 2-е издание» Второе издание «Node.js в действии» было полностью переработано, чтобы отражать реалии, с которыми теперь сталкивается каждый Node-разработчик. Вы узнаете о системах построения интерфейса и популярных веб-фреймворках Node, а также научитесь строить веб-приложения на базе Ex...

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

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

В браузере Safari устранили недостатки механизма HSTS Разработчики браузерного движка WebKit залатали потенциально опасную уязвимость в механизме HSTS, который отвечает за перенаправление запросов на https-версию сайта. Ошибка позволяла злоумышленникам получить доступ к уникальному идентификатору посетителя веб-ресурса, а потом...

React HoC в TypeScript. Типизация без боли Много раз, когда шла речь о переводе React-проектов на TypeScript, я часто слышал, что самую сильную боль вызывает создание HoC’ов (Higher-Order Components — компоненты-обертки). Сегодня я покажу приём, как делать это безболезненно и довольно легко. Данный приём будет поле...

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

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

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

Почему полезно читать любые отзывы пользователей Перевод статьи UI-разработчика Dropbox Джона Саито, в которой он поделился выводами, сделанными после прочтения несколько тысяч пользовательских ревью.

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

[Перевод] Профилирование: измерение и анализ Привет, я Тони Альбрехт (Tony Albrecht), инженер в Riot. Мне нравится профилировать и оптимизировать. В этой статье я расскажу об основах профилирования, а также проанализирую пример С++-кода в ходе его профилирования на Windows-машине. Мы начнём с самого простого и будем п...

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

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

Специалисты поняли, как похудеть, работая в офисе То, что сидячая работа способствует накоплению лишних килограммов, все знают давно. Ученые проанализировали все причины, которые могут провоцировать такой результат. Они пришли к выводу, что даже трудясь в офисе по 8-9 часов, можно худеть, информирует supreme2.ru. Специалист...

[Перевод] Метод Бенджамина Франклина для чтения книг по программированию Посмотрим правде в глаза, книги по программированию — отстой. Эти общие книги по распределённым системам, науке о данных и так далее — их можно читать бесконечно. Но за редким исключением у практических руководств по языку/фреймворку/СУБД/кексопечке есть нечто общее. Зверюшк...

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

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

Android P получит жесты iPhone X Компания Google в статье о поддержке DNS и TLS в Android P Developer Preview случайно раскрыла одну важную деталь интерфейса. Речь идет об отказе от привычных навигационных кнопок в пользу управления жестами. Навигационная панель теперь почти полностью повторяет таковую в ...

[Перевод] Эксперименты с AR: когда C# встречается с CSS Часто при работе над проектом самые большие технические сложности возникают тогда, когда меньше всего этого ожидаешь. В моём случае это произошло, когда я работала с Google Creative Lab над прототипом эксперимента по переносу песни Грейс Вандервол Moonlight в дополненную ре...

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

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

Нарушения безопасности мобильных приложений как результат недостаточного внимания компаний-разработчиков Во второй половине 2017 года в Google Play разработчики загружали примерно по 2800 приложений каждый день. По AppStore данные пока не удалось найти, но вряд ли во много раз меньше. Каждое из этих приложений содержит определённое количество данных (data), которые хранятся или...

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

Состоялся релиз версии 3.1.3 биткоин-кошелька Electrum Разработчики Electrum выпустили версию 3.1.3 популярного биткоин-кошелька. New release: Electrum 3.1.3. Release notes and download: https://t.co/Y2DXoUyOgk — Electrum (@ElectrumWallet) 18 квітня 2018 р. В новой версии улучшена производительность, исправлены различные мелкие ...

Splunk Scripted Input. Или как использовать скрипты для получения данных о работе систем и анализировать их в Splunk Ранее мы писали, как можно загрузить логи в Splunk из каталога или с помощью syslog, рассказывали как забирать стандартные виндовые и линуксовые события, но что если нам необходимо получать более гранулярную информацию о работе наших систем? В таком случае на помощь приходя...

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

[Перевод] Почему фотография Скарлетт Йоханссон заставила PostgresSQL майнить Monero В рамках кампании по защите данных наших клиентов мы в Imperva рассказываем о разных методах атак на БД. Если вы не знакомы с нашим исследовательским проектом StickyDB, почитайте прошлые статьи: часть I и часть II. Там описано устройство сети ханипотов (рис. 1), которая зама...

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

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

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

[Из песочницы] Как объяснить родственникам кто вы в мире ИТ на примере булочек Привет, Хабр! Представляю вашему вниманию перевод статьи "How to Explain Your Tech Job to Your Family" автора Mischa von Nachtigal. Список метафор, которые с легкостью помогут вам передать суть вашей профессии в ИТ за обеденным столом. Итак поехали! Читать даль...

Тернарные операторы и логическое “И” в React.js Всем привет! Вы читаете перевод статьи Donavon West “Conditional Rendering in React using Ternaries and Logical AND” Существуют несколько способов заставить React рендерить то, что вам нужно. Вы можете использовать традиционный оператор if или switch. В этой статье мы рас...

Видео дня: демо Futuremark с демонстрацией преимуществ трассировки лучей Вчера компания Nvidia представила технологию RTX, которая принесёт метод трассировки лучей в игры. Microsoft также анонсировала API DirectX Raytracing (DXR), что сделает возможным реализацию технологии на видеокартах, отличных от поколения Volta. Компания Futuremark бы...

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

[recovery mode] Как устроен софт-лонч: разбор от Zorka.Mobi и Nitro Games Каждый разработчик однажды понимает, что пришло время показать свой продукт будущим пользователям. Софт-лонч — первая проверка приложения на выживаемость, именно тестовый запуск раскрывает его сильные и указывает на слабые стороны. В этой практической статье опытом софт-лонч...

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

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

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

Безопасно ускоряем Erlang приложение c помощью NIF на Rust В статье освещен вопрос интеграции Erlang и Rust на примере реализации вероятностной структуры данных Бёртона Блума, позволяющей проверить принадлежность элемента множеству с необходимой точностью. Читать дальше →

Gesturizer: 3D-touch и жесты в iOS приложения Жесты на мобильных устройствах, выполняемые стилусом или пальцем, могут быть эффективнее и удобнее стандартных взаимодействий с кнопками и меню в зависимости от контекста и задачи. Однако, необходимость запоминания жестов и связанных с ними команд вызывают некоторые трудност...

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

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

Идет прием заявок на первый этап конкурса «Социальный предприниматель – 2018» Фонд “Наше будущее” объявляет о начале приема заявок для участия в первом этапе конкурса “Социальный предприниматель – 2018”. Предприниматели, которые хотят получить финансирование своих проектов летом этого года, должны отправить заявки до 1 марта 2018 года. Заявки на ...

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

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

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

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

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

Документирование API — документация из тестов Пост в продолжение темы экспериментальных решений (https://habrahabr.ru/post/350382/), откуда будет переиспользован код для примера. В прошлом посте я затронул тему, как можно написать тесты на простой сервис, когда он выступает в роли черного ящика и из кода теста у нас нет...

[Перевод] Девять вопросов о работе с памятью в V8 Как известно, JavaScript-движок V8 весьма популярен. Он применяется в браузере Google Chrome, на нём основана платформа Node.js. В материале, подготовленном Мэттом Зейнертом, перевод которого мы публикуем сегодня, приведено девять вопросов, посвящённых особенностям того, как...

[Перевод] Понимая зависимости От переводчика Мы должны внедрять, а не фантазировать! (Рина Зеленая, к/ф «Девушка без адреса») К переводу этой статьи меня побудили две причины: 1) желание лучше разобраться с фреймворком Spring, 2) небольшое количество источников по теме на русском языке. Краеугольный ...

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

Первая ракета Falcon Heavy вывела в космос не только Tesla Roadster, но и «секретный» груз Несколько дней назад компания SpaceX успешно совершила первый запуск тяжёлой ракеты-носителя Falcon Heavy. В ходе запуска полезная нагрузка в виде автомобиля Tesla Roadster была выведена на заданную орбиту, а два из трёх бустеров были успешно возвращены. Сейчас стало и...

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

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

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

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

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

[Из песочницы] Тестирование проектов C/C++ с помощью Python Введение Хорошо известна возможность интеграции Python и C / C++. Как правило, этот прием используется для ускорения программ на Python или с целью подстройки программ на C / C++. Я хотел бы осветить возможность использование python для тестирования кода на C/C++ в IDE без п...

Скрытая передача данных по TLS в обход защиты периметра Исследователи выпустили PoC-фреймворк для создания скрытого канала передачи данных по протоколу TLS. Этот метод использует возможности, предоставляемые стандартом X.509 для инфраструктуры открытого ключа, и позволяет скрыть обмен с C&C после вторжения и вывести данные в ...

Let's Encrypt отложил выпуск wildcard-сертификатов из-за проблем безопасности Статистика Let's Encrypt 4 января 2018 года центр сертификации Let's Encrypt начал тестирование конечной точки программных интерфейсов для автоматической выдачи wildcard-сертификатов. Эти сертификаты выдаются только в новой версии автоматизированной среды управления сертиф...

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

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

[Перевод] Перевод книги «Социальная архитектура»: Торговые марки для open source проектов Торговые марки. Что они такое, нужны ли они вам и сколько это стоит? Эти вопросы часто возникают при построении open source проекта. Торговые марки могут быть ключом, который защитит проект от недобросовестных людей. Хотя тут мало что советовать. Поэтому вот мой гид по испол...

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

[Перевод] Разбор алгоритма консенсуса в Tendermint В этой статье описан алгоритм консенсуса BCA (Byzantine Consensus Algorithm), используемый в Tendermint. Разработанный на основе протокола DLS, он не требует никакого "активного" майнинга, как в Proof-of-Work, и может обеспечить безопасную работу сети при наличии как миниму...

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

Понимание lvalue и rvalue в C и С++ Eli Bendersky, Understanding of lvalues and rvalues in C and C++ (https://eli.thegreenplace.net/2011/12/15/understanding-lvalues-and-rvalues-in-c-and-c) От переводчика: предлагаю Вашему вниманию перевод интересной статьи об lvalue и rvalue в языках C/C++. Тема не нова, но з...

Алгоритм выбора location в Nginx Алгоритм выбора location обязателен к знанию при настройке nginx. Тем не менее, на официальном сайте nginx (на 2018 год) не сказано ни слова про алгоритм выбора в случаях, когда какие-то location'ы вложены друг в друга, а в статьях в интернете приводятся в корне неверные алг...

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

[Перевод] Кончина программной инженерии и последний методист Disclaimer: Это перевод статьи профессора Бертрана Мейера из блога Communications of the ACM. Статья относительно недавняя (по сравнению с предыдущим переводом). А профессор Бертран Мейер, представлять которого не нужно, является почетным доктором и заведующим кафедрой ИТМО,...

Ускорение сборки JavaScript-кода с использованием webpack 2–3 Появляется все больше SPA салонов. Даже лендинги люди пилят на React. А действительно сложное веб-приложение уже трудно представить с другим подходом. Одна из главных проблем современного фронтенда — это сборка таких проектов. С этим помогают справляться бандлеры. Иван Сосн...

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

Информационная архитектура и технология DITA. По мотивам лекции в Яндексе Darwin Information Typing Architecture (DITA) — XML-технология для автоматизации процессов, связанных с технической документацией. За время существования DITA накопилось большое количество разнообразных возможностей, подходов к организации контента, а также конкретных механи...

[Перевод] Blockchain на Go. Часть 5: Адреса Содержание Blockchain на Go. Часть 1: Прототип Blockchain на Go. Часть 2: Proof-of-Work Blockchain на Go. Часть 3: Постоянная память и интерфейс командной строки Blockchain на Go. Часть 4: Транзакции, часть 1 Blockchain на Go. Часть 5: Адреса Blockchain на Go. Часть 6: Тра...

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

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

СКИДКА (299р → 149р) MyScript Calculator – рукописный калькулятор для iPad и iPhone, или как быстро проверить работу школьника Если Вам часто доводится выполнять расчеты на iOS-устройстве, то мы настоятельно рекомендуем опробовать приложение MyScript Calculator. Проект получил награду Mobile App Showdown за инновационность на международной выставке CES 2013.  Скачать калькулятор MyScript Calculator ...

В Санкт-Петербурге пройдет хакатон по работе с большими данными 30 марта – 1 апреля 2018 года в Санкт-Петербурге пройдет хакатон Data.Monitor по работе с большими и открытыми данными. Предлагаем присоединиться к сообществу и поработать с данными для решения конкретных общественных проблем Санкт-Петербурга. Работа над проектами предп...

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

Можно ли войти в закрытую дверь, или как патчат уязвимости В мире каждый день публикуются десятки CVE (по данным компании riskbasedsecurity.com за 2017 год было опубликовано 20832 CVE). Однако производители стали с большим пониманием и вниманием относиться к security-репортам, благодаря чему скорость закрытия багов существенно увели...

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

Распознавание объектов с помощью PowerAI Vision Разработчики программного обеспечения уже несколько лет активно работают с библиотеками машинного обучения, решая задачи компьютерного зрения и обнаружения объектов. Но реализация таких задач (а каждую модель машинного обучения необходимо спроектировать, развернуть, собств...

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

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

Cоциальная инженерия открывает хакерам двери в компании Специалисты Positive Technologies собрали статистику эффективности атак с применением методов социальной инженерии. В ходе проектов по анализу защищенности корпоративной инфраструктуры эксперты компании имитировали активность хакеров и отправляли сотрудникам компаний-заказчи...

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

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

Splunk – Установка агентов для сбора логов Windows и Linux Нам часто задают вопросы о том, как загрузить различные данные в Splunk. Одними из самых распространенных источников, представляющих интерес, оказались логи Windows и Linux, которые позволяют отслеживать неполадки операционных систем и управлять ими. Загружая данные в Splunk...

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

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

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

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

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

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

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

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

Издательство «Открытые системы» проводит форум BIG DATA Уже на протяжении семи лет форум знакомит заинтересованную профессиональную аудиторию с тенденциями завтрашнего дня и предоставляет участникам разнообразные возможности для того, чтобы поднять самые актуальные вопросы дня сегодняшнего. Сегодня, 28 марта, издательство &...

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

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

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

PlayerUnknown's Battlegrounds получит обновленный анти-чит Разработчики из студии Bluehole рассказали о своих планах по борьбе с мошенниками в игре PlayerUnknown's Battlegrounds и поделились деталями новой анти-чит системы. Уже сейчас обновлённая версия защиты работает на тестовых серверах, а в самом ближайшем обновлении (на следующ...

Дуров: Telegram будет сам обходить блокировку Telegram будет самостоятельно обходить блокировку «Роскомнадзора». Об этом Павел Дуров, основатель мессенджера, написал на своей странице в социальной сети «ВКонтакте». По его словам, встроенные в приложение инструменты не потребуют совершения каких-либо действий от самих ...

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

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

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

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

Проект Microsoft Zanzibar размывает границы между реальным и виртуальными мирами Компания Microsoft сообщила о разработке интересного и перспективного проекта под кодовым названием «Project Zanzibar». Если коротко, появляется возможность во время игры с физическими объектами «размыть границы между реальным миром и виртуальными ...

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

[recovery mode] Авторизация с помощью сертификата ssl на nginx + Let's Encrypt Добрый день, вечер или ночь, все зависит от времени суток в который вам довелось прочитать мою статью. В связи с ростом количества корпоративных клиентов, было принято решение дать доступ к учетной системе внешним пользователям. Для самостоятельного оформления заказов и от...

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

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

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

Удар CRISPR по болезням сердца Мышечная дистрофия сердца отправляется в прошлое. Благодаря редактированию генома CRISPR. Используя методы редактирования генов CRISPR, ученые из Германии и США смогли вылечить сердца от мутации, вызывающей мускульную дистрофию Дюшенна (МДД). Ученые говорят, что их работа с...

Построение сети для систем хранения данных СМБ сектора: Часть 1. Выбор сетевого оборудования Существуют различные методы организации централизованной системы хранения данных. Тем не менее большинство таких методик так или иначе можно свести к одному из трёх направлений… Читать дальше →

Open GApps теперь поддерживает Android 8.1 ARM + ARM64 Google Apps имеют важное значение в развитии пользовательского ПО. К сожалению, кастомные прошивки, такие как LineageOS, не могут содержать в себе приложения из этого пакета. Несмотря на то, что ОС Android свободно распространяется с открытым исходным кодом, такие приложения...

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

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

#Ускорение4X. Адвокат дьявола Сегодня рассмотрим конкретный прием, который, при честном применении, может решить задачу ускорения до 4X, и дальнейшие статьи можно будет не читать. Этот прием называется «Адвокат дьявола», и цель его применения в нашем случае — снижение сопротивления людей. Сопротивление ...

[Из песочницы] Почему игровые серверы и чат должны существовать раздельно Привет, Хабр! Представляю вашем вниманию перевод статьи "Why you should run your game servers independently from your chat" Joe Hanson. Разработчики многопользовательских игр часто сталкиваются с дилеммой: Использовать уже существующие игровые серверы (на которых, непоср...

Excel вместо PowerShell: запросы к AD и системные отчеты «на коленке» В комментариях к предыдущей статье вспомнили про учет в Excel вместо 1С. Что ж, проверим, насколько вы знаете Excel. Сегодня я покажу, как получать данные из Active Directory и работать с ними без макросов и PowerShell — только штатными механизмами Office. Например, можно з...

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

Все книги Древней Руси, СССР и России будут переведены в «цифру» Об этом сообщает CNews со ссылкой на заявление первого замминистра культуры России Владимира Аристархова, сделанное им в ходе парламентских слушаний на тему "Цифровизация в сфере культуры, законодательство и правоприменительная практика"."Мы поставили перед со...

[Из песочницы] Управляем браузером с помощью PHP и Selenium Интро Всем привет! Сегодня я расскажу вам о том, как с помощью PHP можно работать с Selenium. Чаще всего это бывает необходимо, когда перед вами стоит задача написать автотесты для web интерфейса или свой парсер/краулер. С Википедии«Selenium — это инструмент для автоматиза...

Эффективные методы сжатия данных при тренировке нейросетей. Лекция в Яндексе Не так давно в Яндекс приезжал Геннадий Пехименко — профессор Университета Торонто и PhD Университета Карнеги-Меллон. Он прочитал лекцию об алгоритмах кодирования, которые позволяют обходить проблему ограничения памяти GPU при обучении глубоких нейронных сетей. — Я вхожу в...

[recovery mode] Goldman Sachs переманил ведущего инженера Google для разработки API к своим сервисам По сообщениям СМИ банк Goldman Sachs активно занимается разработкой собственного финансового API. Для этого финансовый гигант даже переманивает ведущих инженеров крупных технологических компаний — так уже в марте на работу в банк перейдет ведущий инженер Google Рейналдо Аг...

[Перевод] Тёмная сторона serverless-архитектуры или сложности оценки реальных затрат на бессерверные вычисления Disclaimer: Эта статья основана в том числе на личном мнении Амирама Шачара (Amiram Shachar, CEO of Spotinst). Компания автора предлагает конкурирующий продукт под названием Spotinst Functions. Перевод выполнен облачным провайдером Cloud4Y. Мы предлагаем программно-конфигур...

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

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

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

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

Использование алгоритма Hi/Lo для генерации ключей в Entity Framework Core Алгоритм Hi/Lo полезен, когда вам нужны уникальные ключи. Если коротко, то алгоритм Hi/Lo описывает механизм генерации безопасных идентификаторов на стороне клиента, а не в базе данных (безопасных в этом контексте означает отсутствие коллизий). Он задает уникальные идентиф...

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

Браузер != Браузерный движок Всем привет! В данной статье я хочу поделиться мыслями на счёт создания собственного браузерного движка. Мы рассмотрим текущие браузеры и браузерные движки. Вспомним про Modest и узнаем его нелёгкую судьбу. Это будет цикл статей в которых мы создадим свой собственный минима...

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

[Перевод] Проект RealWorld: сравнение фронтенд-фреймворков Материал, перевод которого мы предлагаем сегодня вашему вниманию, представляет собой обновлённую, с учётом положения дел в 2018 году, версию статьи об исследовании фреймворков, которая была опубликована в декабре 2017. Читать дальше →

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

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

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

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

[Из песочницы] Истинная реализация нейросети с нуля. Часть 2. Распознавание цифр Dispute about eternal Сердечно приветствую всех Хабравчан! С момента выхода первой части "Истинной реализации" (рекомендую ознакомиться) прошло достаточно много времени. Как внятных обучающих статей не было, так и нет, поэтому я решил подарить Вам возможность узна...

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

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

В МВД назвали самые популярные способы автоугонов Представители МВД России рассказали о наиболее распространенных в настоящее время методах угона. Злоумышленники обычно прибегают к более грубым способам, но и не брезгуют более современными технологиями. На первой позиции по популярности числится механические взломы. Испол...

Предложено еще одно объяснение тому, почему мы не нашли разумную жизнь в космосе Где все инопланетяне? Сложность в их обнаружении может заключаться в нас самих, считает группа психологов из Кадисского университета (Испания). В статье ученых, опубликованной в журнале Acta Astronautica, говорится, что мы могли просто проглядеть признаки присутствия разум...

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

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

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

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

Системный изолятор. Изолируем процессы в Windows средствами Less Privileged App Container (LPAC) Начиная с восьмой версии в Windows появился встроенный механизм контейнеров, которые позволяют изолировать процессы путем значительного усечения их прав. Этому системному механизму дали название Less Privileged App Container (LPAC), он поддерживается некоторыми приложениями,...

QPhyton 2.0.7 Программируйте на языке Python прямо на android устройстве благодаря специальной среде разработки, которая позволяет запускать свои проекты прямо на устройстве. QPython — Python for Android содержит в себе встроенный интерпретатор Python, консоль, редактор, библио...

Создаем свои криптокотиков (Часть 2) Это статья — вторая (и заключительная) часть из серии о создании своих криптокотиков. В первой части мы узнали, что из себя представляет каждый Криптокотик, кто контролирует ход игры и как сделать котика в виде токена. Но для по-настоящему прорывного приложения нам необходим...

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

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

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

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

Что Samsung Galaxy S9 противопоставит Face ID iPhone X Фанаты Apple любят обвинять Samsung в том, что она копирует идеи ребят из Купертино. Впрочем, такими же обвинениями любят сыпать в адрес Apple и поклонники южнокорейского гиганта. После анонса iPhone X одни говорили о том, что Apple предложила ту же идею с распознавание...

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

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

Игра про бегущую сосиску захватила магазины приложений Спустя два месяца после релиза игру «Беги, сосиска, беги!» скачали более 10 млн раз — и этот показатель взят только из Google Play. В App Store игра не менее популярна и уже успела занять четвертую строчку в рейтинге лучших аркад. В чем особенность этой игры, если с виду она...

Похудение по методу «Х» 1.0.1 «Похудение по методу «Х» — это книга №1 авторства Загадочного лайфхакера (фото реальное). В первой части книги вас ждут удивительные открытия и слом стереотипов. Во второй части — сам метод (различные секретные оружия + лайфхаки). В третью часть вошло вся остальная ин...

[Перевод] Машина времени на Java В мире существует множество клёвых маленьких библиотек, которые как бы и не знаменитые, но очень полезные. Идея в том, чтобы потихоньку знакомить Хабр с такими вещами под тэгом #javalifehacker. Сегодня речь пойдёт о time-test, в котором всего 16 коммитов, но их хватает. Авто...

Новый POS-зловред PinkKite набирает обороты Исследователи из компании Kroll Cyber Security идентифицировали PinkKite в 2017 году в ходе девятимесячного расследования крупной вредоносной кампании против POS-терминалов, завершившегося в минувшем декабре. Как полагают эксперты Кортни Дэйтер (Courtney Dayter) и Мэтт Броми...

Colt Walker (работа в процессе) Печатаем Colt Walker из оружейного симулятора World of Guns.Приходится много корректировать иногда нождачной бумагой иногда перепечатывать .Кстати очень помогает 3D ручка. Например если отверсти очень большое получилось, можно заплавить и пересверлить отверстие. Через неделю...

10 IT-героев по версии Кодабры: Веб-разработка В этом году в преддверии весны, Кодабра совместно со школой «Летово» проводит конкурс, посвященный программированию, робототехнике и VR — «IT-герои». По этому замечательному поводу мы решили рассказать Хабру, кто же для нас самих является героем, на кого мы ориентируемся при...

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

Нагрузочное тестирование «не-HTTP». Ч.2 Gatling В первой части статьи мы провели сравнительный анализ средств нагрузки на Java для JMeter, ушли от XML тест-планов и достигли 30K RPS с одной машины, нагружая «не-HTTP» сервис на примере Apache Thrift. В этой статье рассмотрим еще один инструмент для нагрузочного тестирова...

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

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

Анатомическая метафора кода. Где у кода мускулы Размышлял как-то о коде, программировании и всём таком; бродили всякие мысли. А что если взять, например, и заставить двух разработчиков написать несложные программы по одному ТЗ. Программисты одинакового уровня. Пишут независимо друг от друга. Код у них, естественно, получи...

Подготовку официальной бизнес-документации можно автоматизировать "Конструктор документов" позволяет создать практически любой документ от доверенности на автомобиль до сложного договора купли-продажи в полном соответствии с законодательством РФ. В сервис интегрирована база из более чем 1400 шаблонов документов для бизнеса и перс...

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

Модель для интернет-маркетинга и сбора данных Вы читаете перевод статьи Авинаша Кошика: Digital Marketing and Measurement Model. Что отличает победителей от неудачников в веб-аналитике? Победители, прежде чем подумать о данных или инструментах, создают хорошо структурированную модель интернет-маркетинга и сбора данных. ...

[Перевод] Как стать фронтенд-разработчиком в 2018 году Камран Ахмед, автор материала, перевод которого мы сегодня публикуем, говорит, что занимается фуллстек-разработкой уже 5 лет и в настоящее время работает на должности ведущего инженера в компании tajawal. Там ему приходится заниматься многими вещами. Ему, по долгу службы, на...

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

Keys in React. Готовим правильно Сегодня поговорим об атрибуте key в React. Часто разработчики, которые только начинают использовать React, не придают большого значения атрибуту key. А зря… Что говорит уточка, когда узнала, что ты не используешь key Чтобы представить работу ключей полностью и с различными ...

Функциональные прототипы для деталей мотоциклов с Ultimaker Добрый день, друзья и коллеги. Совсем недавно, наша компания, iGo3D, запустила конкурс: "Обзор и области применения 3D-принтеров семейства Ultimaker". Публикуем хороший пример использования данных машин в прототипировании. Экономичные, функциональные прототипы для деталей ...

Создание NPM-модуля Яндекс.Кассы под Node.js — опыт Lodoss Team Спустя несколько месяцев после релиза обновленного API Яндекс.Кассы начали появляться первые интеграционные решения на новых технологиях. Одним из пионеров интеграции стала компания Lodoss Team, разработавшая SDK-библиотеку для работы с Кассой под Node.js. Никто не расскаже...

Mikrotik: Балансировка в КПСС и соблюдение скоростного режима В этой статье я хочу поделится своим решением балансировки с применением Классификатора по Сетевым Соединениям (Per Connection Classificator) и маркировкой трафика для QoS. Предисловие На просторах Хабра и интернета я встречал множество реализаций балансировки, включая и PP...

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

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

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

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

[Перевод] ITSM ликбез: 7 способов диагностики причин IT инцидентов и проблем Перевод любопытной статьи Стюарта Рейнса, дающей обзор некоторых подходов и техник поиска причин инцидентов и проблем. Обзор поверхностный, но и такого уровня погружения достаточно, чтобы зародить интерес к затронутой теме. Автор: Стюарт Рейнс (Stuart Rance) Опубликовано 3...

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

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

Portal, Half-Life и Left 4 Dead теперь формально реальны на мобильных платформах Прошлая неделя геймерам запомнилась подробным рассказом Valve о грядущей карточной игре Artifact: The Dota Card Game. Несмотря на скептический настрой во время анонса, компания, судя по всему, действительно создает что-то значимое. Но если отвлечься от самой игры, то можно з...

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

[Из песочницы] Android Support Library 28. Что нового? По давней традиции вместе с новой версией Android выходит обновление Support Library. Пока библиотека вышла в стадии альфа, но список изменений уже намного интереснее, чем такой же список у Android P. Google несправедливо мало рассказал и написал об основных нововведениях ...

Swift vs. Kotlin. Отличия важны Этот пост является вольным переводом статьи Swift vs. Kotlin — the differences that matter by Krzysztof Turek Вы наверняка видели это сравнение Swift и Kotlin. Довольно интересное, правда? Я согласен, что в этих языках много схожего, но в этой статье я обращу внимание на не...

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

Код ошибки 404 в Google Play: как исправить? Неприятный сюрприз преподнес владельцам Android-устройств февраль. С самого начала месяца многие из них столкнулись с проблемой при попытке скачать приложение из Google Play Маркета. Вместо ожидаемого процесса загрузки на экране появлялось следующее сообщение «Не удалось ска...

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

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

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

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

[Из песочницы] Как мы разработали технологию обнаружения устройств поблизости Эта история началась с функции “Рядом” в одном из наших мобильных приложений. Мы хотели, чтобы пользователи могли быстро создать групповой чат или добавить находящихся рядом пользователей в друзья. Мы попробовали решить эту задачу при помощи геолокации, Bluetooth, Wi-Fi и ...

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

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

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

Более 300 операторов связи перешли на новый механизм получения выгрузки из Единого реестра запрещенной информации Так, с момента начала данных работ в конце 2017 года новый механизм внедрен и применяется на сетях более 300 крупных и магистральных операторов связи. На сетях еще 123 операторов проходит тестовая эксплуатация.Одним из главных преимуществ нового механизма является формирован...

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

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

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

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

[Перевод] Создание игры на Lua и LÖVE — 1 Введение В этой серии туториалов мы рассмотрим создание завершённой игры с помощью Lua и LÖVE. Туториал предназначен для программистов, имеющих некоторый опыт, но только начинающих осваивать разработку игр, или для разработчиков игр, уже имевших опыт работы с другими языкам...

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

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

Ботнеты пошли в атаку Корпорация Microsoft опубликовала отчет об угрозах информационной безопасности Security Intelligence Report за период с февраля 2017 года. Отчет посвящен трем темам: ботнетам, популярным методам хакерских атак и вирусам-вымогателям. Широкое распространение ботнетов и ви...

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

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

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

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

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

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

Тренируемся на кошках: модификация коллекций и таблиц в iOS Для визуализации массивов произвольных данных Apple дала нам таблицы UITableView для одномерных визуализаций и коллекции UICollectionView для более сложных случаев. Например, в iFunny ежедневно десятки тысяч пользователей публикуют и рассылают «мемасики». Приложение постоян...

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

Facebook выпустила Android-приложение для поиска и подключения к платным точкам доступа У Facebook появилось приложение, через которое жители развивающихся стран могут пользоваться платным Wi-Fi. Продукт Express Wi-Fi предназначен для работы с беспроводными сетями социального гиганта и доступен в Google Play жителям Индонезии и Кении. Через приложение ...

Реализация простой пиксельной игры в блокчейне Ethereum Всем привет! Вдохновившись r/place и желая реализовать наконец-то свой первый смарт-контракт на блокчейне, мы решили сделать всем доступное и веселое приложение в сети Ethereum, которое позволяет рисовать на холсте размером в 1000 x 1000 px, сохраняя каждый выбранный и раскр...

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

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

HMD Global открыла исходный код для Nokia 8 Несмотря на довольно оперативную работу в плане обновлений программного обеспечения для смартфонов Nokia, компания HMD Global до последнего момента оттягивала выпуск исходного кода своих прошивок, что является нарушением лицензии GPLv2. В начале этого месяца производитель вы...

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

Как включить Windows Projected File System на Windows 10 Компания Microsoft недавно представила предварительную сборку Windows 10 под номером 17604 в канале обновление «Ранний доступ». В этом релизе добавляется одна интересная функция под названием Windows Projected File System.Откройте меню Пуск > Служебные — Windows > Пане...

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

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

[Из песочницы] Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше? Введение В последнее время довольно часто говорят о перспективах блокчейн систем, о том, что в будущем блокчейн заменит классические платёжные системы, такие как, например, Visa или Mastercard, а затем, возможно, коренным образом изменит и юриспруденцию благодаря возможност...

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

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

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

Дерево, сделанное 3D-ручкой В SuperBien!, оранжерее для современного искусства в Берлине выставлена скульптура «Портрет березы» художника Мартина Биндера. Ее главная особенность заключается не столько во внешнем виде, сколько в технологии ее создания. Все дело в том, что она полностью была сделана с по...

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

Станислав Козловский: как работает Википедия Википедию ежемесячно посещают 570 миллионов человек, это пятый сайт по посещаемости в мире. Об истории, принципах, правилах работы в Википедии рассказал Станислав Козловский, исполнительный директор «Викимедиа РУ», администратор Википедии. Митап «Как работает Википедия»...

Применение Tarantool: хранимые процедуры Перевод статьи с DZone. Оригинал: https://dzone.com/articles/applications-for-tarantool-part-1-stored-procedure. Я хочу поделиться своим опытом создания приложений для Tarantool, и сегодня мы поговорим об установке этой СУБД, о хранении данных и об обращении к ним, а также ...

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

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

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

Моделирование динамических систем: численные методы решения ОДУ Введение Очень кратко рассмотрев основы механики в предыдущей статье, перейдем к практике, ибо даже той краткой теории что была рассмотрена хватит с головой. Итак, задача: Камень бросают вертикально, без начальной скорости с высоты h = 100 м. Пренебрегая сопротивлением во...

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

Apple выпустила первую публичную бета-версию macOS High Sierra 10.13.5 Компания Apple выпустила первую публичную бета-версию десктопной операционной системы macOS High Sierra 10.13.5. Публичная бета-версия стала доступна спустя день закрытого тестирования разработчиками и через неделю после релиза macOS High Sierra 10.13.4 для публики. Получит...

В Департамент информационных технологий, связи и защиты информации города N требуется… Сфера государственного IT нередко становится предметом для шуток и критики. Однако нельзя отрицать, что за последние годы работа по развитию информационного общества и в частности работа по повышению доступности государственных электронных услуг принесла результаты. В РФ ...

Euro Truck Simulator 2 получит дополнение Beyond the Baltic Sea В студии SCS Software рассказали о деталях очередного дополнения к игре Euro Truck Simulator 2. Разработчики сообщили, что в новом DLC пользователи получат возможность колесить по дорогам трёх стран Прибалтики — Латвии, Эстонии и Литвы. Помимо этого, карта расширяется за счё...

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

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

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

Разработчики видеоигр считают прекращение работы Steam Spy негативным моментом для индустрии Сайт Сергея Галёнкина Steam Spy, который собирал данные пользователей Steam, чтобы дать представление о продажах на самой крупной игровой платформе ПК, прекратил работу из-за изменений в политике конфиденциальности Valve (библиотека пользователя теперь скрыта по умо...

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

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

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

Разработчики Halo и Battlefield анонсировали мультиплеерный боевик Scavengers Новая студия Midwinter Entertainment, основанная бывшим творческим директором 343 Industries Джошем Холмсом (Josh Holmes), анонсировала мультиплеерный проект Scavengers. Это командный соревновательный боевик, действие которого развернётся в замёрзших пустошах. Дейст...

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

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

[Из песочницы] Ещё один пример автоматизации или PowerShell + Google Apps Script Лень — двигатель прогресса… Вот и я, найдя немного свободного времени, решил автоматизировать достаточно рутинную для каждого админа задачу — создание и отключение пользователей. Читать дальше →

Руководство: Как настроить и запустить рекламу на Youtube Какие форматы видеорекламы предлагает нам YouTube? Что нужно знать, чтобы запустить рекламную кампанию? Как настроить кампанию и следить за ее результатами? На эти вопросы ответил специалист по контекстной рекламе в компании Promodo, автор портала Likeni.ru Евгений Машк...

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

Успевать в два раза больше, избавившись от клиентов-нытиков с помощью корреляционного анализа Метод для менеджеров проектов от агентства контекстной рекламы 1jam.ru.

[Перевод] Быстрый запуск Github репозитория c Angular CLI в вашем браузере На Github находится множество демок, примеров, прототипов и реальных приложений, написанных на Angular. Тем не менее, клонирование и инициализация проекта может занять много времени, что затрудняет его совместное использование и просмотр. Именно поэтому была создана сред...

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

[Перевод] Насколько быстр AMP на самом деле? Проект Accelerated Mobile Pages (AMP) от Google вызвал определённый переполох по идеологическим причинам, но саму технологию так и не разобрали подробно. Несколько недель назад Ферди Кристант писал про несправедливое преимущество, которое получает контент AMP за счёт предзаг...

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

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

Интегрируем TeamCity с JIRA – без плагинов и администраторов Мы разрабатываем большое модульное UI-приложение, состоящее из большого количества плагинов с разными циклами релиза. Весь код располагается в одном репозитории, так что к разработчикам постоянно приходит QA-специалист и спрашивает: «А какой компонент поменялся? Какую версию...

Форум Big Data 2018: как Big превратить в Smart В условиях реализации государственной программы цифровой экономики эффективная работа с данными приобретает особое значение практически для каждой организации в России.

[Перевод] Флаги в аргументах функций Вы когда-нибудь сталкивались с таким кодом? process(true, false); Эта функция, судя по названию, что-то обрабатывает (process). Но что означают параметры? Какой параметр здесь true, а какой false? По вызывающему коду об этом нельзя судить. Нам придется заглянуть в объявлен...

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

[Из песочницы] Создание несимметричной сетки с помощью Grid Layout На данный момент, по данным Can I Use, 84% браузеров поддерживает Grid Layout. С каждым месяцем это число растет. А ведь буквально недавно этот модуль находился за флагом. Поэтому если Вы еще не знакомы с теми возможностями, которые он предоставляет, то самое время это исп...

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

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

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

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

Serviceman 1.0.0 Наблюдайте за параметрами работы Вашего автомобиля в режиме реального времени, считывайте и сбрасывайте ошибки, следите за результатами самодиагностики ЭБУ. Чтение более 204 параметров OBD2. Чтение более 3500 ошибок. Приложение работает без интернета. Для работы приложения т...

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

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

Почти 120 операторов внедрили новый механизм получения выгрузки из реестра запрещенной информации Всего с момента начала данных работ в конце 2017 года новый механизм адаптировали почти 120 операторов связи.Главным преимуществом нового механизма выгрузки является получение операторами связи из Единого реестра только новых или изменившихся записей ("дельту") вме...

[Из песочницы] Обобщаем анимацию таблиц в iOS приложениях Пользователи хотят видеть изменения Анимированное обновление списков всегда было непростой задачей в iOS. Что неприятно, это всегда было рутинной задачей. Приложения крупных компаний, таких как Facebook, Twitter, Instagram, VK, используют таблицы. Более того, почти каждое...

Искусственный интеллект от Google моментально выявит инфаркт Казалось бы, что нового можно придумать в области методов диагностики заболеваний сердца, ведь все уже давно придумано – знай себе улучшай существующие методики! Однако исследователи из биомедицинской компании Verily (владельцем которой, к слову, является Google) сумели ра...

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

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

Система жидкостного охлаждения Aerocool P7-L240 со стандартной RGB-подсветкой помпы и двух вентиляторов На основе системы жидкостного охлаждения Aerocool P7-L240 можно создать условно бесшумный компьютер, оснащенный процессором с тепловыделением не более 160 Вт. Управляемая RGB-подсветка помпы и вентиляторов поможет украсить внутреннее пространство системного блока. Для управл...

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

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

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

Ботнет-майнер полонил полмиллиона машин Исследователи из Proofpoint установили, что в состав ботнета, как минимум восемь месяцев используемого для скрытного майнинга Monero, ныне входит более 500 тыс. зараженных Windows-машин. По оценкам экспертов, за это время ботоводы Smominru, он же MyKings и Ismo, успели разбо...

Электронная почта остается наибольшей угрозой безопасности Более трети всех случаев нарушений безопасности происходит из-за фишинговых писем или вредоносных вложений, отправленных на адреса сотрудников компаний. Об этом сообщила финская фирма-разработчик F-Secure. Ее специалисты проанализировали инциденты, с которыми сталкивались в ...

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

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

В реестр российского ПО включены новые решения Министр связи и массовых коммуникаций Российской Федерации Николай Никифоров провел первое в 2018 году заседание Экспертного совета по российскому программному обеспечению (ПО) при Минкомсвязи России. Николай Никифоров проинформировал членов совета о том, что в соответствии ...

[Перевод] Rust: используем serde для сериализации Сериализация данных посредством serde. Недавно я писал Rust-код для работы со сторонним источником данных в TOML-формате. В других языках я бы подгрузил данные какой-либо TOML-библиотекой и прогнал бы по ним мою программу, однако я слышал про serde — библиотеку сериализации ...

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

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

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

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

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

Wi-Fi в законе В соответствии с законодательством РФ, с 2014 года все общественные точки доступа Wi-Fi обязаны идентифицировать пользователей. Под действие закона попадают владельцы публичных сетей доступа в интернет, такие как рестораны и кафе, торговые центры, отели, автосалоны и прочие...

DNSCrypt 2.0 и блокировка рекламы В этой статье хотелось бы рассмотреть нововведения Dnscrypt, на конкретном примере, который наверняка окажется для кого-то полезным. Для тех, кто не знает, Dnscrypt — это уникальный протокол шифрования DNS-трафика. Он даёт возможность защитить DNS-коммуникации от перехватов...

[Перевод] Как построить сообщество. Перевод книги «Социальная архитектура»: Глава 4. Протокол для коллаборации C4 «Это эссенция тридцатилетнего опыты разработки программного обеспечения.» Процесс ZeroMQ: C4 Когда мы говорим о ZeroMQ, мы иногда имеем в виду libzmq — основную библиотеку. В начале 2012 года мы синтезировали процесс libzmq в формальный и многоразовый протокол для совместной...

Google удалил рекордное количество плохих приложений из Play Маркета в 2017 году Существует не так много онлайн-платформ, которые могут сравниться с размером Play Маркета Google. Предполагается, что в Play Маркет размещено более 3,5 миллионов приложений, и тысячи новых приложений загружаются ежедневно. Учитывая эти цифры, мы не будем точно заявлять, что ...

Доступны новые накопительные обновления для Windows 10 (1709, 1703, 1607, 1511, 1507) Сегодня второй вторник февраля, а значит самое время для того, чтобы проверить «Центр обновления Windows» и установить самые свежие обновления для всех поддерживаемых версий операционных систем семейства Windows. В данной новости мы рассмотрим список изменений для Windows 1...

«Make Step to IT: Машинное обучение и боты»: семинар для старшеклассников 4 марта 2018 года с 13:00 до 17:00 в Санкт-Петербурге пройдет серия семинаров и лекций на тему машинного обучения. На лекции приглашаются старшеклассники и школьники в возрасте от 14 до 18 лет. Семинары проводятся благотворительным фондом развития образования «Айкью_Опшн»&nb...

Спецслужбы теперь могут взломать любой iPhone Израильский производитель инструментов для проведения криминалистической экспертизы Cellebrite уведомил своих клиентов о появившейся новой возможности взлома любого устройства под управлением iOS 11. Сюда также входит iPhone X – модель, уже успешно взломанная в ноябре 2017 г...

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

Две модели лучше одной. Опыт Яндекс.Переводчика Когда-то мы уже рассказывали о том, как появился и развивался машинный перевод. С тех пор произошло ещё одно историческое событие – его наконец-то покорили нейронные сети и глубокое обучение. Среди задач обработки естественного языка (Natural Language Processing, NLP) машинн...

[Перевод] Внедрение предметно-ориентированного проектирования в PHP И снова здравствуйте! Что ж очередной «новый» курс, который стартовал в конце декабря, подходит к концу — «Backend разработчик на PHP». Учли разные мелкие шероховатости и запускаем новый. Осталось только посмотреть на выпуск и всё, поставим очередную галочку. А счас пока ...

Как устроен софт-лонч: разбор от Zorka.Mobi и Nitro Games Каждый разработчик однажды понимает, что пришло время показать свой продукт будущим пользователям. Софт-лонч — первая проверка приложения на выживаемость, именно тестовый запуск раскрывает его сильные и указывает на слабые стороны. В этой практической статье опытом софт-лонч...

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

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

В Нижнем Новгороде расскажут, как продвигать проекты НКО в социальных сетях 25 февраля 2018 года в 17:00 в Нижнем Новгороде состоится митап Теплицы социальных технологий на тему «Продвижение в соцсетях для НКО». На митапе мы расскажем об инструментах и методах продвижения некоммерческого проекта в социальных сетях. На встрече выступит Вера Трубников...

Яндекс.Касса обновила Личный кабинет Яндекс.Касса обновила Личный кабинет — в нем появились новые возможности для выставления счетов и работы с данными клиентов. Обновление рассчитано как на крупные, так и на небольшие компании, делая управление продажами намного удобнее. В обновленном Личном кабинете можно буд...

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

Google готовит редизайн и новые функции Gmail Компания сообщила о работе над новой версией сайта Gmail в письме клиентам G Suite. Пользователи получат возможность откладывать прочтение письма — оно будет возвращаться в начало списка непрочитанных. Кроме того, Gmail будет интегрирован с «Google Календарём» и будет ...

Espresso: “Милые зверушки или опасные хищники?” Доброго времени суток, читатели хабра! Сегодня мы вместе с вами потестируем Recyclerview на Android: на мой взгляд, эта тема довольно интересна. Что такое Recyclerview? Это компонент, с помощью которого создаются списки. Каждый список можно прокручивать, добавлять в него ...

Индюки терроризируют игроков в Far Cry 5 Поклонники Far Cry 4 вздохнули с облегчением, когда узнали, что действие следующей части серии разворачивается в Монтане: в этом штате не водятся медоеды. «Лохматая тварь», «Росомаха», «Назойливое исчадие ада» — вот краткий ...

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

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