Социальные сети Рунета
Среда, 24 апреля 2024

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

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

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

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

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

Мобильное приложение от Google научит кодировать на JavaScript Компания Google выпустила приложение Grasshopper в рамках проекта Area 120, позволяющее выучить основы программирования на языке JavaScript с помощью бесплатных коротких уроков. Обучение в новом сервисе представлено в игровой форме, из-за чего программа напоминает самый попу...

Grasshopper 1.13.1 Grasshopper — приложение, позволяющее выучить основы программирования на языке JavaScript с помощью бесплатных коротких уроков. Обучение в новом сервисе представлено в игровой форме, из-за чего программа напоминает самый популярный сервис для изучения иностранных языков Duol...

[Из песочницы] Самый выразительный. Краткое пособие по языку Red Привет всем! Сегодня я хотел бы рассказать о языке программирования Red. Язык Red является непосредственным преемником более раннего языка REBOL. Оба они малоизвестны в русскоязычном сообществе, что само по себе странно, т.к. указанные языки представляют интерес как с точки...

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

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

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

Неделя Lightning-приложений от Blockstream: семь новых LApp’s за семь дней Разработчики Blockstream объявили о запуске амбициозной инициативы, в рамках которой в течение семи дней планируют представить семь различных плагинов и приложений на основе технологии Lightning Network (LApp’s) для сети биткоина. Компания уже презентовала первые два продукт...

Google выпустила первую бета-версию Flutter для кросс-платформенной разработки приложений Сегодня компания Google объявила о выпуске первой бета-версии инструмента Flutter, с помощью которого разработчики смогут создавать кросс-платформенные приложения для Android и iOS с общей кодовой базой. В каком-то смысле это действительно конкурент Microsoft Xamarin. Для р...

Language Chat 0.2 Описание: Каждый кто изучает языки длительное время, знает, что для правильного постоения предложений на иностранном языке нужна практика. Нет лучшей практики чем обычное общение. Именно для такого общения и было создано приложение Laguage Chat. Ми постарались сделать при...

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

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

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

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

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

Смена основного стека с .NET на Java Хочу описать свои наблюдения и впечатления о самом популярном языке серверного программирования для Enterprise под названием Java. Наблюдения и впечатления на сравнении и контрасте с “похожей” платформой .NET, с которой я очень хорошо знаком. Уверен, что ~год назад, когда ...

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

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 4 — Компоненты и композиция В предыдущей части туториала мы решили проблемы изоморфного роутинга, навигации, фетчинга и начального состояния данных. В итоге, получилась довольно простая и лаконичная основа для изоморфного приложения, которую я также выделил в отдельный репозиторий — ractive-isomorphic-...

Краткая история Rust: от хобби до самого популярного ЯП по данным StackOverflow Rust — это язык системного программирования, создатели которого уделили внимание трем вещам: параллелизму, скорости и безопасности. И хотя Rust считается молодым языком программирования — его первая стабильная версия вышла в 2015 году — он разрабатывается уже более десяти ле...

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

SOLID SOLID критикует тот, кто думает, что действительно понимает ООП © Куряшкин ВикторЯ знаком с принципами SOLID уже 6 лет, но только в последний год осознал, что они означают. В этой статье я дам простое объяснение этим принципам. Расскажу о минимальных требованиях к языку прог...

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

[Из песочницы] Новый облегчённый язык разметки текста на основе парных кавычек (pq) Я не могу объяснить, откуда пришла идея такого языка разметки, но то, что получилось в итоге — весьма… занятно. Не слишком-то рассчитываю на широкое практическое применение этой штуки, но некоторые идеи, использованные в этом языке разметки, вполне могут дать пищу для размы...

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

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

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

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

Простой менеджер ассинхронных задач для Unity 3D Введение Приветствую Вас, уважаемые читатели. В данной статье пойдет речь о реализации простого менеджера асинхронно выполняемых задач для среди разработки Unity3d. Данный менеджер использует в своей основе так называемые Coroutine, которые присутствует в движке. Читать дал...

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

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

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

Вышел Alloy Navigator 8.1 на русском языке В новой версии русский язык поддерживается во всех разделах и компонентах Alloy Navigator — проведена полная локализация всех элементов интерфейса, веб- и мобильного порталов, а также адаптация бизнес-логики и бизнес-процессов для российских реалий.

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

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

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

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

Вторая часть сравнения python и tcl В предыдущей статье была описана реализация задачи сбора данных о звонках с АТС, включающее в себя получение, разбор данных и добавление в БД. Решение данной задачи представлено на двух языках программирования — python и tcl. И вот, как и обещал, представляю код (на двух язы...

История взлома одного WordPress плагина — или о том, как вы допускаете уязвимости в своих проектах Давным давно, когда я был молод и писал сайты на PHP, я написал SEO плагин для маскировки внешних ссылок для Wordpress. Поскольку с воображением у меня плохо, то назвал его WP-NoExternalLinks. За всю историю у него было 360.000 установок и, кажется, до 50.000 активных устано...

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

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

Aws Lambda Go 1.x, Kinesis, CloudSearch В предыдущей статье я описала как создать простую лямбду на Golang, которая принимает на вход простой объект из двух полей и такой же простой объект отдает на выходе. Теперь немного усложним задачу, подсоединив к лямбде в качестве источника данных Kinesis, а результат обрабо...

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

Вопросы совместимости Tibero и Oracle. Часть 2. Разработка Java приложений Мы продолжаем цикл статей разработчиков приложений для баз данных. Эта статья затронет тему использования Tibero в Java приложениях использующих JDBC и Hibernate, а также фреймворк Spring Roo. Читать дальше →

Как хакеры майнят криптовалюты на сайтах госструктур Рано утром 11 февраля 2018 года, пока сисадмины дремали под конец ночной смены, неизвестная команда хакеров взломала код плагина «Browsealoud». Они дописали туда малоизвестный майнер криптовалют и ушли, аккуратно заметя следя. Лишь к полудню того дня команда, ответственная з...

Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Знаки Эта работа является продолжением всего сказанного ранее в статье «Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Версия II». В большинстве статей, посвященных анализу текстов, которые удалось изучить автору, под анализом текста понимается главным образо...

[Из песочницы] Научное программирование: часть 1 Наука в программировании — быль или реальность? Сколько её в языках и почему идут холивары о приемуществах одних языков над другими? Если интересно — прошу под кат. Читать дальше →

Трудности перевода: как найти плагиат с английского языка в русских научных статьях В нашей первой статье в корпоративном блоге компании Антиплагиат на Хабре я решил рассказать о том, как работает алгоритм поиска переводных заимствований. Несколько лет назад возникла идея сделать инструмент для обнаружения в русскоязычных текстах переведенного и заимствован...

Динамическое изменение иконки приложения в iOS Начиная с iOS 10.3 вы можете менять иконки приложения прямо из кода. В этом статья мы рассмотрим простой пример кода, который реализует эту возможность.

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

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

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

[BugBounty] Раскрытие 5 миллионов ссылок в приватные чаты Telegram и возможность редактирования любой статьи telegra.ph   Вот уже больше года я пользуюсь мессенджером Telegram: это удобно и, насколько мне казалось, полностью конфиденциально. Так как я исследователь безопасности web-приложений, то должен был проверить соответствующую версию приложения на уязвимости. Я не видел в этом острой ...

[Перевод] Как передать полиморфный объект в алгоритм STL Как мы можем прочесть в первой главе книги Effective C++, язык С++ является по сути своей объединением 4 разных частей: Процедурная часть, доставшаяся в наследство от языка С Объектно-ориентировання часть STL, пытающийся следовать функциональной парадигме Шаблоны Эти чет...

Все приложения на Mac позволяют следить за пользователями с помощью скриншотов Феликс Краузе (Felix Krause), разработчик и создатель FastLane, обратил внимание в своем блоге на интересную особенность приложений под Mac. По словам Краузе, любое Mac-приложение может делать снимки экрана без ведома пользователя. При этом неважно, является ли приложение и...

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

Разработка для Sailfish OS: использование средств геолокации Здравствуйте! Данная статья является продолжением цикла статей, посвящённых разработке приложений для мобильной платформы Sailfish OS. На этот раз речь пойдёт о том, как можно реализовать в приложении получение информации о географическом положении устройства, отображение ка...

Blue Shift или оптимизация времени запуска iOS-приложения. Лекция Яндекса Казалось бы, при загрузке приложения можно и потерпеть секунду-другую. Но когда ваша программа используется часто, а в конкурентах — аналог от производителя самой ОС, то даже время запуска начинает сказываться. Разработчик Яндекса Виктор Брыксин bobermaniac выступил на встре...

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

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

MacFamilyTree 8 и MobileFamilyTree 8 – простой и красивый способ организовать генеалогическое древо на Mac и iOS Рано или поздно каждый из нас начинает интересоваться собственной родословной. Поводов здесь может быть бесконечное множество, начиная от происхождения дурного характера и заканчивая хитросплетением сексуальных связей предков. Во всяком случае, всегда удобно держать под руко...

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

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

Простой способ установить Mikrotik RouterOS в любом облаке Многие облачные провайдеры не позволяют загружать ISO-файлы и не предоставляют никакой возможности для установки ОС отличных от тех что предусмотрены самим облаком. В этой статье я расскажу вам как избежать данное ограничение и как просто в 5 шагов можно установить Mikrotik ...

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

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

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

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

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

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

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

Это птица? Это самолёт? Нет, это токен вашего пользователя летит на новый телефон Привет, Хабр! Сегодня я расскажу про API для разработчиков от компании Google. Речь пойдёт о том, как не заставлять пользователя заново логиниться в приложении после переноса данных, или, выражаясь точнее, как использовать Android Account Transfer API. Скорее всего, каждый...

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

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

Поддержка IPv6 в CleanTalk Security для WordPress Недавно мы писали о том что сделали поддержку IPv6 в антиспам плагине. Но не только спамеры начали использовать IPv6, для других видов атак на сайты злоумышленники их тоже используют. Мы реализовали поддержку IPv6 в плагине безопасности для WordPress. Обновлены методы опред...

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

Понимание 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++. Тема не нова, но з...

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

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

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

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

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

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

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

Языки программирования для квантового компьютера Прототип ядра ионного квантового компьютера. Ion Quantum Technology Group, Сассекский университет Квантовые компьютеры время от времени попадают в СМИ. Вы слышите о том, как человек шаг за шагом приближается к их созданию, хотя для большинства развитие квантовых вычислений ...

[Перевод] Тонкости value restriction в F# Одной из отличительных особенностей языка F#, по сравнению с более распространёнными языками программирования, является мощный и всеобъемлющий автоматический вывод типов. Благодаря ему в программах на F# вы почти никогда не указываете типы явно, набираете меньше текста, и по...

LL(*) парсер с использованием Rust макросов Wow. Such Rust. Much macro. © картинка - Твиттер аккаунт Servo Язык Rust стремительно набирает обороты. Кто-то пророчит ему стать заменой C/C++, кому-то он просто нравится. Я скорее принадлежу ко второй группе. Разработчики стараются сделать его удобным и безопасным. В нем ...

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

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

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

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

Google Play Store обновился до версии 9.1.24 Приложение Google Play Store в очередной раз обновилось. На этот раз до версии 9.1.24. Google уже начала OTA-раздачу, потому апдейт рано или поздно неотвратимо настигнет всех пользователей Android. Читать полную статью

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

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

Business English Listening: помощник в изучении делового английского Люди, изучающие иностранные языки с нуля, часто сталкиваются с «эффектом плато». Так называется состояние, когда уровень владения языком больше не поднимается, несмотря на все усилия учащегося. Одним из [...]

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

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

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

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

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

Swift Package Manager Вместе с релизом в open source языка Swift 3 декабря 2015 года Apple представила децентрализованный менеджер зависимостей Swift Package Manager. К публичной версии приложили руку небезызвестные Max Howell, создатель Homebrew, и Matt Thompson, написавший AFNetworking. Swift...

Таndem — Языковой обмен и репетиторы 1.7.5 Практика общения — лучший способ изучения иностранного языка. Таndem способствует языковому обмену. Благодаря нашему приложению вы сможете практиковать говорение с носителями, которые могут помочь вам в изучении иностранного языка и улучшении навыков общения на нем за коротк...

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

Datalore: открываем бета-версию приложения для анализа данных на Python Привет, Хабр! В рядах инструментов JetBrains пополнение. Мы запускаем открытую бета-версию Datalore — умной веб-среды для анализа и визуализации данных на языке Python. Машинное обучение уверенно захватывает мир: алгоритмы интеллектуального анализа данных стоят за совреме...

Интересные факты о Python или «С днем рождения, Python!» Всем привет! Сегодня 20 февраля, а это означает, что сегодня день появления на свет языка программирования Python! Сегодня Python исполняется 27 лет. За эти года, Python стал одним из самых популярных языков программирования в мире. Что же, пожелаю дальнейшего развития и п...

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

Как мы в ISPsystem резервные копии делали. Часть вторая Продолжение истории о похождениях отдельной задачи в ISPsystem. Рассказывает руководитель разработки Александр Брюханов. Первая часть здесь. Лучшее — враг хорошего Написание резервного копирования или установки и настройки ПО у нас всегда были расстрельными задачами. Ког...

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

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

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

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

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

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

Media Studio 14.23.117 • Более 30 спецэффектов в магазине эффектов • Кодирование до 30Mb/s, сохранение качества HD видео • Обработка производится на устройстве, интернет не требуется • Возможность выйти из приложения, как только процесс был добавлен в очередь, процесс можно отменить в любой ...

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

Как переехать с BuddyBuild на GitLab CI за 4 часа Предыстория Полтора года назад команда iOS FunCorp переехала на новый сервис для простой организации CI в iOS и Android-проектах. До этого мы использовали CI на Bamboo, но с ним было много проблем, поэтому мы совсем отказались от него и перешли на BuddyBuild. Он работал ...

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

Способ управления цветовыми схемами приложения под iOS Даже для самого что ни на есть начинающего разработчика (скорее, на которого и рассчитан данный очерк), надеюсь, не секрет, что в коде не должно присутствовать никаких т.н. «hardcoded»-значений и прочих всяких там «magic numbers». Почему – тоже, надеюсь, понятно, а если нет,...

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

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

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

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

SignalR Core. «Hello Habr!» Коротко: небольшой самодостаточный пример, иллюстрирующий SignalR для .NET Core 2 и разработку в IDE Rider. В самом конце — видео Dino Esposito с конференции DotNext на эту же тему.Все привыкли к push-уведомлениям в браузере. Однако создание их требует от программиста опреде...

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

Один день в Альфа-Банке: мобильная разработка Альфа-Банк стал одним из первопроходцев мобильного банкинга: приложения для iOS и Android появились у него ещё в 2010-м, когда возможность «пополнить баланс телефона с самого телефона» была непривычной. А как обстоят дела с мобильной разработкой в банке теперь, спустя все ...

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

И снова о блокировке Telegram. Разворачиваем собственный VPN О том, что мессенджер Telegram заблокирован на территории России, сейчас не говорит и не пишет только ленивый. Общее количество пользователей мессенджера в РФ по словам Павла Дурова составляет примерно 15 млн, что весьма немаленькая цифра. Если Telegram сделать недоступным...

[Перевод] Ручной шифр LS47 Данный шифр является небольшим усовершенствованием шифра ElsieFour, который разработал Алан Камински (Alan Kaminsky) [1]. В этом варианте используются 7x7 символов вместо оригинальных 6x6, которых едва-едва хватает даже на латинский алфавит. Дополнительно описан простой алго...

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

Оглашена критическая брешь в популярном REST-фреймворке Стало известно о серьезной уязвимости в одном из компонентов популярного фреймворка Pivotal Spring. Ошибка была выявлена и пропатчена еще осенью, однако вендор не спешил предавать ее огласке прежде, чем клиенты обновят свои системы. Проблема касается Spring Data REST — компл...

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

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

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

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

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

Фундаментальная уязвимость HTML при встраивании скриптов Чтобы описать суть проблемы, мне нужно рассказать, как вообще устроен HTML. Вы наверняка в общих чертах представляли себе, но я все равно коротко пробегусь по основным моментам, которые понадобятся для понимания. Если кому-то не терпится, сразу переходите к сути. HTML — это ...

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

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

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

Google Assistant выучит 17 новых языков в 2018 году и заработает в 38 странах мира Несколько лет назад на разработке голосового помощника Google Now был поставлен крест, поскольку ему на смену пришел гораздо более продвинутый Google Assistant. Тем не менее, если первый был доступен для использования практически во всех странах

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

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

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

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

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

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

Интенсив «C# для начинающих» С помощью С# вы можете писать Windows-приложения, кроссплатформенные игры на движке Unity, игры на Xbox и масштабные веб-сервисы. «Си-шарп» входит в ТОП-5 языков программирования по частоте запросов в Google и имеет четвертое по&n...

[Перевод] Почему Python так хорош в научных вычислениях Несколько дней назад (Оригинал заметки был опубликован 12 сентября 2017. — Здесь и далее прим. переводчика), я заметил этот твит в своей ленте: I 'still' program in C. Why? Hint: it's not about performance. I wrote an essay to elaborate... appearing at Onward! https://t.co/p...

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

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

Thunkable X – бесплатная браузерная среда разработки мобильных приложений под iOS и Android IDE Thunkable X работает на платформе Thunkable, которая ранее развивалась в качестве альтернативы MIT App Inventor. В настоящее время платформа предлагает две функционально отличающиеся и независимые среды разработки – оригинальную для разработки под Android, совместимую ...

Solar Security обеспечит безопаснсть разработки приложений Вышло обновление решения для проверки безопасности приложений Solar inCode 2.8 с поддержкой языка программирования Go.

getDerivedStateFromState – или как сделать из простой проблемы сложную Я люблю Реакт. Люблю за то, как он работает. За то, что он делает вещи «правильно». HOC, Composition, RenderProps, Stateless, Stateful – миллион патернов и антипатернов которые помогают меньше косячить. И вот совсем недавно React принес нам очередной подарок. Очередную возм...

Как удалить приложение на Андроид: обзор Easy Uninstaller и альтернатив Установить программу на Андроид проще простого – достаточно перейти по ссылке в Google Play или просто скачать APK-файл с какого-нибудь форума. Постепенно число установленных приложений растет, они занимают много места во внутренней памяти, отнимают ресур

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

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

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

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 2 — Hello World В предыдущей части туториала мы узнали что такое проект RealWorld, определились целями туториала, выбрали стек технологий и написали простой веб-сервер на Express в качестве основы для изоморфного фронтенда. В этой части, мы допилим серверную часть и напишем изоморфный «Hel...

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

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

Топ бесплатных AR-игр для iOS #2 Разработчики выпускают всё больше игр для дополненной реальности Apple ARKit. В этой статье, уже второй по счету, мы собрали лучших представителей AR-игр для iOS. Все нижеперечисленные приложения доступны абсолютно бесплатно — вы сможете попробовать платформу будущего без вл...

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

Hunt: Showdown получила русский и китайский язык Разработчики из Crytek прямо радуют фанатов своего проекта Hunt: Showdown. Буквально недавно об игре только-только начали говорить, а уже сейчас создатели «королевской битвы» с зомби и прочими радостями хоррора выпустили крупное обновление с исправлением багов и локализацией...

Microsoft разрешила «инсайдерам» устанавливать новейшие версии приложений без необходимости обновления всей ОС и выпустила приложение Photos Companion для простого переноса фотографий из iOS в Windows На этой неделе Microsoft представила новую возможность для тестировщиков ОС Windows 10, избавив их от необходимости загрузки самых нестабильных сборок ОС для получения доступа к последним бета-версиям стандартных приложений. До этого момента для получения доступа к последним...

ez Share — адаптер, который добавляет Wi-Fi модуль в любой фотоаппарат Если вы много и активно снимаете на «зеркалку», то наверняка сталкивались с тем, что рано или поздно место на карте памяти заканчивается, и фотографии или видео требуется перенести на компьютер. И тут начинаются мучения. Вынь карточку, вставь карточку… А если...

Яндекс составил каталог плагинов для турбо-страниц Технология турбо-страниц становится все более востребованной, и для нее уже появилось много плагинов под разные CMS. Уже сейчас есть плагины для WordPress, Joomla, Drupal, 1С-Битрикс, — они позволяют генерировать RSS-канал для добавления в Вебмастер. Для удобства Яндекс собр...

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

Siri может озвучивать посторонним содержимое уведомлений сторонних приложений Голосовой помощник Siri на iPhone и iPad может озвучивать любому желающему содержимое уведомлений на экране блокировки, даже если вы отключили отображение текста этих уведомлений. Это не работает с iMessage и SMS-сообщениями — в данном случае сначала...

Serverless приложение с реализацией CI/CD на базе AWS и Bitbucket Pipelines В статье рассказывается о развертывании Django приложения в облаке AWS с помощью Bitbucket Pipelines. Тем, кому интересна эта тема, добро пожаловать под кат. Вперед, на мины! Читать дальше →

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

Scratch — язык программирования для детей Применения визуального языка программирования Scratch и возможности его использования.

Наташа — библиотека для извлечения структурированной информации из текстов на русском языке Есть стандартная задача извлечения именованных сущностей из текста (NER). На входе текст, на выходе структурированные, нормализованные объекты, например, с именами, адресами, датами: Задача старая и хорошо изученная, для английского языка существует масса коммерческих и о...

Обзор GetContact. Прорыв или мошенничество? Приложение GetContact занимает лидирующие места в топе приложений по всему миру — в Украине, России, Азербайджане и десятке других стран приложение устанавливают на каждый второй смартфон. Уже сейчас база приложения насчитывает 550 миллионов пользователей, а ведь услышали о ...

Мобильное приложение на Python c kivy/buildozer. Лекция в Яндексе Не факт, что вам потребуется написать серьёзное приложение на Python. А вот быстро собрать работающий сервис, чтобы «продать» его заказчику, — почему нет? Python универсален, и опыт создания мобильного софта на этом языке может оказаться полезным. Владислав Шашков из Сбербан...

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

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

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

Веб установщик на чистом WINAPI с поддержкой Hi DPI и векторным лого В наше время это, наверно, одно из основных применений для приложений написанных на чистом WINAPI. Писать что-то серьёзнее нескольких простых окон на чистом WINAPI уже не так весело, а вот маленький установщик – самое то. Так как на дворе 2018 год, писать просто приложение ...

Проект недели: Bluetooth-колонка Travis Blue с «умным» переводчиком на 60 языков Отправляясь в другую страну, каждого из нас беспокоит одна и та же проблема: сложность коммуникации с местными жителями, особенно если они не знают английский язык. Жестами рук, конечно, какие-то простые вопросы объяснить можно, но зачастую этого недостаточно. Не раз столкну...

Never Fail Twice, или как построить мониторинговую систему с нуля У нас было 2 виртуальные машины, 75 сайтов, десятки тысяч машин для мониторинга, тысячи метрик, две базы данных и одна очередь ActiveMQ, Python и целое множество библиотек всех сортов и расцветок, pandas, а также numpy, dash, flask, SQL Alchemy. Не то чтобы это был необходим...

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

Разбор предложений по шаблонам русского языка Существует несколько парсеров, подходящих для русского языка. Некоторые из них могут даже выполнять синтаксический анализ, как SyntaxNet, MaltParser и AOT: … или выявлять факты, как Tomita. Глядя на эти парсеры, я вижу какую-то огромную сложность вычислений, требования к...

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

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

10 лучших приложений на Android в 2018 году Среди почти 3 миллионов различных приложений на Google Play Store большинство можно назвать абсолютно бесполезными. Итак, какие приложения нужно игнорировать в первую очередь, чтобы найти действительно стоящие и полезные? Мы составили список приложений, которые обязательно п...

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

[Перевод] Введение в квантовые вычисления Привет, Хабр! Совсем недавно мы рассказывали вам о квантовых вычислениях и языке Q#. Сегодня же мы уйдем в теорию еще глубже и рассмотрим историю квантовых вычислений. Кроме того, в этой статье вы найдете 5 требований к квантовому компьютеру. Какими свойствами должна обладат...

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 1 — Введение и выбор стека Весной 2017 года Eric Simons, со-основатель учебного проекта Thinkster, анонсировал проект «RealWorld» — демо приложение и спецификация к нему. Проект объявил своей целью выйти за рамки привычных «todo»-демок для более прикладного сравнения и изучения возможностей различных ...

Банкир из Латвии назвал русский язык «языком дикарей» Русский язык является "языком дикарей". Так считает латвийский банкир Гирт Рунгайнис. Представитель банковской сферы Латвии Гир Рунгайнис сделал громкое заявление по поводу русского языка. Финансист считает, что пользуются им только дикари, а местному правительст...

[Из песочницы] Сверточная нейронная сеть, часть 1: структура, топология, функции активации и обучающее множество Предисловие Данная статья является частью моей научной работы в ВУЗе, которая звучала так: «Программный комплекс детектирования лиц в видеопотоке с использованием сверточной нейронной сети». Цель работы была — улучшение скоростных характеристик в процессе детектирования лиц ...

Веб компоненты. Часть 1: Пользовательские элементы Вступление Данная статья — первая часть из небольшой серии статей о создании веб-компонентов нативными средствами HTML и JS Компонентный подход к разработке веб-приложений опирается на создание независимых модулей кода, которые могут быть использованы повторно, объединяемых ...

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

Как работают приложения Сбербанк Онлайн: Workflow API и фрэймворки Много кто пользуется приложением Сбербанк Онлайн, но немногие знают, как оно работает. Настало время приоткрыть завесу тайны – в этой статье мы расскажем о некоторых подходах, которые используем в разработке. Читать дальше →

Бинарный формат PSON PSON (Pandora Simple Object Notation) – бинарный формат упаковки, позволяющий переводить простые типы данных, массивы и списки в последовательность байт (простую строку). PSON придуман и разработан для использования в свободной распределённой информационной системе Pandora к...

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

Новая игра от Google научит вас программированию на JavaScript Выучиться основам программирования не поздно в любом возрасте, сочли в компании Google и выпустили приложение Grasshopper, которое в игровой форме преподает начальный курс JavaScript. Разработка распространяется совершенно бесплатно и уже доступна для загрузки в каталоге Go...

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

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

Бешеные псы: Angular 2 vs React Встречайте, противостояние двух фреймворков: Angular и React в формате поединка на примере конкретного простого приложения. За Angular выступает Евгений Гусев (@bunopus), за React — Илья Таратухин (@ilfa). Чтобы сделать честные выводы, они снач...

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

5 новых анти-спам плагинов от CleanTalk Мы решили продолжить вести блог и будем в нем рассказывать о своей работе. Начнем с того, что расскажем о том, что нами было нами сделано в 2017 году. За прошедший год нами были разработаны несколько антиспам модулей для CMS, о которых я расскажу подробнее. Читать дальше →

[Перевод] Реактивные приложения с Model-View-Intent. Часть 3: State Reducer В предыдущей части мы обсудили, как реализовать простой экран с паттерном Model-View-Intent, использующим однонаправленный поток данных. В третьей части мы построим более сложный экран с MVI с помощью State Reducer. Читать дальше →

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

Телеграм бот для удаления спама Решил написать эту публикацию т.к. устал объяснять одно и то же людям, которые хотят использовать моего телеграм бота @daysandbox_bot. Итак, несколько месяцев назад я разработал бота для удаления спама по очень простому признаку: если человек зашёл в чат и провёл в нём менее...

Как мы настроили Docker и Kubernetes в TFS Мы продолжаем наш путь к continuous integration (CD) и high availability (HA), основанной на избыточности. В предыдущей серии мы перевели API для мобильного приложения на .NET Core. Следующий логичный шаг для достижения CD — настроить сборку в Docker-контейнер. Сегодня поде...

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

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

Разработка игры под Android на Python на базе Kivy. От А до Я: подводные камни и неочевидные решения. Часть 1 Некоторое время тому назад я решил попробовать написать что-то на Python под Android. Такой странный для многих выбор обусловлен тем, что я люблю Python и люблю Android, а ещё люблю делать необычное (ну хорошо, не самое обычное). В качестве фреймворка был выбран Kivy — факти...

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

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

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

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

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

Xiaomi внедряет своего интеллектуального помощника Xiao Ai Новый виртуальный ассистент от Xiaomi получил название Xiao Ai. Этот виртуальный поселенец вашего смартфона будет конкурировать с Siri и Google Assistant. Однако, на данный момент смысла от него больше всего только лишь в Китае. В силу того, что здесь используется родной д...

Валидация строк с validate.it.js Если вспомнить все ТЗ с описаниями валидации полей — они всегда выглядили примерно так: не должно быть короче 6 символов не должно превышать 12 символов должно включать только латинские символы, цифры и знак подчёркивания Требования часто приходят набором простых однозначн...

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

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

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

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

Можно ли научить искусственный интеллект шутить? В последнее время машины одержали ряд убедительных побед над людьми: они уже лучше играют в го, шахматы и даже в Dota 2. Алгоритмы сочиняют музыку и пишут стихи. Учёные и предприниматели всего мира дают прогнозы по поводу будущего, в котором искусственный интеллект сильно пр...

[Из песочницы] Простая аутентификация на NGINX с помощью LUA Доброго времени суток. В данной заметке хочу рассказать о простой аутентификации с помощь nginx и lua-скриптов. Читать дальше →

Microsoft рассказала о планах по внедрению Progressive Web Apps в Windows 10 Сегодня Microsoft в своём блоге сообщила, что начиная с Redstone 4 в Windows 10 и Microsoft Edge будет обеспечена поддержка Progressive Web Apps (PWA), а также рассказала о том, как пользователи смогут получать PWA-приложения. Отмечается, что в ближайшее время компания начн...

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

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

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

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

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

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

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

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

[Перевод] Анонс Dart 2.0: Оптимизированный для клиентской разработки Сегодня мы анонсируем Dart 2, перезагрузку языка, которая более полно отражает наше видение Dart как уникально оптимизированного языка для клиентской разработки на Web и мобильных платформах. Dash — официальный маскот языка Читать дальше →

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

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

[Из песочницы] Достаточно простой и эффективный алгоритм распознавания и сопровождения движения После почтения на сайте статьи Шуравина Александра (megabax) с названием: «Простой алгоритм распознавания движения», появилась потребность продвинуться в решении задачи, поставленной в статье. В результате появился алгоритм для обработки последовательности кадров, содержащих...

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

Как протестировать SkyNet? (если он написан на JS) Давным давно я посмотрел Терминатор1. Немного подрос и посмотрел немного отрефакторенный Терминатор 2. Третьей интерации пришлось ждать немного дольше. И каждый раз бедному СкайНету не везло, и каждый раз все наперекосяк, и секрет этого невезения очень прост — СкайНет не б...

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

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

В приложении Google появился редактор скриншотов В апреле прошлого года компания Google начала тестировать встроенный в одноимённое мобильное приложение инструмент для редактирования скриншотов. До сегодняшнего дня функция была доступна не всем пользователям. Начиная с версии 7.21 этим инструментом могут воспользоваться вс...

В Drupal пропатчена не слишком опасная XSS В минувшую среду команда Drupal выпустила обновления с патчем для XSS-уязвимости, крывшейся в модуле CKEditor ядра CMS-системы. Данная брешь, оцененная как умеренно опасная, актуальна лишь для Drupal 8; пользователям рекомендуется установить сборку  8.5.2 или 8.4.7. Согласно...

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

[Перевод] Вышел GitLab 10.4 c динамическим тестированием безопасности приложений и бета-версией Web IDE В первом релизе 2018 года мы внесли улучшения в процессы планирования, тестирования, развертывания и работы с мерж-реквестами. Кроме того, в данный релиз включены новые возможности тестирования безопасности, а также первая версия Web IDE, который является частью нашего амби...

«Новософт» совершенствует бэкап почты В новую версию Handy Backup 7.11 входит обновление плагина «E-mail», которое позволяет выполнять бэкап и восстановление электронной почты практически на любых существующих почтовых серверах.

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

Mug Life для iPhone, или как из простого фото сделать крутой анимационный мем (смайл, стикер) В приложении Mug Life для iOS реализована технология компьютерного зрения, позволяющая анализировать обычные фото и на их основе строить анимированное 3D-изображение. При первом входе в приложение пользователю предложат создать новую учетную запись либо авторизоваться с помо...

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

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

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

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

Resolve IP адресов в Linux: понятное и детальное описание Настройка сетевого взаимодействия сервисов не самая простая задача и часто осуществляется без глубокого понимания как требуется настраивать систему и какие настройки на что влияют. После миграции сервисов в docker контейнерах с centos 6 на centos 7 я столкнулся со странным п...

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

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

Автоматизация обновлений CleanTalk Anti-Spam для WordPress Если вы обслуживаете пару-тройку сайтов, то обновление плагинов не вызывает каких-то сложностей. Сложности появляются, если вы обслуживаете несколько десятков, а то и сотен сайтов. CleanTalk Антиспам требует частых обновлений (нам приходится выпускать новую версию раз в 1-...

DSP на Java Java — язык программирования общего назначения. Общего назначения — значит можно писать почти любые программы. Вот я и попытался написать программу, которую обычно пишут на С или C++. Под катом я попытаюсь рассказать, как я декодировал спутниковые снимки с Метеор-М №2. Чита...

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

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

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

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

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

Мой опыт использования Google AdWords Express Несколько месяцев назад вернулся к оказанию IT-услуг в своём небольшом городе. Дабы громко заявить о себе первый раз решил попробовать контекстную рекламу в Интернете. Так как в нашей стране Яндекс и все его сервисы заблокированы, то выбор пал на корпорацию Google и его серв...

Lidow 4.72 Photo Editor by Lidow – это простое приложение для Android, которое позволит быстро отредактировать фотографии с помощью набора фильтров, эффектов и прочих инструментов. Программа не обладает мощным функционалом, но все компоненты автоматизированы и не требуют от пользовател...

Приложение Uber для Windows 10 больше не поддерживается В 2013 году компания Uber выпустила собственное приложение для платформы Windows Phone, однако вскоре была вынуждена удалить его после жалоб пользователей, поскольку на деле это оказался простой веб-сайт. В 2014 году компания выпустила полноценное приложение для Windows Pho...

Google призвала российских разработчиков создавать приложения с поддержкой «Google Ассистента» Компания Google анонсировала появление поддержки русского языка в Google Assistant. Изначально она будет реализована только на смартфонах.

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

Разбор задачек от Одноклассников на JPoint 2018 Алоха! Самым, наверное, интересным событием на этой неделе в мире Java стала конференция JPoint, которая прошла в Центре Международной Торговли в Москве. Одноклассники предложили посетителям тоже поучаствовать в разработке самой высоконагруженной системы на Java и помочь на...

Видеоурок Теплицы: как перекодировать видео в mp4, avi, mov и другие форматы с помощью программы Xvid4PSP Продолжая тему обработки видео, мы бы хотели рассказать вам об одном важном процессе, с которым рано или поздно сталкиваются все, кто занимается видеопроизводством, а именно, о том, как менять форматы и разрешение видео для использования его на разных устройствах. У любого ...

Баг Siri позволяет читать сообщения на заблокированном iPhone‍ Голосовой помощник легко озвучит текст вашего сообщения из стороннего приложения любому желающему.

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

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

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

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

[Перевод] Система типов в математике Время от времени мне встречаются вопросы по математике, которые в каком-то смысле можно назвать «грамматически неверными». Пример. «Интервал является замкнутым или открытым?» Пример. «Является ли группой?» Пример. «Каков ряд Фурье для ?» А вот ещё более глупые примеры. ...

[Из песочницы] Как сделать адекватное отображение horizontal scroll bar в QTreeWidget с одной колонкой Привет, Хабр. В этой статье я решил оставить решение проблемы непонятного поведения QTreeWidget – GUI компонента кроссплатформенного фреймворка Qt. Проблема, мне кажется, актуальная, потому что вопрос задаётся на многих форумах, но верного решения не приводится. Впрочем, есл...

Курс «HTML/CSS. Основы создания сайтов» Без какого языка не обойтись, работая с любой веб-технологией? Конечно же, без HTML/CSS! Знание HTML/CSS — это основа для дальнейшего изучения серверных языков программирования и один из основных инструментов работы верстальщика, программиста ил...

[Из песочницы] Пишем плагин к Microsoft DNS server для защиты от IDN spoofing IDN spoofing — это генерация доменных имён «похожих» на выбранное, обычно применяемая с целью заставить пользователя перейти по ссылке на ресурс злоумышленника. Далее рассмотрим более конкретный вариант атаки. Представим, что атакуемая компания владеет доменом organization....

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

[Из песочницы] От идеи до AppStore Пол года назад у меня появилась идея, и вот несколько дней назад (27.03.18) приложение под названием "***" опубликовали в AppStore. Но, обо всем по порядку. Все началось с простой идеи В нашей жизни постоянно происходят какие-то события, хорошие, плохие, не важно. Я всегда...

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

[Перевод] Learn OpenGL. Урок 4.11 — Сглаживание Сглаживание В своих изысканиях, посвященных трехмерному рендеру вы наверняка сталкивались с появлением пикселизованных зазубрин по краям отрисовываемых моделей. Эти отметины неизбежно появляются из-за принципа преобразования вершинных данных в экранные фрагменты растеризато...

Microsoft выпустила расширение-антивирус для Google Chrome Плагин покажет предупреждение, если вы попытаетесь открыть вредоносный сайт или письмо от мошенников.

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

«Яндекс» поделится опытом разработки ПО для робомобилей Компания «Яндекс» организовала на базе Школы анализа данных учебный курс Self-driving cars, посвящённый разработке программного обеспечения для беспилотных автомобилей. Школа анализа данных была основана «Яндексом» в сентябре 2007 года. Здесь...

[Перевод] Что нового в LLVM LLVM 6 уменьшает опасность Spectre, имеет улучшенную поддержку Windows и CPU компании Intel, а также включает WebAssembly в число поддерживаемых целевых платформ. Инфраструктура компилятора LLVM прошла путь от технически любопытной вещи до живой части современного ландшаф...

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

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

iMessage и SMS, или почему сообщения в iPhone бывают синими и зелеными Многие владельцы iPhone регулярно сталкиваются с проблемой разделения типов текстовых сообщений в штатном мессенджере iOS, приложении Сообщения. Разработчики iOS постарались сделать приложение максимально удобным, объединив переписки SMS/MMS и iMessage в одном приложении, од...

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

Сложные сечения балок и колонн - в новом релизе Renga Renga Software объявляет о выпуске нового релиза BIM-систем Renga Architecture и Renga Structure. Теперь у проектировщиков и архитекторов появятся новые возможности при работе с колоннами и балками, отправочными марками, окнами и спецификациями. А разработчики IT-решений смо...

Настройка динамического dhcp-pool с привязкой к определенным портам Cisco Catalyst Так сложилось, что сеть у меня построена таким образом, что IP-адреса выдаются только тем клиентам, чьи MAC-адреса прописаны в самописной системе управления сетью и учета трафика (назвать это биллингом язык не поворачивается). Спустя несколько лет я понял, что диапазон сет...

Эталонное приложение на базе контейнеров и архитектуры микросервисов Хабр, привет. Сегодня рассказываем вам об эталонном кроссплатформенном приложении .NET Core от Microsoft, созданном на основе упрощенной архитектуры микросервисов и контейнеров Docker. В статье поделимся большим количеством технических данных, документацией, книгами по теме,...

Сообщение на языке телугу может вывести iPhone из строя В новой iOS версии 11.2.5 обнаружили баг, связанный с приложением для сообщений. Как утверждает The Verge, если отправить определенное сообщение на языке телугу, распространенном в Индии, можно вывести из строя iPhone. Получив «нехорошее» сообщение на свой iPhone…

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

Айфончик, не лагай. Часть 1: многопоточность для практиков Меня зовут Максим, и я алкоголик занимаюсь iOS разработкой уже более 7 лет. На волне про соискателей скажу, что регулярно провожу собеседования мобильных разработчиков для компаний. Среди кандидатов попадаются кадры, которые курят кальян прямо на Skype собеседовании, п...

Apple устранила баг с «убийственным» индийским символом в iPhone и Mac Компания Apple, как и обещала, решила проблему с индийским символом, который способен «вырубить» систему на iPhone, iPad или Mac, буквально одним сообщением. Ошибка устранена в вышедших мобильной iOS 11.2.6, дополнительного обновления десктопной macOS Sierra 10....

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

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

Личный опыт разработки “аналога Whatsapp” за 4 месяца Сделать свой мессенджер просто? Вовсе нет - даже самое простое приложение для общения это до 50 функций, исполнение которых к тому же зависит от платформы. Технический директор компании Mauris Владимир Бондаренко рассказывает о своем опыте разработки корпоративного мессендже...

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

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

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

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

Spotify тестирует новое приложение Stations Stations – бесплатное приложение от Spotify, которое автоматически воспроизводит песни, исходя из ваших предпочтений. Впервые обнаруженное аналитической фирмой Sensor Tower во вторник, приложение Stations by Spotify теперь доступно для некоторых стран в Google Play. Со...

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

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

Как быстро скрывать «плохие» сайты и открывать «хорошие» на Mac и Windows, если рядом начальник Ситуация, знакомая каждому — вы открыли «запретную» страничку в Safari или Chrome, и внезапно замечаете, что к вам подходит тот, кому… кому видеть её абсолютно ни к чему :). Что делать? Качать, изучать и применять плагин PanicButton. Расширение работает очень просто &#...

Nemesida Scanner — сканер уязвимостей веб-приложений   Nemesida Scanner предназначен для выявления уязвимостей в веб-приложениях, таких как SQL injection, XSS, LFI/RFI, XXE, Оpen-redirect, поиска компонентов с известными уязвимостями и критичных данных в открытом доступе, выявления недостатков конфигурации веб-приложения, ска...

[Перевод] Как пробиться на вершину Product Hunt Прежде чем рассказывать, как забраться на вершину рейтинга Product Hunt, я, пожалуй, покажу, что пытается сделать БОЛЬШИНСТВО — терпя при этом неудачу и обрекая себя на глухие рыдания в подушку. Как неудачники выходят на Product Hunt Гуглят «Как попасть в топ Product Hun...

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

Игра на UWP: С чего стоит начать Привет, Хабр! Сегодня мы запускаем экспериментальную серию статей. Вы погрузитесь в реалити-шоу для программистов-самоучек, в котором Алексей Плотников, один из участников нашего сообщества Microsoft Developer, будет рассказывать о том, как он создаёт игру для UWP. Под катом...

Сканер и распознавание текста на iPhone бесплатно: Обзор программы Adobe Scan для iOS Компания Adobe решила потеснить рынок приложений для сканирования и распознавания текста на iPhone и iPad. В этом материале мы расскажем о достоинствах и недостатках приложения Adobe Scan доступного для бесплатного скачивания в App Store.   Как сканировать и распознават...

Мобильное приложение My BP Lab поможет измерить давление и уровень стресса Компания Samsung Electronics и Калифорнийский университет в Сан-Франциско (UCSF) объявили о разработке мобильного приложения My BP Lab, которое поможет владельцам флагманских смартфонов Galaxy следить за состоянием здоровья. Программа My BP Lab использует в работе и...

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

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

Apple запретила использовать свои эмодзи в приложениях для iOS Согласно обновленным правилам публикации приложений в App Store, разработчики больше не могут использовать эмодзи от Apple в качестве иконок для кнопок в своих играх и программах. Это связано с нарушением интеллектуальной собственности, но новое правило довольно «размыто». ...

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

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

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

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

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

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

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

[Из песочницы] Онлайн имплементация localStorage Хочу поделиться тем, как приватный режим Safari привел к разработке простого ключ-значение хранилища на Node.js с резервным копированием, доступом к данным с определенных доменов и защитой паролем от записи и очистки хранилища. Все началось с того, что мне дали задачу, ре...

[Из песочницы] Средства миграции данных Android и улучшение поддержки приложений Привет, Хабр! Представляю вашему вниманию перевод статьи «Discover tools for Android data migration and improve your app retention» авторов Sean McQuillan и Prateek Tandon. Пользователи создают учетные записи, активируют их, а затем сохраняются, когда многократно запускают ...

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

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

Визуализация на карте распределения голосов по Москве на выборах президента 2018 Введение Выборы — крайне загадочный процесс, при просмотре значений результатов которого не совсем понятна общая картина. Я решил показать их на карте Москвы с делением по районам c помощью технологий InterSystems, которые обеспечивают и хранение, и анализ данных. В данном с...

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

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

Любое приложение на Mac может тайно делать скриншоты экрана На днях разработчик Феликс Крузе опубликовал в сети информацию, связанную с работой приложений в macOS. По его словам, почти любая из установленных на яблочном компьютере программ способна скрытно записывать все, что происходит на экране.  Читать дальше... ProstoMAC.com.| П...

Ардуированная кофемашина Привет, обитатели ХабраХабр! Возможно, по сути статьи я ошибся ресурсом, за мое 9 летнее отсутствие появился некий geektimes, возможно, я должен написать это там, но напишу сюда — на хабрахабр. Если не прав — не бейте ногами. Я люблю делать простые как топор вещи, но одно...

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

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

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

[Из песочницы] Design by Introspection Что, если бы мы умели располагать атомы один за другим как нам угодно? Ричард ФейнманСколько парадигм программирования вы сможете назвать? Список на этой странице википедии содержит ни много ни мало 76 наименований. Этот список может быть пополнен ещё одним подходом, названн...

Сложные сечения балок и колонн, отправочные марки, спецификация окон и дверей - в новом релизе Renga Renga Software объявляет о выпуске нового релиза BIM-систем Renga Architecture и Renga Structure. Теперь у проектировщиков и архитекторов появятся новые возможности при работе с колоннами и балками, отправочными марками, окнами и спецификациями. А разработчики IT-решений смо...

Найден способ «уничтожить» iPhone или Mac одним символом Был обнаружен еще один способ «вырубить» систему на iPhone, iPad или Mac, буквально одним сообщением. На этот раз речь идет о специфическом символе из индийского языка телугу, его достаточно отправить через iMessage, Facebook Messenger, WhatsApp, Gmail или Outloo...

Как использовать переводчик PROMT в Telegram и Skype В честь своего 20-летия компания PROMT выпустила официального бота-переводчика для Skype и Telegram. Сервис знает 15 языков и позволяет переводить даже большие объемы текста не выходя из мессенджера.

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

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

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

«Новософт» обновляет Handy Backup Новая версия содержит плагин для доступа к облаку «горячих» данных Hotbox провайдера Mail.ru, а также плагин для работы с хранилищем Amazon S3.

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

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

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

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

[Перевод] Квантовая телепортация на языке Q# Скажу сразу: как бы мне этого ни хотелось, квантовая телепортация не позволит перенести мою бабушку из деревни в мою квартиру. Бабуля знает, что мне нравятся всякие квантовые штуки, и решила вместо денег и носков отправить мне на день рождения квантовое состояние. Здесь мы п...

SMARTtech: Заправка картриджей. Часто задаваемые вопросы по заправке картриджей Владельцу принтера рано или поздно приходится искать место, где заправлять картридж. Редакция портала Smartphone.ua также сталкивалась с этой проблемой и сразу рекомендует найти сервисный центр, который все сделает быстро и качественно, такой как здесь.

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

Из смартфонов на Android и iOS для России не пропадут стандартные приложения Несколько дней назад в сети появилась информация о новом законе, который вскоре может быть принят в России. По данным российских СМИ, он обяжет всех производителей смартфонов отказаться от собственных стандартных приложений в пользу российских. Проще

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

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

R — значит регрессия Статистика в последнее время получила мощную PR поддержку со стороны более новых и шумных дисциплин — Машинного Обучения и Больших Данных. Тем, кто стремится оседлать эту волну необходимо подружится с уравнениями регрессии. Желательно при этом не только усвоить 2-3 приемчика...

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

Logitech расширила функционал клавиатуры CRAFT с диском управления Компания Logitech выпустила важное обновление для фирменной клавиатуры CRAFT с многофункциональным диском управления. В состав главных нововведений вошла поддержка таких программ, как Adobe Lightroom Classic CC и Adobe Reader DC для Windows, а также Preview и QuickTime для m...

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

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

[Перевод] Blockchain на Go. Часть 1: Прототип Блокчейн одна из самых революционных технологий 21 века, до сих пор не реализовавшая весь свой потенциал. По сути, блокчейн это просто распределенная база данных. Что же делает ее уникальной? Это база данных полностью открыта и хранится у каждого участника полной или частичн...

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

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

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

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

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

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

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

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

Meizu позволит легким свайпом скрывать панель Super mBack Меньше месяца назад мы делали обзор смартфона Meizu M6S, где подробно рассматривали все его «плюсы» и «минусы», а также уделили особое внимание функции «Super mBack». Вкратце, это единая кнопка управления Android, которая заменила собой ст...

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

Текущая разработка Kotlin На прошлой неделе при поддержке Redmadrobot SPB в рамках SPB Kotlin User Group прошла встреча со Станиславом Ерохиным, разработчиком из JetBrains. На встрече он поделился информацией о разрабатываемых возможностях следующей мажорной версии Котлина (под номером 1.3). В этой ...

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

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

[Перевод] Квантовые вычисления и язык Q# для начинающих Возможно, вы узнали о выпуске пакета средств квантовой разработки Quantum Development Kit и подумали, что это звучит безумно круто… а потом вспомнили, что про квантовую механику почти ничего не знаете. Но ничего страшного. Через 30 минут вы будете знать о кубитах, суперпозиц...

Вертим логи как хотим ― анализ журналов в системах Windows Пора поговорить про удобную работу с логами, тем более что в Windows есть масса неочевидных инструментов для этого. Например, Log Parser, который порой просто незаменим. В статье не будет про серьезные вещи вроде Splunk и ELK (Elasticsearch + Logstash + Kibana). Сфокусируем...

[Перевод] Регулярные выражения: никакой магии Код этого поста, как и сам пост, выложен на github. До недавнего времени регулярные выражения казались мне какой-то магией. Я никак не мог понять, как можно определить, соответствует ли строка заданному регулярному выражению. А теперь я это понял! Ниже представлена реализа...

Angular: OAuth2 авторизация, рефрешим токен и HttpInterceptor Доброго времени суток. Опишу процесс авторизации с использованием некоторого сервера авторизации и интерфейса HttpInterceptor, который стал доступен с версии Angular 4.3+. С помощью HttpInterceptor`a будем добавлять наш токен в Header запроса перед отправкой каждого запроса...

#скидочки | 28 марта Шумомер (15 руб.) | TextGrabber 6 (75 руб.) | Ruler (Бесплатно) Ежедневно мы вручную отбираем для вас лучшие предложения из App Store, которые становятся бесплатными или распространяются с большой скидкой. Каждый день новые и лучшие приложения для ваших iPhone, iPad или Ma...

[Перевод] О стримах и таблицах в Kafka и Stream Processing, часть 1 * Michael G. Noll — активный контрибьютор в Open Source проекты, в том числе в Apache Kafka и Apache Storm. Статья будет полезна в первую очередь тем, кто только знакомится с Apache Kafka и/или потоковой обработкой [Stream Processing]. В этой статье, возможно, в первой из ...

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

Прыжок в облако. Строим бюджетное решение для интернета вещей на NodeMCU + Azure IoT Hub Для подписчиковСамое популярное назначение IoT-устройств — это сбор телеметрии. На сегодняшний день цены на облачные IoT-сервисы снизились буквально до одного доллара в месяц, который, согласись, не жалко отдать даже просто ради эксперимента. :) В этой статье я расскажу, как...

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

Компания Apple обновила свои ОС и закрыла баг, который провоцировал символ языка телугу Разработчики компании Apple подготовили и выпустили патчи для iOS, macOS, tvOS и watchOS. Исправления устраняют проблему, которую вызывал один единственный текстовый символ индийского языка телугу. Получение такого символа, заставляло многие приложения экстренно завершить ра...

Ищем причины тормозов БД, используя sys schema в MySQL 5.7 Есть у нас веб-приложение. Относительно большое и старое — много-много кода, в котором много-много разных запросов к базе данных. При этом мы не гугл, но несколько тысяч запросов в секунду на сервер БД приходится. Ну и безусловно растёт наше приложение во все стороны — доб...

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

Android P даёт возможность использовать смартфон в качестве клавиатуры и мыши На прошлой неделе мы писали, что первая версия Android 9.0 Developer Preview появится в середине этого месяца. Бытует мнение, что это произойдет 14 марта, с отсылкой на число Пи (3.14). Несмотря на то, что осталось совсем мало времени, Google не останавливается на отладке им...

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

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

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

ИИ-переводчик Microsoft превзошел человека при переводе с китайского на английский язык Искусственный интеллект, разработанный компанией Microsoft, оказался лучше лингвиста-человека. AI продемонстрировал более высокое качество перевода с китайского на английский язык. Ранее программа компании показала более высокий уровень распознавания речи. Разработчики компа...

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

How-to: смена основного домена в G Suite для всей компании и с сохранением всех данных Появилась необходимость сменить основной домен компании в G Suite с .ru на .com с сохранением всех данных, календарей, псевдонимов и доступов на сторонние ресурсы. Информации о переезде в интернете не очень много, а точнее, кроме справки самого Google, вообще ничего не наш...

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

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

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

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

WINMANI – сервис для заработка на приложениях WINMANI представляет из себя сервис, который позволяет как продвинуть ваше приложение в Microsoft Store, так и заработать на нем обычным пользователям. Сумма заработка зависит от количества заданий, которые необходимо выполнить. Перед установкой приложения не забудьте заране...

WINMANI – сервис для заработка на приложениях Windows WINMANI представляет из себя сервис, который позволяет как продвинуть ваше приложение в Microsoft Store, так и заработать на нем обычным пользователям. Сумма заработка зависит от количества заданий, которые необходимо выполнить. Перед установкой приложения не забудьте заране...

[Из песочницы] Классификация музыкальных композиций по исполнителям с помощью Скрытых Марковских Моделей Скрытые марковские модели (Hidden Markov Models) с давних времен используются в распознавании речи. Благодаря мел-кепстральным коэффициентам (MFCC), появилась возможность откинуть несущественные для распознавания компоненты сигнала, значительно снижая размерность признаков...

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 3 — Routing & Fetching В предыдущей части туториала мы научили наше изоморфное приложение проксировать запросы к backend api, с помощью сессии передавать начальный стейт между синхронными запросами и осуществлять Server-side rendering с возможностью переиспользования разметки на клиенте (hydrate)....

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

Webpack 4 и code splitting 25 февраля 2018 года вышел релиз webpack 4.0.0 (и на сегодняшний день 4.0.1). Одна из полезных и сравнительно новых фич webpack — code splitting, перенесена в новой версии из плагинов в основную конфигурацию. При практически полном отсутствии документации, как теперь нужно к...

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

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

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

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

[Из песочницы] Export to Excel from JS Введение Всем привет! Сегодня я опишу довольно тривиальную, но ни где не освященную тему экспорт из страницы данных в Excel. На мое удивление сам процесс не описан ни где в полной мере и так приступим. Читать дальше →

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

[Из песочницы] Как быть* компилятором — создание компилятора на JavaScript Привет, Хабр! Представляю вашему вниманию перевод статьи "How to be* a compiler — make a compiler with JavaScript" автора Mariko Kosaka. *Все верно! Быть компилятором — это здорово! Дело было одним замечательным воскресеным днем в Бушвике, Бруклин. В моем местном книжном м...

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

Приложение Canva для дизайна выходит на русском языке Онлайн-платформа для графического дизайна представила приложение для операционной системы Android на русском языке.

Viber UWP больше недоступен для Windows 10 По сообщениям наших коллег с портала Aggiornamenti Lumia, неделю назад команда Viber удалила собственное приложение из Microsoft Store. Правда речь идёт только о возможности скачать приложение на ПК, тогда как на Windows 10 Mobile пользователи по-прежнему могут загрузить пр...

MWC 2018: Google принесет дополненную реальность на 100 миллионов смартфонов ARCore — разработка Google в сфере дополненной реальности (AR) будет официально запущена на конференции MWC в Барселоне. ARCore 1.0 позволит разработчикам использовать камеры смартфонов для наложения 3D-объектов на изображение с них, или, проще говоря, совмещать изображение...

«Репетитор: математика» для подготовки к ЕГЭ и ВПР — от идеи до релиза. Рассказ об уникальном образовательном проекте Содержание Вступительное слово С чего все началось? — Зарождение идеи и задач — Несколько слов о нашей команде Как перевести в цифровой формат то, что делает профессиональный репетитор? — Основные идеи приложения — Как обеспечить индивидуальный подход к каждому пользователю...

Ask me anything. Avito. Android Привет! Первый опыт публикации поста формата «Вопрос-ответ» в нашем блоге оказался успешным и полезным для всех участников, поэтому сегодня мы продолжаем. На этот раз речь пойдёт о разработке под Android в целом и об особенностях приложения Avito в частности. Как работается...

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

Как удалять приложения с iPhone и iPad: 3 основных способа Казалась бы такая простая операция как удаление приложений на iOS-устройствах порой вызывает вопросы, особенно у новичков, которые лишь недавно пополнили армию владельцев мобильных устройств от Apple.  Существует два основных способа удаления приложений с iPhone и  iPad. Рас...

Neffos выпустила обновление интерфейса NFUI 7.0 для смартфонов серии X1 15 февраля этого года компания TP-Link объявила о выпуске обновления пользовательского интерфейса NFUI 7.0 для смартфонов Neffos серии X1. В данном обновлении представлен ряд усовершенствованных функций, улучшена система управления смартфоном и работа с мобильными приложения...

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

Рустам Мехмандаров и Александр Тарасов — семантические чудеса и автоматизация экспериментов на jug.msk.ru 5 апреля 2018 года, как раз накануне конференции JPoint 2018, прошла очередная встреча московского сообщества Java-разработчиков jug.msk.ru. Рустам Мехмандаров рассказал об опыте решения задач с использованием Apache Jena. Александр Тарасов поведал про использование DSL на о...

Простой Генератор Звука 1.9 У приложения «Простой Генератор Звуковых Волн» одна функция — генерирование звуковых колебаний частотой от 1 до 20 000 Гц. Но использовать его можно во многих жизненных ситуациях. Хотите определить у своего сабвуфера нижнюю границу воспроизводимых частот? — Функция «Subwoo...

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

На тестах замечен полностью электрический кроссовер KIA Niro На американском автомобильном рынке успешно реализуется плагин-гибридный кроссовер KIA Niro, но разработчики планируют представить ещё более «чистую» модель. На тестах был замечен новый KIA Niro EV с полностью электрическим двигателем. На страницах американского автомобил...

Представлена бета-версия Datalore, умной веб-среды для анализа и визуализации данных на языке Python Компания JetBrains анонсировала бета-версию приложения Datalore, созданного для анализа данных на Python.

Как я подстраивал нотификации Telegram под Mi Band 2 Я активно пользуюсь mi band еще с первой версии. Изначально это устройство позиционировалось как фитнес браслет для подсчета шагов, отслеживания фаз сна и умного будильника, в новые версии стали добавлять также пульсометр и часы. Еще с первой версии благодаря приложению Noti...

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

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

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

Как автоматически устанавливать приложение на Apple TV при его загрузке на iPhone или iPad Apple TV можно настроить так, чтобы любое приложение, которое пользователь загружает на свой iPhone или iPad, автоматически загружалось и на приставку. Существует ряд ограничений, в частности разработчик приложения должен сделать его отдельную версию для Apple TV и предлагат...

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

Как импортировать банковские SMS и вести бюджет на iPhone Приложений для учета финансов в App Store сейчас великое множество, но, как правило, все они похожи друг на друга (некоторые даже слепо копируют дизайн): создали счета прихода/расхода, а затем вносите самостоятельно информацию о всех своих транзакциях. Это не всегда удобно...

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

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

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

[Из песочницы] Создание динамичаского tooltip в Angular2+ приложениях В нашем приложении передо мной встала задача о создании красивого тултипа, в Angular Material таблице. Дизайн нам нарисовали, и я начала поиск в интернете нужных материалов. Но натыкалась уже или на готовые решения(библиотеки) или на очень простые решения, которые мне не под...

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

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

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

[Перевод] Четыре уровня одностраничных приложений, о которых вам нужно знать В этой статье мы с нуля разработаем React-приложение, обсудим домен и его сервисы, хранение, сервисы приложения и представление (view). Читать дальше →

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

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

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

Алгоритмы в индустрии: теория формальных языков и чат-боты Популярность диалоговых систем тесно связана с термином “искусственный интеллект”. Такие системы обычно основаны на нейросетях и других моделях машинного обучения. Однако, такой подход порождает неожиданные трудности Поведение можно лучше контролировать, добавив в систему...

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

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

Для чего нужна и как работает функция «Режим сна» на iPhone В целях заботы о здоровье своих пользователей начиная с iOS 10 Apple реализовала в мобильной ОС полезную опцию Режим сна. Найти её можно на одноименной вкладке в системном приложении Часы. Режим сна напоминает пользователю о том, когда надо засыпать, если он хочет как следуе...

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

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

[Перевод] Webpack 4, import() и CommonJS В JavaScript много забавного. У одного из самых популярных в мире языков программирования до сих пор нет стабильного синтаксиса разбиения кода на части. То есть в стандарте синтаксис ESM с «import» наперевес уже есть, но в браузерах и ноде он спрятан за флагами, а в вебпаке...

Визуальный способ создания программ Luna может использоваться во многих областях, где обработка данных является главным приоритетом: data science, машинное обучение, IoT, биоинформатика, компьютерная графика или архитектура. Создатели open source языка рассуждают о принципах создания предметно-ориентированных ...

Технология распознавания объектов Google Lens появилась в приложении Google Photos Ещё в прошлом месяце появилась информация о том, что эксклюзивное для смартфонов Pixel приложение Google Lens станет доступным всем пользователям устройств на Android и iOS. Вчера команда разработчиков заявила, что Google Lens будет интегрировано в качестве новой функции в п...

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

Изучение Spring Framework 100% через практику. Активные туториалы и язык разметки KML. Проект KciTasks (beta) Spring Framework традиционно считается одним из самых сложных и при этом высокооплачиваемых. Однако, существующие подходы к его изучению крайне неэффективны. Я хотел бы предложить вам принципиально новый подход к изучению спринга, который заключается в использовании концеп...

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

Онлайн-сервис Duolingo запустил курс изучения клингонского языка из сериала Star Trek (там же можно выучить высокий валирийский из Game of Thrones) Сервис изучения иностранных языков Duolingo запустил долгожданный фанатами научной фантастики курс изучения клингонского языка, на котором общались герои сериала Star Trek / “Звёздный путь”. Как и в случае с любым другим языком, доступным в библиотеке сервиса Duo...

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

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

[recovery mode] DM.Мобильная Торговля: какие задачки решали наши Android разработчики в новом релизе и зачем Представители e-commerce уже «в теме», что нужно автоматизировать своих курьеров по ФЗ-54. Чтобы не попасть под штрафные санкции, курьер должен печатать чек в момент вручения заказа. Но если уж приходится автоматизировать операцию приема платежей, которая требует установле...

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

[Перевод] Go: Хороший, плохой, злой У Go есть некоторые замечательные свойства, которым посвящён раздел «Хороший». Но когда речь заходит о применении этого языка не для создания API или сетевых серверов (для чего он и был разработан), а для реализации бизнес-логики, то я считаю Gо слишком неуклюжим и неудобны...

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

Veeam Academy: от базовых знаний C# до командной разработки за 2,5 месяца → Регистрация открыта до 25 февраля Veeam Academy, созданная на базе Veeam Software, запускает в марте 2018 года интенсив для разработчиков на C#. Интенсив будет полезен тем, у кого уже есть базовые знания в области программирования, но кто хочет получить больше практики...

Платформа дополненной реальности Bose AR работает не с изображением, а со звуком Компания Bose на этой неделе представила разработку под названием Bose AR. По словам производителя, это «первая в мире платформа звуковой дополненной реальности». В отличие от других изделий для дополненной реальности, Bose AR работает не с изображением, а со звуком. ...

Google пообещала запустить Google Ассистент на русском Компания Google пообещала выпустить свой голосовой помощник Google Ассистент (Google Assistant) в России в «ближайшие месяцы». Об этом сообщается в официальном блоге компании на Хабрахабре. Как отмечает Google, на момент запуска в России Ассистент будет доступен...

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

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

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

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

Новая жизнь для XMPP. Делаем мессенджер, который не получится заблокировать Идея сделать независимый от корпораций P2P мессенджер не нова, однако разработка нового протокола и клиентских приложений для него достаточно дорогой и долгий процесс. А что, если использовать старый добрый XMPP, в котором уже все давно продумано и запилено? Но это же не н...

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

11 плагинов для Quick Look в macOS, упрощающих жизнь Полезные дополнения, которые сделают удобный инструмент macOS ещё лучше.

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

FSP Hydro PTM+ на 1400 Вт Пока другие компании производят достаточно простые и скучные блоки питания, был анонсирован FSP Hydro PTM+. Данный продукт порадует вас наличием встроенного водоблока для охлаждения некоторых компонентов блока питания под нагрузкой. Стоит отметить, что само решение весьма ри...

Как размер APK зависит от метода разработки приложения В этой статье мы сравним размеры одинаковых приложений на Java, Kotlin, React Native и Flutter.

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

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

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

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

Почему приложения на iOS «падают» чаще, чем на Android? Почти год назад компания Blancco Technology Group написала в своем отчете, где анализируются диагностические сведения с мобильных устройств, что приложения на iPhone «падают» почти в три раза чаще, чем на Android. Этого хватило для того, чтобы в СМИ появились громкие загол...

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

Французский плюс 1.0 Приложение «Французский плюс» состоит из 8-ми разделов: «Учим слова» — раздел для запоминания французских слов. Фразы контекста помогают представить объемную картинку и улучшают запоминание нового слова. «Пишем слова» — раздел для тренировки правописания французских ...

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

Twitter закрывает приложение для Mac Компания Twitter объявила, что приложение для Mac будет в скором времени закрыто. Анонс вызвал бурю негодования среди пользователей. Пользователи Mac в гневе Официальное приложение уже исчезло из Mac App Store, и полностью перестанет работать через 30 дней. В качестве альт...

[Перевод] 5 ошибок при разработке WebRTC звонков из браузера WebRTC — не самая простая штука. Только недавно API стали поддерживать все основные браузеры, но с оговорками и «нюансами». Добавим к этому темное наследие VoIP телефонии в виде торчащего наружу SIP, борьбу между Ёжиком и SIP с применением oRTC, падающие при неудачном сочет...

Hex On 1.5 Hex On — это логическая игра, в которой вам нужно закрасить все шестиугольники. Нажимая на шестиугольник, он меняет свой цвет, а также меняются цвета его соседей по стороне. Думаете все так просто? Хаха, НЕТ. — Приятная фоновая музыка — Красивый и минималистичн...

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

Украинские парламентарии скопировали белорусский декрет 'О развитии цифровой экономики' Один из участников экспертной группы по разработке Декрета №8 "О развитии цифровой экономики" адвокат Денис Алейников сообщил, что украинские законодатели "заимствовали" опыт белорусов по разработке законопроекта.<br />&l...

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

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

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

В Android P протокол TLS будет использоваться по умолчанию В новой версии ОС Android, получившей название Android P, все входящие и исходящие соединения будут осуществляться через протокол TLS (Transport Layer Security) — об этом компания сообщила во вторник на официальной странице блога разработчиков ОС. TLS препятствует несанкцион...

Origami school 1.2 100+ уроков от Школы Оригами!   Хочешь научиться оригами? Тогда это приложение для вас, больше 100 уроков оригами, от самых простых до подвижных фигур. Делайте оригами с детьми или друзьями. Оригами на праздник или подарка. Пошаговые и понятные уроки для обуче...

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

BlackBerry удалит все платные приложения из своего цифрового магазина 1 апреля BlackBerry Limited, которая управляет программным обеспечением и лицензией бренда BlackBerry, начала сообщать разработчикам, что 1 апреля 2018 года принудительно удалит из BlackBerry World платные приложения. По словам компании, в магазине будет доступен только бесп...

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

[Перевод] Разработка игр под NES на C. Главы 17-21. Своя игра В этой части соберем все вместе и сделаем простую скроллерную стрелялку на космическую тему: корабль летит и лазерами отстреливает врагов <<< предыдущая следующая >>> Источник Планирование Читать дальше →

[recovery mode] Разработка голосовых приложений 3CX: введение для начинающих Среда разработки Call Flow Designer Среда разработки 3CX Call Flow Designer (CFD) позволяет администратору АТС создавать сложную логику обработки вызовов (голосовые приложения) в удобном визуальном редакторе — с минимальными навыками программирования или вообще без них. Голо...

В watchOS 5 Apple может отказаться от поддержки старых приложений В начале апреля компания Apple дала разработчикам возможность познакомиться с первой тестовой сборкой watchOS 4.3.1. Заметных изменений и новых функций прошивка с собой не принесла. Однако через некоторое время разработчики обнаружили в системе ряд предупреждающих уведомлени...

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

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

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