Как стать автором
Обновить
-1
0
Рита Ибрагимова @Xao

developer

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

Jetpack Compose для ленивых

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

Статья о том, как можно использовать Jetpack Compose для решения нестандартных ситуаций.

Рассказывает и показывает наш Android-разработчик Илья Кубышкин.

Читать далее
Всего голосов 8: ↑9 и ↓-1+10
Комментарии2

Особенности обработки native events в React.js

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

В данной статье рассматриваются особенности, которые связаны с обработкой нативных событий (native events) в React-приложениях. Существует проблема частичной потери контекста функционального компонента при обработке нативных событий, которые навешиваются на элементы с помощью глобальных объектов document, window или через ссылки (refs). В статье рассматривается данная проблема и предлагается способ её решения (один из вариантов).

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

Как мы изобрели самый бессмысленный и беспощадный дифференциал

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

Здравствуйте, меня зовут Николай и я алко... хуже, я соучастник и организатор изобретения дифференциала для дорожного катка (да, слово «соучастник» здесь подходит лучше всего, потому что таких преступлений против логики и здравого смысла надо ещё поискать...)

Мой разум твёрд и я могу это читать
Всего голосов 11: ↑8.5 и ↓2.5+6
Комментарии20

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему

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

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

В наших продуктах мы пользуемся дизайн‑системой и библиотекой компонентов Gravity UI — это проект Yandex Cloud, который не так давно тоже вышел в опенсорс. В этой статье я поделюсь опытом, как мы решили задачу «перекрашивания DataLens» с её помощью. Но даже если вы не используете DataLens и ещё не знакомы с Gravity UI, наши наработки могут пригодиться командам разработчиков и дизайнеров, которые хотят стилизовать свои продукты быстрее и удобнее.

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

«А» и «Б» сидели на трубе. «А» упало, «Б» пропало. Что осталось на трубе? (алгоритм получения ответа в частном случае)

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

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

И в ходе реализации встала передо мной этакая бодренькая микрозадачка – из набора чисел «1, 2, 3, 4» вычеркнули два числа «x, y» (неодинаковых – кто-то придет завтра и задаст эти два числа, а мы сегодня должны приготовиться), требуется объяснить компьютеру, как определить оставшиеся, невычеркнутые числа. И я завис – все идеи, которые приходили мне в голову, казались «неспортивными и чрезмерными» – ну не пузырьковой же сортировкой перебирать четыре числа, должно же быть что-то элегантное. Например, если вычеркнуто не два, а три числа «x, y, z» из четырех «x, y, z, t» (которые «1, 2, 3, 4»), то оставшееся число «t» находится так: t = 10 – (x+y+z). Потому что t+x+y+z = 10 (всегда: 10=1+2+3+4). Вполне элегантно для одного оставшегося числа. А для двух чисел – как быть с элегантностью?!

Решение я нашел – озарило по дороге домой – прям шарахнуло с неба по башке; я даже не поверил сначала, что это оно – показалось мороком усталого мозга. И оно работает не только для четырех чисел – можно решить задачу «из n последовательных чисел вычеркнуто k различных чисел, требуется вернуть остаток» (что осталось на трубе).

Я предложил эту задачку с «n, k»-условием знакомым программистам в качестве застольного анекдота, для развлечения (сам я не программист, честно – мне просто сильно занадобилось объяснить Яваскрипту, как вычислять собственные векторы комплекснозначной матрицы 4х4). Сначала я выслушал их предложения (предлагали «упорядочивание k чисел с последующим перебором n чисел» и «воспользоваться встроенной функцией вычитания множеств»). Потом я рассказал свое решение. Они сказали: «Ну круто, да».

Не думаю, что я совершил великое открытие – скорее всего, этот подход где-нибудь преподается студентам и давно вшит во все языки программирования – но заинтересованные люди, которые эту мелочь не знали (например, я не знал, мои друзья не знали), мне кажется, получат удовольствие – когда ознакомятся.

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

Как я написал свой первый классификатор эмоций

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

Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-проекта.

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

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

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

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

Вычислительные выражения: Реализуем Combine

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров882

Вычислительные выражения — поистине неисчерпаемая тема. Мы научились возвращать пустые значения, а теперь нам предстоит разобраться, как возвращать множественные. Скотт Влащин рассказывает, как использовать метод Combine.

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

Дай знать, где ты находишься: как мы разработали навигатор по Эрмитажу

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

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

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

Визуализируй это: как я обучаю джунов и ставлю задачи через диаграммы и графики

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

Привет, меня зовут Сергей, я ведущий разработчик в DDoS-Guard и человек из мемов xkcd, который любит всё экстраполировать, истовый фанат визуализации данных. Диаграммы и графики решают кучу моих проблем с онбордингом джунов и объяснением задачи исполнителям. 

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

Читать далее
Всего голосов 11: ↑12 и ↓-1+13
Комментарии3

Обзор архитектуры Compose с использованием паттерна «координатор»

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

В этой статье рассмотрим, пример реализации архитектуры UI-слоя на Compose, которая основывается на Uni-directional data flow и state hoisting с использованием паттерна «координатор» для навигации. Вдохновением для меня послужила эта публикация, но я решил подробнее развернуть поднятую в ней тему архитектуры Compose и навигации.

Читать далее
Всего голосов 11: ↑12 и ↓-1+13
Комментарии1

Векторные базы данных: простым языком про устройство и принцип работы

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

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

Читать далее
Всего голосов 24: ↑25 и ↓-1+26
Комментарии6

Программирование в среде Scratch для детей: знакомство с платформой

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

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

Читать далее
Всего голосов 5: ↑6.5 и ↓-1.5+8
Комментарии5

Тренды веб-дизайна 2024: погружение, персонализация и инновации

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

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

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Комментарии2

Как писать требования к проекту. Шаблон документации

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

Хабр, привет!

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

Идеальная документация должна выполнять две основные функции...

Читать далее
Всего голосов 9: ↑7.5 и ↓1.5+6
Комментарии7

Чек лист переноса сайта с одного домена на другой

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

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

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

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

Как качественно управлять своим временем (notion шаблон)

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

Всем привет! Хочу поделиться своим опытом планирования жизни, который, возможно, будет полезен для вас.

Читать далее
Всего голосов 4: ↑5.5 и ↓-1.5+7
Комментарии6

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

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

Еще в пандемийные годы стало понятно, что жить без двухфакторки на удаленке, как минимум, рискованно. И хоть большинство приложений и обеспечивают 2FA, все-таки существуют сервисы, для которых защищенный доступ из коробки недоступен. Я Саша Зеленов, архитектор Cloud.ru, и сегодня я поделюсь с вами опытом, как мы настроили у себя двухфакторную аутентификацию для веб-приложений, которые сопротивляются прогрессу. 

Читать дальше
Всего голосов 8: ↑9 и ↓-1+10
Комментарии1

Пункт назначения — Squadus. Наш опыт переезда на альтернативу Microsoft Teams

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

В марте 2024-го рынок встряхнула новость от Microsoft о грядущем отключении доступа к облачным сервисам компании для корпоративных клиентов из России. Оперативно делая бэкапы, одни побежали искать «обходные пути», вторые — подбирать альтернативы продуктам Microsoft. А я решил обратиться к своему опыту работы с отечественными решениями для унифицированных коммуникаций (UC), чтобы снова поделиться им на Хабре :) 

В прошлом году я рассматривал мессенджер eXpress как альтернативу Zoom. Объектом для изучения в сегодняшней статье я выбрал Squadus вендора «МойОфис». Этот мессенджер уже довольно давно позиционируется в рынке как почти полноценная замена MS Teams. Кроме того, у нас в К2Тех был опыт миграции в Squadus из Teams. 

О том, что такое Squadus и как мы на него переезжали, я и расскажу под катом!

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

Как оценивать работу тестировщиков по науке

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

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

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

Эволюция обработки данных: от MapReduce к стриминговому движку

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

Yandex Query Language (YQL) — универсальный декларативный язык запросов к системам хранения и обработки данных, разработанный в Яндексе. А ещё это один из самых нагруженных сервисов: YQL ежедневно обрабатывает около 800 петабайт данных и 600 000 SQL-запросов, и эти показатели постоянно растут. 

Изначально YQL основывался на операциях MapReduce, которые эффективны для больших данных. Но для средних объёмов данных (до 50 Гб, которые составляют около 60% запросов) этот подход оказался неоптимальным, потому что нужно было обмениваться данными между операциями через диск. Поэтому разработчики создали новый более гибкий стриминговый движок, который значительно ускоряет обработку данных за счёт выполнения всех вычислений в памяти.

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

Читать далее
Всего голосов 24: ↑28.5 и ↓-4.5+33
Комментарии13
1
23 ...

Информация

В рейтинге
4 342-я
Откуда
Уфа, Башкортостан(Башкирия), Россия
Дата рождения
Зарегистрирована
Активность