Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Хронология развития DPI в России и странах СНГ

Время на прочтение12 мин
Количество просмотров10K

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

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии3

Android: Проблема отрисовки в jetpack compose

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.6K

Привет всем! Хочу поделится одной интересной проблемой (и ее решением), с которой пришлось столкнуться при использовании jetpack compose.

Я пишу с нуля программу аренды велосипедов. Соответственно могу использовать современные frameworks и стараться сделать все по феншую :)

Для UI я выбрал jetpack compose и использую MVI для взаимодействия между UI и ViewModel.

Во ViewModel, отвечающую за взаимодействие с Yandex Map, приходят разные события: если клиент двигает карту, с сервера запрашивается информация о находящихся в этом месте велосипедах, 2-х видах парковок и медленных зонах. Кроме того периодически с сервера запрашивается информация об активной аренде клиентом велосипеда. Все эти данные асинхронно передаются на UI.

Читать далее
Всего голосов 5: ↑3 и ↓2+1
Комментарии20

GitHub Copilot в JetBrains IDEs в РФ

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров28K

В 2022 году в публичный доступ вышел GitHub Copilot – довольно удобный современный инструмент для разработчиков. В этой короткой статье поделюсь своим опытом взаимодействия с GitHub Copilot, а главное тем, как его использовать в IDE от JetBrains. Приятного чтения!

Читать далее
Всего голосов 23: ↑12 и ↓11+6
Комментарии45

Разработка под Android в 2024 году

Время на прочтение15 мин
Количество просмотров15K

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

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

Читать далее
Всего голосов 16: ↑14 и ↓2+17
Комментарии13

Современный С++ в разработке девайсов

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров18K

Привет, Хабр.

Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.

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

Во время доклада меня попросили подробнее описать детали нашего подхода в статье, поэтому рад поделиться с вами расширенной текстовой версией.

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

Язык С++ позволяет писать эффективный и переносимый между различными платформами код, поэтому выбор языка программирования для нашего приложения был очевиден. При этом язык известен своей сложностью и возможностью выполнить одну и ту же задачу несколькими способами.
Чтобы успешно разрабатывать большой проект на языке C++, необходимо хорошо настроить процесс разработки в команде (а это несколько десятков инженеров). Также можно значительно осовременить разработку на C++ за счет использования подходящих инструментов статического и динамического анализа, и правильной интеграции их в процесс разработки.

Читать далее
Всего голосов 23: ↑20 и ↓3+22
Комментарии36

Как войти в айти за час с нуля, на языке с++ Win32 (графические приложения) «для самых маленьких»

Уровень сложностиПростой
Время на прочтение54 мин
Количество просмотров33K

Хе хе ну вы поняли «ВОйти ВАйти».

Принято считать, что программирование это сложно, но это миф (все проще чем кажется), и все что нужно чтобы стать программистом это немного упорства и изобретательности.

В этой статье мы получим все базовые навыки, которые нужны программисту, по окончании статьи у тебя будут все необходимые навыки для C++ Junior Desktop Developer, а также ты сможешь создавать 90% программ с софт портала, меньше слов ближе к делу.

Изучить программирование с 0 за час
Всего голосов 54: ↑12 и ↓42-28
Комментарии66

Дерево отрезков: просто и быстро

Время на прочтение5 мин
Количество просмотров38K
Накануне очередного запуска курса «Алгоритмы для разработчиков» мы провели открытый урок. На нём поговорили об известной идее дерева отрезков, обсудили, как его строить, обновлять и быстро O(log n) вычислять сумму чисел любого отрезка данного массива. Алгоритм очень простой и экономный: нужно O(n) памяти. Для закрепления материала решили олимпиадную задачу.




Вебинар провёл опытный программист и преподаватель, а также руководитель курса «Алгоритмы для разработчиков» Евгений Волосатов.
Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии6

Нейросеть с нуля своими руками. Часть 2. Реализация

Время на прочтение5 мин
Количество просмотров29K

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии3

Встречаем Meteum 2.0 — первую технологию метеопрогноза, алгоритмы которой обучаются на сообщениях пользователей

Время на прочтение5 мин
Количество просмотров31K

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

Сегодня мы начинаем раскатывать новую версию прогнозирования осадков в Яндекс.Погоде. Ключевое изменение — внедрение технологии Meteum 2.0, которая впервые в истории метеопрогноза полагается не только на данные технических средств, но и на сообщения пользователей. В это сложно поверить, но сигналы пользователей оказались не менее полезны для качества прогнозов, чем данные радаров и спутников. Благодаря этому краткосрочный прогноз осадков стал точнее на 20%, а значит, люди будут реже попадать под дождь.

Присаживайтесь поудобнее — сейчас расскажу обо всём по порядку. 

История про погоду и людей
Всего голосов 47: ↑43 и ↓4+55
Комментарии50

Шёпот и эмоции в Алисе: история развития голосового синтеза Яндекса

Время на прочтение15 мин
Количество просмотров37K


Четыре года назад мы запустили Алису. С самого начала она обладала собственным, узнаваемым голосом. Хотя проблемы тоже были: интонации хромали, эмоции скакали от слова к слову, а омонимы и вовсе ставили синтез в тупик. Алиса звучала пусть и не как робот, но ещё и не как человек.

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

Сейчас мы переходим на следующий уровень: учим Алису управлять эмоциями и стилем своей речи, распознавать шёпот и отвечать на него шёпотом. Казалось бы, что в этом сложного и почему всё это было невозможно ещё несколько лет назад? Вот об этом я и расскажу сегодня сообществу Хабра.
Читать дальше →
Всего голосов 60: ↑57 и ↓3+75
Комментарии53

Ранжирование в Яндексе: как поставить машинное обучение на поток (пост #1)

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

image
Читать дальше →
Всего голосов 63: ↑56 и ↓7+49
Комментарии53

Туториал по Unreal Engine. Часть 1: знакомство с движком

Время на прочтение12 мин
Количество просмотров687K
image

Unreal Engine 4 — это набор инструментов для разработки игр, имеющий широкие возможности: от создания двухмерных игр на мобильные до AAA-проектов для консолей. Этот движок использовался при разработке таких игр, как ARK: Survival Evolved, Tekken 7 и Kingdom Hearts III.

Разработка в Unreal Engine 4 очень проста для начинающих. С помощью системы визуального создания скриптов Blueprints Visual Scripting можно создавать готовые игры, не написав ни строчки кода! В сочетании с удобным интерфейсом это позволяет быстро изготавливать рабочие прототипы.

В этой части туториала по Unreal Engine 4 мы ознакомимся с основными возможностями программы. Вот основные темы, которые будут в нём рассмотрены:

  • Установка движка
  • Импорт ассетов
  • Создание материалов
  • Использование Blueprints для создания объектов с простейшими функциями
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии10

Уровень Android API, обратная и прямая совместимость

Время на прочтение7 мин
Количество просмотров73K
Добрый вечер, друзья. Мы подготовили полезный перевод для будущих студентов курса «Android-разработчик. Продвинутый курс». С радостью делимся с вами данным материалом.




Если вы читаете эту статью, значит вас могут интересовать такие вещи, как:

  • Что означает уровень API?
  • Как использовать compileSdkVersion, minSdkVersion или targetSdkVersion?
  • Как можно гарантировать, что приложение будет работать правильно на устройствах с разными версиями ОС?
Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии1

Безопасность в беспроводной сети Bluetooth

Время на прочтение5 мин
Количество просмотров12K

 Вообще слово Bluetooth является адаптацией слова на английский язык с датского слова «Blåtand» («Синезубый»). Это было прозвище короля викингов Харальда I, жившего в Дании около тысячи лет назад. Прозвище он получил за тёмный передний зуб. Первые работы по созданию Bluetooth начал производитель телекоммуникационного оборудования Ericsson в 1994 году в качестве беспроводной альтернативы кабелям RS-232. Изначально Bluetooth был разработан под потребности системы FLYWAY в функциональном интерфейсе между путешественниками и системой. Первая спецификация Bluetooth была разработана группой Bluetooth Special Interest Group, основанная в 1998 году. В Bluetooth Special Interest Group вошли компании Ericsson, IBM, Intel, Toshiba и Nokia. А впоследствии Bluetooth SIG и IEEE достигли соглашения, на основе которого спецификация Bluetooth стала частью стандарта IEEE 802.15.1, опубликованного в 2002 году.

 

Читать далее
Всего голосов 15: ↑11 и ↓4+8
Комментарии1

Как работать с GPT-4 с помощью продвинутых промтов

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров51K

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

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

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

В этой статье я расскажу о 16 наиболее распространенных промтах, которые применяют в промт-инжиниринге. Все примеры были протестированы в версии ChatGPT, доступной в России без VPN. В качестве такой русифицированной версии я использовал MashaGPT, которая работает с оригинальной GPT-4 через API.

Читать далее
Всего голосов 17: ↑9 и ↓8+6
Комментарии13

10 полезных ИИ, которые облегчат вашу жизнь

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров57K

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

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

Читать далее
Всего голосов 20: ↑15 и ↓5+14
Комментарии8

Введение в разработку приложений для Android TV

Время на прочтение7 мин
Количество просмотров41K
Данная статься познакомит вас с разработкой простого приложения для Android TV. В первую очередь она ориентированна на тех, кто уже имел какой-либо опыт в разработке приложений для Android, поэтому я не буду здесь объяснять что такое Activity, Fragments и т.д.

В интернете есть много русскоязычной информации по разработке приложений для Android и не мало статей по написанию HelloWord для него же. Заинтересовавшись разработкой приложений для Android TV, я сразу же начал изучать эту тему на англоязычных сайтах. К моему удивлению материала оказалось не так уж и много, и я решил посмотреть что же есть на русском. На русском ничего найти не удалось (возможно плохо искал). В общем я намерен исправить эту ситуацию.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии2

Яндекс выводит за границу заработанные в России деньги, пока это возможно

Время на прочтение5 мин
Количество просмотров63K

Яндекс отчитался за 2 квартал (и первое полугодие) 2023 года, и в отчете я обнаружил много интересного. Я уже на протяжении 4 лет разбираю каждый квартал отчетность Яндекса, и это 16-й по счёту отчет (и, возможно, это последний разбор в общем доступе). Так что я уже знаю, куда смотреть и что там можно увидеть.

Читать далее
Всего голосов 257: ↑243 и ↓14+291
Комментарии97

Вычисляем на видеокартах. Технология OpenCL. Часть 1b. Пишем для OpenCL

Время на прочтение9 мин
Количество просмотров11K
22 июня автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов провёл вебинар «Вычисляем на видеокартах. Технология OpenCL».



После перерыва продолжаем публикацию текстовой версии вебинара.


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

У программы для OpenCL есть две части: kernel-код и host-код — то, что выполняется на видеокарте, и то, что выполняется на компьютере. Кроме того, программу нужно скомпилировать и запустить. Всё это будет рассмотрено в сегодняшней статье. Начнём с самого интересного — напишем часть kernel.

В предыдущих сериях


Прежде чем начать, напомним основные термины из предыдущей части.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии4

Распознавание цифр, для максимально маленьких (python/keras)

Время на прочтение6 мин
Количество просмотров23K

Этот пост я решил написать, для тех, кто также искал понятный код и рабочий пример, который можно было взять, вставить в гугл колаб(google colab) и сразу начать "играться" с кодом. Но не нашел. Для вас, друзья!

P.S весь код будет в конце.

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

Читать далее
Всего голосов 11: ↑4 и ↓7-2
Комментарии7
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Fullstack Developer, Mobile Application Developer
Intern
OOP
C++
Java
Java Spring Framework
Android SDK
Windows API
Kotlin
Android Studio
Android development
RxJava 2