Как из скриншота банковского приложения без интернета достать информацию о кэшбэке для своего приложения?
Читай тут ➡️ ссылка
Читай тут ➡️ ссылка
Хабр
Как я решал задачу получения доступа к данным банковских приложений на iOS
Вы пользуетесь кешбэком, может даже выбираете категории повышенного кешбэка каждый месяц? Когда у вас несколько карт разных банков с кешбэком, становится непросто запомнить, какую...
💯5🤔2
Но я на эту удочку больше не попадусь! Еще недельки две-три спокойно поживу на стабильных, проверенных версиях.
А то начнется, то мак перегревается, то компиляция сломалась в ноль, то больше нельзя держать example app в пути самой библиотеки.
Пс: да, решил купить премиум тг
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple
Sign in to your Apple Account
🔥7
This media is not supported in your browser
VIEW IN TELEGRAM
2UI. Designing Fluid Interfaces
Продолжаю писать о 2UI. Несомненно, 2UI берет за основу общепринятые концепции, в том числе Designing Fluid Interfaces - это концепция, которая фокусируется на создании пользовательских интерфейсов, обеспечивающих плавный, гладкий и непрерывный опыт взаимодействия.
Что делает интерфейсы плавными?
Такие интерфейсы способны реагировать, прерываться и перенаправляться. Вот пример жеста "проведите пальцем, чтобы вернуться домой" на iPhone. Интерфейс немедленно реагирует на ввод данных пользователем, может быть остановлен в любой момент процесса и даже может изменить курс на полпути.
Как начать внедрять к себе Fluid Interfaces?
Поддержка "красивого" дизайна - это человеческий труд и расходы компании. Готовы ли тратить доп. ресурсы, и нужно ли оно вам вообще, вопрос очень индивидуальный.
Если вы попытаетесь внедрить эти идеи "снизу", вполне можете угодить в пропасть между вдохновением и реализацией, разным видением в коллективе.
Вот несколько советов, которые итеративно приучат и вдохновят коллектив:
Для дизайнеров:
- Думайте об интерфейсах как о подвижных средствах выражения, а не как о наборах статичных элементов.
- Учитывайте анимацию и жесты на ранних этапах процесса проектирования. Инструменты верстки, такие как Figma, мощные, но не обеспечивают полной глубины UX от устройства и приложения.
- Привлеките разработчиков, ориентированных на дизайн, которые помогут вам создавать прототипы анимации, жестов и тактильных ощущений.
Для разработчиков:
- Изучаем теорию дизайна: от концепцию вознаграждения за усилия до физики в основе пружинных анимаций. Да-да, именно мы пишем код, именно мы работаем с жестами, скоростью, затуханиями и т.д.
- Смотрим исходники в статьях, повторяем, пробуем.
Ссылки:
1) Мой любимый дизайнерский доклад на WWDC18 Designing Fluid Interfaces.
2) Статья и код: Building Fluid Interfaces и github-fluid-interfaces.
Продолжаю писать о 2UI. Несомненно, 2UI берет за основу общепринятые концепции, в том числе Designing Fluid Interfaces - это концепция, которая фокусируется на создании пользовательских интерфейсов, обеспечивающих плавный, гладкий и непрерывный опыт взаимодействия.
Что делает интерфейсы плавными?
Такие интерфейсы способны реагировать, прерываться и перенаправляться. Вот пример жеста "проведите пальцем, чтобы вернуться домой" на iPhone. Интерфейс немедленно реагирует на ввод данных пользователем, может быть остановлен в любой момент процесса и даже может изменить курс на полпути.
Как начать внедрять к себе Fluid Interfaces?
Поддержка "красивого" дизайна - это человеческий труд и расходы компании. Готовы ли тратить доп. ресурсы, и нужно ли оно вам вообще, вопрос очень индивидуальный.
Если вы попытаетесь внедрить эти идеи "снизу", вполне можете угодить в пропасть между вдохновением и реализацией, разным видением в коллективе.
Вот несколько советов, которые итеративно приучат и вдохновят коллектив:
Для дизайнеров:
- Думайте об интерфейсах как о подвижных средствах выражения, а не как о наборах статичных элементов.
- Учитывайте анимацию и жесты на ранних этапах процесса проектирования. Инструменты верстки, такие как Figma, мощные, но не обеспечивают полной глубины UX от устройства и приложения.
- Привлеките разработчиков, ориентированных на дизайн, которые помогут вам создавать прототипы анимации, жестов и тактильных ощущений.
Для разработчиков:
- Изучаем теорию дизайна: от концепцию вознаграждения за усилия до физики в основе пружинных анимаций. Да-да, именно мы пишем код, именно мы работаем с жестами, скоростью, затуханиями и т.д.
/// Example
extension UISpringTimingParameters {
convenience init(damping: CGFloat, response: CGFloat, initialVelocity: CGVector = .zero) {
let stiffness = pow(2 * .pi / response, 2)
let damp = 4 * .pi * damping / response
self.init(mass: 1, stiffness: stiffness, damping: damp, initialVelocity: initialVelocity)
}
}
- Смотрим исходники в статьях, повторяем, пробуем.
Ссылки:
1) Мой любимый дизайнерский доклад на WWDC18 Designing Fluid Interfaces.
2) Статья и код: Building Fluid Interfaces и github-fluid-interfaces.
🔥22👍11🏆7💯1
Сегодня выступил
Сегодня выступил с видео-воркшопом-подкастом для одного известного канала по iOS разработке
Рассказывал о нашем пути с Tuist и слоеной архитектурой Apps -> Features -> Components -> Dependencies, начинали с систем-дизайна, заканчивали, непосредственно, кодом.
Без подготовки, одним дублем, зато от души😘
Пока, только для подписчиков с бусти, ждем на общедоступных площадках.
Пока сам не смотрел. Ибо что я там не слышал, кого я там не видел?
Получилось, говорят, хорошо! (Или не говорят)🦆
Сегодня выступил с видео-воркшопом-подкастом для одного известного канала по iOS разработке
Рассказывал о нашем пути с Tuist и слоеной архитектурой Apps -> Features -> Components -> Dependencies, начинали с систем-дизайна, заканчивали, непосредственно, кодом.
Без подготовки, одним дублем, зато от души
Пока, только для подписчиков с бусти, ждем на общедоступных площадках.
Пока сам не смотрел. Ибо что я там не слышал, кого я там не видел?
Получилось, говорят, хорошо! (Или не говорят)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11
Media is too big
VIEW IN TELEGRAM
Скопировали UI/UX и сделали лучше, чем у Apple
OPPO презентовала ColorOS 15 – оболочку на базе Android 15, основная ставка которой делается на сверхплавность интерфейса.
Компания заявляет, что ColorOS 15 предлагает первую в индустрии параллельную анимацию, реализованную на движке Aurora Engine. С его помощью все анимации переходов и открытия/закрытия окон могут отрисовываться параллельно и независимо друг от друга, давая непревзойдённый опыт плавности и отзывчивости системы.
Говорят, еще подтянули ИИ, доступный с любого экрана, и новый движок для игр.
Все ли так хорошо?
Во-первых, раскатка новой ОС будет происходить на протяжении полугода, в первую очередь обновятся флагманы, и дальше вниз по цепочке.
Во-вторых, ColorOS работает на смартфонах OPPO и OnePlus, так что это пока событие скорее локальное, нежели новый аргумент за Android в целом.
Ссылки:
中文是什么意思
OPPO презентовала ColorOS 15 – оболочку на базе Android 15, основная ставка которой делается на сверхплавность интерфейса.
Компания заявляет, что ColorOS 15 предлагает первую в индустрии параллельную анимацию, реализованную на движке Aurora Engine. С его помощью все анимации переходов и открытия/закрытия окон могут отрисовываться параллельно и независимо друг от друга, давая непревзойдённый опыт плавности и отзывчивости системы.
Говорят, еще подтянули ИИ, доступный с любого экрана, и новый движок для игр.
Все ли так хорошо?
Во-первых, раскатка новой ОС будет происходить на протяжении полугода, в первую очередь обновятся флагманы, и дальше вниз по цепочке.
Во-вторых, ColorOS работает на смартфонах OPPO и OnePlus, так что это пока событие скорее локальное, нежели новый аргумент за Android в целом.
Конечно, Apple - это далеко уже не просто приятный интерфейс, а большая и продуманная экосистема. Но сегодня андройд обходит вас в UI, а завтра мы с вами пишем на котлине.
Ссылки:
中文是什么意思
🔥9😁1
This media is not supported in your browser
VIEW IN TELEGRAM
А говорят, статьи бесполезны
На днях прочитал статью от коллег из Додо про «баг длиной в полгода»
По итогу, у ребят по большей части баг был на стороне инструмента Apple, который на определенных старых осях закрывал доступ к корзине для пользователей.
Так сегодня рассказывал о кейсе коллегам тестировщикам, и, вдруг, один из них достает тестовый, поживший жизнь, а то и не одну, старый айфон с iOS 15.
И говорит: «Слушай, а у нас тут баг только на этом айфоне…»
Что же, руки на клавы, Xcode сборка в девайс, и вот уже дебажим.
3 строчки, и бага нет.
А всего-то надо было встретиться в кои-то веки в офисе🦧 🐑 🦫
P.S. Весь сюжет с офисом случаен, все герои вымышлены, чаще ходить в офис не буду.
На днях прочитал статью от коллег из Додо про «баг длиной в полгода»
По итогу, у ребят по большей части баг был на стороне инструмента Apple, который на определенных старых осях закрывал доступ к корзине для пользователей.
Так сегодня рассказывал о кейсе коллегам тестировщикам, и, вдруг, один из них достает тестовый, поживший жизнь, а то и не одну, старый айфон с iOS 15.
И говорит: «Слушай, а у нас тут баг только на этом айфоне…»
Что же, руки на клавы, Xcode сборка в девайс, и вот уже дебажим.
3 строчки, и бага нет.
А всего-то надо было встретиться в кои-то веки в офисе
P.S. Весь сюжет с офисом случаен, все герои вымышлены, чаще ходить в офис не буду.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10❤4👍3🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
hh.ru
Вакансия IOS разработчик в Москве, работа в компании Интеллектуальные социальные системы (вакансия в архиве c 20 января 2025)
Зарплата: не указана. Москва. Требуемый опыт: 1–3 года. Проект или разовое задание. Дата публикации: 24.12.2024.
⚡8
Почему все качают тему зумеров, уходящих на обед, и не возвращающихся?
А как на счет миллениалов, тех выгоревших сеньеров, которые молча ливают по середине собеса, когда их заставляют что-то вспомнить или написать, а не сразу предлагают миллион?
🧐
А как на счет миллениалов, тех выгоревших сеньеров, которые молча ливают по середине собеса, когда их заставляют что-то вспомнить или написать, а не сразу предлагают миллион?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁11🔥1🌚1
У нас в ISS вовсю кипит работа над новым большим проектом
Пока все карты раскрывать не буду, но история о том, как написать Яндекс карты с оплатой транспорта и заказом такси тремя с половиной iOS-серами за 5 месяцев и не поседеть. И конечно, сделать лучшее UI/UX/Performance/Business приложение напока_секрет рынок.
Из опыта которого останется на пенсии писать статьи по iOS, от плавнейших анимаций до мульти-сборки приложений на tuist-e под разными бандлами, плистами, конфигами.
А пока, подписывайтесь на блог лучшего в России фотографа-натуралиста, для души CEO & Founder ISS Дмитрия Коха:
Ссылки:
- Блог
Пока все карты раскрывать не буду, но история о том, как написать Яндекс карты с оплатой транспорта и заказом такси тремя с половиной iOS-серами за 5 месяцев и не поседеть. И конечно, сделать лучшее UI/UX/Performance/Business приложение на
Из опыта которого останется на пенсии писать статьи по iOS, от плавнейших анимаций до мульти-сборки приложений на tuist-e под разными бандлами, плистами, конфигами.
А пока, подписывайтесь на блог лучшего в России фотографа-натуралиста, для души CEO & Founder ISS Дмитрия Коха:
Я снимаю и на земле, и под водой, бывал там, куда редко ступает человек, и видел природу в её самом чистом и необузданном виде. Теперь попробую передать эту красоту и вам — через кадры, истории и личный опыт.
Ссылки:
- Блог
🔥15👍3🥰3
Во всех своих проектах на дизайн кладем Human User Interface.
🤣9😁4🥴4🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
Зачем натив, есть же webview
Готов принять ненативную кроссплатформу, нефункциональный натив, но webview - бррр-грр (непонятные звуки проф деформации)
P.S.: Яндекс карты, верните мнестену список рекомендаций, хорош а-б-тестить!
Готов принять ненативную кроссплатформу, нефункциональный натив, но webview - бррр-грр (непонятные звуки проф деформации)
P.S.: Яндекс карты, верните мне
💯11🎃4🤗1
We did it в арабском проде 🐫
Что мы технически прошли:
- Сборка нескольких приложений с разными bundleId через CI из одного проекта, спасибо tuist
- Навигация полностью на route-composer (никакой state навигации, но нам и не надо)
- SwiftUI через UIHostingController (одним словом - боль)
Возможно, расскажем об этом когда-нибудь, либо никогда. 50 на 50
Ссылка
Что мы технически прошли:
- Сборка нескольких приложений с разными bundleId через CI из одного проекта, спасибо tuist
- Навигация полностью на route-composer (никакой state навигации, но нам и не надо)
- SwiftUI через UIHostingController (одним словом - боль)
Возможно, расскажем об этом когда-нибудь, либо никогда. 50 на 50
Ссылка
202🎉13🔥8👍4
Как перейти на Tuist
Так уж вышло, что в нашем небольшом iOS-комьюнити меня считают апологетом Tuist. Насколько это правда и сколько действительно опытных разработчиков, знающих Tuist, нас окружает — мы опустим.
О плюсах Tuist многие уже наслышаны, а следующий вопрос, который возникает после «зачем он вообще нужен», — это «как перейти на Tuist».
Если кратко, вот официальная документация по миграции: Migrate an Xcode project.
Теперь по порядку:
1. Составляем базовый манифест Project.swift.
2. Надеемся на предоставляемый Tuist-ом набор утилит для выгрузки текущих настроек проекта и отдельных таргетов и генерируем файл xcconfig, который и будем использовать для создания проекта.
3. В Project.swift описываем все схемы основного проекта.
4. Переносим таргеты, начиная с самых базовых, корневых или с любых других, которые вам нравятся, ибо у самураев есть только путь, который (скорее всего) будет долгим.
Важно понимать, что все настройки проекта, которые годами врастали в xcodeproj, нужно будет перенести в конфигурацию Tuist-а. При этом желательно ничего не потерять по пути. Как сказано в доке: "Насколько утомительным будет этот процесс, зависит от сложности ваших проектов".
Лично моя боль — Target Membership (ловим файлы по всем таргетам, бррр)
Полезные ссылки:
- Tuist Docs Migrate an Xcode project
- Хабр Tuist: добавляем генерацию проекта в текущее приложение
- Migrating from CocoaPods to Tuist at Playtomic
- Неплохой мини-гайд с фб и крашлитикой
- YouTube App Dev Live Stream — Migrating an iOS App to Tuist
P.S. В ближайшее время поделюсь историей, как и зачем мы создаем несколько приложений из одного туист-проекта, передавая конфигурацию с бандлами, плистами и ресурсами извне, coming soon...
Так уж вышло, что в нашем небольшом iOS-комьюнити меня считают апологетом Tuist. Насколько это правда и сколько действительно опытных разработчиков, знающих Tuist, нас окружает — мы опустим.
О плюсах Tuist многие уже наслышаны, а следующий вопрос, который возникает после «зачем он вообще нужен», — это «как перейти на Tuist».
Если кратко, вот официальная документация по миграции: Migrate an Xcode project.
Теперь по порядку:
1. Составляем базовый манифест Project.swift.
2. Надеемся на предоставляемый Tuist-ом набор утилит для выгрузки текущих настроек проекта и отдельных таргетов и генерируем файл xcconfig, который и будем использовать для создания проекта.
3. В Project.swift описываем все схемы основного проекта.
4. Переносим таргеты, начиная с самых базовых, корневых или с любых других, которые вам нравятся, ибо у самураев есть только путь, который (скорее всего) будет долгим.
Важно понимать, что все настройки проекта, которые годами врастали в xcodeproj, нужно будет перенести в конфигурацию Tuist-а. При этом желательно ничего не потерять по пути. Как сказано в доке: "Насколько утомительным будет этот процесс, зависит от сложности ваших проектов".
Лично моя боль — Target Membership (ловим файлы по всем таргетам, бррр)
Полезные ссылки:
- Tuist Docs Migrate an Xcode project
- Хабр Tuist: добавляем генерацию проекта в текущее приложение
- Migrating from CocoaPods to Tuist at Playtomic
- Неплохой мини-гайд с фб и крашлитикой
- YouTube App Dev Live Stream — Migrating an iOS App to Tuist
P.S. В ближайшее время поделюсь историей, как и зачем мы создаем несколько приложений из одного туист-проекта, передавая конфигурацию с бандлами, плистами и ресурсами извне, coming soon...
tuist migration --help
docs.tuist.dev
Migrate an Xcode project · Migrate · Adoption · Projects · Features · Guides · Tuist
Learn how to migrate an Xcode project to a Tuist project.
🔥14❤2
Самые старые TODO-шки
Как часто вы перекладываете задачи на будущее? Как часто делаете это в коде?
Да, такое случается. Да, это не всегда "рэд флаг".
Главная проблема — это потеря фокуса на этих задачах в workflow команды в Jire или аналогах. Со временем в проекте копится целый «кладбищенский список» комментариев, о которых никто уже не помнит — кто их добавил, какой приоритет, в чем проблема, и какое может быть решение. По итогу, TODO-шки и FIXME-ки превращаются в незаметный археологический тех. долг.
Получается забавная ситуация... Комментарий есть, но реальной пользы никакой — только лишний шум и ощущение неустроенности в проекте.
Более мы не допускаем задачи-комменты: "Либо фикси сейчас, либо заводим задачу."
Вот вам самые забавные TODO-шки с разных проектов, самой старой стукнуло 9 лет, а от других появляется улыбка :)
Я оставил TODO, позже вернусь, доделаю, апрувните
Надо срочно в релиз!
Cейчас не лагает, потом придумаем по другому.
Как часто вы перекладываете задачи на будущее? Как часто делаете это в коде?
Да, такое случается. Да, это не всегда "рэд флаг".
Главная проблема — это потеря фокуса на этих задачах в workflow команды в Jire или аналогах. Со временем в проекте копится целый «кладбищенский список» комментариев, о которых никто уже не помнит — кто их добавил, какой приоритет, в чем проблема, и какое может быть решение. По итогу, TODO-шки и FIXME-ки превращаются в незаметный археологический тех. долг.
Получается забавная ситуация... Комментарий есть, но реальной пользы никакой — только лишний шум и ощущение неустроенности в проекте.
Более мы не допускаем задачи-комменты: "Либо фикси сейчас, либо заводим задачу."
Вот вам самые забавные TODO-шки с разных проектов, самой старой стукнуло 9 лет, а от других появляется улыбка :)
20❤8🔥5 4👏3💯1