Инструменты Firebase уже больше десятилетия помогают разработчикам быстрее создавать приложения, начиная с push-уведомлений и аутентификации и заканчивая базой данных Firestore. В этом году на Google I/O было анонсировано, что Firestore теперь поддерживает SQL в форме Data Connect, наконец позволив разработчикам выбирать между NoSQL и SQL.
Читать далееНесмотря на активно развивающийся SaaS‑сегмент рынка и кажущееся стремление компаний использовать облачные ресурсы, отдельные направления IT‑продуктов на рынке продолжают оставаться востребованными крупным бизнесом в виде дистрибуций, разворачиваемых в собственных дата‑центрах (англ. on‑premises) и под собственным контролем.
Программные решения, адаптированные к такому способу поставки, имеют ряд особенностей архитектурного характера, которые влияют на тиражируемость в целом, и должны учитываться на этапе первичного проектирования: топология развёртывания, сайзинг, модульность, интеграции и возможности кастомизации, а также ограничения, накладываемые на прикладное ПО.
В статье рассматриваются некоторые категории архитектурно‑значимых нефункциональных требований, ценность которых неочевидна для конечного функционального заказчика, но неоспорима для удовлетворения бюрократического формализма в лице внутренних ЛНА заказчика (IT, ИБ), варьируемых в широких пределах от заказчика к заказчику, и даются рекомендации по управлению ими с помощью гибких архитектурных принципов.
Читать далееПривет! На связи Елена Платковская. В компании SM Lab я занимаюсь построением процессов и процедур для IT-команд.
Мы работаем по собственной методике. Если совсем коротко, то команды объединены в большие структуры-«поезда», которые «едут» по единым правилам и расписанию.
Читать далееТема преимуществ открытых табличных форматов при работе с озерами данных всё чаще поднимается в среде дата-инженеров. Предполагается, что их использование способно устранить недостатки популярного Apache Hive. Но так ли это на практике?
Меня зовут Иван Биленко, я инженер данных в команде дата-платформы Циан. В этой статье я хочу немного познакомить вас с процессами и стеком внутри нашей платформы, рассказать, почему мы решили попробовать Iceberg, с какими проблемами столкнулись при тестировании и какие преимущества Iceberg может дать тем, кто еще только задумывается о переходе. Дисклеймер: статья носит обзорный характер.
Читать далееКогда я впервые услышал о Data Warehouse (DWH), мне казалось, что это просто большая база данных. Однако, углубившись в тему, я понял, что настоящее хранилище данных должно отвечать множеству требований. Например, оно должно обеспечивать гетерогенность — возможность принимать данные из множества различных и несвязанных систем, что отличает его от классических реляционных или транзакционных баз данных. Оно должно обладать гибкостью и расширяемостью, позволяя добавлять новые источники данных без нарушения работы системы. Также важна историчность — способность хранить изменяющиеся атрибуты, такие как смена фамилии сотрудника. Хранилище должно быть способно обрабатывать огромные объемы данных и при этом обеспечивать высокую скорость обновления, позволяя создавать отчеты на основе актуальной информации.
Эти особенности делают хранилище данных сложной и важной системой, необходимой для бизнеса. В этой статье мы разберем классические подходы к построению DWH, их недостатки, а также рассмотрим современный подход Data Vault 2.0, который решает многие проблемы традиционных архитектур.
Читать далееПодборка книг для мобильных разработчиков на Android на разных уровнях подготовки — от новичков до тех, кто уже уверенно чувствует себя в индустрии. Список составлен на основе книг, которые я читал лично, и литературы, о которой узнал из бесед с разработчиками, с которыми работаю.
Читать далееХотите почувствовать себя сценаристом «Санта-Барбары», который отвечает на вопросы телезрителя, начавшего просмотр с 678912-й серии? Просто пропустите этап создания брифа в работе с клиентом. И тогда вы гарантированно попадете в ситуацию вроде этой:
— А что это за мужчина?
— Сиси.
— В смысле Сиси — это мужское имя? А что другого не было?
— Было, но мне нравится это.
— А почему он лежит?
— Он в коме.
— Почему у людей вокруг начесы и подплечники?
— Потому что 80-е на дворе…
Уже слышится скрежет нервной системы? Так вот, сэкономьте себе нервы, силы, время и просто составьте с клиентом бриф.
ПогрузитьсяКак удивительно молода современная наука, если об этом задуматься! Кажется, слово «галактики» (во множественном числе) было с нами всегда. Но на самом деле прошло всего лишь сто лет с момента открытия, что их много.
Ровно век назад, в ноябре 1924 года американский астроном Эдвин Хаббл объявил, что Андромеда, ранее считавшаяся туманностью, на самом деле другая галактика, а Млечный Путь — лишь одна из многих подобных галактик во Вселенной. Последствия этого открытия трудно переоценить. Расскажем подробней про исторический момент, навсегда изменивший наше представление о себе и мире.
Читать далееВсем привет! Я Максим Монахов, UX-дизайнер из 1ПРОТО. В этой статье я поделюсь результатами нашего совместного с AGIMA исследования о том, как привычки пользователей разных поколений влияют на дизайн и развитие цифровых продуктов.
Как создавать интерфейсы, которые будут отвечать потребностям всех поколений сразу? Возможно ли это вообще, или цифровые продукты скоро придется делить еще и по возрастным критериям? Попробуем выработать стратегии, которые помогут продуктам быть актуальными для всех.
Читать далееВ условиях постоянно растущих киберугроз и увеличивающегося объема данных, компании сталкиваются с необходимостью эффективного управления инцидентами безопасности. Для решения этой проблемы используются инструменты по типу SIEM, SOAR и IRP, а в крупных компаниях, как правило, используют сразу комплекс систем от разных вендоров, формируя эшелонированную защиту от сложных угроз информационной безопасности. Эти решения играют важную роль в построении стратегии киберзащиты компании, эксперты даже скажут, что это те решения безопасности, без которых компании не смогут выжить. Но если разбираться глубже, становится очевидно, что камнем преткновения всех этих систем становится некачественное обогащение, дефицит и замкнутость источников данных (Фиды данных/Feeds), которыми оперируют системы для выявления и реагирования на угрозы внутри периметра организации.
Читать далееСкатерть Улама и тонкая структура простоты чисел .
Очень много больших картинок
Скатерть Улама
( https://ru.wikipedia.org/wiki/Скатерть_Улама https://en.wikipedia.org/wiki/Ulam_spiral ) это очень красивое и наглядное представление структуры простых чисел. Красивая картинка говорит о том, что расположение простых чисел на оси натуральных чисел не случайно. Но вот формулу простую, по которой можно быстро и просто получить следующее простое число еще не придумали.
В данной статье мы тоже исследуем свойства "скатерти Улама", только немного её уплотним. Наша цель исследовать структуру множества простых чисел, их плотность и равномерность расположения на оси натуральных чисел.
Очень много больших картинокSwift был прекрасным языком, но он далеко отошел от своего первоначального видения.
Очень далеко.
В этой статье мы рассмотрим различные виды управления современными языками программирования. Я объясню, в чем именно заключается уникальность диктаторской структуры Swift, и продемонстрирую вам, насколько плохи стали дела.
Читать далееПривет, Хабр и его читатели!
Меня зовут Дарья Четыркина, я программист SQL в IT-компании «Автомакон». Если вы работаете с базами данных в Microsoft SQL Server и хотите, чтобы ваши запросы выполнялись быстро и без перебоев, эта статья для вас. Мы разберем динамический SQL — инструмент, который позволяет создавать гибкие запросы, но при неправильном использовании может замедлить работу системы и даже сделать ее уязвимой.
Предлагаю вместе изучить лучшие приемы оптимизации динамического SQL. Я расскажу, как использовать его с максимальной эффективностью, чтобы ваши запросы не только летали, но и были безопасны, а код легко поддерживался.
Читать далееПродукт нельзя совершенствовать до бесконечности. У него всегда есть точка, после которой предельная полезность достигнута. И после её достижения дальнейшие обновления носят экспериментальный характер и менее востребованы, чем фундаментальный функционал. Расскажу, как понять, что предельная полезность достигнута на примере Power BI.
Читать далееПользоваться общей инфраструктурой Docker очень удобно. Тысячи готовых образов, доступных вам через одну команду в консоли, в любом месте, где есть интернет. Ничего удивительного в том, что это вошло в обиход большого числа разработчиков. Но образы контейнеров занимают много места, и качать некоторые из них довольно долго. Зачастую хочется иметь свой или хотя бы локальный реестр. Да и безопаснее это... Наверное?
Зная, что в Docker private registry отсутствует авторизация, я решил разобраться, как легким способом можно блокировать различные действия для клиентов и разрешать все админам. Мне нужно было ограничить получение какой-либо информации по репозиториям, находящимся в реестре, выгрузку образов из реестра, а также запретить загрузку репозиториев, которые уже существуют в реестре. Начнем с основы основ — загрузки и выгрузки образов с помощью API v2.
Всем все запретить, админам все разрешить!При выборе расходных материалов для домашней и офисной печати важно учитывать не только совместимость с устройством, но и их качество, надежность, а также безопасность для оборудования и окружающей среды. Но экономическая составляющая образует вершину этой пирамиды требований. Потому что оригинальные расходники - это, конечно, хорошо. Но попробуй потом докажи бухгалтерии, почему картридж, пусть и профессиональный, стоил как целый принтер. В этой статье мы рассмотрим, на что стоит обратить внимание при выборе расходных материалов и как сэкономить, не жертвуя качеством печати.
Один из главных вопросов при выборе расходных материалов — это баланс между ценой и качеством. Оригинальные расходники для принтеров всегда стоят дороже, чем их аналоги, но стоит ли за них переплачивать - это вопрос открытый. Компания G&G предлагает продукцию, которая по качеству полностью соответствует OEM-продуктам, но значительно выгоднее по цене.
Читать далееПривет, меня зовут Роман Симановский, я Junior Data Scientist в команде Геоаналитики Альфа-Банка. Сегодня поделюсь опытом того, как мы работаем с пространственными данными, преобразовывая их в гео-признаки. С их помощью мы улучшаем модели машинного обучения, добавляя в них информацию об окружающем мире. На самом деле, это не так уж сложно, поэтому статья будет короткой.
Читать далееС отладчиком нужно как-то взаимодействовать: через текстовый или графический интерфейс. В "оболочке" программы с хорошо отлаженным ядром может оказаться неприятный баг, и пользователю это вряд ли понравится. Любому разработчику не хотелось бы допускать такой ситуации.
Сделать шаг с выходомМаксим Кулагин, руководитель технической поддержки C3D Labs, делится секретами предоставления эффективной технической поддержки и объясняет, как правильно создавать запросы.
Если говорить об отделе технической поддержки в терминах информационных технологий, то он представляет собой некий фронтенд, который принимает запросы пользователей, проводит предварительную обработку и передает данные разработчикам, которых в тех же терминах можно называть «бэкенд». Разработчики прорабатывают запросы, выполняют необходимые действия и возвращают результат.
Давайте рассмотрим, какой путь преодолевает запрос пользователя.
У пользователя возникает некоторая проблема, с которой он не может справиться. Он посылает запрос в техническую поддержку. Начинается обработка присланного запроса. На уровне отдела технической поддержки специалисты пытаются воспроизвести ситуацию, оценивают проблему, определяют, к какому модулю поставляемого ПО относится запрос. Это может быть вопрос, проблема, сообщение об ошибке в поставляемом ПО или просто случай неправильного использования, когда требуется совет от разработчика. Очень часто бывают ситуации, что в запросе есть не все требуемые данные и необходимо запросить недостающее. Иногда без этого невозможно воспроизвести проблему или даже понять, в чем она. Специалист поддержки запрашивает информацию, пользователь отправляет дополнительные данные. Иногда эта переписка происходит достаточно долго, пока все необходимые данные не будут собраны.
Итак, информация получена, проблема воспроизводится, что дальше?
Читать далее