Не одобряю, но хочу поделиться. В статье предлагают улучшить Git Flow:
1️⃣Пилишь ветку как обычно, делаешь коммиты не задумываясь
2️⃣В конце работы над веткой делаешь reset всех коммитов
3️⃣Распределяешь все изменения по коммитам заново, уже красиво
4️⃣Профит
Как по мне, поставленные проблемы высосаны из пальца, и строится практика ради практики. Что думаете?
1️⃣Пилишь ветку как обычно, делаешь коммиты не задумываясь
2️⃣В конце работы над веткой делаешь reset всех коммитов
3️⃣Распределяешь все изменения по коммитам заново, уже красиво
4️⃣Профит
Как по мне, поставленные проблемы высосаны из пальца, и строится практика ради практики. Что думаете?
Render
Git Organized: A Better Git Flow
Learn how to improve your Git workflow and avoid introducing new bugs when reverting commits. Discover strategies for maintaining a clean, efficient Git flow.
👎43💩7👍6😁4
Сбермаркет рассказывает про свою реализацию координаторов с более удобной настройкой анимаций, отслеживаемым жизненным циклом и отслеживанием навигационных событий UIKit.
Хабр
Управляем навигацией в iOS-приложениях. Паттерн координатор от СберМаркета
Стандартный способ настроить навигацию в iOS-приложении — использовать класс UIViewController. Он работает, пока не понадобится добавить новые экраны или поменять их местами. Сложную логику переходов...
👍13💩9🤔5🔥2
Иногда при работе над задачей сталкиваешься с такой штукой, как ментальный блок. По какой-то причине у тебя не получается придумать решение, и ты раз за разом бьешься в одну и ту же стену. В статье предлагается несколько тактик ее преодоления:
1️⃣Декомпозиция на задачи поменьше
2️⃣Визуализация решаемой задачи на бумаге
3️⃣Переключение на другую задачу
4️⃣Переспать, и вернуться на следующий день
1️⃣Декомпозиция на задачи поменьше
2️⃣Визуализация решаемой задачи на бумаге
3️⃣Переключение на другую задачу
4️⃣Переспать, и вернуться на следующий день
Martiancraft
Removing Mental Blocks
Being productive in a software development field means finding ways to remove mental blocks and other obstacles. Learn how our team removes mental blocks we encounter.
👍41💩2🔥1
Начнем понедельник с топового лонгрида о том, почему системы визуального программирования не взлетают, несмотря на то, что концептуально они гораздо лучше отвечают текущим проблемам, чем текстовое программирование.
divan's blog
Rethinking Visual Programming with Go · divan's blog
👍7
Команда, попробовавшая Xcode Cloud, детально рассказывает про устройство сервиса и свой опыт по интеграции его в приложение и процессы.
Medium
Xcode Cloud: Feedback from leboncoin
By Pierre Abi-aad (Lead Engineer iOS)
👍4
Очень классный обзор того, чем программирование под embedded системы отличается от разработки обычных приложений, какие языки сейчас используются для этой задачи, и почему Swift может стать в этой экосистеме сильным конкурентом.
Swift Forums
Introduce embedded development using Swift
Hi everyone! Since @tkremenek said there would be some new workgroups in the Swift community, I want to share my experience in embedded development using Swift. I know this must be very unfamiliar to most of you guys. But the embedded development has been…
👍9
🔥Начинаем текстовый Q&A с Михаилом Рубановым (@akaDuality) про:
- Доступность
- Автотесты
- Многомодульность
- Кайфовый UI
- Пет-проекты
- Как писать статьи и книги
- Личный бренд в IT
💬Как принять участие в обсуждении:
1. Пишите любой вопрос комментарием к этому посту
2. Используйте реплаи при дальнейшем общении
📆Заканчиваем в 20 часов, так что не откладывайте!
- Доступность
- Автотесты
- Многомодульность
- Кайфовый UI
- Пет-проекты
- Как писать статьи и книги
- Личный бренд в IT
💬Как принять участие в обсуждении:
1. Пишите любой вопрос комментарием к этому посту
2. Используйте реплаи при дальнейшем общении
📆Заканчиваем в 20 часов, так что не откладывайте!
🔥13💩1
Даже если в будущих релизах Swift получится ускорить компиляцию проекта в несколько раз, проблема долгого раундтрипа при внесении изменений останется: приложение нужно задеплоить на устройство, открыть и дойти до нужного места. На других платформах с этим помогает справляться hot reload, являющийся одной из продающих фич того же Flutter.
Автор Sourcery заопенсорсил библиотеку Inject, которая дает вам возможность пользоваться хот релоадом и в нативных приложениях. В статье подробно рассказывается, как она работает.
Автор Sourcery заопенсорсил библиотеку Inject, которая дает вам возможность пользоваться хот релоадом и в нативных приложениях. В статье подробно рассказывается, как она работает.
GitHub
GitHub - krzysztofzablocki/Inject: Hot Reloading for Swift applications!
Hot Reloading for Swift applications! . Contribute to krzysztofzablocki/Inject development by creating an account on GitHub.
🔥41👍1
Сертификаты Apple, использовавшиеся для подписи ваших provisioning profiles, сегодня заэкспайрились (экспайриться неожиданно – неотъемлемое свойство любого сертификата). Если вы попробуете заливать приложение на ревью, получите ошибку
ITMS-90165
. Чтобы пофиксить, просто перегенерируйте профили.Twitter
James Ide
Note to iOS developers working on an app for awhile: two Apple certificates used to sign your provisioning profiles expired today. When you try to submit your app for review you'll get an ITMS-90165 error. Fix is to get a new provisioning profile.
👍23🤯15💩11
Представьте себе прямую, описываемую функцией
Джейк Уортон написал статью, в которой прикладывает эту модель к нескольким Android библиотекам и рассуждает, как ее использовать при создании новой библиотеки.
y=mx+b.
Параметр b показывает, насколько далеко от 0 находится место пересечения оси Y, а m – угол наклона. Это – удобная ментальная модель, чтобы оценивать сложность использования различных библиотек, где b – сложность первого старта, m – сложность, возникающая при усложнении кейсов использования.Джейк Уортон написал статью, в которой прикладывает эту модель к нескольким Android библиотекам и рассуждает, как ее использовать при создании новой библиотеки.
Jake Wharton
Slope-intercept library design – Jake Wharton
👍7
Михаил Рубанов, который приходил на днях в наш Q&A, поделился своим опытом продвижения пет-проекта:
📌Предрелизная подготовка (название, иконка, описание, цена)
📌Маркетинг (App Store, свой сайт)
📌Дополнительные активности (статьи, рассылки, твиттер)
📌Предрелизная подготовка (название, иконка, описание, цена)
📌Маркетинг (App Store, свой сайт)
📌Дополнительные активности (статьи, рассылки, твиттер)
Хабр
Разработчик засыпает, просыпается маркетолог: как я приложение продвигал
Когда-то давно я думал, что вот напишу приложение, выложу, а дальше оно как-нибудь само наберёт популярность, взлетит в чарт, принесёт денег. Так бывает, но готовиться нужно к тому, что придётся...
👍20🤮2
Разбираемся, как работает алгоритм merge sort, и как его реализовать на Swift.
Holy Swift
Merge Sort a Classic Algorithm Series in Swift - Holy Swift
Merge sort in Swift. How to create this sort algorithm in Swift and in iOS, learn how to use divide and conquer strategy in Swift.
👍6💩1
Теория разбитых окон гласит – чем больше мелких правонарушений происходит, тем больше вероятность того, что начнут происходить и крупные. Держите небольшое эссе, в котором разбирается, как эта теория может быть применена к разработке софта.
👍12
Расскажите, а как у вас обстоят дела с фриланс-биржами после введения ограничений?
Anonymous Poll
3%
Работал через Upwork, теперь не могу
2%
Работал через Upwork, обошел ограничения
0%
Работал через другие биржи, есть проблемы с доступом
1%
Работал через другие биржи, нет проблем с доступом
73%
Не работал на фриланс-биржах
21%
Я не из России/Белоруссии, меня ограничения не касаются
Разбираемся с тем, как работают слабые ссылки, на нескольких не очевидных примерах.
Benoit Pasquier
Weak self, a story about memory management and closure in Swift
Memory management is a big topic in Swift and iOS development. If there are plenty of tutorials explaining when to use weak self with closure, here is a short story when memory leaks can still happen with it.
👍12🔥3
Давайте вместе узнаем, из чего состоит toolchain уважающего себя iOS разработчика в 2022 году. Каждый день – голосование за лучший инструмент, библиотеку или практику в одной определенной категории. Например, “лучший архитектурный подход”, или “лучший менеджер зависимостей”.
Но сначала – помогите мне собрать список категорий и номинантов в них. Накидайте в форму ваших идей, я их обработаю и потом поделюсь итоговым списком номинаций.
Но сначала – помогите мне собрать список категорий и номинантов в них. Накидайте в форму ваших идей, я их обработаю и потом поделюсь итоговым списком номинаций.
Google Docs
iOS Toolchain 2022: категории и номинанты
Я хочу провести большое голосование за то, какие инструменты, подходы и практики в 2022 считаются топовыми в своих категориях. Для этого мне надо собрать различные категории инструментов и номинантов в них. Примеры:
- Язык (Objective-C, Swift, C++, Kotlin…
- Язык (Objective-C, Swift, C++, Kotlin…
❤16👍12💩10
Разбираться в том, как работают балансировщики нагрузки, может быть полезно не только бэкендерам. Ребята из BuildBuddy, распределенного кэша для Bazel, рассказали, с помощью каких алгоритмов балансировки они решали задачу распределения билдов между агентами.
А если вы захотите погрузиться в тему сильнее, вот отличный выпуск Подлодки про устройство балансировщиков нагрузки и алгоритмы под капотом.
А если вы захотите погрузиться в тему сильнее, вот отличный выпуск Подлодки про устройство балансировщиков нагрузки и алгоритмы под капотом.
www.buildbuddy.io
Distributed Scheduling for Faster Builds | BuildBuddy
The distributed scheduler that powers BuildBuddy remote execution
👍16
Разбор двух модных способов организации навигации: решения от Badoo и библиотеки RouteComposer. Интересно даже не само сравнение, а выбранные автором критерии. Ну и прочитайте отдельно комментарий к статье от автора Route Composer, где он сильно не соглашается с обзором.
Хабр
Обзор решений для навигации в iOS
Всем привет! Меня зовут Тимур, я – iOS разработчик в hh.ru . В этой статье поговорим о фреймворкинге навигации в iOS. Я расскажу кулстори о популярных и не очень решениях и их преимуществах, а еще о...
💩27👏6👍3
NSPersistentCloudKitContainer – доступный с iOS 13 фреймворк для бесшовной синхронизации базы Core Data между устройствами. В статье разбираются не очень хорошо документированные особенности:
📌Отслеживание событий изменения данных
📌Типы и коды ошибок
📌Синхронизация с приложением и компликейшнами на Apple Watch
📌Обновление в бэкграунде
📌Подгрузка новых транзакций
📌Работа с различными экстеншнами
📌Отслеживание событий изменения данных
📌Типы и коды ошибок
📌Синхронизация с приложением и компликейшнами на Apple Watch
📌Обновление в бэкграунде
📌Подгрузка новых транзакций
📌Работа с различными экстеншнами
Crunchy Bagel
General Findings About NSPersistentCloudKitContainer
This article contains our findings when converting Streaks to use NSPersistentCloudKitContainer.
👍25🔥5
Lookin – альтернативный Reveal и Xcode View Debugger инструмент для просмотра и дебага иерархии вьюшек. Главные отличия от альтернатив в том, что он бесплатный и опенсорсный, и в том, что его можно запускать прямо на телефоне. Исходники тут.
GitHub
GitHub - hughkli/Lookin: Free macOS app for iOS view debugging.
Free macOS app for iOS view debugging. Contribute to hughkli/Lookin development by creating an account on GitHub.
🔥37👍5❤2