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

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Jetpack Compose Navigation в многомодульном проекте

Блог компании Московская Биржа Kotlin *Разработка мобильных приложений *Разработка под Android *

Всем привет! Я на Мосбирже занимаюсь мобильной разработкой под Android. Осенью этого года мы начали разрабатывать приложение для платформы личных финансов Финуслуги и воспользовались возможностью делать UI сразу на Jetpack Compose. Как и всегда, сразу встал вопрос выбора архитектуры многомодульности и механизма навигации. Решение должно быть, с одной стороны, достаточно лаконичным и понятным для новых разработчиков. С другой стороны, оно должно быть масштабируемым, чтобы рост числа и размера модулей не создавал неприятностей, таких как раздражающее времени сборки или частые merge-конфликты.

Читать дальше →
Рейтинг 0
Просмотры 26
Комментарии 0

Новости

Окрашивание изображений

Блог компании NtechLab Обработка изображений *Машинное обучение *

Статья про окрашивание изображений на основе работы Color2Embed: Fast Exemplar-Based Image Colorization using Color Embeddings. Рассмотрим, как переносить цвет с одной картинки на другую с помощью смеси из U-Net и StyleGAN v2.

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

Как я стал «лицензиатом» ZOON. Очередной отрицательный отзыв о “премиум” разводилове zoon

Интернет-маркетинг

Наверное, все знают Zoom — программу для организации видеоконференций, которую разработал умница Эрик Юань из Zoom Video Communications. Но не все знают Zoon — "инновационный комплексный b2b-инструмент для привлечения клиентов и управления репутацией в интернете", которым командует ООО «ЗУН». Сбила с толку фраза, что эта компания прошла экспертизу Фонда "Сколково" (ссылка на источник).

Эй, ребята в Сколково! Вы там что, раздаете свой статус как водительские права? Ваш "резидент", приступая к исполнению договорных обязательств по "управлению репутацией", начал с того, что заменил мои оригинальные сервисные сообщения в интернете на шаблонные, много раз используемые, что мгновенно застопорило SEO-продвижение. Googl допускает только уникальные тексты - это знает любой школьник. И за тот месяц, что я безуспешно пытался найти идиота, давшего это распоряжение, они продолжали действовать в том же духе. И вот результат. Согласно статистике того же Google, мои рейтинги как профессионала упали в Интернете до уровня городской канализации - минус 50% в первый же месяц. А всего за три месяца, которые мне довелось пережить под спудом услуг "сколковкой фирмы", число обращений к известному до этого времени гипнотерапевту снизилось (барабанная дробь) в 3 раза! И это, не считая того, что я подарил ООО "Zoon" в виде предоплаты 100 тысяч настоящих рублей. А самое главное, жаловаться некуда. Оказывается, я подписал не договор, а лицензионное соглашение, которое контрагента ни к чему не обязывает. Естественно, я ни сном, ни духом (все таки "участник "Сколково" с 2020 года"), поэтому подписал предложенную бумагу как итог наших обсуждений ДОГОВОРА. Конечно, меня могут спросить: а где были твои глаза? Ответ прост: глаза всегда видят то, что хочет сознание. Так устроена психика человека, - говорю это как профессиональный гипнотизер. Длительные беседы о ДОГОВОРЕ сформировали мои ожидания таким образом, что я подписывал ДОГОВОР, не придавая значения тому, что передо мной совсем другой по форме документ. Такое бывает. В законе для такого рода случаев даже предусмотрена статья за мошенничество, когда заказчик вводится в заблуждение исполнителем в части существа обязательств и существа услуг. Способ введения именно такой: чтобы заказчик был уверен, что подписывает то, о чем договорились. Юрист, который помогал мне понять суть подписанных мною документов, строго смотрел на меня поверх очков: "Ты ж колдун - сделай так, чтобы у них яйца отсохли". Вы не поверите - я в первый раз пожалел о том, что расхожее мнение о моей работе не соответствуют действительности.
(с) Психолог, гипнотерапевт Геннадий Иванов

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

Как тимлиду обучить распределенную команду работать с Git

Git *1С-Битрикс IT-компании PHP *
Tutorial

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

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

Маленькие «малинки» в крупном дата-центре (часть 4 — автоустановка)

Блог компании Selectel IT-инфраструктура *Разработка на Raspberry Pi *Серверное администрирование *

Это заключительная часть цикла статей, посвященного интеграции одноплатных компьютеров Raspberry Pi 4 в наши дата-центры. Мы рассмотрели, что происходит при загрузке «малинки» с момента включения до загрузки в операционную систему. Создали собственный мини-дистрибутив, который загружается по TFTP-протоколу и работает напрямую из памяти. Поговорили о хуках (hooks) Kea DHCP-сервера, разобрались, как они работают и что нужно для их создания.

Теперь соберем эти знания в цельную картину: зачем нам кастомная опция 224 и как управлять переключением режимов загрузки по сети и с локальной SD-карты.
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 173
Комментарии 0

Как не зарыться в задачах и выстроить работу в команде: наш опыт работы по scrum

Блог компании TalentTech Agile *Управление проектами *Управление разработкой *Машинное обучение *
Recovery mode

Меня зовут Иванов Алексей. Я DS и скрам-мастер в центре ML-экспертизы разработчика HRtech-решений TalentTech. Мы занимаемся обучением моделей для проектов компании. 

Ровно год назад наша команда самоорганизовалась и начала  применять подход SCRUM (будем дальше  — скрам.) Я расскажу о наших внутренних процессах: что произошло, что происходит и, возможно, будет происходить с нами в ближайшем будущем.

Читать далее
Рейтинг 0
Просмотры 128
Комментарии 0

Как я на порядок ускорил переподключение к мастер-узлу в Redis Sentinel

Блог компании Флант Системное администрирование *Серверное администрирование *Администрирование баз данных *

Не так давно, развернув в Kubernetes уже привычный инфраструктурный компонент в виде кластера Redis Sentinel + redis-sentinel-proxy, мы столкнулись с интересными проблемами. При тестировании времени переключения мастера выяснилось, что оно составляет полторы минуты. Это очень долго. 

Расскажу, как получилось ускорить процесс.

Читать далее
Рейтинг 0
Просмотры 142
Комментарии 0

Восстановление старинного Авометра модель 8 Марк II

Блог компании RUVDS.com Производство и разработка электроники *Старое железо DIY или Сделай сам Электроника для начинающих

Когда начинал работать над статьёй "Способы питания электролюминесцентных индикаторов", для наглядности я подбирал наиболее интересный и красивый стрелочный мультиметр. Тогда мне удалось купить весьма стильный, но всё же не самый элегантный ампервольтметр, отечественного производства. Сайт объявлений запомнил мой поиск и начал мне подсовывать и дальше подобные приборы, и в один из дней попался мне он, этот невероятный красавец, за просто смешные деньги. Это был чистокровный старинный британец, а по цене был таким же, как и его отечественный собрат. Хотя даже по фотографиям в объявлении, было ясно, что судьба его изрядно потрепала, и я предполагал, да наверняка он даже не работает. Но желание иметь такого красавца в хозяйстве, хотя бы в интерьере — не оставило мне выбора.

Отменив все дела на вечер, я помчался за данным устройством на другой конец Москвы. И, о чудо, мне удалось успеть и купить его первым. Дальше же предстояла работа по восстановлению или хотя бы приведению в порядок данного аппарата.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 677
Комментарии 3

Навыки ITSM-профессионала

Блог компании ИТ Гильдия Управление проектами *


Машинное обучение, облачные вычисления и интернет вещей меняют подход компаний к работе с клиентами. Использование этих технологий в среде управления ИТ-услугами (ITSM, IT Service Management) помогает организациям устранять ошибки и отслеживать сервисные бизнес-процессы, тем самым повышая общий уровень сервиса. Поэтому с каждым годом компании все больше полагаются на автоматизацию, чат-ботов и облака.
10 навыков, необходимых для достижения успеха в ITSM — в этой статье.
Читать дальше →
Рейтинг 0
Просмотры 130
Комментарии 0

Новый Brave Wallet, встроенный в браузер криптокошелёк без всяких расширений

Блог компании Brave Браузеры Криптовалюты
Перевод

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

Что я могу с ним сделать?
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 225
Комментарии 2

Австралия не Кремниевая долина: почему я вернулся в Москву спустя шесть лет

Блог компании Инфосистемы Джет IT-эмиграция Карьера в IT-индустрии

Я проработал инженером по инфраструктуре в крупной клинике Мельбурна почти шесть лет. И этой весной решил вернуться не только в Россию, но и в ту же компанию, в которой работал до отъезда. Я хочу рассказать о моем опыте, который может быть полезен ИТ-специалистам и особенно инженерам, которые уже собираются в Австралию, или тем, кто еще сомневается, стоит ли вообще уезжать.

Читать далее
Всего голосов 23: ↑21 и ↓2 +19
Просмотры 3.5K
Комментарии 19

Погружение в Helm Package Manager. Часть первая

Блог компании DataArt DevOps *Kubernetes *
Tutorial

Helm — один из самых популярных пакетных менеджеров для Kubernetes. Познакомиться с ним полезно любому DevOps-инженеру и всем, кто сталкивается с задачами деплоя приложений. Эта статья — первый из двух материалов, которые можно вместе можно рассматривать как краткое, но достаточно полное введение в Helm.

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

Как Яндекс делает обычные автомобили беспилотными

Блог компании Яндекс Автомобильные гаджеты Будущее здесь Компьютерное железо Производство и разработка электроники *


Привет, меня зовут Антон Чистяков. Пару лет назад я работал в хелпдеске Яндекса и даже писал здесь про то, как мы придумали вендомат с аксессуарами. Теперь отвечаю за сборку беспилотных автомобилей и роботов-доставщиков. Под катом расскажу, как мы делаем простые машины беспилотными: от момента покупки авто и выбора имени до сборки и калибровки, на которых всё, впрочем, не заканчивается.
Читать дальше →
Всего голосов 27: ↑26 и ↓1 +25
Просмотры 1.9K
Комментарии 11

Серверные бэкапы

Блог компании FirstVDS Системное администрирование *Резервное копирование *Хранение данных *Хранилища данных *
Перевод
Если кибератаки, прогремевшие в этом году по всему миру, чему-то и научили, так это тому, как важны серверные бэкапы и избыточное хранение данных.

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


Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 581
Комментарии 2

DINS SCALA EVENING

Блог компании DINS Scala *

Андрей Обухов из DINS расскажет, что такое Software Transactional Memory. Ахтям Сакаев из компании «Метр квадратный» поделится, как исключить баги на этапе моделирования с использованием ADT. Участие бесплатное, но необходимо зарегистрироваться. Подробности под катом.

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

Как встать на путь sustainability: гендерные квоты и экоофисы

Блог компании *instinctools Экология Будущее здесь IT-компании

Времена, когда целью организации любого бизнеса в IT было извлечение максимальной прибыли, кажется, прошли. Теперь мало хорошо работать и хорошо зарабатывать. От любого стартапа в Европе и США ожидают большего, чем просто внушительной выручки и налогов. Кроме экономических показателей, инвесторы хотят видеть в любом стартапе и предприятии движение в сторону sustainability – сохранения окружающей среды, общественного прогресса и справедливой экономии. 

Читать далее
Всего голосов 19: ↑0 и ↓19 -19
Просмотры 957
Комментарии 15

Настраиваем GitLab Container Registry

Блог компании Timeweb Настройка Linux *Nginx *Git *
Tutorial

В этой статье мы рассмотрим, как настроить реестр образов GitLab Container Registry, находящийся за обратным прокси сервером NGINX. Предполагается, что у вас уже установлен GitLab с помощью пакета Omnibus. Согласно документации, Container Registry можно настроить на том же домене, на котором работает сам GitLab, но в случае работы GitLab за прокси сервером, необходимо завести отдельный домен для реестра образов, чтобы избежать конфликта доменных имен при настройке виртуальных хостов в GitLab Nginx.

Реестр образов будет доступен по адресу: registry.example.com. Добавляем А запись для домена реестра в DNS. Приводим конфиг виртуального хоста на сервере обратного прокси к следующему виду:

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

Тип данных Either как альтернатива выбрасыванию исключений

Блог компании Издательский дом «Питер» Программирование *API *Функциональное программирование *Kotlin *
Перевод

Исключения – это базовый элемент многих языков программирования. Они обычно используются для обработки аномальных или непредусмотренных условий, при устранении которых необходим особый подход, нарушающий нормальный поток задач в приложении. В некоторых языках, например, в C++ или Java, исключения используются повсюду. Но не все языки спроектированы так. В C# или Kotlin нет проверяемых исключений. В других языках, например, Go и Rust, исключений нет вообще.

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

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

Безопасность ПЛК: 13-15) Сетевые интерфейсы и безопасная перезагрузка ПЛК

Информационная безопасность *Программирование *Промышленное программирование *SCADA *Инженерные системы
Перевод
Tutorial

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

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

Определите безопасные состояния для процесса в случае перезапуска ПЛК.

Разбираем рекомендации по безопасному программированию ПЛК, формируем список своих рекомендаций. Всех неравнодушных прошу под кат.

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

Простая система ветровой эрозии на основе частиц

Разработка игр *Алгоритмы *Физика
Перевод

Полный исходный код этого проекта, а также объяснение того, как его использовать и читать, можно найти на Github [здесь]. Проект рендерится при помощи моего собственного [TinyEngine].

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

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

Один из самых хорошо известных и производительных алгоритмов улучшения генерации рельефов на основе шума — это гидравлическая эрозия на основе частиц [перевод на Хабре]. Этот алгоритм чрезвычайно прост и обеспечивает отличные результаты относительно малыми усилиями.

Его результаты убедили меня дополнить эту систему потоками воды и водоёмами, что привело к созданию процедурной гидрологической системы [перевод на Хабре]. Используя упрощённую модель, система успешно передаёт многие эффекты реального мира, поэтому я заинтересовался в дальнейшем исследовании симуляции геоморфологии на основе частиц.

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

Получившаяся система хорошо работает, позволяя моделировать движущиеся осадочные породы, а также сплошные неподвижные препятствия. Она воссоздаёт многие эффекты, наблюдаемые при реальной ветровой эрозии, например, серповидные дюны!
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 483
Комментарии 0