Вычислительные выражения — поистине неисчерпаемая тема. Мы научились возвращать пустые значения, а теперь нам предстоит разобраться, как возвращать множественные. Скотт Влащин рассказывает, как использовать метод Combine
.
developer
Дай знать, где ты находишься: как мы разработали навигатор по Эрмитажу
Эрмитаж - это настоящий портал в мир искусства, в котором неподготовленный любитель прекрасного может потеряться и выбиться из сил в попытках найти конкретный экспонат, а возможно и просто выход на улицу. Это не шутки, в Эрмитаже больше 360 залов, в которых расположено около 3 млн экспонатов. Плутать и культурно обогащаться можно бесконечно долго. Поэтому современное приложение для ориентации в пространстве Эрмитажа - это был просто мастхэв 21 века.
Визуализируй это: как я обучаю джунов и ставлю задачи через диаграммы и графики
Привет, меня зовут Сергей, я ведущий разработчик в DDoS-Guard и человек из мемов xkcd, который любит всё экстраполировать, истовый фанат визуализации данных. Диаграммы и графики решают кучу моих проблем с онбордингом джунов и объяснением задачи исполнителям.
В этой статье я расскажу о нескольких не самых стандартных, но очень полезных диаграммах, и покажу на трех примерах, как визуализация данных помогала мне в моей работе.
Обзор архитектуры Compose с использованием паттерна «координатор»
В этой статье рассмотрим, пример реализации архитектуры UI-слоя на Compose, которая основывается на Uni-directional data flow и state hoisting с использованием паттерна «координатор» для навигации. Вдохновением для меня послужила эта публикация, но я решил подробнее развернуть поднятую в ней тему архитектуры Compose и навигации.
Векторные базы данных: простым языком про устройство и принцип работы
Только изучили один инструмент, как сразу же появились новые? Придется разбираться! В статье мы рассмотрим новый тип баз данных, который отлично подходит для ML задач. Пройдем путь от простого вектора до целой рекомендательной системы, пробежимся по основным фишкам и внутреннему устройству. Поймем, а где вообще использовать этот инструмент и посмотрим на векторные базы данных в деле.
Программирование в среде Scratch для детей: знакомство с платформой
Программирование — это не только написание кода, но и способ мышления. Учиться ему лучше как можно раньше. Первые шаги в айти-сфере стоит начинать уже в младшей школе. Но это не значит, что в первом классе ребенок будет писать настоящий код. Для обучения можно использовать платформы с визуальным программированием. Здесь важнее понимание логики и закономерностей.
Тренды веб-дизайна 2024: погружение, персонализация и инновации
Инновационные способы взаимодействия с аудиторией стали неотъемлемой частью веб-дизайна в 2024 году. Интерфейсы онлайн-сервисов впечатляют и вдохновляют пользователя на конкретные действия и покупки. О том, как именно изменится ниша и какими навыками стоит овладеть, чтобы остаться востребованным специалистом, расскажу я, Даша Кропотова, дизайнер интерфейсов Kokoc Group.
Как писать требования к проекту. Шаблон документации
Хабр, привет!
В начале своего пути я далеко не сразу смог понять, кто же такие эти ваши требования, как их писать и как они должны выглядеть? Предлагаю взглянуть на мое видение идеальной доки, покрывающие все аспекты проекта. Данный шаблон охватывает все аспекты проекта: бизнес-анализ, системный анализ и продуктовую аналитику.
Идеальная документация должна выполнять две основные функции...
Чек лист переноса сайта с одного домена на другой
Владельцы и администраторы корпоративных сайтов иногда сталкиваются с необходимостью переноса своего сайта на новый домен. Такая необходимость может возникнуть по ряду причин, включая изменение бренда компании, смену сферы деятельности или обнаружение более подходящего имени для домена.
Однако ошибки в процессе переноса сайта могут серьезно сказаться на его позициях в поисковой выдаче и значительно снизить органический трафик поисковых систем, что, в свою очередь, может повлечь за собой значительные финансовые потери и утрату контакта с целевой аудиторией для корпоративных сайтов.
Как качественно управлять своим временем (notion шаблон)
Всем привет! Хочу поделиться своим опытом планирования жизни, который, возможно, будет полезен для вас.
Как внедрить двухфакторную аутентификацию в веб-приложения, не предусматривающие ее изначально
Еще в пандемийные годы стало понятно, что жить без двухфакторки на удаленке, как минимум, рискованно. И хоть большинство приложений и обеспечивают 2FA, все-таки существуют сервисы, для которых защищенный доступ из коробки недоступен. Я Саша Зеленов, архитектор Cloud.ru, и сегодня я поделюсь с вами опытом, как мы настроили у себя двухфакторную аутентификацию для веб-приложений, которые сопротивляются прогрессу.
Пункт назначения — Squadus. Наш опыт переезда на альтернативу Microsoft Teams
В марте 2024-го рынок встряхнула новость от Microsoft о грядущем отключении доступа к облачным сервисам компании для корпоративных клиентов из России. Оперативно делая бэкапы, одни побежали искать «обходные пути», вторые — подбирать альтернативы продуктам Microsoft. А я решил обратиться к своему опыту работы с отечественными решениями для унифицированных коммуникаций (UC), чтобы снова поделиться им на Хабре :)
В прошлом году я рассматривал мессенджер eXpress как альтернативу Zoom. Объектом для изучения в сегодняшней статье я выбрал Squadus вендора «МойОфис». Этот мессенджер уже довольно давно позиционируется в рынке как почти полноценная замена MS Teams. Кроме того, у нас в К2Тех был опыт миграции в Squadus из Teams.
О том, что такое Squadus и как мы на него переезжали, я и расскажу под катом!
Как оценивать работу тестировщиков по науке
Тестировщик с 50-летним стажем Александр Александров рассказывает про количественное управление процессом тестирования: какие метрики в ИТ-проектах бывают, как можно спрогнозировать количество дефектов в коде и зачем вообще оценивать результаты тестирования по численным KPI.
Эволюция обработки данных: от MapReduce к стриминговому движку
Yandex Query Language (YQL) — универсальный декларативный язык запросов к системам хранения и обработки данных, разработанный в Яндексе. А ещё это один из самых нагруженных сервисов: YQL ежедневно обрабатывает около 800 петабайт данных и 600 000 SQL-запросов, и эти показатели постоянно растут.
Изначально YQL основывался на операциях MapReduce, которые эффективны для больших данных. Но для средних объёмов данных (до 50 Гб, которые составляют около 60% запросов) этот подход оказался неоптимальным, потому что нужно было обмениваться данными между операциями через диск. Поэтому разработчики создали новый более гибкий стриминговый движок, который значительно ускоряет обработку данных за счёт выполнения всех вычислений в памяти.
В этой статье я хочу рассказать о подходах и технологиях в разработке систем для обработки данных на примере YQL. Основное внимание я уделил переходу от MapReduce к стриминговому движку, который обеспечивает более эффективную обработку данных, вмещающихся в память, и который доступен в опенсорсе.
Анимация в веб-интерфейсе
Привет, родные! 😁
Сегодня я хотел бы поделиться с вами интересной темой — анимацией в веб-интерфейсе. Многие из нас, возможно, никогда не задумывались о том, как анимация влияет на пользовательский опыт. Однако, она играет ключевую роль в создании уникального и привлекательного интерфейса, способного улучшить взаимодействие пользователей. Давайте вместе разберемся, что такое анимация в веб-дизайне и какие преимущества она может принести, особенно тем, кто только начинает свой путь в этой области или стоит перед выбором внедрения анимации в свой проект.
Побитовые операции: для чего нужны основы информатики Solidity-разработчику
В этой статье я расскажу о том, как работают побитовые операции и зачем они нужны разработчикам смарт-контрактов. Например, без них не обойтись, если нужно оптимизировать расходы на газ, а иногда эти знания полезны для понимания того, что происходит в таком (оптимизированном) коде.
Но перед тем, как перейти к побитовым операциям, необходимо понять, что такое вообще бит и байт. Так что да, это та самая школьная информатика. Не могу сказать, что в своё время углублялся в эти темы с большим энтузиазмом, и предполагаю, что я такой не один.
В статье мы рассмотрим знаковые и беззнаковые числа, прямой, обратный и дополнительный код, логические вентили, а также базовые побитовые операции и как это применяется в написании смарт-контрактов.
Плэнер — язык логического программирования для ИИ: что из него получилось
Плэнер (Planner) — функционально-логический язык программирования, схожий по своему синтаксису с Лиспом. Функциональная часть языка содержит фактически целиком Лисп в качестве подмножества. При этом его встроенные возможности по символьной обработке значительно шире. А введение в запись нескольких типов скобок (в Лиспе допускаются только круглые скобки) сделало программы гораздо понятнее для чтения.
В свою очередь, логическое программирование — это парадигма программирования, основанная на математической логике, в которой код состоит из логических утверждений и правил вывода.
Nokia N-Gage. Ностальгии пост и сборка эмулятора с играми
Ностальгия – это не только Dendy, Sega и PlayStation, за которыми у каждого геймера 90-х и 00-х было проведено много времени! Очень часто это и любимый мобильник, который выполнял функции мультимедийной системы. И пусть в нулевые телефоны не отличались большими и проработанными проектами с красивой графикой, но всё же существовали устройства, объединяющие в себе два мира – телефонов и игровых приставок. Речь идёт, как вы могли догадаться, про N-Gage, ставший для многих столь любимым благодаря возможности скоротать время в виртуальных мирах, к примеру, с PlayStation.
Удивительный факт, но почти во всём мире попытка компании Nokia побороться с Nintendo на рынке карманных игровых систем была в общем-то не особо замечена, кроме России и некоторых стран СНГ. Тут их новая (на тот момент) линейка устройств N-Gage была с радостью принята и снискала народную любовь. К сожалению, я не был владельцем столь крутой мобилы, поэтому мог прикоснуться к ней, лишь взяв у друзей, но так как поиграть в Tomb Raider, Worms или Colin McRae Rally 2005 хотелось на своём собственном телефоне, приходилось изворачиваться...
Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport
При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств и недостатков. Первоначально единственным вариантом был длинный опрос. Затем в качестве альтернативы появились веб-сокеты — более надёжное решение для двунаправленной коммуникации. Вслед за веб-сокетами появились события, отправляемые сервером (SSE), более простой метод, обеспечивающий однонаправленную связь от сервера к клиенту. Забегая вперёд, сейчас разрабатывается ещё и протокол WebTransport, который может тем более изменить ландшафт этой области, обеспечивая более эффективный и гибкий подход, располагающий к масштабированию. В некоторых нишевых случаях можно присмотреться и к технологии WebRTC, предназначенной для работы с событиями в направлении сервер-клиент.
В этой статье мы подробно разберём данные технологии, сравним их производительность, подчеркнём их достоинства и недостатки, а также порекомендуем, что делать в различных практических случаях, расскажем, как принимать информированные решения при создании веб-приложений реального времени. Эта статья — экстракт моего совокупного опыта, приобретённого в ходе реализации протокола репликации RxDB, обеспечивающего совместимость с различными технологиями серверной части.
Выявляем боли команд с помощью ретро. Шаблоны в подарок
Привет, Я Бохан Дмитрий — руководитель отдела инновационных проектов компании ПГК Диджитал. Сегодня поговорим про ретроспективу, зачем проводить ретро, а самое главное посмотрим с помощью каких игр, можно сделать ретро ярким и незабываемым.
Зачем проводить ретроспективы с командой?
Ретроспективы служат важным механизмом для команд, чтобы задуматься о своей недавней работе и выявлять области для улучшения. Создавая безопасное пространство для открытого обсуждения, ретроспективы побуждают членов команды свободно делиться своими мыслями, проблемами и идеями. Это способствует культуре прозрачности, доверия и сотрудничества в команде. Кроме того, ретроспективы помогают в следующих направлениях:
1. Непрерывное улучшение: определение того, что прошло хорошо, и что можно было бы сделать лучше, позволяет команде постоянно совершенствовать свои процессы и практики.
2. Вовлечение команды: с участие членов команды в процессе принятия решений дает им новые возможности и увеличивает их чувство владения проектом.
3. Решение проблем: выявление проблем и препятствий своевременно не позволяет им расти и сорвать проект.
Инструменты для ретро
Подготовка и проведение эффективных ретроспектив требует некоторых важных инструментов и методов:
Information
- Rating
- 4,336-th
- Location
- Уфа, Башкортостан(Башкирия), Россия
- Date of birth
- Registered
- Activity