Перевел занятную историю про разработчика, которого уволили за работу над сторонними проектами на работе. Выглядит она больше мифической, но все же нельзя не напомнить основные ее постулаты. Согласно закону, работодатель будет владеть ваше интеллектуальной собственностью если:
• Вы используете ресурсы компании
• Используете корпоративный компьютер
• Мобильный телефон компании
• Офисное помещение компании
• Время также принадлежит компании
Видели "Кремниевую долину"? Вот то-то и оно. А вы работаете над сторонними проектами на работе?
Разработка
• Как Junior-разработчика уволили и оштрафовали за работу над сторонними проектами в рабочее время
• Вакансий для IT-специалистов начального уровня стало меньше на 62%
• Loopin помогает повысить продуктивность митингов
• The Open Mainframe Project выпустил обучающий курс по COBOL
• Все приложения VK удалили из App Store
• Как мы научились учитывать перепады высот по геокоординатам в мобильном приложении
• Что такое Quality Gates?
• The Art of the Error Message
• What we learned after I deleted the main production database by mistake
iOS
• DVIA-v2: чертовски уязвимое iOS-приложение
• Asychronous Flow Kit — Objective-C тулкит для асинхронных операций
• Логи в iOS, эпизод 1: os_log
• SwiftUI Lists Are Broken And Can’t Be Fixed
• Swift Combine: Understanding Publisher-Subscriber Pattern in 2 seconds
• How to Create Custom Header & Footer Using UIHostingConfiguration
Android
• Jetpack compose ViewModel decoupling mechanism: Wireless ViewMode
• A Brief History of Android: Founding, Evolution & Industry Impact
• Kotlin: What are the differences between lateinit and Delegates.notNull?
• New Android Logcat: Top 5 features
Кроссплатформа
• Расплывающаяся менюшка
• Dynamically sized, animated carousel in Flutter
• Build a Collaborative Pixel Art App With Flutter and Firebase
• Вы используете ресурсы компании
• Используете корпоративный компьютер
• Мобильный телефон компании
• Офисное помещение компании
• Время также принадлежит компании
Видели "Кремниевую долину"? Вот то-то и оно. А вы работаете над сторонними проектами на работе?
Разработка
• Как Junior-разработчика уволили и оштрафовали за работу над сторонними проектами в рабочее время
• Вакансий для IT-специалистов начального уровня стало меньше на 62%
• Loopin помогает повысить продуктивность митингов
• The Open Mainframe Project выпустил обучающий курс по COBOL
• Все приложения VK удалили из App Store
• Как мы научились учитывать перепады высот по геокоординатам в мобильном приложении
• Что такое Quality Gates?
• The Art of the Error Message
• What we learned after I deleted the main production database by mistake
iOS
• DVIA-v2: чертовски уязвимое iOS-приложение
• Asychronous Flow Kit — Objective-C тулкит для асинхронных операций
• Логи в iOS, эпизод 1: os_log
• SwiftUI Lists Are Broken And Can’t Be Fixed
• Swift Combine: Understanding Publisher-Subscriber Pattern in 2 seconds
• How to Create Custom Header & Footer Using UIHostingConfiguration
Android
• Jetpack compose ViewModel decoupling mechanism: Wireless ViewMode
• A Brief History of Android: Founding, Evolution & Industry Impact
• Kotlin: What are the differences between lateinit and Delegates.notNull?
• New Android Logcat: Top 5 features
Кроссплатформа
• Расплывающаяся менюшка
• Dynamically sized, animated carousel in Flutter
• Build a Collaborative Pixel Art App With Flutter and Firebase
AppTractor
Как Junior-разработчика уволили и оштрафовали за работу над сторонними проектами в рабочее время
Давайте поговорим о хорошем и плохом поведении разработчиков.
👍2
Работаете над сторонними проектами на работе?
Anonymous Poll
16%
Постоянно
30%
Иногда
39%
Никогда
14%
Я работодатель, вычислю всех по IP
👍2
Сложности для одних - возможности для других.
Проблема: в настоящее время Instagram* превратился в помойку и пользователи недовольны этим. Компания пытается втиснуть в приложение все и сразу - Reels, Remixes, алгоритмические рекомендации, рекламу, NFT и т.п.
Решение: The OG App - фиды Instagram без рекламы и рекомендаций, но с некоторыми интересными функциями, заточенными на получение адекватной и интересной пользователю информации.
Результат: получили 1 миллион долларов в виде предварительного раунда финансирования.
Проблема: в настоящее время Instagram* превратился в помойку и пользователи недовольны этим. Компания пытается втиснуть в приложение все и сразу - Reels, Remixes, алгоритмические рекомендации, рекламу, NFT и т.п.
Решение: The OG App - фиды Instagram без рекламы и рекомендаций, но с некоторыми интересными функциями, заточенными на получение адекватной и интересной пользователю информации.
Результат: получили 1 миллион долларов в виде предварительного раунда финансирования.
👍7❤1
ASO и платный UA лучше работают в совокупности. Лишь сочетание этих двух элементов эффективно увеличивает рост вашего мобильного приложения и снижает затраты на привлечение клиентов.
Завтра, в четверг 29 сентября в 11:00 по центральноевропейскому времени, присоединяйтесь к вебинару SocialPeta, App Radar и Udonis. На нем расскажут, как совместить ASO и платный UA для успешного роста приложений:
• KPI и показатели конверсии – на чем сосредоточиться в ASO+ASA?
• Google Play, Apple App Store, Meta, TikTok и реклама в них
• Фреймворк непрерывного роста
• Обзор различных мобильных рынков
• Рекламные бенчмарки (CPI, CPM, CPC и т.д.) в различных регионах.
• Практический пример: как популярные игры/приложения завоевывают рынок
• Ключевые факторы успеха мобильной рекламы
• Стратегии UA, воронка, метрики для каждого этапа
• Бенчмарки для каждого этапа воронки
Язык вебинара - английский. Подробности и бесплатная регистрация:
https://bit.ly/3RyY7IB
Завтра, в четверг 29 сентября в 11:00 по центральноевропейскому времени, присоединяйтесь к вебинару SocialPeta, App Radar и Udonis. На нем расскажут, как совместить ASO и платный UA для успешного роста приложений:
• KPI и показатели конверсии – на чем сосредоточиться в ASO+ASA?
• Google Play, Apple App Store, Meta, TikTok и реклама в них
• Фреймворк непрерывного роста
• Обзор различных мобильных рынков
• Рекламные бенчмарки (CPI, CPM, CPC и т.д.) в различных регионах.
• Практический пример: как популярные игры/приложения завоевывают рынок
• Ключевые факторы успеха мобильной рекламы
• Стратегии UA, воронка, метрики для каждого этапа
• Бенчмарки для каждого этапа воронки
Язык вебинара - английский. Подробности и бесплатная регистрация:
https://bit.ly/3RyY7IB
🔥9
Отдельно уже писать не стал, но Apple сегодня подтвердила, что VK из App Store удалили из-за санкций. Говорят, что приложения VK продвигаются компанией (“Газпром-медиа”), в которой большинство управленцев и владельцев попали под санкции правительства Великобритании. Можно предположить, что сейчас и Apple, как и Google, оштрафуют на ахулиард миллиардов. Правда, собственности у Apple в России, насколько я понимаю, особо нет и банкротиться перед "уходом" даже не придется.
Разработка
• Как эффективно продвигать финансовые продукты на myTarget — кейс «Тинькофф Инвестиции» и Rocket10
• The OG App — Instagram* без рекламы и рекомендаций
• Wireframes в разработке: особенности и преимущества
• Мобильное ТОРО: ускоряем ремонты и бережем лес
• 30 knowledge base tools for developers in 2022
• Amazon Software Engineer Interview Handbook (2022)
• UI/UX case study : Wave App
iOS
• Stage Manager заработал на старых iPad
• История Goose Maps, первых автономных офлайн карт для Apple Watch
• How To Create Interactive Maps Using SwiftUI
• Integrate SwiftLint to the iOS project
• Using Sequence Function to Solve Math Problem in Swift
• Build Time Optimizations (Xcode)
Android
• Google Play Store оптимизировали для «не телефонов»
• Travel: планирование путешествий на Compose
• How To Replace The Standard Crash Dialog With A Custom Error Screen?
• Optimize for Android Go : Lessons from Google apps
• Getting Dynamic Notch On Android
• Understanding Google Play Billing Library v5.0
• My Mistake as an Android Developer, which I do not want others to make
Кроссплатформа
• Flutter: Настройка тем приложения
• An iOS purist thrown into Flutter
Вакансия дня
• Middle/Senior Android-разработчик в Whoosh
Разработка
• Как эффективно продвигать финансовые продукты на myTarget — кейс «Тинькофф Инвестиции» и Rocket10
• The OG App — Instagram* без рекламы и рекомендаций
• Wireframes в разработке: особенности и преимущества
• Мобильное ТОРО: ускоряем ремонты и бережем лес
• 30 knowledge base tools for developers in 2022
• Amazon Software Engineer Interview Handbook (2022)
• UI/UX case study : Wave App
iOS
• Stage Manager заработал на старых iPad
• История Goose Maps, первых автономных офлайн карт для Apple Watch
• How To Create Interactive Maps Using SwiftUI
• Integrate SwiftLint to the iOS project
• Using Sequence Function to Solve Math Problem in Swift
• Build Time Optimizations (Xcode)
Android
• Google Play Store оптимизировали для «не телефонов»
• Travel: планирование путешествий на Compose
• How To Replace The Standard Crash Dialog With A Custom Error Screen?
• Optimize for Android Go : Lessons from Google apps
• Getting Dynamic Notch On Android
• Understanding Google Play Billing Library v5.0
• My Mistake as an Android Developer, which I do not want others to make
Кроссплатформа
• Flutter: Настройка тем приложения
• An iOS purist thrown into Flutter
Вакансия дня
• Middle/Senior Android-разработчик в Whoosh
AppTractor
Как эффективно продвигать финансовые продукты на myTarget — кейс «Тинькофф Инвестиции» и Rocket10
Глубокое погружение в проект, хорошее понимание воронки продаж внутри приложения, проактивность команды агентства, постоянное взаимодействие с командой клиента и общая готовность к экспериментам определенно приносят свои плоды.
👍2😁2
В ZenHub исследовали счастье разработчиков. Помимо прочего спрашивали, что больше всего мешает продуктивной работе разработчиков. Ключевые ответы - меняющиеся требования, ожидание обратной связи, неясные или меняющиеся сроки сдачи проектов, сложности в совместной работе, устаревшие инструменты разработчик, недостаток знаний или навыков в команде.
И в комментариях у нас написали, и с утра еще новости были - то самое The OG App (“более лучший” Instagram без рекламы, шортов и рекомендаций) официально выпилили из App Store. Apple объясняет это вольным обращением с данными пользователей. Самое веселье в том, что Facebook забанил личные страниц всей команды. Не страницу проекта - личные аккаунты. Месть его была страшна. Как написал Бобук, "Facebook придется регулировать, потому что он уже давно стал не просто опциональным продуктом, для многих Facebook это такая же инфраструктура, как электричество в розетке".
Разработка, аналитика, дизайн
• The OG App удалили из App Store
• Все видео Mobius 2022 Spring
• RuStore стал первым по аудитории среди отечественных магазинов приложений
• «Счастье разработчиков 2022» — отчет ZenHub
• Когда тестирование выпало из DevOps, и как его туда вернуть
• Designing for inclusivity with WhatsApp’s product designers
• Keep your views separate
• How we reduced our annual server costs by 80% — from $1M to $200k — by moving away from AWS
iOS
• DIFlowLayout: поток subview для SwiftUI
• How to Use SwiftUI Table and Charts to Display Housing Data
• SwiftLint - iOS Apps Code Inspection
Android
• Как заменить стандартное окно сбоя своим экраном ошибки
• На твой телефон пришло новое сообщение
• Kotlin 1.7.20 Released
• ViewLifecycleLazy and other ways to avoid View memory leaks in Android Fragments
• 7 Useful Android Libraries You Should Use in Your Next Project
Кроссплатформа
• Why haven’t PWAs killed native apps yet?
• Roadmap to becoming a Flutter developer
Вакансия дня
• Junior iOS-разработчик в Sixhands
Разработка, аналитика, дизайн
• The OG App удалили из App Store
• Все видео Mobius 2022 Spring
• RuStore стал первым по аудитории среди отечественных магазинов приложений
• «Счастье разработчиков 2022» — отчет ZenHub
• Когда тестирование выпало из DevOps, и как его туда вернуть
• Designing for inclusivity with WhatsApp’s product designers
• Keep your views separate
• How we reduced our annual server costs by 80% — from $1M to $200k — by moving away from AWS
iOS
• DIFlowLayout: поток subview для SwiftUI
• How to Use SwiftUI Table and Charts to Display Housing Data
• SwiftLint - iOS Apps Code Inspection
Android
• Как заменить стандартное окно сбоя своим экраном ошибки
• На твой телефон пришло новое сообщение
• Kotlin 1.7.20 Released
• ViewLifecycleLazy and other ways to avoid View memory leaks in Android Fragments
• 7 Useful Android Libraries You Should Use in Your Next Project
Кроссплатформа
• Why haven’t PWAs killed native apps yet?
• Roadmap to becoming a Flutter developer
Вакансия дня
• Junior iOS-разработчик в Sixhands
AppTractor
The OG App удалили из App Store
Авторы говорят, что продолжат бороться за возвращение OG на iOS.
👍4
Awesome Scalability - обновляемый организованный список чтения для создания масштабируемых, надежных и производительных систем. Концепции объясняются в статьях лучших инженеров и в заслуживающих доверия ссылках. Тематические исследования взяты из проверенных систем, которые обслуживают миллионы и миллиарды пользователей.
Разделы:
• Принципы
• Масштабируемость
• Доступность
• Стабильность
• Производительность
• Интеллектуальность
• Архитектура
• Интервью
• Организация
• Разговоры
• Книги
Awesome Scalability на GitHub: https://github.com/binhnguyennus/awesome-scalability
Платформа: архитектура
⭐️: 41K
А еще сегодня в моем другом канале AppFiles был Slack-Anti-Delete - патч, который сохраняет удаленные сообщения.
Разделы:
• Принципы
• Масштабируемость
• Доступность
• Стабильность
• Производительность
• Интеллектуальность
• Архитектура
• Интервью
• Организация
• Разговоры
• Книги
Awesome Scalability на GitHub: https://github.com/binhnguyennus/awesome-scalability
Платформа: архитектура
⭐️: 41K
А еще сегодня в моем другом канале AppFiles был Slack-Anti-Delete - патч, который сохраняет удаленные сообщения.
👍5
Новый большой еженедельный дайджест (вариант в Телеграф) - все 102 материала за неделю. По возможности поставьте 👍, поделитесь с коллегами и в соцсетях, поддержите наш канал на Boosty. Как говорил Дональд Кнут, "помните, что обычно есть решение проще и быстрее того, что первым приходит вам в голову". Прочитайте дайджест, примите первые идеи и реализуйте следующие.
👍24
По данным Sensor Tower Store, в третьем квартале 2022 года мировые потребительские расходы на покупки в приложениях, премиальные приложения и подписки в App Store и Google Play снизились на 4.8% по сравнению с прошлым годом и составили 31.6 млрд долларов. Количество установок также снизилось по сравнению с прошлым годом, хотя и не так резко - на 1% в годовом исчислении до 35.3 миллиарда. В App Store доходы издателей снизились на 2.3%, в Google Play - на 9.6%. Установки соответственно выросли на 3.8% и упали на 2.2%.
Тут с мест докладывают о падении спроса на всяческие курсы и вроде как “это будет первый год в истории российского рынка, когда отрасль покажет не рост, а падение”. С одной стороны, конечно, во времена могилизации (С) не до обучения, а с другой - в кризис самое оно поучить что-нибудь новое. Как вы - учите что-нибудь сейчас?
Разработка
• Спрос на обучающие курсы для взрослых упал на 10–30%
• Canva становится одним из самых зарабатывающих приложений в США
• Telegram вдвое снизил стоимость подписки в Индии
• Google Japan показал клавиатуру в виде палки
• Доходы рынка приложений в 3 квартале снизились на 5%
• Stark: решение проблем с доступностью
• Awesome Scalability: список чтения по масштабируемости систем
• Как победить выгорание, синдром самозванца и прокраситанцию: советы IT психолога
• Podlodka #287: стейблкойны
• Epic Games и Autodesk привносят 3D в архитектуру и инженерию
• Meta впервые в истории сокращает персонал
• SAD (Slack-Anti-Delete): сохранение удаленных сообщений в Slack
• Facts about State Machines
• A Product Engineering Skill That No One Talks About+
• You’re not an imposter. Developers are all faking it.
iOS
• Планирование приложений — руководства Apple
• State Machine в SwiftUI
• What are Sendable and @Sendable closures in Swift?
• Mastering Dynamic Island in SwiftUI
• Discover the MVVM Architecture in less than 90 seconds
• Drag & Drop in SwiftUI
Android
• Видео Droidcon New York 22
• Миграция с Rx на корутины — опыт «Тинькофф Мобайл»
• Lensa — разработка оффлайн фоторедактора на Android
• Deep Dive Into Deep Link. Часть 2. Проблемы: устройство, версия ОС
• Collect useful logs in production using Crashlytics, File logging and Timber
• Adaptive UI with Jetpack Compose
• Building A Jetpack Compose Window With AbstractComposeView
• Jetpack Compose Popup — Master It!
Кроссплатформа
• Kotlin Multiplatform: как превратить нативное приложение в кроссплатформенное
• The Art of Multiplatform Programming: The Secret to Maximizing Shared Code
• Put Flutter to Work
• Flutter: FCM — How to Navigate to a Particular Screen After Tapping on Push Notification
Вакансия дня
• Middle iOS-разработчик в Комитет
Разработка
• Спрос на обучающие курсы для взрослых упал на 10–30%
• Canva становится одним из самых зарабатывающих приложений в США
• Telegram вдвое снизил стоимость подписки в Индии
• Google Japan показал клавиатуру в виде палки
• Доходы рынка приложений в 3 квартале снизились на 5%
• Stark: решение проблем с доступностью
• Awesome Scalability: список чтения по масштабируемости систем
• Как победить выгорание, синдром самозванца и прокраситанцию: советы IT психолога
• Podlodka #287: стейблкойны
• Epic Games и Autodesk привносят 3D в архитектуру и инженерию
• Meta впервые в истории сокращает персонал
• SAD (Slack-Anti-Delete): сохранение удаленных сообщений в Slack
• Facts about State Machines
• A Product Engineering Skill That No One Talks About+
• You’re not an imposter. Developers are all faking it.
iOS
• Планирование приложений — руководства Apple
• State Machine в SwiftUI
• What are Sendable and @Sendable closures in Swift?
• Mastering Dynamic Island in SwiftUI
• Discover the MVVM Architecture in less than 90 seconds
• Drag & Drop in SwiftUI
Android
• Видео Droidcon New York 22
• Миграция с Rx на корутины — опыт «Тинькофф Мобайл»
• Lensa — разработка оффлайн фоторедактора на Android
• Deep Dive Into Deep Link. Часть 2. Проблемы: устройство, версия ОС
• Collect useful logs in production using Crashlytics, File logging and Timber
• Adaptive UI with Jetpack Compose
• Building A Jetpack Compose Window With AbstractComposeView
• Jetpack Compose Popup — Master It!
Кроссплатформа
• Kotlin Multiplatform: как превратить нативное приложение в кроссплатформенное
• The Art of Multiplatform Programming: The Secret to Maximizing Shared Code
• Put Flutter to Work
• Flutter: FCM — How to Navigate to a Particular Screen After Tapping on Push Notification
Вакансия дня
• Middle iOS-разработчик в Комитет
AppTractor
Спрос на обучающие курсы для взрослых упал на 10–30%
Рынок в 2022 году впервые может показать падение на 10–15%
👍3
Изучаете что-нибудь сейчас?
Anonymous Poll
16%
Новое направление
37%
Новые технологии внутри своего направления
19%
Ничего не изучаю
28%
Карту мира для миграции
👍11😢6🤔1
Помните PWA, прогрессивные веб-приложения, которые своим появлениям, казалось, положат конец гегемонии магазинов приложений и даже нативной разработке? Чудо ожидаемо не случилось и технология погрязла в платформенных различиях. Тем не менее, все развивается и с каждым годом становится лучше - в первой статье разбирается, какие проблемы остались у PWA. Все они, конечно, решаемы, но вывод у автора простой - PWA нативные приложения не заменит, да и фиг с ними, он нужен для другого.
Разработка
• Почему PWA еще не победили нативные приложения?
• Вы не самозванец — все разработчики притворяются
• $80 млн в Серии Д: Tally — ИИ для выплат по кредитным картам
• Amazon, Apple, Microsoft, Meta и Google улучшат распознавание речи для людей с ограниченными возможностями
• The Coders Programming Themselves Out of a Job
iOS
• NetNewsWire: открытый RSS-ридер
• Zillow использует Look Around из Apple Maps для выбора жилья
• PencilKit: Building a complete drawing app with a few lines of code
• How to Build a Voice Assistant App for iOS?
• Use a Base Class or a Protocol In Swift?
• iOS Realtime Video Streaming App Tutorial
Android
• Неочевидное про Fragment API. Часть 3. Навигация
• Prioritizing App Stability — Mobile Performance @ Lyft
• Jetpack Compose Popup — Master It!
• Build a Custom Design System Using Jetpack Compose
• Android's Unlikely Success
• Performance in Jetpack Compose
Кроссплатформа
• Zero To Hero in KMM with Compose and SwiftUi
• React Native Infinite Scrolling with React Query
• Google Flutter versus Microsoft .NET MAUI
Вакансия дня
• Android-разработчик в RuStore
Разработка
• Почему PWA еще не победили нативные приложения?
• Вы не самозванец — все разработчики притворяются
• $80 млн в Серии Д: Tally — ИИ для выплат по кредитным картам
• Amazon, Apple, Microsoft, Meta и Google улучшат распознавание речи для людей с ограниченными возможностями
• The Coders Programming Themselves Out of a Job
iOS
• NetNewsWire: открытый RSS-ридер
• Zillow использует Look Around из Apple Maps для выбора жилья
• PencilKit: Building a complete drawing app with a few lines of code
• How to Build a Voice Assistant App for iOS?
• Use a Base Class or a Protocol In Swift?
• iOS Realtime Video Streaming App Tutorial
Android
• Неочевидное про Fragment API. Часть 3. Навигация
• Prioritizing App Stability — Mobile Performance @ Lyft
• Jetpack Compose Popup — Master It!
• Build a Custom Design System Using Jetpack Compose
• Android's Unlikely Success
• Performance in Jetpack Compose
Кроссплатформа
• Zero To Hero in KMM with Compose and SwiftUi
• React Native Infinite Scrolling with React Query
• Google Flutter versus Microsoft .NET MAUI
Вакансия дня
• Android-разработчик в RuStore
AppTractor
Почему PWA еще не победили нативные приложения?
Чего им еще не хватает в 2022 году? Почему они еще не стали форматом по умолчанию для приложений?
👍6
Duolingo купила свой первый стартап. Интересно, что это не изучение языков, не аналитика или что-нибудь техническое — это анимационная студия, которая создавала графику для самого Duolingo, а также для Amazon, Dropbox, Spotify и Google.
Совсем любопытно то, что бизнес-директор говорит, что приобретение Gunner соответствует тому факту, что Duolingo — «компания, очень ориентированная на метрики». Даже из использования анимаций Duolingo получает измеряемую ценность. Например, подписки в приложении выросли, когда компания в приложении запустила их анимированную рекламу. «Это то, чему вы можете придать очень четкую экономическую ценность».
А вы измеряете ценность анимаций?
Совсем любопытно то, что бизнес-директор говорит, что приобретение Gunner соответствует тому факту, что Duolingo — «компания, очень ориентированная на метрики». Даже из использования анимаций Duolingo получает измеряемую ценность. Например, подписки в приложении выросли, когда компания в приложении запустила их анимированную рекламу. «Это то, чему вы можете придать очень четкую экономическую ценность».
А вы измеряете ценность анимаций?
👍37
Meta поджимают со всех сторон. TikTok отжал молодежь с видео, реальный BeReal обгоняет глянцевый Instagram, а вот новый проект Fizz вообще играет там, где Facebook начинался. Это анонимная социальная сеть для колледжей и кампусов с геолокацией и дамами. Ее главное отличие: 1) зарегистрироваться в ней могут только реальные ученики с действующим адресом электронной почты ВУЗа; 2) общаются все в локальных группах; 3) модерируют ее тоже живые учащиеся. Получается дикая вирусность и “амбассадорность”. Основатели уже говорят об охвате 95% студентов Стэнфорда, 70% в Райсе. К концу 2023 планируют покрыть практически все кампусы США. К чему это все - а ведь буквально только что Facebook казался непоколебимой социальной глыбой. Если у вас есть идея как его подсидеть, может самое время?
Разработка
• Fizz: социальная сеть для колледжей
• Каждый шестой программист хулиганил в школе
• Опубликован единый стандарт Matter 1.0 для IoT-устройств
• Recelery запустил шаринг еды
• Duolingo купила студию анимации
• Как купить девайс для умного дома и попасть в команду разработчиков (часть 2)
• Data Science is Dying?
• The Anti-Pattern that Sees the Disempowerment of Engineering Organisations Everywhere
• Radio buttons, checkboxes, toggle switches, and dropdown lists: design tips for using selection controls
• Charts Anatomy by Apple
iOS
• Логи в iOS, эпизод 2: os_signpost
• Show progress of the task using SwiftUI ProgressView
• Accordion in SwiftUI – DisclosureGroup Explorations
• The Problems with Singletons and Why You Should Use DI Instead
• State Restoration in SwiftUI
Android
• Whetstone: DI фреймворк для Android
• Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки
• Jetpack Compose Clean Navigation
• Exploring “select” expression of Kotlin coroutines
• Understand Kotlin Reified and Type Erasure
• Loading Shimmer in Compose
Кроссплатформа
• 7 Useful Flutter Packages You Should Use in Your Next Project
• Responsive Flutter apps will no longer be a nightmare: Let’s simplify the process
Вакансия дня
• Middle Android Developer в Simply Technologies
Разработка
• Fizz: социальная сеть для колледжей
• Каждый шестой программист хулиганил в школе
• Опубликован единый стандарт Matter 1.0 для IoT-устройств
• Recelery запустил шаринг еды
• Duolingo купила студию анимации
• Как купить девайс для умного дома и попасть в команду разработчиков (часть 2)
• Data Science is Dying?
• The Anti-Pattern that Sees the Disempowerment of Engineering Organisations Everywhere
• Radio buttons, checkboxes, toggle switches, and dropdown lists: design tips for using selection controls
• Charts Anatomy by Apple
iOS
• Логи в iOS, эпизод 2: os_signpost
• Show progress of the task using SwiftUI ProgressView
• Accordion in SwiftUI – DisclosureGroup Explorations
• The Problems with Singletons and Why You Should Use DI Instead
• State Restoration in SwiftUI
Android
• Whetstone: DI фреймворк для Android
• Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки
• Jetpack Compose Clean Navigation
• Exploring “select” expression of Kotlin coroutines
• Understand Kotlin Reified and Type Erasure
• Loading Shimmer in Compose
Кроссплатформа
• 7 Useful Flutter Packages You Should Use in Your Next Project
• Responsive Flutter apps will no longer be a nightmare: Let’s simplify the process
Вакансия дня
• Middle Android Developer в Simply Technologies
AppTractor
Fizz: социальная сеть для колледжей
Fizz — не первое приложение, основанное на стремлении студентов к более аутентичным впечатлениям от социальных сетей.
👍9😢2👏1😁1
Из вчерашних новостей - примерно каждый шестой программист в школе вел себя не очень хорошо. А какое поведение у вас было в школе?
Anonymous Poll
20%
Отличное
35%
Хорошее
32%
Удовлетворительное
13%
Неудовлетворительное
Сайт RayWenderlich (лучшие туториалы по iOS и Android разработке) провел опрос мобильных разработчиков и опубликовал отчет о работе State of Mobile Jobs 2022. Всего в нем 1.2К ответов (конечно не очень репрезентативно, но все же), на сайте можно поиграться с данными в разных разрезах. В целом средняя по больнице зарплата - $81,588. Интересно, что по языкам самая большая у Obj-C разрабов, и это понятно и по другим исследованиям, а вот на втором месте - C++, на третьем Python. Вот и примерный план роста 😀
🔥8
Lyft поделился своей работой над улучшением мобильного перфоманса. Пишут, что стратегии, изложенные в этой статье, не зависят от платформы, просто приводится все на примере Android. С другой стороны, меня всегда приводит в недоумение вопрос того, кто же это все наворотил. Кто то же писал на диск 2 тыс. раз в минуту и использовал SharedPreferences в качестве хранилища в памяти. Где были все архитектуры, тестеры, шаблоны и Code Review?
Разработка
• Расстановка приоритетов в стабильности приложений — работа над производительностью в Lyft
• Работа в мобильной разработке 2022 — опрос RayWenderlich.com
• $87.4 млн в Серии Д: onX — карты для внедорожных путешествий
• Серебро и бронза: как мобильная разработка ПСБ попала в топ-3 отрасли
• Прогулка по изнанке «Спортмастера»: ножками и в приложениях
• Google представил смартфоны Pixel 7 и Pixel 7 Pro на собственном чипе Tensor G2 и первые часы Pixel
• $150,000 Amazon Engineer vs. $300,000 Google Engineer
iOS
• ConfettiSwiftUI: конфетти на SwiftUI
• How iOS Apps Adapt to the various iPhone 14 Screen Sizes
• Infinite Marquee Animation with SwiftUI
• Scale Animation With Anchor in SwiftUI
• Create Multi-Steps View in SwiftUI
• The Problems with Singletons and Why You Should Use DI Instead
Android
• Android Dev Summit ‘22: Coming to you, online and around the world!
• Jetpack Glance AppWidget - Developing Location Checker App widget
• How to secure your Android apps
• A full-fledged guide about GraphQL for Android
• Jetpack compose: Cool Button Click Effects
Кроссплатформа
• Преобразование текста в аудио в Unity-проектах (используя Google Cloud)
• Web socket in Flutter
• MVI implementation in Kotlin Multiplatform using the Reaktive library
Вакансия дня
• Android-разработчик в Sportmaster Lab
Разработка
• Расстановка приоритетов в стабильности приложений — работа над производительностью в Lyft
• Работа в мобильной разработке 2022 — опрос RayWenderlich.com
• $87.4 млн в Серии Д: onX — карты для внедорожных путешествий
• Серебро и бронза: как мобильная разработка ПСБ попала в топ-3 отрасли
• Прогулка по изнанке «Спортмастера»: ножками и в приложениях
• Google представил смартфоны Pixel 7 и Pixel 7 Pro на собственном чипе Tensor G2 и первые часы Pixel
• $150,000 Amazon Engineer vs. $300,000 Google Engineer
iOS
• ConfettiSwiftUI: конфетти на SwiftUI
• How iOS Apps Adapt to the various iPhone 14 Screen Sizes
• Infinite Marquee Animation with SwiftUI
• Scale Animation With Anchor in SwiftUI
• Create Multi-Steps View in SwiftUI
• The Problems with Singletons and Why You Should Use DI Instead
Android
• Android Dev Summit ‘22: Coming to you, online and around the world!
• Jetpack Glance AppWidget - Developing Location Checker App widget
• How to secure your Android apps
• A full-fledged guide about GraphQL for Android
• Jetpack compose: Cool Button Click Effects
Кроссплатформа
• Преобразование текста в аудио в Unity-проектах (используя Google Cloud)
• Web socket in Flutter
• MVI implementation in Kotlin Multiplatform using the Reaktive library
Вакансия дня
• Android-разработчик в Sportmaster Lab
👍5😁1
Forwarded from AppFiles - Mobile Development
Как не настоящий программист решил на досуге порешать Leetcode на Swift. Первая задача - сумма двух. Дан массив целых чисел nums и целое число target, нужно вернуть индексы двух чисел из массива, которые в сумме образуют target.
Решение
Первое приходящее на ум решение — сделать два вложенных цикла, в которых перебирать массив, поочередно складывая числа и сравнивая получившееся с целевым значением.
Вот мое решение:
Лучший результат на Leetcode:
• Время выполнения: 77 мс
• Скорость выполнения — лучше 66.47% всех решений
• Потребление памяти — лучше 90.65% решений.
Что интересного из решения я узнал:
• Break не выходит сразу из всех циклов, нужно определять внешний и из него выходить.
• Можно оптимизировать перебор хотя бы на 2 элемента, чего многие (судя по показателям) не делают даже в этом подходе.
• На самом деле результат Leetcode — плавающий и зависит от каких-то внутренних факторов. В следующий раз может быть другое время выполнения и другое потребление памяти, так что, наверное, стоит даже с одним и тем же кодом сделать несколько подходов в оценке.
Неплохо, но, очевидно, по скорости где то есть возможности для улучшения. Что можно улучшить в моем коде? Какой бы иной подход вы предложили?
Продолжение: https://apptractor.ru/twosum
Решение
Первое приходящее на ум решение — сделать два вложенных цикла, в которых перебирать массив, поочередно складывая числа и сравнивая получившееся с целевым значением.
Вот мое решение:
class Solution {
func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
var resultA = [Int]()
outerLoop: for i in 0...nums.count - 2 {
for j in (i+1)...nums.count - 1 {
// Поиск суммы
if ((nums[i] + nums[j]) == target) {
resultA.append(i)
resultA.append(j)
break outerLoop
}
}
}
return resultA
}
}
• Время выполнения: 77 мс
• Скорость выполнения — лучше 66.47% всех решений
• Потребление памяти — лучше 90.65% решений.
Что интересного из решения я узнал:
• Break не выходит сразу из всех циклов, нужно определять внешний и из него выходить.
• Можно оптимизировать перебор хотя бы на 2 элемента, чего многие (судя по показателям) не делают даже в этом подходе.
• На самом деле результат Leetcode — плавающий и зависит от каких-то внутренних факторов. В следующий раз может быть другое время выполнения и другое потребление памяти, так что, наверное, стоит даже с одним и тем же кодом сделать несколько подходов в оценке.
Неплохо, но, очевидно, по скорости где то есть возможности для улучшения. Что можно улучшить в моем коде? Какой бы иной подход вы предложили?
Продолжение: https://apptractor.ru/twosum
AppTractor
Задачи с собеседований: Leetcode — Сумма двух
Задача Дан массив целых чисел nums и целое число target, нужно вернуть индексы двух чисел из массива, которые в сумме образуют target. Каждый массив точно будет иметь ровно одно решение и нельзя использовать один и тот же элемент дважды. Вы можете вернуть…
👍15😁1
Mobile Meetup | SberMarketTech
В программе 4 доклада по разработке на iOS и Android:
📱 Александр Соломатов, руководитель группы iOS-разработки в CберМаркете, расскажет про горизонтальную карусель для баннеров на SwiftUI.
📱 Евгений Прокопьев, Android-разработчик в CберМаркете, покажет как работать с анимациями в React Native.
📱 Валерий Скворцов, iOS-разработчик в СберМаркете, поделится результатами экспериментов с механизмом избегания клавиатуры в SwiftUI.
📱 Александр Сычев, руководитель мобильной разработки СберЗдоровья, расскажет, как получить максимум от координаторов при решении задач навигации.
Также будет Q&A сессия, где вы сможете задать вопросы. Авторам самых интересных отправим крутой мерч в подарок 🎁
🗓 13 октября, 19:00 Мск • Онлайн
Регистрация по ссылке: https://bit.ly/3fGDWeh
В программе 4 доклада по разработке на iOS и Android:
📱 Александр Соломатов, руководитель группы iOS-разработки в CберМаркете, расскажет про горизонтальную карусель для баннеров на SwiftUI.
📱 Евгений Прокопьев, Android-разработчик в CберМаркете, покажет как работать с анимациями в React Native.
📱 Валерий Скворцов, iOS-разработчик в СберМаркете, поделится результатами экспериментов с механизмом избегания клавиатуры в SwiftUI.
📱 Александр Сычев, руководитель мобильной разработки СберЗдоровья, расскажет, как получить максимум от координаторов при решении задач навигации.
Также будет Q&A сессия, где вы сможете задать вопросы. Авторам самых интересных отправим крутой мерч в подарок 🎁
🗓 13 октября, 19:00 Мск • Онлайн
Регистрация по ссылке: https://bit.ly/3fGDWeh
❤5👍2