Как донести пользу системного UIKit-a до менеджеров и дизайнеров?
- Сравнить с покупными пельменями.
Покупные пельмени готовятся быстро, их сложно испортить, это дешево и, чаще всего, вкусно.
Или же вы можете решиться приготовить мишленовское блюдо, полдня искать ингредиенты, еще полдня готовить. Будем надеятся, что по итогу блюдо окажется съедобным, не говоря уже о вкусе.
Тоже самое в разработке.
Вы можете построить свой дизайн из блоков, доступных в нативном фреймворке. Этот дизайн не будет восхищать и удивлять пользователей, но будет надежно выполнять свои функции. И разрабатывать дешевле, и поддерживать проще.
Кидай своим дизайнерам - Apple Design Resources.
P.S.: рецепт в комментариях.
#рецепт
- Сравнить с покупными пельменями.
Покупные пельмени готовятся быстро, их сложно испортить, это дешево и, чаще всего, вкусно.
Или же вы можете решиться приготовить мишленовское блюдо, полдня искать ингредиенты, еще полдня готовить. Будем надеятся, что по итогу блюдо окажется съедобным, не говоря уже о вкусе.
Тоже самое в разработке.
Вы можете построить свой дизайн из блоков, доступных в нативном фреймворке. Этот дизайн не будет восхищать и удивлять пользователей, но будет надежно выполнять свои функции. И разрабатывать дешевле, и поддерживать проще.
Кидай своим дизайнерам - Apple Design Resources.
P.S.: рецепт в комментариях.
#рецепт
👍12🔥4🌭3🍌1💘1
Время учить английский!
И учить вместе с чат-ботом Trannoscriptum.
AI-бот может:
- Общаться с тобой на любую тему.
- Предложить фразу для перевода, послушать и разобрать твой голосовой или письменный ответ.
Бот полностью бесплатный.
Если вы искали повода начать учиться - это он!
https://news.1rj.ru/str/trannoscriptum_bot
И учить вместе с чат-ботом Trannoscriptum.
AI-бот может:
- Общаться с тобой на любую тему.
- Предложить фразу для перевода, послушать и разобрать твой голосовой или письменный ответ.
Бот полностью бесплатный.
Если вы искали повода начать учиться - это он!
https://news.1rj.ru/str/trannoscriptum_bot
Telegram
Trannoscriptum
Умный чат-бот для тренировки разговорной речи на английском, французском и немецком 🇬🇧🇩🇪🇫🇷
Нужна помощь? Пишите @issdev
Нужна помощь? Пишите @issdev
🔥17❤2👍2🍓1
Observability в iOS
Об observability в мобилках особо не говорят. Для 99.9% iOS приложений мониторинг заканчивается на использовании AppCenter, реже на подключении крашлитики, яметрики. Да и будем честны, для большинства приложений этого хватает с головой.
Наверняка, найдутся эксперты, которые скажут, что observability - это не просто мониторинг и сбор логов и крашей. Что ж, другого у нас для вас нет.
Не так давно технический менеджер Tinkoff выпустил статью об observability и SRE в их приложениях, советую всем прочитать.
Мы, конечно, выделять отдельную команду под это дело не будем, но на будущее пару мыслей:
- Логировать неуспешное декодирование джейсонов. Как по мне, это самая частая причина большинства багов, которые находят тестировщики. Да, уважаемые бэкендеры, String и Int в JSON - для нас большая разница.
- Собирать метрики по выходу из приложения по экранам. Странно, что у популярных либ нет этого функционала.
Об observability в мобилках особо не говорят. Для 99.9% iOS приложений мониторинг заканчивается на использовании AppCenter, реже на подключении крашлитики, яметрики. Да и будем честны, для большинства приложений этого хватает с головой.
Наверняка, найдутся эксперты, которые скажут, что observability - это не просто мониторинг и сбор логов и крашей. Что ж, другого у нас для вас нет.
Не так давно технический менеджер Tinkoff выпустил статью об observability и SRE в их приложениях, советую всем прочитать.
Мы, конечно, выделять отдельную команду под это дело не будем, но на будущее пару мыслей:
- Логировать неуспешное декодирование джейсонов. Как по мне, это самая частая причина большинства багов, которые находят тестировщики. Да, уважаемые бэкендеры, String и Int в JSON - для нас большая разница.
- Собирать метрики по выходу из приложения по экранам. Странно, что у популярных либ нет этого функционала.
Хабр
Особенности SRE и Observability в мобильных приложениях
Привет! Я Даниэль Халиулин, технический менеджер продукта в Тинькофф. Отвечаю за надежность и производительность нашего основного приложения — мобильного банка. Руковожу двумя одноименными командами,...
🔥16❤2👍1🆒1
Pkl - новый язык от Apple
Он же Pickle. он же "Пикл".
Работает, как генератор из удобного типизированного кода в различные форматы JSON, YAML, Property Lists и языки Java, Kotlin, Swift и Go.
Примеры использования:
- Генерирование конфигов для тулз, сервисов и приложений.
- Runtime генерирование конфигов в тулзах, сервисах и приложениях.
Преимущества: строгая типизация (привет конфигу Тинькофф из прошлого поста), значения по умолчанию, сообщения об ошибках, возможность использования шаблонов и абстракций.
Кстати, буквально в этом месяце обсуждали в команде, как бы нам реализовать удобный для менеджеров, тестировщиков и разработчиков конфиг для UI тестов на Добре. Так что в скором времени ждите еще один пост по пиклу.
Репозиторий и Документация
Он же Pickle. он же "Пикл".
Работает, как генератор из удобного типизированного кода в различные форматы JSON, YAML, Property Lists и языки Java, Kotlin, Swift и Go.
Примеры использования:
- Генерирование конфигов для тулз, сервисов и приложений.
- Runtime генерирование конфигов в тулзах, сервисах и приложениях.
Преимущества: строгая типизация (привет конфигу Тинькофф из прошлого поста), значения по умолчанию, сообщения об ошибках, возможность использования шаблонов и абстракций.
Кстати, буквально в этом месяце обсуждали в команде, как бы нам реализовать удобный для менеджеров, тестировщиков и разработчиков конфиг для UI тестов на Добре. Так что в скором времени ждите еще один пост по пиклу.
Не поддерживается внутри Xcode, но кому сейчас без VS живется? :)
Репозиторий и Документация
GitHub
GitHub - apple/pkl: A configuration as code language with rich validation and tooling.
A configuration as code language with rich validation and tooling. - apple/pkl
🔥11👍3🤔2
This media is not supported in your browser
VIEW IN TELEGRAM
Кастомный UI
Хочется отметить, что я против выпендрежного UI, когда все крутится, вертится, выползает, сворачивается и так далее, по нескольким причинам:
- Не нужно пользователю.
- Дорого и времязатратно в разработке.
- Требует высоких требований к дизайн-системе.
Однако, также бывает, что:
- Дизайнер создаст красивый дизайн, вписывающийся в дизайн-систему.
- Разработчик быстро реализует его.
- Пользователю понравится такой дизайн.
Как по мне, самый оптимальный вариант - это брать готовые решения с реализацией. И вдохновиться можно, и быстро запилить.
Вот парочка популярных ютуб-каналов:
https://www.youtube.com/@Kavsoft
https://www.youtube.com/@jot.commit
Хочется отметить, что я против выпендрежного UI, когда все крутится, вертится, выползает, сворачивается и так далее, по нескольким причинам:
- Не нужно пользователю.
- Дорого и времязатратно в разработке.
- Требует высоких требований к дизайн-системе.
Однако, также бывает, что:
- Дизайнер создаст красивый дизайн, вписывающийся в дизайн-систему.
- Разработчик быстро реализует его.
- Пользователю понравится такой дизайн.
Как по мне, самый оптимальный вариант - это брать готовые решения с реализацией. И вдохновиться можно, и быстро запилить.
Вот парочка популярных ютуб-каналов:
https://www.youtube.com/@Kavsoft
https://www.youtube.com/@jot.commit
🔥11🗿2❤🔥1👨💻1
Статистика 2023 года по написанию тестов
Рад, что в ISS мы тоже внедрили практику написания Unit и UI тестов в наших приложениях!
Как-нибудь расскажем, как у нас это получилось, и с какими трудностями мы столкнулись.
Поэтому, подписывайтесь, чтобы не пропустить!
А вы пишете Unit или UI тесты?
Оригинал: https://www.jetbrains.com/lp/devecosystem-2023/swift-objc/
Рад, что в ISS мы тоже внедрили практику написания Unit и UI тестов в наших приложениях!
А вы пишете Unit или UI тесты?
Оригинал: https://www.jetbrains.com/lp/devecosystem-2023/swift-objc/
❤5🔥4👍3⚡2👏1
Вышел Tuist 4
Что нового:
1. Tuist Cloud - платное серверное расширение с эксклюзивными функции для оптимизации рабочих процессов, таких как тестирование и создание проектов.
2. Новый дефолтный инсталлер Mise.
3. Изменение в Dependencies. Новое API, и, кажется, больше без поддержки Carthage.
4. Документация в Swift DocC.
5. Улучшения API описания проекта.
6.Совершенно новый логотип .
И как раз сегодня мы создаем новый проект для банка! Let's Go!
News + Github
Что нового:
1. Tuist Cloud - платное серверное расширение с эксклюзивными функции для оптимизации рабочих процессов, таких как тестирование и создание проектов.
2. Новый дефолтный инсталлер Mise.
3. Изменение в Dependencies. Новое API, и, кажется, больше без поддержки Carthage.
4. Документация в Swift DocC.
5. Улучшения API описания проекта.
6.
Обещают оставить Tuist бесплатным в целом, и добавлять новые функции в бесплатную версию.
И как раз сегодня мы создаем новый проект для банка! Let's Go!
News + Github
🔥11👍3❤1👏1🍌1
Кажется, мы все дальше от концепции «one-hand».
Экраны все больше, и не надо рассказывать о «Reachability», которое чаще корявит приложение (привет я.музыке), или же пользователь об этом и не знает.
Однако, наша борьба не закончена!
Пока остается хотя бы один разработчик, требующий дизайн и функционал для одной руки. Хотя бы для базовых флоу в приложении.
Ссыль на статью индуса;
Ссыль на медиум;
Ссыль на хабр.
Экраны все больше, и не надо рассказывать о «Reachability», которое чаще корявит приложение (привет я.музыке), или же пользователь об этом и не знает.
Однако, наша борьба не закончена!
Пока остается хотя бы один разработчик, требующий дизайн и функционал для одной руки. Хотя бы для базовых флоу в приложении.
Ссыль на статью индуса;
Ссыль на медиум;
Ссыль на хабр.
🔥7🤔3🤨2✍1🎉1
Разработческая культура
Разработческая культура - это набор ценностей, практик и норм, которые присущи командам разработчиков программного обеспечения. Она определяет способы работы и взаимодействия внутри разработческой команды, а также отношение к процессу разработки и качеству выполняемой работы.
Разработческая культура может включать в себя следующие аспекты:
1. Сотрудничество и командная работа: разработчики работают в команде, обмениваясь идеями, знаниями и опытом, чтобы достичь общих целей проекта.
2. Инновационность и творчество: разработчики поощряются вносить новые идеи, экспериментировать и искать нестандартные решения задач.
3. Качество и профессионализм: разработчики стремятся к созданию высококачественного и надежного программного обеспечения, следуют лучшим практикам разработки и постоянно совершенствуют свои навыки.
4. Открытость и обмен знаниями: разработчики делятся своими знаниями и опытом с коллегами, учатся друг у друга и поддерживают открытую коммуникацию внутри команды.
5. Автоматизация и оптимизация: разработчики стремятся автоматизировать рутинные задачи и оптимизировать процессы разработки, чтобы повысить эффективность своей работы.
6. Постоянное обучение и саморазвитие: разработчики постоянно изучают новые технологии и инструменты, следят за последними трендами в отрасли и развивают свои профессиональные навыки.
И от себя:
7. Чистота и бережность: я всегда вытираю стол перед работой, специальной тряпочкой со средством чищу экран, продуваю пневматическим очистителем клавиатуру от пыли.
Возможно, это шиза... Но работается лучше.
Разработческая культура - это набор ценностей, практик и норм, которые присущи командам разработчиков программного обеспечения. Она определяет способы работы и взаимодействия внутри разработческой команды, а также отношение к процессу разработки и качеству выполняемой работы.
Разработческая культура может включать в себя следующие аспекты:
1. Сотрудничество и командная работа: разработчики работают в команде, обмениваясь идеями, знаниями и опытом, чтобы достичь общих целей проекта.
2. Инновационность и творчество: разработчики поощряются вносить новые идеи, экспериментировать и искать нестандартные решения задач.
3. Качество и профессионализм: разработчики стремятся к созданию высококачественного и надежного программного обеспечения, следуют лучшим практикам разработки и постоянно совершенствуют свои навыки.
4. Открытость и обмен знаниями: разработчики делятся своими знаниями и опытом с коллегами, учатся друг у друга и поддерживают открытую коммуникацию внутри команды.
5. Автоматизация и оптимизация: разработчики стремятся автоматизировать рутинные задачи и оптимизировать процессы разработки, чтобы повысить эффективность своей работы.
6. Постоянное обучение и саморазвитие: разработчики постоянно изучают новые технологии и инструменты, следят за последними трендами в отрасли и развивают свои профессиональные навыки.
И от себя:
7. Чистота и бережность: я всегда вытираю стол перед работой, специальной тряпочкой со средством чищу экран, продуваю пневматическим очистителем клавиатуру от пыли.
Возможно, это шиза... Но работается лучше.
🔥9🗿5❤🔥2🎉1🍌1
Про плюсы вы и так слышали, я расскажу о минусах:
1) Я в них выгляжу кринжово.
2) Очки тяжелые. Мне казалось, что для меня - это мелочь. Но после 20 минут желание сходить в кой-то веки на массаж. А еще горячий душ. И еще раз массаж.
В общем, тяжеловато.
3) Apple Vision Pro - это очки виртуальной реальности, а не дополненной.
Поэтому все окружение - это картинка с камер, и она расплывается.
Для людей с плохим зрением - самое то, я же хотел их снять как можно скорее и посмотреть на реальный мир своими круглыми.
4) В режиме полного погружения (когда не видишь реальность) вестибуляр оправляется в пешее эротическое… Спасибо, что не упал.
5) Vision OS. В ней нет ничего… Вау эффект от перетаскивания экранов прошел где-то через 3 минуты. Приложений особо нет, и не предвидится, жестами пользоваться неудобно, руку все же нужно поднимать.
В общем, как по мне, неюзабильная приблуда.
Тим Кук сказал, что устройство «несет сегодняшние технологии в завтрашний день»!
Что могу сказать я: «Завтрашние технологии все еще отстойные»!
Послезавтра вернусь!
1) Я в них выгляжу кринжово.
2) Очки тяжелые. Мне казалось, что для меня - это мелочь. Но после 20 минут желание сходить в кой-то веки на массаж. А еще горячий душ. И еще раз массаж.
В общем, тяжеловато.
3) Apple Vision Pro - это очки виртуальной реальности, а не дополненной.
Поэтому все окружение - это картинка с камер, и она расплывается.
Для людей с плохим зрением - самое то, я же хотел их снять как можно скорее и посмотреть на реальный мир своими круглыми.
4) В режиме полного погружения (когда не видишь реальность) вестибуляр оправляется в пешее эротическое… Спасибо, что не упал.
5) Vision OS. В ней нет ничего… Вау эффект от перетаскивания экранов прошел где-то через 3 минуты. Приложений особо нет, и не предвидится, жестами пользоваться неудобно, руку все же нужно поднимать.
В общем, как по мне, неюзабильная приблуда.
Тим Кук сказал, что устройство «несет сегодняшние технологии в завтрашний день»!
Что могу сказать я: «Завтрашние технологии все еще отстойные»!
Послезавтра вернусь!
😁9👍3😎2👎1👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Немного красивой анимации от «Aviasales» вам в ленту.
Хотели бы увидеть видео-рубрику «Повторяем дизайн»?
Хотели бы увидеть видео-рубрику «Повторяем дизайн»?
👍13🔥1🍌1🗿1
This media is not supported in your browser
VIEW IN TELEGRAM
Ускоряем написание кода
Как это ни странно, сама скорость написание кода в наименьшей степени влияет на скорость разработки.
И все же, предприимчивый разработчик стремиться максимально упростить свою работу.
Один из способов - использовать code snippets в Xcode.
Code snippet в Xcode - это маленький фрагмент кода, который можно быстро вставить в ваш проект. В Xcode есть несколько встроенных code snippets, и вы также можете создавать собственные. Code snippets могут быть использованы для автоматического создания шаблонов кода, добавления часто используемых конструкций или даже для вставки сложных блоков кода с предопределенными значениями.
Пример на видео: использование сode snippet-а с кодом для документирования.
Как это ни странно, сама скорость написание кода в наименьшей степени влияет на скорость разработки.
И все же, предприимчивый разработчик стремиться максимально упростить свою работу.
Один из способов - использовать code snippets в Xcode.
Code snippet в Xcode - это маленький фрагмент кода, который можно быстро вставить в ваш проект. В Xcode есть несколько встроенных code snippets, и вы также можете создавать собственные. Code snippets могут быть использованы для автоматического создания шаблонов кода, добавления часто используемых конструкций или даже для вставки сложных блоков кода с предопределенными значениями.
Пример на видео: использование сode snippet-а с кодом для документирования.
🔥11⚡2🗿1😎1