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

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

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

Доверие к мобильным SDK Недавняя история о бэкдоре в популярнейшей NPM-библиотеке заставила многих задуматься о том, насколько мы доверяем стороннему коду и как смело используем его в своих проектах (потенциально подставляя тем самым пользователей наших продуктов). Но ещё за месяцы до того, как ...

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

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

Открытые библиотеки для визуализации аудиоконтента Мы изучили несколько тематических тредов на GitHub, Hacker News и Reddit, посвященных инструментам для визуализации аудиоконтента. Рассказываем о часто упоминаемых открытых библиотеках и решениях, которые пригодятся разработчикам веб-приложений или игр. Читать дальше →

[Перевод] 5 отличных способов анимировать React-приложения в 2019 году Анимация в приложениях React — популярная и обсуждаемая тема. Дело в том, что способов ее создания очень много. Некоторые разработчики используют CSS, добавляя теги в HTML-классы. Отличный способ, его стоит применять. Но, если вы хотите работать со сложными видами анимаци...

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

In-App Updates: ускоряем процесс обновления приложения на Android Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку ...

Apple разделит iTunes на три части Что-то с нетерпением ждем: хорошая новость заключается в том, что Apple отделяет функции музыки, телевидения и подкастов от iTunes, так что вам не придется использовать iTunes как можно чаще. Плохая новость заключается в том, что iTunes все еще не исчезает полностью. Посмотр...

В каких приложениях ждать неизвестный вредоносный код? Сегодня просматривал статистику Wildfire и стало интересно по каким приложениям ходит неизвестный вредоносный код (zero-day) и как часто. На картинке приведена статистика по приложениям и частоте атак через это приложение. В первом столбце имя приложения. Во втором столбце у...

Moto. Мокаем AWS Тестирование — это неотъемлемая часть процесса разработки. И иногда разработчикам требуется запустить тесты локально, до того момента коммита изменений. Если приложение использует Amazon Web Services, python библиотека moto идеально для этого подходит. Читать дальше →

[Из песочницы] Покупки в Android приложении — Play Billing Library И как это до сих пор на Хабре нет статьи об этом? Не дело, надо исправлять. Есть 2 способа добавить In-App покупки в Android-приложение — старый и новый. До 2017 года все пользовались библиотекой от anjlab, но с июня 2017 года ситуация изменилась, Google выпустила собстве...

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

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

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

[Перевод] 19 концепций, которые нужно изучить для того, чтобы стать эффективным Angular-разработчиком TODO-приложение во фронтенд-разработке — это то же самое, что «Hello world» в обычном программировании. При создании TODO-приложений можно изучить выполнение CRUD-операций средствами того или иного фреймворка. Но часто подобные проекты лишь весьма поверхностно касаются того,...

Мастхэв для мобильной аналитики. Что нужно, чтобы вскрывать приложения для Android на Android Для подписчиковЕсли ты занимаешься аналитикой мобильных приложений или разрабатываешь их, то знаешь о таких десктопных инструментах, как IDA, apktool или Jadx. Но бывает, что компьютера под рукой нет, а тебе срочно нужно проанализировать приложение. В этой статье я приведу п...

Инструменты Node.js разработчика. Работа с веб-сокетами по протоколу mqtt Технология веб-сокет позволяет в веб-приложении или в мобильном приложении реализовать отправку сообщений с сервера на клиент, что невозможно сделать средствами REST-API. Для работы с веб-сокетами часто используют библиотеку socket.io, или же разработчики работают с нативным...

Безопасность со вкусом Google Отгремел Google I/O 2019 и пришла пора переписывать проекты на новую архитектуру изучать новинки. Так как я интересуюсь безопасностью мобильных приложений, то в первую очередь обратил внимание на новую библиотеку в семействе JetPack — security-crypto. Библиотека помогает пра...

[Из песочницы] Google Camera — хайп или замена зеркалки? Все мы знаем про популярное приложение Google Camera (дальше GCam). О нем говорят везде: 4PDA, XDA, на всех официальных форумах о телефонах. Практически каждый владелец устройства пытается найти на свой девайс GCam, потому что их телефоны уже не имеют поддержку производителя...

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

Приложения для электронных книг на операционной системе Android. Часть 5. Облачные хранилища и плееры В этой, последней, части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены две темы: Облачные хранилища и Аудиоплееры. Бонус: список бесплатных библиотек с каталогами OPDS. Краткое содержание предыдущих четырёх частей статьиВ 1-ой ч...

gui приложение для задачи о ходе коня Это туториал по созданию интерактивного приложения для решения задачи о ходе коня на языках processing и p5.js Посмотреть саму программу можно здесь. Для управления «конём» используется метод mouseDragged(); пример программы, использующей этот метод здесь. Отмена хода осуще...

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

[Перевод] Кое-что еще: пакеты приложений Haiku? TL;DR: может ли Haiku получить надлежащую поддержку пакетов приложений, к примеру каталогов приложений (как .app в Mac) и/или образов приложений (Linux AppImage)? Мне кажется, это будет достойным дополнением, которое правильно внедрить проще, чем в других системах, поскольк...

[Из песочницы] Создание Android приложения с использованием Anko Layouts и Anko Coroutines Примерно год назад я начал использовать Kotlin в своих Android проектах. Мне хотелось попробовать что-то новое, что было бы интересно изучать. Тогда я и наткнулся на Anko. К тому времени писать UI на xml порядком осточертело. Мне всегда нравилось писать интерфейс руками, не...

Пришло время латать решения Oracle Компания Oracle выпустила очередную порцию плановых патчей для своих продуктов. Обновления суммарно содержат 284 заплатки; многие из них закрывают сразу несколько брешей. Согласно таблице рисков, в 33 случаях баг получил более 9 баллов по шкале CVSS и признан критическим. Бо...

[Из песочницы] AnyStub, библиотека заглушек соединений в Java В отличие от множества платформ Java страдает от недостатка библиотек заглушек соединений. Если вы давно в этом мире, то наверняка должны быть знакомы с WireMock, Betamax или даже Spock. Многие разработчики в тестах используют Mockito для описания поведения объектов, DataJpa...

В macOS 10.15 более не поддерживаются 32-битные приложения. Что вы можете сделать? 7 октября 2019 года Apple выпустила в свет новую версию своей операционной системы для Mac, macOS Catalina. Версия 10.15 содержит множество изменений и улучшений. Одно из значимых – полный отказ от 32-битных приложений. Будучи разработчиком таких приложений для macOS, что в...

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

Разрабатываем приложение, которое отсылает данные другим приложениям (экосистемное приложение) Привет, хаброжители! Это моя вторая статья про разработку своего проекта. Тем, кто не читал предыдущая статейку: она про то, как из одного места (гугл таблицы) автоматически экспортировать данные в другое (ноушн). Сегодня я расскажу, как я писал (и проектировал) библиотеку...

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

[Перевод] Использование Fastify и Preact для быстрого прототипирования веб-приложений Автор материала, перевод которого мы сегодня публикуем, хочет поделиться рассказом о том, какими технологиями он пользуется для быстрой разработки прототипов веб-приложений. В число этих технологий входят библиотеки Fastify и Preact. Он, кроме того, пользуется библиотекой ht...

Масштабирование приложения в Kubernetes на основе метрик из Prometheus Распространённая ситуация: у вас есть несколько приложений, у одного из них пиковая нагрузка приходится на дневное время, а в другие часы к нему никто не обращается (либо обращаются, но редко); при этом другим приложениям мощности кластера могут пригодиться и в ночное врем...

Как мы внедряли навигацию из Jetpack в боевое приложение. Доклад Яндекс.Еды В мобильных приложениях всё чаще используются deep links. Это ссылки, которые позволяют не просто перейти в приложение извне, а попасть на конкретный экран. Android-разработчик из Яндекс.Еды Владислав Кожушко объяснил, почему мы для реализации deep links внедрили навигацию и...

[Перевод] Пример создания Makefile для Go-приложений В этом руководстве мы рассмотрим, как разработчик Go может использовать Makefile при разработке собственных приложений. Что такое Makefile-ы? Makefile — невероятно полезный инструмент автоматизации, который можно использовать для запуска и сборки приложений не только на G...

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

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 2 Эта статья продолжает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня будут рассмотрены примеры развертывания GitHub webhook, периодических сигналов, а также приведено простейшее приложение для отправки сообщений в Slack. Читать дальше →

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

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

Как работать с Postgres в Go: практики, особенности, нюансы Неожиданное поведение приложения в отношении работы с базой приводит к войне между DBA и разработчиками: DBA кричат: «Ваше приложение роняет базу», разработчики — «Но ведь до этого всё работало!». Хуже всего, что DBA и разработчики не могут помочь друг другу: одни не знают ...

[Перевод] Состояние алгоритма: что происходит с инди-разработчиками в Steam? Бизнес создания инди-игр всегда был сложным, но недавно он стал ещё сложнее. 5 октября прошлого года Valve объявила о внесении изменений в алгоритмы Steam, которые привели к уменьшению трафика у игр, не ставших бестселлерами. Это уже вредит инди-разработчикам, но я думаю, м...

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

TDD приложений на Spring Boot: тонкая настройка тестов и работа с контекстом Третья статья в цикле и небольшое ответвление от основной серии — в этот раз я покажу как устроена и как работает библиотека интеграционного тестирования Spring, что происходит при запуске теста и как можно тонко настраивать приложение и его окружения для теста. Читать дальш...

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

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

[Перевод] TensorFlow для начинающих. Часть 1: общие сведения, установка библиотеки TensorFlow — это опенсорсная библиотека, созданная Google, которая используется при разработке систем, использующих технологии машинного обучения. Эта библиотека включает в себя реализацию множества мощных алгоритмов, рассчитанных на решение распространённых задач машинного ...

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

Новые голосовые приложения на C# в 3CX v16 3CX v16 уже на подходе, и у нас есть отличные новости о нашем приложении для разработчиков Call Flow Designer. В новом релизе CFD использует новый скриптовый «движок», интегрированный в ядро сервера 3CX. Благодаря выполнению скриптов в ядре АТС, производительность голосовых ...

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

Навигация внутри Android приложения Введение При Андроид разработке мы используем разные архитектурные решения(паттерны). Например Mvp, Mvvm, Mvi и т.д… Каждый из этих паттернов решает несколько важных задач и поскольку они не идеальны они нам оставляют кое-какие нерешенные задачи. К примеру этих задач относят...

[Из песочницы] Деплоим изоморфное веб-приложение на примере Nuxt.js В средних и больших проектах сайт не ограничивается одним сервисом  —  к примеру только сайтом, как правило существует база данных, API, сервер который маршрутизирует запросы ко всем этим сервисам. Выкатывать и обновлять все это без какой-либо стандартизации непросто, а мас...

Подключение Micrometer для веб-приложения на Java Micrometer используется для сбора метрик приложения JVM и позволяет экспортировать данные в различные системы мониторинга. В этой статье я расскажу, как подключить Micrometer для spring web приложения и экспортировать данные в Prometheus (хороший пост о нем). Так как мое при...

ResNet50. Своя реализация Всем привет. Библиотека нейросети описана в моей прошлой статье. Здесь решил показать как можно использовать обученную сеть из TF (Tensorflow) в своем решении, и стоит ли. Под катом сравнение с оригинальной реализацией TF, демо приложение для распознавания картинок, ну и… в...

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

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

[Перевод] Развертывание приложений на нескольких кластерах Kubernetes с Helm Как Dailymotion использует Kubernetes: развертывание приложений Мы в Dailymotion начали использовать Kubernetes в продакшене 3 года назад. Но развертывать приложения на нескольких кластерах то еще удовольствие, поэтому в последние несколько лет мы старались улучшить наши ин...

Дайджест интересных материалов для мобильного разработчика #324 (24 ноября — 1 декабря) В нашей новой подборке мышление с стиле SwiftUI, библиотеки анимации, Huawei без сервисов Google, тестирование в Airbnb, самые популярные инструменты дизайна и интерфейсы для пожилых, микросессии и мобильные финансы. Читать дальше →

[Перевод] ZIO & Cats Effect: удачный союз Cats Effect стал своего рода «Reactive Streams» для функционального Scala-мира, позволив объединить всю разнообразную экосистему библиотек вместе. Многие отличные библиотеки: http4s, fs2, doobie — реализуются только на базе тайп классов из Cats Effect. А библиотеки типа ZIO...

Использование DiagnosticSource в .NET Core: теория DiagnosticSource — это простой, но весьма полезный набор API (доступен в NuGet пакете System.Diagnostics.DiagnosticSource), который, с одной стороны, позволяет различным библиотекам отправлять именованные события о своей работе, а с другой — позволяет приложениям подписывать...

Практика использования библиотеки lottie в мобильном приложении банка Привет, Хабр! В свое время Product Owner попросил подумать нас о создании эффективного процесса по внедрению анимации в наше приложение на android/ios. В то время мы делали задачу по предзаполнению заявки личными данными на кредитный продукт, и на ответ от сервера требовало...

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

Чем мы можем Вам помочь? Чем Вы можете помочь нам? Открытый API и вход по отпечатку пальцев. Что нового в security-приложении Cloud-Clout Приложение для безопасного хранения и обмена данными в облаках Cloud-Clout открывает свой API. Добрый день, Хабр! Прежде всего, разработчики приложения хотят поблагодарить всех хабро...

[Перевод] Зачем приложению пульта Д/У знать моё местоположение? Вот интересный шаблон недружественного поведения приложения, которого можно было бы легко избежать, если бы программисты и бизнесмены рассуждали как обычные люди. У меня есть звуковая система Pioneer/Onkyo. Это неплохая техника, которая поставляется с (не слишком дерьмовым)...

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

Выпущена альфа-версия Windows UI Library 3.0 На конференции Ignite 2019 компания Microsoft объявила о выпуске предварительной версии Windows UI Library 3.0. Обновлённая библиотека включает в себя полный стек пользовательского интерфейса, а значит разработчики могут использовать все нативные элементы управления и функц...

[Перевод] F# 1: Hello World Этот текст является вольным переводом серии статей Sacha Barber из Brighton, UK , которые мне показались достаточно интересным Это первый пост в моей серии по F#. Итак, что мы собираемся охватить? Как хорошо знают многие программисты, принято начинать с примера «Hello World...

Что известно об ITIL 4 на текущий момент, и кто уже использует новую библиотеку Обсудим изменения в ITIL, о которых стало известно за последнее время. Читать дальше →

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

Внедряем Sign in with Apple — систему авторизации от Apple Привет, Хабр! Этим летом на конференции WWDC 2019 Apple представила собственную систему авторизации Sign in with Apple  и сделала ее обязательной для всех приложений в App Store, которые используют вход через соцсети. Исключение составляют образовательные, корпоративные, пр...

Apache, ViewState&Deserialisation В данной статье рассмотрим уязвимость на основе подмены сериализованного Java-объекта ViewState и метод её эксплуатации на примере web-приложения виртуальной машины с HackTheBox, использующей технологию Apache MyFaces. Читать дальше →

[Из песочницы] Разработка приложений на Elixir/Phoenix с помощью Docker Под катом небольшое и простое руководство, в котором показано, как использовать Docker Compose для настройки и запуска приложения Elixir/Phoenix + PostgreSQL. Читать дальше →

В сеть утекли новые иконки «Почты» и «Календаря» Windows 10 в стиле Fluent Design Наши коллеги с портала Aggiornamenti Lumia опубликовали две версии новых иконок UWP-приложений «Почта» и «Календарь» для Windows 10, выполненных в стиле Fluent Design. Первый вариант иконок было извлечён из Android-приложения Outlook, тогда как второй — непосредственно из U...

Google Play Instant. Рефакторинг длиною в жизнь Когда ввязываешься в Early Access Program, никогда заранее не знаешь, что получится в итоге. Конечно, надеешься, что технология взлетит, а твое приложение опередит рынок и получит порцию пиара на Google I/O. И это неплохая мотивация, чтобы на начальном этапе вместо документа...

[Перевод] LLVM IR и Go В этой статье мы рассмотрим, как построить программу на Go, такую, как компилятор или статический анализатор, которая взаимодействует с фреймворком компиляции LLVM, используя язык ассемблера LLVM IR. TL;DR мы написали библиотеку для взаимодействия с LLVM IR на чистом Go, см...

[Перевод] Уровень Android API, обратная и прямая совместимость Добрый вечер, друзья. Мы подготовили полезный перевод для будущих студентов курса «Android-разработчик. Продвинутый курс». С радостью делимся с вами данным материалом. Если вы читаете эту статью, значит вас могут интересовать такие вещи, как: Что означает уровень API? К...

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

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

[Перевод] Делаем приложение доступным, используя библиотеку тестирования доступности aXe Представляем вам перевод статьи Indrek Lasn, опубликованной на Medium.com. Под катом вы узнаете, как сделать приложение или сайт более доступными при помощи aXe — средства тестирования доступности веб-сайтов и других пользовательских интерфейсов. react-axe показывает резул...

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

Как бесплатно читать на «ЛитРес» через библиотеку Книги очень легко получить, но они доступны только через приложение или на сайте.

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

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

Дайджест интересных материалов для мобильного разработчика #281 (7 — 13 января) Приветствуем вас в новом году! Спасибо, что читаете наши дайджесты и делитесь материалами! На этой неделе у нас прекрасная история о том, как остаться без «Балды», самые зарабатываемые и скачиваемые приложения в разных категориях, быстрые фейлы, маркетинг приложений в 2019 и...

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

Сколько стоит безопасность веб-приложений (на примере Barracuda WAF-as-a-Service) Итак, в выборе WAF программного обеспечения, устройства или облачных служб можно руководствоваться характеристиками продукта, легкостью развертывания, рейтингами производителя, качеством технической поддержки, примерами внедрений в других компаниях, сходных с вашей, и отзы...

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

[Перевод] Веб-компоненты: 9 проектов, о которых стоит знать в 2019 году Автор материала, перевод которого мы сегодня публикуем, полагает, что если вы собираетесь использовать при проектировании интерфейсов своих приложений веб-компоненты и подыскиваете подходящую библиотеку, независимую от UI-фреймворков, вам стоит взглянуть на те проекты, о кот...

Зачем нам на производстве AR и VR Привет! AR и VR — штуки модные, сейчас приложения с их использованием не сделал только ленивый (или тот, кому оно просто не надо). От Oculus до MSQRD, от простых игрушек, радующих детишек появлением динозавра в комнате, до прикладных приложений вида «Расставь мебель в своей ...

Уменьшение размера docker образа с spring boot приложением Добрый день. Недавно передо мной встала задача запуска spring boot 2 приложения в kubernetes кластере используя docker образ. Эта проблема не является новой, достаточно быстро я нашел примеры в гугле и запаковал свое приложение. Я был очень удивлен не найдя alpine образ для ...

Приложения для электронных книг на операционной системе Android (часть 3) В этой (третьей) части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены следующие две группы приложений: 1. Альтернативные словари 2. Заметки, дневники, планировщики Краткое содержание предыдущих двух частей статьи: В 1-ой част...

[Перевод] .NET Core 3 для Windows Desktop В сентябре мы выпустили поддержку .NET Core для создания настольных приложений Windows, включая WPF и Windows Forms. С тех пор мы были рады видеть, что многие разработчики делятся своими историями о переносе настольных приложений в .NET Core. Мы постоянно слышим от .NET-разр...

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

Как реализуется Retentioneering в App in the Air Удержать пользователя в мобильном приложении – это целая наука. Ее основы в нашей статье на VC.ru описал автор курса Growth Hacking: аналитика мобильного приложения Максим Годзи, руководитель подразделения Машинного обучения в App in the Air. Максим рассказывает о разработ...

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

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

Учимся писать Waves смарт-контракты на RIDE и RIDE4DAPPS. Часть 1 (Многопользовательский кошелек) Всем привет! Совсем недавно Waves Labs анонсировал конкурс для разработчиков приуроченный к релизу в тестовую сеть расширения языка смарт-контрактов RIDE для децентрализованных приложений Ride4Dapps! Мы выбрали кейс DAO, так как Ventuary планирует заниматься разработкой dAp...

Использование DbTool для засеивания (seeding) баз данных в приложениях .NET (Core) Представляем вашему вниманию DbTool — утилиту командной строки для экспорта данных БД в различные форматы и open-source библиотеку Korzh.DbUtils, использование которых может значительно упростить первоначальное "засевание" базы данных в вашем .NET (Core) приложении. С помощь...

Локализация приложения за 10 шагов По прогнозам аналитической платформы App Annie, в ближайшие 4 года интерес к мобильным приложениям будет стабильно расти: если вы задумываетесь о выводе своего приложения на новые рынки, возможно, сейчас самое подходящее время. За два года работы менеджером по локализации в...

[Перевод] Создание пиксельной туманности при помощи шума и Median Cut Я хотел, чтобы в моей игре The Last Boundary была туманность. Они потрясающе выглядят и космос без них не космос, а просто разбросанные по фону белые пиксели. Но так как игру я делаю в стиле «пиксель-арт», то мне нужно было как-то заставить мою библиотеку шума генерировать п...

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

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

Львиная доля приложений и расширений для браузера Chrome не имеет политики конфиденциальности Исследование Duo Security показало, что огромная часть приложений и расширений для браузера Chrome имеют проблемы с безопасностью.  Источник проанализировал более 120 000 приложений и расширений в онлайн-магазине Google из 180 000 имеющихся и пришёл к выв...

[Из песочницы] Тесты на C++ без макросов и динамической памяти Многие популярные библиотеки для тестирования, например Google Test, Catch2, Boost.Test тяжело завязаны на использование макросов, так что в качестве примера тестов на этих библиотеках вы обычно увидите картину вроде такой: namespace { // Tests the default c'tor. TEST(MyStr...

Темы и стили в Android без магии. И как их готовить с SwitchCompat В предыдущей статье мы рассмотрели как использовать темы и стили на уровне кода, на примере кастомной view. В этой статье давайте разберем несколько способов стилизации стандартного ui элемента, а в частности SwitchCompat. Читать дальше →

[recovery mode] KISS Architecture. От микросервиса до монолита Андрей Копылов, наш технический директор, рассказывает, какой подход к проектированию архитектуры приложений использует команда веб-разработчиков AREALIDEA, и, чем KISS Architecture, его собственная разработка, так хороша. Читать дальше →

[Из песочницы] Как при помощи 2 видов unit-тестов сделать приложение более стабильным Привет, Habr. Меня зовут Илья Смирнов, я Android-разработчик в компании FINCH. Хочу показать вам несколько примеров работы с Unit-тестами, которые мы наработали у себя в команде. В наших проектах используется два вида Unit-тестов: проверка на соответствие и проверка на выз...

Что в Smart TV тебе моем? Или что можно запихнуть в телевизор? Вместо предисловия Добрый день, коллеги! Меня зовут Алексей и я занимаюсь телевизорами, а именно, разработкой Smart TV приложений («давайте похлопаем Алексею»). Но что такое Smart TV? Какое оно, сферическое Smart TV приложение в вакууме? Не буду томить вас ожиданием: в осн...

Пишем высокопроизводительный http клиент на примере fasthttp. Александр Валялкин (VertaMedia) Библиотека Fasthttp — ускоренная альтернатива net/http из старндартных пакетов Golang. Как она устроена? Почему она такая быстрая? Паттерны из Fasthttp можно использовать для ускорения ваших приложений, вашего кода. Кому интересно, добро пожаловать под кат. Читать дальше →

Google провёл редизайн приложений Gmail для iOS и Android Приложения Gmail для iOS и Android получили новое оформление в стиле Material Design. В ближайшие недели оно будет запущено для всех пользователей. Согласно Google, редизайн был призван привести в соответствие оформление приложений Gmail с другими сервисами в составе G Suite...

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

[Перевод] NLog: правила и фильтры NLog: правила и фильтры В Confirmit мы используем библиотеку NLog для логирования в наших .NET-приложениях. Хотя для этот библиотеки существует документация, для меня было сложно понять, как все это работает. В данной статье я попытаюсь объяснить, как правила и фильтры приме...

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

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

[Из песочницы] Сборка примера Augmented Faces ARCore в Unity Надеюсь, данная статья будет полезна тем, кто хочет пощупать возможности дополненной реальности ARCore в Unity, но при этом не смог найти понятной инструкции. Мы соберем пример приложения дополненной реальности Augmented Faces ARCore для Unity, оно будет отслеживать через...

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

[Перевод] Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации Представляем вам перевод статьи Sm0ke, опубликованной на сайте dev.to. Автор рассказывает о своем опыте генерации веб-приложений и способе автоматизации процесса их создания. Привет, кодеры! Я — разработчик-фрилансер, и я сгенерировал более 100 приложений на различных язык...

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

[Из песочницы] Secure Scuttlebutt — p2p социальная сеть, работающая и в оффлайне Scuttlebutt — сленговое слово, распространённое среди американских моряков, обозначающее слухи и сплетни. Node.js разработчик Доминик Тарр, живущий на паруснике у берегов Новой Зеландии, использовал это слово в названии p2p сети, предназначенной для обмена новостями и личным...

[Перевод] Обмен данными между React-компонентами с использованием библиотеки RxJS Перед вами перевод статьи Chidume Nnamdi, опубликованной на blog.bitsrc.io. Перевод публикуется с разрешения автора. Появление библиотеки RxJS открыло массу новых возможностей в мире JS. Цель RxJS — достигать многого, используя небольшое количество кода. Прочитав эту стат...

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

Дайджест интересных материалов для мобильного разработчика #302 (10 — 16 июня) В новом дайджесте продолжаются рассказы про WWDC и SwiftUI, а заодно говорим про темные режимы, гипер казуальные игры, приложения для людей, рынок фитнес-приложений и многое другое. Читать дальше →

Диздок-десятистраничник — шаблон по книге Скота Роджерса с примером на игру от Pixonic В данной статье я приведу пример составления дизайн-документа для разработки игры в формате десятистраничника. В начале будет приведён общий шаблон документа, предлагаемый Скотом Роджерсом в его книге «Level up. The guid to great video game design» [1]. Затем будет выложен...

CI/CD с помощью AWS и Bamboo Наша команда состоит из одного разработчика и одного DevOps инженера. Я отвечаю за разворачивание приложения в кластере Amazon ECS. В качестве CI/CD сервера я использую Bamboo. В этой статье я подробно расскажу, как я осуществляю разворачивание приложения в dev-среде. Чита...

[Перевод] Google Play Store переходит на стандартизацию значков приложений Google объявил, что разработчики приложений, отправляющие свои приложения в Google Play Store, должны будут соответствовать определенным спецификациям, когда дело доходит до дизайна значка их приложения. Спецификация вынудит разработчиков обновлять «магазинный» значок своего...

Жизнь до рантайма. Доклад Яндекса В большом проекте может возникнуть задача идентификации изменений для конечного пользователя по отличиям в коде фронтенда приложения. Разработчик из Яндекс.Маркета Никита Сидоров рассказал, как мы решали эту проблему при помощи библиотеки Diffector, о построении и анализе гр...

Cruise открывает исходный код Worldview В Cruise Automation сотни инженеров и тестировщиков работают с данными, собранными на дорогах и через симулятор. Также специальная внутренняя команда AV Tools создает приложения для визуализации, поиска и анализа этих данных. Ведь пользователи и разработчики должны понимать ...

Почему валидации email регуляркой недостаточно. Проверка MX-записей с примерами на PHP и Ruby Уж сколько раз твердили Миру… Существует давний и, вероятно, нескончаемый спор о том, какой именно регуляркой правильно и нужно проверять поле email пользователя. Да, проверять регуляркой действительно нужно. Но ведь наши продукты работают в Сети. Так почему бы не использов...

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

[Перевод] 5 важных и упущенных навыков, необходимых лучшему разработчику Предисловие Вы видели эти статьи тысячу раз: «10 вещей, которые нужно создать чтобы стать лучшим разработчиком.» «Лучшие фреймворки для изучения в 2019.» «Сделайте это чтобы стать разработчиком Rockstar.» «Прочитайте эти десять технических книг, и Вы станете успешным раз...

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

Пробую .NET Core + Kubernetes + appmetrics + prometheus + grafana + jobs + health checks Краткое знакомство с kubernetes для разработчиков на примере разворачивания простого шаблонного сайта, с постановкой его на мониторинг, выполнением джобов по расписанию и health checks (все исходники прилагаются) — Установка Kubernetes — Установка UI — Запуск своего прил...

«“Сделать приложение для людей” — это не набросать на коленке»: о мобильной разработке в ЦФТ Какие проблемы возникают при увеличении мобильной команды в 10 раз? По каким причинам в одной и той же компании Android-разработчики предпочитают использовать известные библиотеки, а в iOS чаще пишут собственные решения? Каково живётся мобильным разработчикам в финтехе? В...

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

Разработчик, помни — трафик твоего приложения смотрят На данный момент существует так много типов уязвимостей, что разработчики совсем забывают об элементарных из них. На днях мне удалось обойти авторизацию в новом приложении WOG (ТОВ «ВОГ РІТЕЙЛ» — вторая по величине сеть АЗС в Украине). В 2017 году, точно такую же уязвимость...

«WARNING: sanitizing HTML stripped some content» и как с ним правильно бороться Всем, кому приходилось вставлять HTML содержимое в DOM в Angular, доводилось видеть это сообщение. Конечно, все мы получаем проверенное содержимое с нашего же сервера и просто хотим застилизовать сообщение об ошибке. Или вставляем HTML из наших же констант, инлайним наши SVG...

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

Smart IdReader SDK — встраиваем распознавание в проекты на Python и PHP Мы, Smart Engines, продолжаем цикл статей про то, как встроить наши технологии распознавания (паспортов, банковских карт и других) в ваши приложения. Ранее мы уже писали про встраивание на iOS и Android, показывали, как встроить распознавание в Телеграм-бота, а сегодня мы ра...

[Из песочницы] Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис Для кого Выбор способа обмена. Описание API. Реализация API на стороне 1С. Android. Cтруктура приложения. BroadcastReceiver. Получаем данные ШК на примере АТОЛ Smart.Lite. Реализуем обмен и хранение данных. Используем Retrofit 2, Room, Coroutines. Пользовательский интерфейс...

Все, что вы хотели знать о SwiftUI, но боялись спросить Привет! Меня зовут Ренат, я разрабатываю сервис по аналитике подписок в iOS – Apphud. Как вы знаете, Apple на WWDC 2019 представила свой новый фреймворк SwiftUI, который призван в будущем заменить (или нет?) привычный нам UIKit. SwiftUI позволяет описывать интерфейс приложе...

SPA Meetup 5: интеграция Jest с QA, мощный UIKit, библиотеки компонентов, DI для масштабирования, платформенные команды Привет! Это пост-отчёт с митапа Moscow SPA 5, серии встреч для фронтенд-разработчиков, которым интересна тематика веб-приложений (Single Page Application). Вместе с докладчиками из Mail.Ru, Яндекса, ВКонтакте, Тинькофф и Авито мы говорили об интеграции Jest с QA-инфраструкту...

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

Как диагностировать проблемы интеграции SDK. Опыт команды разработки Yandex Mobile Ads SDK Всем привет! Меня зовут Дмитрий Фисько, я разрабатываю Yandex Mobile Ads SDK. Наша библиотека предназначена для монетизации мобильных приложений на платформе Android и iOS. Сегодня я хочу рассказать вам о том, как мы упростили разбор сложных ошибок интеграции SDK в Android-п...

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

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

Microsoft открыла код Калькулятора Windows Несколько дней назад корпорация Microsoft приняла решение открыть исходный код известной всем программы — «Калькулятора» из ОС Windows. Это приложение входило во все дистрибутивы ОС от Microsoft начиная с 1985 года, когда свет увидела Windows 1.0. Microsoft использует ли...

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

Инструменты для разработчиков ПО: открытые фреймворки и библиотеки машинного обучения Продолжаем нашу серию материалов, посвященных открытым инструментам для разработчиков. Сегодня рассказываем о фреймворках и библиотеках для МО — Transformers, Accord.NET и MLflow. Читать дальше →

Tic Tac Toe, часть 5: Бэкенд на С++ Boost.Beast, HTTP В этой статье рассмотрим реализацию бэкенда с применением C++ Boost.Beast библиотеки на примере синхронного сервера. Та же функциональность, что и в прошлой статье — получаем от бэкенда случайное число от 0 до 8 включительно. Оказалось, что поднимать контейнер для Beast ничу...

[Из песочницы] Deploy Symfony + React приложения на AWS посредством CI Добрый день, в данной статье я покажу как развернуть Symfony 4 приложение на AWS. В официальной документации есть пример подобного процесса, однако мой вариант не столь тривиален, как загрузка zip архива с приложением. На дворе 2019, в моде docker, микросервисная архитектура...

Дайджест интересных материалов для мобильного разработчика #313 (26 августа — 1 сентября) В новом дайджесте боремся с потерями пушей, разбираемся с музыкой Apple, изучаем работу звука в Android, экономим деньги при разработке игры, ищем приложение Росстата, отличаем плохой дизайн от хорошего и даже пытаемся понять, безопасен ли будет шарф от Xiaomi. Читать даль...

Использование DiagnosticSource в .NET Core: практика В предыдущей статье я рассказал про механизм DiagnosticSource и на простом примере показал, как с его помощью можно перехватывать запросы в базу данных через классы SqlConnection и SqlCommand и измерять время их выполнения. В настоящее время DiagnosticSource уже используется...

[Из песочницы] Управление несколькими шаговыми двигателями Nema 17 одновременно или NemaStepper Всем привет. Я думаю что вы, если работали с arduino+nema 17, знаете, что запустить несколько двигателей одновременно бывает очень затруднительно. Есть разные способы решения этой проблемы, самый простой, пожалуй — использование библиотеки NemaStepper. Библиотека упрощае...

Дайджест интересных материалов для мобильного разработчика #318 (14— 20 октября) Мы возвращаемся из отпуска с новым дайджестом в котором есть длинная история путеводителя, закрытие Daydream, самые красивые приложения Material Design Awards 2019, темные темы и рост продуктов, рынок приложений в 3 квартале и многоликий Retention. Читать дальше →

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

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

Проверка обёртки OpenCvSharp над OpenCV с помощью PVS-Studio OpenCV — библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом, знакомая многим разработчикам на C++. Помимо C++, OpenCV также разрабатывается для Python, Java, Ruby, Matlab, Lua и других языков. Так как ...

[Из песочницы] Взаимодействие с Asterisk сервером из Java-приложения Взаимодействие с сервером Asterisk из java-приложения через Asterisk Managment Interface (AMI) Если вы только начинаете исследования в этой области, то взаимодействие с данным сервером может показаться вам несколько запутанным, как когда-то показалось мне. Чтобы не искать ...

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

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

Как реализовать язык программирования на JavaScript. Часть 1: Парсер Здравствуйте! Представляю вам любительский перевод руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достаточно мн...

Джедайские техники мобильного разработчика: как монетизировать приложение в 2019? Сколько сил и средств нужно, чтобы приложение начало приносить доход? Почему мобильные разработчики — ни разу не миллионеры, и где находится стеклянный потолок в рекламной прибыли? Ребята из Appgrow проанализировали 320+ приложений и рассказали о главных ошибках разработчи...

[Перевод] Разработка приложения на SwiftUI. Часть 1: поток данных и Redux После участия в сессии State of the Union на WWDC 2019 я решил детально изучить SwiftUI. Я потратил много времени на работу с ним и теперь приступил к разработке реального приложения, которое может оказаться полезным широкому кругу пользователей. Его я назвал MovieSwift...

[Перевод] 9 библиотек веб-компонентов 1. Material components web Обычно заголовок «Material» размещает библиотеку компонентов пользовательского интерфейса прямо наверху рейтингов по количеству звездочек и загрузок. Веб-библиотека Google Material-components — это версия веб-компонента библиотеки Material-UI. По...

Уязвимый Twitter API ставит под удар тысячи iOS-приложений Устаревший API-интерфейс, который многие iOS-приложения до сих пор используют для авторизации через Twitter, содержит уязвимость, позволяющую из положения «человек посередине» получить токен доступа OAuth и выполнять различные действия в соцсети от имени жертвы. По...

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

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

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

На OnePlus 6T запустили Windows 10 Некоторое время назад Microsoft анонсировала SDK, который позволяет разработчикам переносить свои приложения x86 на чипы ARM64. С тех пор разработчики также пытаются получить преимущества Windows 10 для процессоров ARM. Нидерландский разработчик Бас Тиммер, который также…

Приложение Google Camera портировали на Redmi Note 8 Pro Одной из главных претензий к Redmi Note 8 Pro был не сам факт использования однокристальной системы MediaTek, а то, что она не очень подходит для различных манипуляций, в частности, установки приложения Google Camera, которое, как известно, фотографирует лучше остальных. И е...

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

Удобное мобильное приложение Z-TRADE для инвестиций запустила ИК «ЦЕРИХ Кэпитал Менеджмент» Инвестиционная компания «ЦЕРИХ Кэпитал Менеджмент» сообщила о запуске в App Store мобильного приложения для биржевой торговли Z-TRADE. Теперь без использования сложного торгового ПО операции с ценными бумагами может осуществлять широкий круг инвесторов при помощи смартфона. ...

Популярное мобильное приложение с прогнозами погоды обвинили в сборе данных пользователей Речь идет о приложении The Weather Channel. Как следует из иска, поданного против его разработчиков в суд Лос-Анджелеса, программа использует данные о местоположении смартфонов пользователей не только для предоставления точных прогнозов.

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

[Из песочницы] Общее представление об архитектуре Clean Swift Привет, читатель! В этой статье я расскажу об архитектуре iOS приложений — Clean Swift. Мы рассмотрим основные теоретические моменты и разберем пример на практике. Читать дальше →

[Перевод] Как реализовать язык программирования на JavaScript. Часть 3: CPS-интерпретатор Здравствуйте! Представляю вам третью часть моего перевода руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достат...

На GitHub продвигали более 300 приложений с бэкдорами Исследователи нашли на GitHub 89 аккаунтов, которые продвигали 73 репозитория с опасными приложениями и библиотеками для Windows, Mac и Linux.

Разработчики жалуются на перенос приложений с iOS на Mac. Результат кривой, юзер платит дважды   В этом году у сторонних разработчиков появилась возможность портировать свои приложения с iPad на Mac в рамках проекта Catalyst. Участники Catalyst и пользователи столкнулись с проблемами, которые Apple не комментирует. В будущем Project Catalyst позволит разраб...

[Перевод] Quasar 1.0: новый полезный инструмент для Vue-разработчиков и не только для них Автор материала, перевод которого мы публикуем сегодня, занимается работой над фреймворком Quasar. Это — полнофункциональный расширяемый опенсорсный инструмент для разработки современных приложений различного назначения. Он построен на базе популярного фронтенд-фреймворка Vu...

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

Доменные имена с валидным SSL для локальных Docker-контейнеров Использование Docker в процессе разработки стало уже стандартом де-факто. Запускать приложение со всеми его зависимостями, используя всего одну команду — становится всё более и более привычным действием. Если приложение предоставляет доступ используя web-интерфейс или какое...

Тестирование на примере ReactJS: насколько глубока кроличья нора Всем привет, меня зовут Ярослав Астафьев, и сегодня я хотел бы провести обзорную экскурсию в тестирование ReactJS. Я не буду углубляться в сложности тестирования веб приложений с использованием определенных библиотек (руководствуясь подходом «сложно тестировать только плохой...

[Перевод] Повышаем производительность разработки на примере Vue — часть 2 Если вы не читали Часть 1, вы можете исправить сиё недоразумение здесь. Переиспользование конфигураций Новая библиотека vue-cli-3 избавила от необходимости поддерживать сложные шаблоны сборки и конфигураций. Вместо этого она позволяет разработчику сосредоточиться на создании...

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

Приложение Roland 4XCamera Maker позволяет синхронно снимать видео несколькими смартфонами Apple iPhone Компания Roland, больше известная широкому кругу потребителей как производитель электронных музыкальных инструментов, представила приложение для видеосъемки с помощью смартфона. Говоря точнее, приложение 4XCamera Maker для iOS позволяет снимать, редактировать и публиков...

Три парадигмы асинхронного программирования в Vertx Я хочу показать три парадигмы асинхронного программирования — callbacks, futures, coroutines на примере простого веб приложения на фрейморке Vertx. Код будем писать на Котлине. Допустим у нас есть приложение, которое получает некую строку в HTTP запросе, по ней ищет URL в б...

[Перевод] Автоматический перенос приложений iOS (ARM) на macOS (x86) с помощью Bitcode Когда Apple представила технологию Bitcode и сделала её обязательной для watchOS и tvOS, компания словно отмахнулись от вопросов, зачем она вообще нужна. Лишь туманно сказала, что она помогает настраивать двоичные файлы и использует последние улучшения компилятора. С тех по...

Интеграция 3CX с Office 365 через Azure API АТС 3CX v16 редакции Pro и Enterprise предлагает полную интеграцию с приложениями Office 365. В частности, реализована: Синхронизация пользователей Office 365 и добавочных номеров (пользователей) 3CX. Синхронизация персональных контактов пользователей Office и персонально...

[Перевод] Моя ошибка на миллиард долларов В первое время мне часто хотелось сдаться. Снова и снова возникало чувство, что мы всё делаем неправильно. Делать предположения о проблемах людей. Решать проблемы, которые мы придумали. Мы искали решения в темноте. У нас было ясное видение, но исполнение страдало. Мы знали ...

[Перевод] Фаззинг в стиле 2000 года на современных приложениях Windows 10 Рис. 1. Ушиблен, но не сломлен. Калькулятор Windows, чей код недавно опубликован на Github, оказался одним из двух протестированных приложений, которые не зависли и не упали в противостоянии с фаззером оконных сообщений разработки 2000 года. Размер окна специально увеличен,...

Continuous delivery для вашей Kotlin Multiplatform библиотеки Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. В процессе работы мы столкнулись с тем, что в случае с Kotlin Multiplatform continuous integration и continuous del...

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

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

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

Ansible для управления конфигурацией Windows. История успеха На одной из встреч питерского сообщества .Net разработчиков SpbDotNet Community мы пошли на эксперимент и решили рассказать о том, как можно применять подходы, давно ставшие стандартом в мире Linux, для автоматизации Windows-инфраструктур. Но дабы не доводить всё до голослов...

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

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

[Перевод] Electron: разработка настольных приложений с использованием HTML, CSS и JavaScript Можно ли, используя HTML, CSS и JavaScript, создавать настольные приложения? Автор статьи, перевод которой мы сегодня публикуем, даёт утвердительный ответ на этот вопрос. Здесь он расскажет о том, как, применяя веб-технологии и пользуясь возможностями фреймворка Electron, со...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

Безопасность клиентских приложений: практические советы для Front-end разработчика Как вы знаете, большая часть атак BlackHat-хакеров направлена на компрометацию серверных данных web-приложений и сервисов. При этом клиентскую часть сегодня атакуют не реже. Согласно сухому определению, любая атака — это комплекс мер со стороны хакера, направленных на сеть и...

Twitter выпустил приложение для Mac, портировав его с iPad Приложение уже можно скачать в Mac App Store Этим летом Apple анонсировала Project Catalyst — амбициозный кроссплатформенный проект, который призван увеличить количество новых программ и игр на платформе macOS. Для этого будет использоваться огромная экосистема приложе...

Распознавание лиц в «Google Фото» для Android заработало в России Сфера применения технологии распознавания лиц оказалась гораздо шире, чем предполагалось первоначально. Ей нашлось место в наших смартфонах, где она используется для их разблокировки, в правоохранительных органах, которые используют ее для поиска преступников, разгуливающих...

Как приложения попадают в топ App Store Попасть в топ-10 приложений не так-то просто В августе 2019 года App Store исполнилось 11 лет. За этот относительно небольшой промежуток времени, Apple совершила самую настоящую революцию на рынке мобильных приложений. Сейчас фирменный каталог насчитывает сотни тысяч приложе...

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

Xbox (Beta) – новая версия приложения Xbox Microsoft готовит новую версию приложения Xbox. Сегодня его даже слили в Сеть. Перед установкой не забудьте включить режим разработчика в Параметрах. Новое приложение является переосмыслением старого приложения Xbox, который сейчас переименовали в «Компаньон консоли Xbox». X...

Тысячи Android-приложений могут содержать RCE-уязвимость Уязвимость выполнения стороннего кода в WhatsApp присутствует и в других приложениях для Android. К такому выводу пришли специалисты TrendMicro, нашедшие около 3000 потенциально опасных программ в Google Play и сторонних файловых архивах. Баг эксплуатируется через вредоносны...

Что важно знать о компании, которая будет разрабатывать вам приложение под Android/iOS Клиент уже не просит, а требует от бизнеса идти в ногу со временем. А значит без приложения на смартфон конкурировать на рынке будет сложно. Посмотрите на конкурентов, они уже не раз обновили свой софт, а вы только размышляете о необходимости.

Как быстро написать веб-сайт или веб-приложение и не увязнуть в сборщиках Это маленькое руководство описывает создание реактивного веб-приложения используя отрисовку на стороне сервера (Server-Side Rendering, SSR). Клиентская часть являет собой полноценное Vue-приложение, в моём случае используя шаблон MVVM. Серверное приложение работает на микроф...

[Из песочницы] Создание библиотеки в стиле Spring Data Repository своими руками при помощи Dynamic Proxy и Spring IoC А что если бы можно было создать интерфейс, например, такой: @Service public interface GoogleSearchApi { /** * @return http status code for Google main page */ @Uri("https://www.google.com") int mainPageStatus(); } А затем просто внедрять его ...

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

Состоялся релиз Microsoft.UI.Xaml 2.2 Компания Microsoft объявила о выпуске новой версии Windows UI Library для разработчиков программного обеспечения, которая принесла с собой несколько весьма приятных изменений, в том числе новый элемент управления TabView, улучшение кнопки «Назад» в NavigationView, поддержку...

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

[Перевод] Внепроцессный отладчик для C++ в Visual Studio 2019 В Visual Studio 2019 Preview 1 представлен улучшенный отладчик для C++, который использует внешний 64-разрядный процесс для размещения своих ресурсозатратных компонентов. Если у вас ранее возникали проблемы с памятью при отладке приложений C++, теперь эти проблемы должны быт...

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

Facebook подал в суд на двух разработчиков Android-приложений за кликфрод Facebook подал иск в суд против двух компаний-разработчиков приложений для Anroid за инфицирование пользователей вредоносным ПО, генерирующим фейковые клики по рекламным объявлениям. Обе компании – гонкогская JediMobi и сингапурская LionMobi – входили в рекламную сеть F...

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

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

Как подготовиться и сдать экзамен ITIL 4 Foundation ITIL (произносится как «áйтил», англ. IT Infrastructure Library — библиотека инфраструктуры информационных технологий) — библиотека, описывающая лучшие из применяемых на практике способов организации работы подразделений или компаний, занимающихся предоставлением услуг в об...

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

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

Открытый вебинар «Fluent Validation как инструмент валидации данных» И снова здравствуйте! В рамках запуска курса «Разработчик C#» мы провели традиционный открытый урок, посвящённый инструменту Fluent Validation. На вебинаре рассмотрели, как избавиться от кучи if-ов на примере проверки корректности заполнения данных покупателя, изучили внут...

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

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

Xamarin.Forms — декоративное отображение QRCode с помощью SkiaSharp Для вывода/чтения штрихкодов есть популярная библиотека ZXing. Она умеет выводить и считывать много разных форматов: QRCode, Aztec и другие, более 2 десятков. Для считывания кодов в ней есть готовый контрол ZXingScannerView. Требуется минимум кода, чтобы добавить этот функ...

Эволюция создания веб-приложений на Java История развития построения веб-приложений на языке программирования Java с примерами их использования на временном промежутке от появления спецификации сервлетов до сегодняшнего дня. Читать дальше →

Встраиваем интерпретатор Python в java-приложение с помощью проекта Panama Пару дней назад увидел твит Брайана Гетца, но только сегодня дошли руки поиграться с примерами. Про это и хочу кратко рассказать. О проекте Panama на Хабре уже писали, поэтому просто покажу пару простых примеров того, как можно применить native binder. Читать дальше →

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

Создаём голосовое приложение на примере Google Assistant Каждый пятый житель США владеет умной колонкой, а это 47 000 000 человек. Помощник может создать напоминание, список дел, будильник, таймер, прочитать новости, включить музыку, подкаст, заказать доставку, купить билеты в кино и вызвать такси. Все это «навыки» или «skills» по...

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 1 Это цикл переводных заметок автора Priti Desai. Поскольку сами заметки довольно короткие, то в одной публикации будет собрано сразу несколько. Будут рассмотрены детали развертывания приложений для OpenWhisk с примерами, а в конце цикла — приведена архитектура и код приложен...

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

Facebook закроет свой spyware VPN Onavo В конце января на Хабре появилась новость о том, что Facebook в течение двух лет ведет секретный проект Atals. В его рамках добровольцам платили по $20 в месяц за установку на смартфон некоего псевдо-VPN, приложения, которое устанавливает корневой сертификат и далее отслеж...

[Из песочницы] Neutralinojs — альтернатива Electron, потребляющая меньше памяти Neutralinojs — фреймворк с открытым исходным кодом для создания кроссплатформенных приложений на HTML/CSS/JS. Отличие от Electron в том, что для запуска приложения на Neutralinojs не нужно устанавливать nodejs и сотни зависимостей, тянущихся из package.json. Давайте сравним ...

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

[Перевод] В прошлом месяце мы назвали Цукерберга болваном; исправляемся: на самом деле, он и его Facebook – просто долбаный стыд Когда он говорил, что 5% пользователей его приложения, высасывавшего личные данные пользователей, были детьми, на самом деле он имел в виду куда как большее число Анализ Последним номером в, кажется, бесконечной серии полуправдивых заявлений, соцсеть Facebook признала, что ...

Мифы и легенды системного анализа или чем занимается аналитик в банке Привет! Меня зовут Настя, я аналитик мобильного приложения Альфа-Бизнес. Иногда меня спрашивают о том, чем я занимаюсь на работе. Друзья, родные и, как это ни странно, разработчики. Каждый раз я отвечают по-разному, пытаясь привести наиболее близкие собеседнику примеры. «С...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

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

[Перевод] 50 оттенков matplotlib — The Master Plots (с полным кодом на Python) Те, кто работает с данными, отлично знают, что не в нейросетке счастье — а в том, как правильно обработать данные. Но чтобы их обработать, необходимо сначала проанализировать корреляции, выбрать нужные данные, выкинуть ненужны и так далее. Для подобных целей часто использует...

«Яндекс.Музыка» автоматически установилась на Windows 10 и заменила стандартное приложение для MP3 Приложение «Яндекс.Музыка» теперь устанавливается по умолчанию в операционной системе Windows 10, пишет «Коммерсантъ» со ссылкой на дискуссии в Microsoft Store. Там официальный представитель «Яндекса» объясняет, что приложение всё равно можно удалить с компьютера. Судя по...

Как запустить микро-платежи в своем приложении Прошлую неделю я провёл разрабатывая свою первую публичную программку — Telegram-бота который работает в качестве Bitcoin-кошелька и позволяет «бросать монетки» другим участникам групповых чатов а так же совершать внешние Bitcoin-платежи себе или другим т.н. “Lightning Apps”...

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

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

Android Camera2 API от чайника, часть 4. Media Codec и стрим видео по UDP в JAVA приложение Итак, выходим на финишную прямую. Стримить видео с андроида на VLC плеер мы уже научились, теперь осталось только интегрировать окошко с видео в JAVA приложение и начать рулить роботелегой. В этом нам очень сильно поможет проект с открытым исходным кодом VLCJ CAPRICA. Th...

[Перевод] 34 open source библиотеки Python (2019) Мы просмотрели и сравнили 10 000 open source библиотек для Python и выбрали 34 самые полезные. Мы сгруппировали эти библиотеки в 8 категорий. Читать дальше →

MOSDROID #15 Phosphorus Приглашаем вас на пятнадцатый митап сообщества Android разработчиков MOSDROID, который пройдет 2 февраля в офисе компании Туту, в БЦ Ньютон Плаза по адресу Москва, 1-й Нагатинский проезд 10с1. В этот раз поговорим о трансформации архитектуры одного из крупнейших мобильных...

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

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

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

[Перевод] Как мы при помощи WebAssembly в 20 раз веб-приложение ускорили В этой статье рассматривается кейс по ускорению браузерного приложения через замену вычислений JavaScript на WebAssembly. Читать дальше →

Анонсирована зрелищная action RPG в стиле аниме Twelve Weapons of God Taipei Game Show – это не только мероприятие для местных студий, которые пытаются поразить общественность своими дебютными проектами. На этом ежегодном событии часто собираются крупные издатели и разработчики: Bandai Namco, Ubisoft и другие. Вы можете не знать Giant Network...

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

1% издателей мобильных игр заработал 95% всей выручки в третьем квартале 2019 года В магазинах мобильных приложений доступны миллионы игр, но очевидно, что далеко не все из них пользуются одинаковой популярностью. Интересной статистикой поделилась известная нам компания Sensor Tower. Так, в 3 квартале пользователи загрузили из App Store и Google Play 11,1...

Разработка гибридных PHP/Go приложений с использованием RoadRunner Классическое PHP-приложение — однопоточность, тяжелая загрузка (если вы конечно не пишите на микрофреймворках) и неизбежная смерть процесса после каждого запроса… Такое приложение тяжелое и медленное, но мы можем дать ему вторую жизнь гибридизацией. Чтобы ускорить — демонизи...

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

[Из песочницы] Как создать свое первое веб-приложение с помощью Go Привет, Хабр! Представляю вашему вниманию статьи "How to build your first web application with Go" автора Ayooluwa Isaiah. Это руководство к вашему первому веб-приложению на Go. Мы создадим новостное приложение, которое использует News API для получения новостных с...

[Из песочницы] Использование Context API в React для создания глобальной темы приложения Привет, это мой первый пост на Хабр. Надеюсь, Вам будет интересно. Итак, я хочу начать серию постов, напрямую или косвенно касающихся создания ui-kit. Задача данного поста: Найти решение контроля темы приложения, компоненты которого выполнены в React.js. Будем использова...

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

Принимаем участие в недавнем Telegram Contest, пишем крутое OpenGL ES приложение и выигрываем ничего Забегая вперед, хотелось бы обратить внимание на сумбурную ситуацию с победителем первого этапа конкурса. Победитель забрал 50К американских президентов. НО, был как минимум, еще один разработчик, который написал идентичное приложение и не был никак вознагражден. Он даже по...

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

Новый браузер Microsoft Edge может появиться на Linux В декабре компания Microsoft объявила, что переделает свой браузер на основе открытого движка Google Chrome. После этого он сможет работать не только в системе Windows 10, но и в других, вроде macOS, Windows 7, Windows 8.1.При желании можно будет запустить Edge и на Linux. Л...

Что нужно знать о JavaScript Engine Switcher 3.0 JavaScript Engine Switcher изначально создавался как вспомогательная библиотека и его развитие во многом определялось потребностями библиотек, которые его использовали. Фактически каждая его мажорная версия решала одну или несколько крупных задач необходимых для дальнейшего...

В Google Play стало на 98% меньше приложений, которые хотят доступ к журналу вызовов и SMS Осенью прошлого года начала действовать новая политика магазина приложений Google Play, которая ограничила доступ Android-приложений к журналу вызовов и SMS. Разрешение на использование таких данных теперь могут приложения для совершения звонков и передачи сообщени...

Физические безумства Добрый день, уважаемый читатель! Я, начинающий Java-программист, долгое время не мог освоиться с библиотекой Box2D. Во-первых, из-за того, что она написана для C++, и по ней нет документации, а синтаксис Си я не знаю. Во-вторых, из-за того, что подробные уроки по этой библио...

Apple разрабатывает новые приложения для macOS Catalina На конференции для разработчиков WWDC 2019, в ходе которой были представлены программные продукты, Apple также продемонстрировала возможное будущее macOS — показав Project Catalyst, инструмент для переноса iOS-приложений на Mac. В рамках этой инициативы, разработчики ...

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

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

Xamarin.Forms — простой пример Host-based Card Emulation В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практич...

[Перевод] Использование Typescript с React – руководство для новичков Друзья, в преддверии выходных хотим поделиться с вами еще одной интересной публикацией, которую хотим приурочить к запуску новой группы по курсу «Разработчик JavaScript». Потратив последние несколько месяцев на разработку приложений на React и библиотек с использованием T...

[Перевод] Руководство по аутентификации в Node.js без passport.js и сторонних сервисов Автор статьи, перевод которой мы сегодня публикуем, говорит, что сейчас можно наблюдать рост популярности таких сервисов аутентификации, как Google Firebase Authentication, AWS Cognito и Auth0. Индустриальным стандартом стали универсальные решения наподобие passport.js. Но, ...

[Перевод] Как Project Infer от Facebook помогает искать баги в мобильных приложениях перед деплоем Несколько дней назад команда инженеров Facebook отличилась — ее удостоили награды Most Influential POPL Paper Award. В среде специалистов по машинному обучению это весьма почетно. Награду вручили за работу Compositional Shape Analysis by Means of Bi-abduction, которая рас...

[Перевод] Пишем API на Python (с Flask и RapidAPI) Если вы читаете эту статью, вероятно, вы уже знакомы с возможностями, которые открываются при использовании API (Application Programming Interface). Добавив в свое приложение один из многих открытых API, вы можете расширить функциональность этого приложения либо же допол...

[Из песочницы] Open Session In View в Spring Boot: Скрытая угроза Все здесь правы, каждый по-своему, и, следовательно, все здесь не правы. "Сказка о Тройке" (А. и Б. Стругацкие)Если вы используете Spring Data JPA, то после обновления на Spring Boot 2 при старте приложения можете заметить в логе новое предупреждение: spring.jpa.op...

Популярные приложения на Google Play содержат уязвимости Эксперты Check Point обнаружили серьезные уязвимости в представленных на Google Play приложениях с сотнями миллионов загрузок, включая продукты Facebook и Yahoo. По словам исследователей, безопасные на первый взгляд Android-программы содержат глубинные баги, грозящие исполне...

«Лаборатория Касперского» пожаловалась в ФАС на Apple Компания «Лаборатория Касперского» заявила о жалобе, поданной в Федеральную антимонопольную службу (ФАС) на компанию Apple. Представители ФАС сообщили о том, что жалоба уже поступила на рассмотрение, о чем сообщают «Ведомости». По мнению «Лаборатории Касперского» корпораци...

[Из песочницы] Vuex — чрезмерное использование геттеров в приложении. Разбор ошибки В этой статье пойдет речь об распространенной ошибке, которую делают большинство начинающих при разработке приложения на Vue + Vuex. Мы поговорим о геттерах (getters) и как их правильно использовать. Также мы рассмотрим вспомогательные функции mapState и mapGetters. Примеча...

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

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

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

Chrome Audit на 500: Часть 1. Лендинг В инструментах разработчика браузера хром есть вкладка «Audit». На ней расположился инструмент который называется Lighthouse, служит он для анализа насколько хорошо сделано веб приложение. Недавно я решил протестировать одно приложение и ужаснулся результатам. Сразу по нес...

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

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

ConfigureAwait, кто виноват и что делать? В своей практике я часто встречаю, в различном окружении, код вроде того, что приведен ниже: [1] var x = FooWithResultAsync(/*...*/).Result; //или [2] FooAsync(/*...*/).Wait(); //или [3] FooAsync(/*...*/).GetAwaiter().GetResult(); //или [4] FooAsync(/*...*/) .Configur...

[Перевод] Dark mode теперь повсюду. Так ли он полезен? (в конце поста опрос) Дизайнеры одежды известны тем, что любят носить чёрное, но они не одиноки в этом: в 2017 году чёрный был самым популярным цветом в женской одежде, по данным компании Edited, занимая 36% рынка. Популярность тёмных оттенков вышла за границы моды и добралась до дизайна UX и UI:...

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

[Из песочницы] Oracle VM Server for SPARC для чайников (How-to) Небольшой How-to для начинающих работать с ОС Solaris и платформой виртуализации Oracle VM Server for SPARC, ранее известной как Sun Logical Domains. Oracle VM представляет из себя гипервизор XEN, установленный на ОС Solaris. Управлять гипервизором возможно из командной ...

Tinder объявил бойкот Google Play. Чем это обернется для Google А вы знаете, почему игры Fortnite нет в Google Play? Причина в нежелании разработчиков платить Google 30-процентный сбор, который та взимает с каждого проданного приложения и каждой встроенной покупки. Руководство студии Epic Games, создавшей Fortnite, пришло к выводу, что ...

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

[Перевод] Учебник по JavaFX: расширенные макеты Как организовать и разместить GUI компоненты в приложении JavaFX, используя расширенные макеты. В предыдущей статье мы рассмотрели некоторые основные макеты JavaFX. Теперь пришло время рассмотреть остальные имеющийся макеты. Учебник по JavaFX: начало работы Учебник по Ja...

Как создать крутой экшен для Google Ассистента. Лайфхаки от Just AI Экосистема вокруг Google Ассистента развивается невероятно быстро. В апреле 2017 года пользователям были доступны всего 165 экшенов, а сегодня только на английском их – более 4500. Насколько разнообразным и интересным станет русскоязычный уголок вселенной Google Ассистента...

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

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

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

Генерация приложения на React с бэкэндом на GraphQL за считанные минуты Мы добавили новую экспериментальную возможность в 8base CLI (Command Line Interface), которая генерирует готовое приложение на React из вашей модели данных. Это очень удобно для начала работы с GraphQL и React, а также для быстрого создания пользовательского интерфейса прило...

Перевод «Подготовьте ваши приложения к 64-бит требованиям» Перевод статьи Get your apps ready for the 64-bit requirement блога «Android Developers Blog». Современные 64-бит процессоры увеличивают скорость и обогащают опыт ваших пользователей. Добавление 64-бит версии приложения даёт улучшение производительности, открывает пути для...

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

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

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

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

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

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

[Перевод] Лучшие практики для контейнеров Kubernetes: проверки работоспособности TL;DR Чтобы добиться высокой наблюдаемости контейнеров и микросервисов, журналов и первичных метрик мало. Для более быстрого восстановления и повышения отказоустойчивости приложения должны применять Принцип высокой наблюдаемости (HOP, High Observability Principle). На уров...

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

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

Новое VoIP-приложение 3CX для Android и CFD v16 И снова хорошие новости от 3CX! На прошлой неделе выпущены два важных обновления: новое VoIP-приложение 3CX для Android и новая версия среды разработки голосовых приложений 3CX Call Flow Designer (CFD) для 3CX v16. Новое VoIP-приложение 3CX для Android Новая версия приложен...

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

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

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

[Перевод] Ваш мобильный навигатор затрудняет управление дорожным движением Распространение приложений вроде Waze, Apple Maps и Google Maps умножает хаос Мигель-стрит – это извилистая узкая дорога, проходящая по району Глен-Парк города Сан-Франциско. Ещё несколько лет назад по ней ездили только жители окрестных домов, и они хорошо знали все её про...

Google анонсировала запуск конкурента Apple Arcade Вчера Google объявила о запуске нового игрового сервиса под названием Google Play Pass, который дает пользователям Android доступ к более чем 350 играм и приложениям без рекламы за $4,99 в месяц. Уж больно напоминает Apple Arcade, не правда ли. Сервис Google, как и Apple Arc...

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

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

[Перевод] Полное руководство по switch-выражениям в Java 12 Старый добрый switch был в Java с первого дня. Мы все используем его и привыкли к нему — особенно к его причудам. (Кого-нибудь еще раздражает break?) Но теперь все начинает меняться: в Java 12 switch вместо оператора стал выражением: boolean result = switch(ternaryBool) { ...

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

Celesta 7.x: ORM, миграции и тестирование «в одном флаконе» Возможно, вы что-то уже знаете про open source библиотеку Celesta. Если нет — не беда, сейчас всё расскажем. Прошёл ещё один год, вышла версия 7.x, много чего изменилось, и настала пора изменения подытожить, а заодно и напомнить о том, что такое Celesta вообще. Читать дальш...

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

Как создатели вредоносного софта пытаются избежать его обнаружения: разбираем на примере Spy.GmFUToMitm Изображение: Unsplash Специалисты экспертного центра безопасности Positive Technologies (PT Expert Security Center) обнаружили интересный образец вредоносного ПО, распространяющийся в китайском сегменте интернета. Этот софт используется, среди прочего, для осуществления M...

[Перевод] Добавление Quartz в Spring Boot И снова здравствуйте. Специально для студентов курса «Разработчик на Spring Framework» подготовили перевод интересной статьи. В моей статье «Specifications to the Rescue» я показал как можно использовать JPA Specification в Spring Boot для реализации фильтрации в RESTful ...

Алиса приобретает навык В этой статье речь пойдёт о голосовых интерфейсах (Voice User Interface — VUI), а также будет показано, как на Node.js можно создать приложение (навык — в терминологии платформы Яндекс.Диалоги) для голосового помощника Алисы. С помощью стороннего API наше приложение будет ...

Как сделать два приложения из одного. Опыт Тинькофф Джуниор Привет, меня зовут Андрей и я занимаюсь приложениями Тинькофф и Тинькофф Джуниор для платформы Android. Хочу рассказать о том, как мы собираем два похожих приложения из одной кодовой базы. Тинькофф Джуниор — это мобильное банковское приложение, ориентированное на детей ...

Files UWP v0.6.2 – UWP Проводник доступен в Microsoft Store Microsoft всячески пытается продвигать универсальную платформу Windows, но многие разработчики по-прежнему в полной мере не используют преимущества платформы UWP, одно из которых – кроссплатформенность.Новое приложение Files UWP, которое заменяет стандартный Проводник, появи...

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

Моя жизнь с Boost Graph Library Статья, первая часть которой здесь представлена, содержит различные соображения автора, накопившиеся в ходе длительной разработки специализированной системы поиска социальных связей, базирующейся на библиотеке Boost Graph Library (BGL). В этом (техническом) разделе суммируют...

Интересные материалы для разработчика мобильных приложений #262 (10 – 16 июня) В новом дайджесте продолжаются рассказы про WWDC и SwiftUI, а заодно говорим про темные режимы, гипер казуальные игры, приложения для людей, рынок фитнес-приложений и многое другое.

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

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

Искусственный интеллект на примере простой игры. Часть 2 В этот раз выбрана игра «Змейка». Создана библиотека для нейросети на языке Go. Найден принцип обучения, зависимый от «глубины» памяти. Написан сервер для игры между разработчиками. Читать дальше →

[Из песочницы] Выбор между XML и SQL для накатывания скриптов LiquiBase на примере Java/Spring/H2 В процессе работы над очередным проектом в команде возникли споры по поводу использования формата XML или SQL в Liquibase. Естественно про Liquibase уже написано много статей, но как всегда хочется добавить свои наблюдения. В статье будет представлен маленький туториал по со...

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

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

AiGram — как Telegram, но с искусственным интеллектом Что будет, если взять один из самых популярных мессенджеров и добавить в него искусственный интеллект? Правильно, крутой мессенджер с интегрированным искусственным интеллектом! Именно такую задумку реализовали разработчики приложения AiGram Messenger, которое позволяет сове...

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

Серый кардинал .NET — Джон Гэллоуэй Знаете ли вы, кто такой Джон Гэллоуэй? А между тем, он есть. Он не только один из авторов «Professional ASP.NET MVC», но и человек, который является исполнительным директором .NET Foundation, по сути – отвечает за весь опенсорс .NET. Основные темы этой статьи: подробности р...

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

Неопределённая параметризация как универсальный метод построения архитектуры приложения на C++ и Java за минимальн. цену C++ — язык запутанный, и существенным его недостатком является сложность создания изолированных блоков кода. В типовом проекте всё зависит от всего. Эта статья показывает, как писать высокоизолированный код, который минимально зависит от конкретных библиотек (включая стандар...

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

[Перевод] Пишем чат на Python и Django Добрый день, друзья. В преддверии старта курса «Web-разработчик на Python» традиционно делимся с вами полезным переводом. Вы видите перед собой руководство, которое расскажет, как создать приложение-чат на Python, Django и React. В отличие от других руководств, я не исп...

Интересные материалы для разработчика мобильных приложений #241 (7-13 января) Приветствуем вас в новом году! Спасибо, что читаете наши дайджесты и делитесь материалами! На этой неделе у нас прекрасная история о том, как остаться без «Балды», самые зарабатываемые и скачиваемые приложения в разных категориях, быстрые фейлы, маркетинг приложений в 2019 и...

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

Как я начал уметь в маркетинг Всем привет! Я хотел бы рассказать о своем прошлом – замечательном проекте Withme, но «без купюр». В публикациях здесь я уже пытался рассказать о всех событиях в хронологическом порядке, однако многие факты были “немного” спрятаны под смешными «факапами», безудержным весел...

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

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

Книга «Data mining. Извлечение информации из Facebook, Twitter, LinkedIn, Instagram, GitHub» Привет, Хаброжители! В недрах популярных социальных сетей — Twitter, Facebook, LinkedIn и Instagram — скрыты богатейшие залежи информации. Из этой книги исследователи, аналитики и разработчики узнают, как извлекать эти уникальные данные, используя код на Python, Jupyter Not...

Разработчики не могут портировать Android-приложения ... В первой половине августа Huawei провела конференцию для разработчиков, главным событием которой стал анонс собственной операционной системы HarmonyOS (HongmengOS в Китае). Она создана для разного типа устройств, например, телевизоров, носимой электроники, систем умный дом и...

[Перевод] Представляем шрифт Cascadia Code Cascadia Code наконец-то здесь! Вы можете установить его непосредственно со страницы релизов в нашем репозитории на GitHub или автоматически получить его в следующем обновлении Windows Terminal. Постойте, что за «Cascadia Code»? Cascadia Code был представлен в мае этого г...

Скандал с замедлением вычислений привлёк внимание представителей AMD Традиции непримиримой вражды сторонников Intel и AMD в полной мере проявились и при обсуждении недавно получившей вторую жизнь истории про замедление вычислений при использовании процессоров последней из марок. Сам факт такого диспаритета знатокам известен уже около десяти л...

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

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

AppMgr III 4.63 AppMgr (также известный как App 2 SD) — это приложение с абсолютно новым дизайном, включающее в себя следующие компоненты: Перемещение приложений: перемещает приложения во внутреннее или внешнее хранилище для освобождения дополнительного места Сокрытие приложений: скрывает...

Figma компонент и организация экземпляров на примере Userpic Качественная дизайн-система в Фигме всегда учитывает возможные состояния определенных компонентов. Если до появления Global Styles вариант был лишь один — всегда создавать новый компонент для каждого состояния (например текстовое поле может быть default, а может быть focus...

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

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

[Из песочницы] Процедура нотаризации Electron приложения для macOS 10.14.5 С выходом macOS 10.14.5, Apple добавила обязательную процедуру нотаризации (Notarization process) приложений перед их распространением. Что это и какие сложности возникли с этим обновлением при разработке на Electron.js я и хотел бы рассказать. Читать дальше →

Анализ механизмов локализации интерфейса приложений в Splunk В данной статье мы рассмотрим основной механизм локализации интерфейса приложений Splunk (в т.ч. стандартных элементов приложения Search) — gettext internationalization and localization (i18n). Читать дальше →

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

Анонс Windows 10 Insider Preview Build 18362 (Fast) Добрый вечер, друзья! Компания Microsoft выпустила новую сборку Windows 10 19H1 под номером 18362 для участников программы Windows Insider, использующих канал Fast. Ходят слухи, что именно она может получить статус RTM, однако точной информации пока нет. Исправления и улучш...

[Из песочницы] Проблемы и нюансы при разработке под SmartTV с использованием React.js Хочу поделиться опытом разработки приложения с просмотром видео контента для SmartTV (Tizen и WebOS) и с какими проблемами мы столкнулись. На современных телевизорах, как мы знаем, можно устанавливать разные приложения, для облегчения работы с какими-то ресурсами и контенто...

Swift.assert — жизнь после релиза Как часто вы используете Swift.assert() в вашем коде? Я, честно, использую довольно часто (Если это плохая практика, то, пожалуйста, напишите в комментариях — почему это плохо?). В моем коде часто можно встретить, например, такой вызов: Swift.assert(Thread.isMainThread) Не ...

Android: доступ к скрытым методам и обнаружение root Для подписчиковСегодня в выпуске: обход защиты на доступ к скрытым методам, обнаружение прав root в обход Magisk Hide, рассказ о том, как Google вычисляет зловредные приложения в Google Play, разрушение мифов о техниках оптимизации производительности приложений, руководство ...

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

Инструменты для автотестов, интеграция Yandex Mapkit 3, крутой дизайн и подход Server Driven UI — анонс Android-митапа Привет! Меня зовут Андрей Данилов, я андроид-разработчик в Авито. Хочу пригласить вас на Android-митап, который пройдёт в нашем офисе 28 сентября. Обсудим опыт интеграции Yandex Mapkit 3 в приложение, инструменты для автотестов, поговорим, как сделать по-настоящему запоминаю...

Разработчики рассказали, что не могут перенести Android-приложения на HarmonyOS HarmonyOS — новая ОС от Huawei на замену Android Без чего немыслима никакая современная ОС? Конечно, без экосистемы и софта. Но если спроектировать составные элементы экосистемы такой компании, как Huawei, в общем-то, по силам, то перенести чужое ПО вручную — уже...

Автоматизация тестирования платных сервисов на iOS Для тех, кто интересуется темой автоматизации на iOS, у меня две новости — хорошая и плохая. Хорошая: в iOS-приложении для платных сервисов используется только одна точка интеграции — in-app purchases (встроенные в приложение покупки). Плохая: Apple не предоставляет никаких ...

[Перевод] Современное окружение для React Native приложений В этой статье мы рассмотрим настройку React Native окружения с использованием expo-cli, Typescript, и Jest. Typescript поможет нам избежать ошибок при разработке и написать более эффективное мобильное приложение. Современные разработки позволяют интегрировать Typescript в ...

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

[Из песочницы] От идеи мобильного приложения до MVP, в который вложатся инвесторы Введение Как создать MVP приложения, в который вложатся инвесторы Шаг 1. Составить требования Шаг 2. Выбрать компанию-разработчика Шаг 3. Создать ТЗ и собрать прототип для фокус-групп Шаг 4. Разработать и протестировать приложение Шаг 5. Опубликовать приложение Как найти...

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

Трезвый взгляд на Helm 2: «Вот такой, какой есть...» Как и любое другое решение, Helm — пакетный менеджер для Kubernetes — имеет плюсы, минусы и область применения, поэтому при его использовании стоит правильно оценивать свои ожидания… Мы используем Helm в своём арсенале инструментов непрерывного выката. На момент написания ...

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

Запускаем приложение в Openshift и сравниваем существующий инструментарий Я хочу рассказать история, как запускали приложение в Openshift. Так же по ходу пьесы рассмотрим утилиты для управления приложением внутри Openshift. Это расшифровка выступления на kubernetes SPB meetup #3.. Читать дальше →

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

Buildbot: сказ с примерами еще об одной системе непрерывной интеграции (картинка с официального сайта) Buildbot, как несложно догадаться из названия, является инструментом для непрерывной интеграции (continuous integration system, ci). Про него уже было несколько статей на хабре, но, с моей точки зрения, из них не очень понятны преимущества с...

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

Где послушать про Apache Ignite и GridGain в октябре Сделали канал для анонсов офлайн и онлайн мероприятий русскоязычного сообщества Apache Ignite в телеграме. Присоединяйтесь к @apacheigniteRus. Кстати, если вы давно хотите, чтобы разработчики Apache Ignite и GridGain про что-нибудь рассказали, а они всё не рассказывают, дайт...

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

[Перевод] Деплоим ML проект, используя Flask как REST API, и делаем доступным через приложение на Flutter Введение Машинное обучение уже везде и, пожалуй, почти невозможно найти софт, не использующий его прямо или косвенно. Давайте создадим небольшое приложение, способное загружать изображения на сервер для последующего распознавания с помощью ML. А после сделаем их доступными ...

Внедряем Sign in with Apple в свое iOS приложение На WWDC 2019 Apple в очередной раз нарушила покой iOS разработчиков — представила новую систему авторизации пользователей Sign in with Apple. Теперь все iOS приложения, которые используют сторонние системы авторизации (Facebook, Twitter, etc.), должны в обязательном порядке ...

Flutter в примерах. Deep Links в приложениях на Flutter Новый мультиплатформенный фреймворк от Google – Flutter – уверенно набирает поклонников. Все больше людей интересуются этой технологией и пробуют ее как в pet-, так и в коммерческих проектах. Все больше статей и примеров появляется в рунете, но какое-то время назад я обратил...

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

Unicorn Engine. Анализируем нативные библиотеки в приложениях для Android Для подписчиковЛучшая практика защиты мобильных приложений — это перенос кода, который отвечает за криптографию, хранение ключей для API и проверку целостности системы, в нативные библиотеки. Это существенно увеличивает сложность анализа защищенности приложения, тем самым вы...

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

Отладка Angular CLI приложения в VSCode с помощью Browser Preview Привет, Хабр! В Iponweb мы не только творим магию с помощью Kubernetes, но и создаем сложные пользовательские интерфейсы. Основной фреймворк, который мы используем, — Angular (а также AngularJs для legacy частей), поэтому удобство разработки для нас — не пустой звук. Мы реши...

Wi-Fi и много других аббревиатур. Как в Android приложении получить данные об узлах Wi-Fi и не опухнуть Однажды мне понадобилось сканировать из Android приложения сети Wi-Fi и получать подробную выкладку данных о точках доступа. Читать дальше →

[Из песочницы] Конфигурация приложений на Angular. Лучшие практики Как управлять файлами конфигурации среды и целями Когда вы создали angular приложение с помощью Angular CLI или Nrwl Nx tools у вас всегда есть папка с фалами конфигурации окружения: <APP_FOLDER>/src/environments/ └──environment.ts ...

Ssh-chat Привет, Хабр. Console chat отличная вещь, но для фронтендеров, а что если вы хотите такой же, но для бэкэнда. Если да, то эта статья для вас. Но какой инструмент часто используют в бэкенде? Правильно ssh, так что представляю sshchat Читать дальше →

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

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

Что будет нового в Google Play после обновления Material Design – это стиль дизайна Android и приложений, разработанный компанией Google и впервые представленный еще в 2014 году. Material Design подразумевает пастельные цвета, плоские элементы, плавную анимацию переходов, отсутствие в интерфейсе острых углов и градиентов...

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

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

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

Reaktive — мультиплатформенная библиотека для реактивного Kotlin Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный ...

[Перевод] История и наследие jQuery jQuery — это самая популярная в мире JavaScript-библиотека. Сообщество веб-разработчиков создало её в конце 2000-х, что привело к возникновению богатой экосистемы сайтов, плагинов и фреймворков, использующих под капотом jQuery. Но в последние годы её статус главного инстру...

Как правильно увольняться (инструкция) В понедельник обычно всё плохо и хочется уволиться. Вдруг вы сегодня поругались с боссом и вам предложили написать по собственному. Если всё так, смело читайте статью. Привет! У всех у нас был этот опыт. Вас вызывает начальник. Вызывает в тот самый момент, когда вызывать н...

[Из песочницы] Python + Raspberry Pi + Pixhawk и квадрокоптер. Или как не надо делать роботов Привет, Хабр! Меня зовут Алексей, уже 7 лет я ведущий разработчик Smart TV-решений в крупной компании из Ижевска, занимающейся заказной разработкой. Каждый год у нас проводится конкурс новогодних украшений, и каждый раз мы ничего не украшаем, а пилим всякие технологичные шт...

Alibaba — разработчик приложения для китайской политической пропаганды Приложение “Xuexi Qiangguo”, которое буквально переводится как «Изучи, как сделать Китай сильным», и которое транслирует стратегические высказывания главы КНР Си Цзиньпиня, стало самым популярным приложением для iPhone в Китае на прошлой неделе.

DECT-телефония в зданиях В 2007 году компания Apple выпустила свой iPhone, и с этого момента бизнес-пользователи всерьез заинтересовались возможностями применения мобильных устройств связи. Сотрудники IT-отделов изо всех сил пытались подстроиться под меняющиеся модели работы: требовалось как-то ув...

The state of CSS В ежегодном опросе «The state of JavaScript» разработчики рассказывают о том, что они используют здесь и сейчас. Вопросы там знакомы и привычны фронтенд-сообществу. В 2019 году появился опрос «The state of CSS», который ввёл разработчиков в ступор. Оказывается, многие технол...

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

Xcode 10.2, macOS Mojave 10.14.4, iOS 12.1 и другие бета-версии Вышли новые беты Xcode, macOS Mojave и iOS — и вот основные моменты, которые я усвоил. Swift 5 для Xcode 10.2 beta Swift Прежде всего, последняя бета-версия Xcode идет в комплекте с новой версией Swift: Apple Swift 5.0 (swiftlang-1001.0.45.7 clang-1001.0.37.7) Target: x8...

Microsoft подтверждает, что пользователи не могут выйти из S-режима в Windows 10 Некоторые флагманские устройства, такие как Samsung Galaxy Book 2 и Microsoft Surface Go, поставляются с предустановленной версией Windows 10 в режиме S (ранее известной как Windows 10 S). Windows 10 в режиме S блокирует установку любых приложений, кроме приложений из Micros...

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

Экспресс-тест: вставьте в слова пропущенные буквы! Нет времени объяснять: давайте проверим, что вы знаете о правописании чередующихся гласных в корне слова. «Зарасти травой» или «зарости», «нарощенные ногти» или «наращённые», «подравнять чёлку» или «подровнять» — как писать правильно все эти слова, знают только очень грамотн...

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

Курсоры БД в Doctrine Используя курсоры, вы сможете порционно получить из БД и обработать большое количество данных, не расходуя при этом память приложения. Уверен, перед каждым веб-разработчиком хотя бы раз вставала подобная задача, передо мной тоже — и не раз. В этой статье я расскажу, в каких...

Библиотека Symbols GOST для DipTrace Ниже на скрине представлена часть символов библиотеки. В общей сложности библиотека содержит около 300-сот УГО выполненных по стандартам ГОСТ (ЕСКД). Библиотека разрабатывается и поддерживается мной. Все предложения, пожелания по добавлению символов (УГО) или компонентов...

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

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

Дайджест интересных материалов для мобильного разработчика #319 (21— 27 октября) В этом выпуске нашего дайджеста тестирование, профилирование, работа с подписками, стереотипы разработчиков, дизайн и UX, проектирование, права на разработки, библиотеки и книги! Подключайтесь! Читать дальше →

[Перевод] Как создать приложение дополненной реальности с помощью ARCore В этом гайде вы узнаете, как добавить 3D-модели в реальный мир. Библиотека ARCore от Google позволяет добавлять на 2D-изображение (картинка или видео) полноценные 3D-модели. Вам необходимо предоставить системе некое опорное изображение, которое ARCore будет искать в реально...

[Перевод] Будущее внедрения зависимостей в Android Предлагаю вашему вниманию перевод оригинальной статьи от Jamie Sanson Создание Activity до Android 9 Pie Внедрение зависимостей (DI) — это общая модель, по ряду причин используемая во всех формах разработки. Благодаря проекту Dagger, он взят в качестве шаблона, используемог...

Открытые бенчмарки для нагрузочного тестирования серверов и веб-приложений Это — подборка утилит, составленная на основе рекомендаций резидентов Hacker News и GitHub. В список вошли: Locust, Vegeta, Slow_cooker, k6 и Siege. Ими пользуются инженеры из DICE, EA и Buoyant, а также разработчики Kubernetes и Load Impact. Расскажем об этих инструментах. ...

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

Алгоритм взаимодействия сотен тысяч уникальных частиц на GPU, в GLES3 и WebGL2 Описание алгоритма логики, и разбор рабочего примера в виде техно-демки-игры WebGL2 версия этой демки https://danilw.itch.io/flat-maze-web остальные ссылки смотрите в статье. Статья разбита на две части, сначала про логику, и вторая часть про применение в игре, первая часть...

Техника избежания неопределённого поведения при обращении к синглтону В статье рассмотрены причины возникновения и способы избежания неопределённого поведения при обращении к синглтону в современном c++. Приведены примеры однопоточного кода. Ничего compiler-specific, всё в соответствии со стандартом. Читать дальше →

SGX-малварь: как злодеи эксплуатируют новую технологию Intel не в тех целях, ради которых она задумывалась Как известно, выполняемый в анклаве код серьёзно ограничен в своей функциональности. Он не может делать системные вызовы. Он не может осуществлять операции ввода-вывода. Он не знает базового адреса сегмента кода хост-приложения. Он не может jmp'ить и call'ить код хост-прилож...

Мобильные приложения для детей содержат критические уязвимости Компания «Ростелеком-Solar» ко Дню защиты детей провела исследование уязвимостей популярных мобильных игровых приложений для детей. Анализ 14-ти игровых приложений показал, что обнаруженные в приложениях уязвимости могут привести к полной ...

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

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

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

Книга «Знакомство с PyTorch: глубокое обучение при обработке естественного языка» Привет, Хаброжители! Обработка текстов на естественном языке (Natural Language Processing, NLP) — крайне важная задача в области искусственного интеллекта. Успешная реализация делает возможными такие продукты, как Alexa от Amazon и Google Translate. Эта книга поможет вам из...

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

Из жизни с Kubernetes: Как HTTP-сервер испанцев не жаловал Представитель нашего клиента, стек приложений которого обитает в облаке от Microsoft (Azure), обратился с проблемой: с недавнего времени часть запросов некоторых клиентов из Европы стала завершаться ошибкой 400 (Bad Request). Все приложения написаны на .NET, развёрнуты в K...

Лошадь сдохла – слезь: переход с tslint на eslint До недавнего времени во всех проектах фронта разработчики Dodo Pizza Engineering использовали tslint – полезный инструмент, который подсказывает, когда ты накосячил в коде допустил неточность, помогает поддерживать код в одном стиле и сам исправляет многие замечания. Но тут ...

[Из песочницы] Использование SQLite в Unity (Unity + SQLite) Всем привет, данная публикация будет посвящена работе с встраиваемой реляционной базой данных SQLite в Unity. Данная статья написана новичком для новичков с целью показания работы с SQLite, предполагается, что вы знаете основы SQL. Так как в интернете нет ясного тутора для н...

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

Заметки на Mac, iPhone и iPad: 7 способов работать продуктивнее с Заметками от Apple Apple Заметки – не просто «еще одно» приложение для того, чтобы записывать свои мысли. Их возможностей более чем достаточно для того, чтобы переехать даже из такого серьезного менеджера заметок как Evernote. Главное – знать, как правильно всё «готовить».   1. Организуйт...

Apple представила агрегатор для журналов и газет Apple News+ Только что на своей презентации Apple представила сервис Apple News+. Сервис работает на базе приложения «Apple News» и объединяет платные материалы из газет, веб-сайтов и журналов на отдельной вкладке. Через приложение можно получить доступ ко всем известным журналам и…

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

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

[Из песочницы] Сравнение популярных CLI-библиотек для Python: click, cement, fire и другие Python — отличный язык для консольных приложений, и это подчёркивает большое количество библиотек для этих задач. Но какие вообще библиотеки существуют? А какую лучше взять? В этом материале сравниваются популярные и не очень инструменты для консольного мира и дана попытка...

Дайджест интересных материалов для мобильного разработчика #285 (4 — 10 февраля) В новом выпуске мы рассказываем про серверные анимации, «плохой» Google, ускорение изображений и инструменты локализации, феерическое приложение для знакомств для холодильника и культуру роста в компаниях. Подключайтесь! Читать дальше →

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

Отправка статистики из DataFrame в BigQuery на примере статистики Яндекс Директ В этой статье расскажу о том, как я свел статистику по всему контексту в одном месте с помощью BigQuery и Data Studio У меня появилась необходимость визуализировать данные по всем источникам трафика. Для данной задачи я использую Data Studio. Google Ads туда подтягивается ...

Идиоматичное программирование GPU на Rust: Библиотека Emu Введение Emu — это высокоуровневый язык программирования видеокарт, способный встраиваться в обычный код на системном языке программирования Rust. В данной статье речь пойдёт о синтаксисе Emu, его особенностях, а также будут показаны несколько наглядных примеров его использ...

Новое приложение-компаньон для Office доступно для всех пользователей Windows 10 В декабре компания Microsoft представила обновлённое приложение-компаньон для Office, которое заменяет собой «Мой Office», предустановленное на всех устройствах с Windows 10. С сегодняшнего дня это приложение доступно всем пользователям операционной системы, а не только уча...

Oppo присоединилась к проекту CameraX API от Google В этом году Google представила CameraX API — это библиотека или набор AI-алгоритмов Android Jetack, предназначенных для того, чтобы облегчить разработку приложения камеры.   Их преимуществом является то, что разработчикам не нужно прописывать специальный код в сво...

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

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

Summer Droid Meetup Привет! Приглашаем android-разработчиков на наш Summer Droid Meetup. 3-е августа, Сад Эрмитаж, Каретный ряд, д 3, стр 6, «Веранда 32.05». Начало в 12:00. Программа митапа «Сбор и анализ неординарных данных Android-приложения», Дмитрий Васильев, FunCorp О докладе Доклад ...

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

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

[Перевод] Flutter: прокачиваем AppBar & SliverAppBar Во Flutter для создания панели инструментов используется хорошо всем известный AppBar, ну а когда нам нужна динамическая панель инструментов, которая покажет контент при свайпе, мы используем отличный виджет SliverAppBar. Оба виджета позволяют сделать приложение чуточку крас...

Безопасно ли приложение для состаривания фотографий FaceApp? На этой неделе в Сети снова начали появляться фотографии пользователей, состаренные искусственным интеллектом некогда популярного и до поры до времени благополучно забытого приложения FaceApp (скачать). Результат получался настолько естественным и натуральным, что показать ...

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

Достать до звезд: Осваиваем операторы Ansible для управления приложениями в Kubernetes Посмотрим, как использовать опубликованные в Ansible Galaxy роли (Role) в качестве операторов (Operator), управляющих приложениями в Kubernetes, и разберем это на примере создания оператора, который просто устанавливает приложение, гибко настраивая свое поведение в зависимос...

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

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

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

Firefox Lockbox станет вашим новым менеджером паролей на Android Создаётся впечатление, что производитель известного во всем мире браузера пустился во все тяжкие и выпускает различные обновления, сервисы и приложения как с конвейера. Буквально пару недель назад мы рассказывали вам о новом сервисе от компании Mozilla, который позволяет по...

ИК «ЦЕРИХ Кэпитал Менеджмент» разработала мобильное приложение для инвестиций Новую разработку – мобильное приложение для биржевой торговли Z-TRADE – предложила инвесторам ИК «ЦЕРИХ Кэпитал Менеджмент». Его уже можно скачать в App Store и совершать операции с ценными бумагами, торгующимися на Московской и Санкт-Петербургской биржах. Приложением может ...

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

Лавочка прикрыта. На Huawei Mate 30 больше нельзя поставить приложения и сервисы Google Совсем недавно Huawei представила свои флагманские смартфоны серии Mate 30, которые стали первыми смартфонами компании без поддержки приложений и сервисов Google, поскольку Соединенные Штаты включили китайского гиганта в свой «Список запрещенных компаний». С...

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

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

Дайджест интересных материалов для мобильного разработчика #320 (28 октября — 3 ноября) Новый дайджест и в нем чтение текста на вывесках, лучшие практики и инструменты разработки, магия автоматической сборки, приложения для цифрового детокса, иллюзии дизайна и Flutter. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #304 (24 — 30 июня) В нашем новом выпуске создание вездесущих сплэшскринов, уход прекрасного Джони Айва, тщательная проверка приложений в App Store, параноидальные видео, искусственная музыка и много других интересных материалов. Читать дальше →

[Из песочницы] Два процента «кота» или кто сфотографировал Мастера Йоду? В 2016 из-за давней мечты о видео-играх и «хайпа» вокруг AI я начал изучать Python. Computer Science is Fun потому только неделю назад я обучил первую recognition модель, но без использования Python (в computer science много соблазнов). Как и предсказывал Андрей Себрант (Ya...

В Сеть попала предварительная сборка Android 10.0 Q Еще Google толком не успела обновить все устройства до актуальной Android 9.0 Pie, как в Сеть попала предварительная сборка новой Android 10.0 Q. Опробовать ее возможности предоставилось изданию XDA Developers на смартфоне Pixel 3 XL и здесь есть о чем рассказать.Android 10....

[Из песочницы] 9 Принципов для создания качественных iOS приложений Принципы основаны на известной методологии от heroku, адаптированы под реалии айос разработки (Отсутствие контейнеров, ревью которые занимают несколько дней и тормозят развертывания, работа Xcode только на маке). Эта статья является коротким введением, полную серию можете на...

[Перевод] The Foobar challenge: секретный тест Google для разработчиков Вы просто сидите за своим столом, занимаясь своими делами, пытаясь выполнить какую-то работу. Затем, как это неизбежно происходит, вы сталкиваетесь с незначительным препятствием: ваш код выдает загадочное сообщение об ошибке. «Нет проблем», как вы думаете. Это не ваше пер...

Стохастический градиентный спуск(SGD) для логарифмической функции потерь(LogLoss) в задаче бинарной классификации Предыдущая часть (про линейную регрессию, градиентный спуск и про то, как оно всё работает) — habr.com/ru/post/471458 В этой статье я покажу решение задачи классификации сначала, что называется, «ручками», без сторонних библиотек для SGD, LogLoss'а и вычисления градиентов, ...

Как я опубликовал PWA на Svelte в Google Play Мне нравится метал музыка разных направлений. Для отслеживания новинок я сделал парсер, который ищет свежие альбомы и складывает их в базу. За время существования приложения парсер я почти не трогал, хотя он и далек от идеала, а вот фронтенд был переделан несколько раз. Под...

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

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

[Из песочницы] Android preferences delegate В данной статье разобран пример создания делегата для SharedPreferences, который уменьшает boilerplate и делает использование SharedPrefernces более удобным. Те кто хочет посмотреть результат, может перейти к готовому решению, остальным добро пожаловать под кат. Читать дальш...

[Перевод] Распределение памяти в JVM Всем привет! Перевод сегодняшнего материала мы хотим приурочить к запуску нового потока по курсу «Разработчик Java», который стартует уже завтра. Что ж начнём. JVM может быть сложным зверем. К счастью, большая часть этой сложности скрыта под капотом, и мы, как разработчики ...

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

[Перевод] Используем Firebase в качестве хранилища изображений для Android-приложения В этой статье вы узнаете, как извлечь изображение из хранилища Firebase для Android-приложения. Читать дальше →

Чипы для ML — рассказываем о новинках Говорим о новых архитектурах как крупных мировых производителей, так и стартапов — waferscale-чипах, тензорных процессорах и устройствах на базе графов. Подборка по теме: Инструменты для разработчиков ПО: открытые фреймворки и библиотеки МО Читать дальше →

Как почистить Mac без использования сторонних приложений Тряпочка — это хорошо, но диск она вам не почистит Зачастую свободное место заканчивается не только на iPhone или iPad, но и компьютере Mac — особенно если «под капотом» у вас SSD на 128 ГБ. Многие сразу бегут за помощью к сторонним приложениям, но во-первых, они...

Бесплатные приложения и скидки в App Store | 9 января Gun Movie FX (Бесплатно) | Hatchi (Бесплатно) | BADLAND 2 (29 руб.) Ежедневно мы вручную отбираем для вас лучшие предложения из App Store, которые становятся бесплатными или распространяются с большой скидкой. Каждый день новые и лучшие приложения для ваших iPhone, iPad или...

Huawei: Защита плоскости управления В статье рассматриваются аспекты защиты плоскости управления маршрутизаторов Huawei NE Series. Примеры приведены для NE40e, с программным обеспечением: VRP V800R008. На других типах маршрутизаторов (например NE5k) и с другой версией ПО, конфигурация может несколько отличатьс...

От High Ceph Latency к Kernel Patch с помощью eBPF/BCC В Linux есть большое количество инструментов для отладки ядра и приложений. Большинство из них негативно сказываются на производительности приложений и не могут быть использованы в продакшене. Читать дальше →

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

Radio by Deezer – приложение для бесплатного прослушивания более 30000 радиостанций Разработчики из компании Access Industries не стали заострять свое внимание исключительно на сервисе потоковой музыки Deezer и на днях выпустили приложение Radio by Deezer. Оно, в свою очередь, предоставляет бесплатный доступ к более чем 30000 радиостанций по всему миру. Инт...

AIOps на практике — что может Huawei FabricInsight В ответ на рост количества работающих приложений и числа сетевых устройств повышается пропускная способность сетей и ужесточаются требования к доставке пакетов. В масштабах критически важных для бизнеса облачных ЦОД традиционный подход к обслуживанию инфраструктуры уже не по...

Дыру в безопасности для взлома WhatsApp с помощью видео залатали Команда Facebook, которой сейчас принадлежит популярный WhatsApp, опубликовала заявление, в котором говорится об устранении найденной не так давно уязвимости в WhatsApp.  Критическую уязвимость CVE-2019-11931 в приложениях WhatsApp для Android и iOS позволяла злоу...

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

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

Разработчики раскритиковали подписку Google Play Pass: «это Spotify какой-то!» Модель pay-per-stream может привести к тому, что единственно выгодными приложениями останутся клоны "Фермы". Оригинальные проекты потеряют экономический смысл.

[Из песочницы] Создание минимального Docker-контейнера для Go-приложений Привет, Хабр! Предлагаю вашему вниманию перевод статьи основателя сервиса Meetspaceapp Nick Gauthier «Building Minimal Docker Containers for Go Applications». Время чтения: 6 минут Существует множество, как официальных, так и поддерживаемых сообществом контейнеров для разл...

[Перевод] Angular без zone.js: максимум производительности Angular-разработчики в большом долгу перед библиотекой zone.js. Она, например, помогает достичь в работе с Angular почти волшебной лёгкости. На самом деле, практически всегда, когда нужно просто поменять какое-нибудь свойство, и мы меняем его, ни о чём не задумываясь, Angula...

[Перевод] Интернет вещей… которые плачут по хорошему UI/UX Египетские иероглифы или обозначения кнопок на стиралке? Я думаю, что, чисто теоретически, мы бы уже могли подключить большинство существующих ныне устройств к интернету, этим и порожден растущий интерес к Интернету Вещей (IoT). Получим ли мы от этого большую пользу — уже ...

Российские банки продвигают свои приложения через Facebook и Instagram — исследование Почти все российские банки освоили SMM и рассказывают о своих мобильных приложениях на страницах соцсетей. Как показало исследование мобильного банкинга 2019, проведенное digital-агентством Go Mobile, наиболее популярными являются Facebook и Instagram — там закупают ре...

Все, что нужно знать об iOS App Extensions App Extensions появились в iOS 8 и сделали систему более гибкой, мощной и доступной для пользователей. Приложения могут отображаться в виде виджета в Центре Уведомлений, предлагать свои фильтры для фотографий в Photos, отображать новую системную клавиатуру и многое другое....

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

Дайджест интересных материалов для мобильного разработчика #299 (20 — 26 мая) Этот выпуск нашего дайджеста затрагивает вопросы деления пиццы, работы CarPlay, обсуждает Google I/O, развитие приложений в 2019, консоль-шарманку и ошибки пуш-уведомлений. Читать дальше →

Иван Осипов и Юрий Артамонов про Kotlin и плагины к IntelliJ IDEA на встрече jug.msk.ru 14 ноября 2019 года на встрече московского сообщества Java-разработчиков jug.msk.ru Иван Осипов и Юрий Артамонов представили доклады про миграцию приложений с Java на Kotlin и про написание плагинов для IntelliJ IDEA. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) В новом дайджесте мы обсуждаем подготовку приложений к iOS 13 и Android Q, работу протокола QUIC, отсутствие инновационных приложений в Google Play и в целом его работу, магазин приложений от Huawei и многое другое. Присоединяйтесь! Читать дальше →

Docker + Laravel = ❤ // Часть 2 Данный пост написан по заявкам трудящихся, которые с завидной периодичностью спрашивают о том "Как запустить Illuminate / Symfony / MyOwnPsr7 приложение в докере". Давать ссылку на ранее написанный пост уже не хочется, так как взгляды относительно того, как следует решать п...

5 причин начать использовать Google Keep прямо сейчас Google Keep — очень удобный инструмент для самоорганизации Google Keep — это приложение для создания заметок. Но так кажется лишь на первый взгляд. На самом деле — это настоящий «медиакомбайн», который может не хило упростить вам жизнь и дать возм...

Adobe готовит новое приложение для рисования на iPad Сегодня стало известно о том, что Adobe готовится выпустить новое приложение для рисования на iPad. Компания рассказала о новинке под названием Adobe Fresco в своем блоге. Релиз приложения запланирован на конец этого года.Читать дальше... ProstoMAC.com.| Постоянная ссылка |...

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

Все, что нужно знать о Google Play Pass Что такое Google Play Pass и чем он так хорош? Недавно Google запустили подписку на сервис Google Play Pass, и многие пользователи, естественно, начали сравнивать его с Apple Arcade. Хотя у них есть некоторые общие черты, это далеко не «клоны» друг друга. В этой ст...

Крупного китайского разработчика заблокировали в Google Play из-за агрессивной рекламы Китайская компания CooTek, ранее уже вызывавшая вопросы у ИБ-экспертов, была заблокирована в каталоге приложений Google. Все дело в рекламной библиотеке BeiTaPlugin, из-за которой с зараженными устройствами становилось невозможно работать.

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

Утечка раскрыла внешний облик новых приложений macOS 10.15 Буквально через несколько дней состоится всемирная конференция для разработчиков WWDC 2019, где Apple явит миру свои новые программные продукты. Чем ближе мероприятие — тем больше в Сети появляется секретных сведений. Известный разработчик Гильермо Рэмбо, неоднократно...

[Перевод] 10 Git-команд, которые стоит знать разработчику В этой статье мы обсудим разные Git-команды, которые могут оказаться полезными для разработчика или специалиста по Big Data. Вы узнаете, как проверять, удалять и приводить код в порядок. А еще рассмотрим способы выхода из Vim и экономию времени с помощью псевдонимов Bash ...

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

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