Search
Write a publication
Pull to refresh
2
0
Константин @ConstOrVar

Разработчик мобильных приложений

Send message

Git. Скачем между ветками как древесные лягушки

Level of difficultyEasy
Reading time6 min
Views33K

Статей на тему много, но, видимо, недостаточно. Последние 10 лет в 4-х разных компаниях время от времени слышу от коллег:

— Не могу пошарить экран с кодом, у меня другая ветка сейчас.

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

— Стаскивать ветку для просмотра ПР? Это же неудобно, надо "стэшить" изменения, ветку переключать.

Читать далее

Обзор существующих схем теплоснабжения

Reading time7 min
Views6.1K

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

Какие виды систем теплоснабжения бывают?

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

Читать далее

Kotlin Coroutines. Часть 2

Reading time10 min
Views5.9K

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

Итак, начинаем. Сначала кратко расскажу о материале в этой статье. Для разогрева поговорим о скоупе и о том, для чего он вообще нужен, далее перейдем к контексту, там я попробую объяснить сложное на пальцах, и, наконец, затронем к Continuation.

Читать далее

Сумма степеней натурального ряда. Часть 1

Level of difficultyMedium
Reading time4 min
Views14K

Вам наверняка известна история о математике Карле Гауссе. Когда ему было восемь лет, учитель задал его классу задачу посчитать сумму всех натуральных чисел от 1 до 100. Пока остальные дети трудились над последовательным сложением, Гаусс нашел простое и изящное решение. Он заметил, что числа можно сгруппировать в 50 пар с одинаковой суммой и мгновенно получил ответ 50\cdot 101 = 5050.

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

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

Читать далее

Макросы в swift — напишут код за вас, но есть нюанс…

Level of difficultyMedium
Reading time38 min
Views12K

Привет! Меня зовут Настя Ищенко, я — iOS-разработчик в KTS.

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

Читать далее

Алиса ПРО — для мобильного разработчика

Level of difficultyEasy
Reading time9 min
Views4.3K

Всем привет! Меня зовут Сергей, моё основное направление — мобильные приложения, но помимо этого я пристально наблюдаю за тем, что происходит с ИИ.

Давайте попробуем использовать YaGPT в повседневной работе мобильного разработчика

Читать далее

Пробы на роль Архитектора. Акт I: вступление

Level of difficultyMedium
Reading time7 min
Views14K

Я тут наткнулся на старую почту с приглашением на собеседование. С пожелтевшими гифками в подписи и просроченным сургучом сертификатов. Дело давнее, пандемийное, так что, думаю, можно рассказывать. Я один не смотрю на сроки NDA, когда подписываю? На всякий случай стоит обезличить и переделать. Тем более, что бонуса за продвижения бренда нет, а наказание всегда найдётся. Так что у нас тут анонимный клуб найма лиц похожих на архитекторов.

Читать далее

Мобильная разработка за неделю #544 (24 — 30 июня)

Reading time4 min
Views1.9K
В нашей новой еженедельной подборке поиск применения App Clip и небезопасности Синглтона, Инструменты Android-разработчика и победа над техдолгом в RuStore, архитектура кроссплатформенного многомодульного приложения, миллионы за считыватели QR-кодов, как мог бы выглядеть Windows Phone в 2024 и многое другое. Подключайтесь!

Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Unit-тесты в Android для начинающего разработчика

Level of difficultyEasy
Reading time16 min
Views6.4K

Меня зовут Александр Чекунков, я — Android‑разработчик в СБЕРе. Занимаюсь разработкой и поддержкой CSI‑опросов в мобильном приложении «СберБанк Онлайн». Я несу ответственность за функционал, который используют бизнес‑команды для оценки удовлетворённости клиентов.

Часто бывает так, что новый сотрудник, приходя на большой проект, совершенно не знаком с таким понятием как unit‑тестирование. Что это? Как это работает? С чего начать? Такие вопросы часто появляются у начинающих разработчиков.

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

Читать далее

Визуализация данных: четыре простых способа быстро улучшить диаграмму

Reading time6 min
Views10K

Для многих специальностей, будь то бизнес-аналитика, Data Science или геология и геофизика, эффективная визуализация данных вошла в число принципиально важных навыков. Наглядное представление информации, понятное и эстетически привлекательное, может подтолкнуть целевую аудиторию к определенным мыслям или действиям. Хотя на Python создано несколько библиотек визуализации данных, студенты, изучающие этот язык и аналитику данных, часто начинают с Matplotlib.

Команда VK Cloud перевела руководство, как улучшить диаграммы, созданные в Matplotlib. Все показано на реальных примерах.

Читать далее

Подключаем GigaCode к мобильной разработке

Level of difficultyMedium
Reading time8 min
Views13K


Всем привет! С вами Анна Жаркова, руководитель группы разработки в компании Usetech. Сегодня я вам принесла необычный материал. 27 июня 2024 года для сторонних разработчиков открыли и презентовали российскую среду разработки Giga IDE со встроенным ИИ-ассистентом от «Сбера» и «СберТеха». Заявлено, что встроенный в среду ИИ-ассистент GigaCode анализирует контекст, предлагает полные конструкции функций, циклов и других элементов, что позволяет писать код в среднем на 25% быстрее. Ассистент поддерживает как автокомплит кода, так и интеллектуальные подсказки для ввода, генерацию кода для поддерживаемых язык. Также его можно использовать для выполнения разных команд.

Мы посмотрим, как подключить, настроить и применить GigaCode AI к мобильной разработке.
Для начала нам потребуется скачать специальную IDE GigaCode . Нам предложит перейти на ресурс GitVerse (аналоги GitHub, полностью совместим с Git), где потребуется создать аккаунт и авторизоваться через СберID:


Читать дальше →

Android: form builder на старых добрых View

Level of difficultyMedium
Reading time8 min
Views1.1K

Привет всем! Хочу поделится идеей создания form builder-а, которую я реализовал некоторое время назад.

В приложении я писал модуль, отвечающий за платежи. По предварительным расчетам модуль должен был поддерживать более 300 платежей, каждый платеж приблизительно 10 экранов, т.е. это более 3000 различных экранов. Я тогда не использовал jetpack compose и от мысли, что мне придется написать огромное количество “View-based layouts” xml файлов (а потом их рефакторить и поддерживать) мне становилось как-то не по себе.

Мне предложили сделать form builder, который позволял бы легко и в декларативной манере добавлять новые экраны, не плодить огромное количество однотипных файлов и легко вносить изменения. Конечно jetpack compose позволяет достичь всего этого из коробки, но бывает, что по тем или иным причинам вы остаетесь на старом добром View UI и идея какого-либо builder-а может быть для вас актуальна.

Итак первое, что мне было нужно – это не плодить xml файлы тысячами. В идеале, хорошо бы иметь один общий файл формы и наполнять его различным содержимым. В моем случае формы были достаточно похожи друг на друга: набор ограниченного числа UI элементов и внизу формы кнопка типа “submit form” (иногда с какими-то пояснениями / ссылками под ней). Решил использовать RecyclerView, в который можно было динамически вставлять нужное количество элементов. Как-то так выглядел xml файл формы:

Читать далее

Saint HighLoad++ 2024. Заметки путешественника

Level of difficultyEasy
Reading time7 min
Views3.1K

"Работает? Не трогай!" Но только не в HighLoad! Расти нужно постоянно. Всё менять и переделывать. Но как? И с помощью каких практик? А может и так сойдёт? Поехал искать ответ на Saint HighLoad++.

Читать далее

Как в Google выполняют ревью кода

Level of difficultyEasy
Reading time6 min
Views17K

Critique и Gerrit

У Google есть два собственных инструмента для ревью кода: Critique, используемый большинством инженеров, и Gerrit, — опенсорсный, который продолжают применять в публичных проектах.

(Вы можете сами поэкспериментировать с Gerrit в опенсорсных репозиториях Chromium и Android.)

Дэшборды

Когда инженеры логинятся с утра или когда устраивают перерыв для ревью пул-реквестов, внутри Google называемых change list, или CL, и в Critique, и в Gerrit они работают с дэшбордами, в которых можно легко вкратце просмотреть все актуальные изменения (это похоже на окно пул-реквестов репозитория GitHub, только более сложное и информационно насыщенное).

В дэшборде Gerrit есть единичный поиск, извлекающий такую информацию, как размер изменения и более подробные сведения о статусе CL (три столбца справа).

Читать далее

Ноутбуки становится все сложнее ремонтировать. Но почему?

Reading time3 min
Views29K

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

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

Самодельные элементы питания

Level of difficultyMedium
Reading time10 min
Views13K
Картинка Frimufilms, Freepik

Представим, что нам нужен источник питания, а никаких иных возможностей для получения электрического тока, кроме химических элементов, у нас под рукой нет…

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

Примечание: здесь и далее мы будем говорить в основном о гальванических элементах питания.
Читать дальше →

Современные способы запуска фоновой работы в Android

Level of difficultyMedium
Reading time18 min
Views9.3K

На протяжении нескольких лет каждый релиз новой версии Android вводит ограничения на существующие API и новые API для запуска работа в фоне в зависимости от её типа. Я собрал все актуальные способы запуска для Android и рассказываю когда что стоит выбирать: WorkManager, Service или что-то другое

Читать далее

Основы теории вероятностей для будущих программистов и дата-аналитиков

Level of difficultyMedium
Reading time13 min
Views18K

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

Вместе с Ильей Котовым, специалистом по Data Science в МТС Big Data, разбираемся в основных понятиях теории вероятностей и рассказываем, где и как ее используют. 

Читать далее

Как американская коррупция превратила физика-ядерщика в быдло-кодера

Level of difficultyEasy
Reading time17 min
Views136K

Это история из цикла «как войти в IT», написанная старпером, ветераном броуновского движения, который помнит динозавров. Поэтому его опыт вхождения в ИТ никому не пригодится, но представляет интерес с точки зрения истории.  

Также поделюсь своим мыслями об интерфейсе инженерного ПО. Участвуя в разработках различного ПО, предназначенного для ускорения разработки сложных систем, периодически приходится выслушивать жалобы от новых пользователей на «кривой и устаревший» интерфейс ПО. Однако инженеры, погруженные в проблемы проектирования реальных железок, вообще не задают нам таких вопросов, либо потому, что уже искривили свои руки о кривой интерфейс, либо им это вообще неважно. Более того, есть два примера, когда реальные высокопрофессиональные инженеры в своей области предъявляли претензии обратного свойства, и первая версия кривая версия GUI была удобнее, а вот улучшения делали какие-то полупокеры. 

К написанию данного текста меня подтолкнула беседа с одним из крутых разрабов из «жирной» конторы, с которым мы пересеклись на яхте в Средиземном море. Узнав, что я тоже из Бауманки, и у меня свой бизнес, он заинтересовался и выспрашивал. Как я смог начать бизнес на софте, почему не пошел в большую контору, типа Yandex, Сбер и прочие. У него тоже знакомство с софтом началось как создание собственной разработки по анализу результатов металлургических испытаний в лаборатории, но закончилось работой прогером по найму. Попивая вино на яхте где-то между Турцией и Грецией в 2023 году, он предположил, что, возможно, если бы он продолжал писать софт для металлургических исследований, то, наверное, сейчас мог плавать на своей яхте, а не арендованной, и не около Турции, а на Карибах (но это не точно). А поскольку фарш невозможно провернуть назад, я решил описать свою историю успеха, так как она забавна и поучительна.

Читать далее

Как подготовиться к собеседованию начинающему сетевому инженеру? Базовые знания

Level of difficultyEasy
Reading time10 min
Views22K


Приветствую, коллеги! Меня зовут ProstoKirReal, и я сетевой инженер.

Мир информационных технологий часто объединяют одним словом — IT. Когда знакомые меня спрашивают, кем я работаю, я всегда переспрашиваю: вам проще объяснить или сложнее? Всегда выбирают проще, и приходится говорить, что я айтишник.

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

Как подготовиться к собеседованию


Что нужно знать перед собеседованием? Каким направлениям нужно уделить больше времени и внимания для изучения, а что можно опустить? Я постараюсь ответить хотя бы на часть этих вопросов, так как в сетевом ремесле много направлений со своими особенностями.

На собеседовании на должность сетевого инженера могут задавать различные вопросы, касающиеся как технических знаний, так и личных качеств и опыта работы. Но если у нас нет опыта или он минимальный, то что мы должны в первую очередь знать?
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity