Cheetah - приложение для macOS, работающее на основе искусственного интеллекта и предназначенное для помощи разработчикам во время удаленных интервью путем предоставления незаметных подсказок в режиме реального времени и интеграции с платформами лайв-кодинга. С Cheetah вы сможете улучшить свои результаты на собеседовании и повысить шансы получить работу, не тратя свои выходные на зубрежку задач Leetcode и заучивание алгоритмов, которые вы никогда не будете использовать.
Cheetah использует Whisper для расшифровки аудио в реальном времени и GPT-4 для генерации подсказок и решений. Для использования приложения вам необходимо иметь собственный ключ API OpenAI. Если у вас нет доступа к GPT-4, в качестве альтернативы можно использовать gpt-3.5-turbo.
Whisper запускается локально на вашей системе, используя whisper.cpp Георгия Герганова. Для оптимальной работы требуется последний Mac M1 или M2.
Cheetah на GitHub: https://github.com/leetcode-mafia/cheetah
Платформа: разработка
⭐️: 2K
Cheetah использует Whisper для расшифровки аудио в реальном времени и GPT-4 для генерации подсказок и решений. Для использования приложения вам необходимо иметь собственный ключ API OpenAI. Если у вас нет доступа к GPT-4, в качестве альтернативы можно использовать gpt-3.5-turbo.
Whisper запускается локально на вашей системе, используя whisper.cpp Георгия Герганова. Для оптимальной работы требуется последний Mac M1 или M2.
Cheetah на GitHub: https://github.com/leetcode-mafia/cheetah
Платформа: разработка
⭐️: 2K
👍3🔥1
Создайте собственные задачи и плагины Gradle менее чем за 10 минут
Перестаньте бояться Gradle и заставьте его работать на вас.
Статья: https://proandroiddev.com/make-gradle-do-more-work-for-you-than-just-build-your-android-app-9462baa08951
Платформа: Android
Перестаньте бояться Gradle и заставьте его работать на вас.
Статья: https://proandroiddev.com/make-gradle-do-more-work-for-you-than-just-build-your-android-app-9462baa08951
Платформа: Android
Обработка глубоких ссылок в SwiftUI
Глубокие ссылки позволяют открыть приложение и перейти в определенное место сразу после запуска. Примером может быть глубокая ссылка на рецепт или фильм на основе нажатой ссылки. Вы можете определить целевую страницу на основе метаданных, предоставленных URL.
Вы можете использовать модификатор представления в SwiftUI или метод AppDelegate для обработки входящих URL и соответствующей навигации. При грамотной настройке можно извлечь выгоду из открытия URL-адресов внутри приложения и перехода к нужному пункту внутри приложения.
Статья: https://www.avanderlee.com/swiftui/deeplink-url-handling/
Платформа: iOS
Глубокие ссылки позволяют открыть приложение и перейти в определенное место сразу после запуска. Примером может быть глубокая ссылка на рецепт или фильм на основе нажатой ссылки. Вы можете определить целевую страницу на основе метаданных, предоставленных URL.
Вы можете использовать модификатор представления в SwiftUI или метод AppDelegate для обработки входящих URL и соответствующей навигации. При грамотной настройке можно извлечь выгоду из открытия URL-адресов внутри приложения и перехода к нужному пункту внутри приложения.
Статья: https://www.avanderlee.com/swiftui/deeplink-url-handling/
Платформа: iOS
👍1
Секрет идеально сбалансированных пустых пространств
Самым сложным элементом дизайна, с которым приходится работать, является пустое пространство. Пустое или белое пространство — это невидимый элемент, который существует на каждом экране между компонентами.
Не существует стандарта, определяющего идеальное количество пустого пространства. Дизайнеры должны использовать свое интуитивное чувство для определения расстояний между элементами, что довольно сложно. В результате во многих проектах либо слишком мало, либо слишком много пробельных элементов.
Статья: https://apptractor.ru/develop/design/sekret-idealno-sbalansirovannyh-pustyh-prostranstv.html
Платформа: дизайн и прототипирование
Самым сложным элементом дизайна, с которым приходится работать, является пустое пространство. Пустое или белое пространство — это невидимый элемент, который существует на каждом экране между компонентами.
Не существует стандарта, определяющего идеальное количество пустого пространства. Дизайнеры должны использовать свое интуитивное чувство для определения расстояний между элементами, что довольно сложно. В результате во многих проектах либо слишком мало, либо слишком много пробельных элементов.
Статья: https://apptractor.ru/develop/design/sekret-idealno-sbalansirovannyh-pustyh-prostranstv.html
Платформа: дизайн и прототипирование
👍1👎1
Ultron - это простой и мощный фреймворк для разработки UI-тестов для Android. Он делает ваши тесты простыми, стабильными и поддерживаемыми. Ultron основан на Espresso, UI Automator и фреймворке тестирования Compose UI. Он предоставляет множество новых замечательных возможностей и дает вам полный контроль над вашими тестами, легко настраивается и расширяется.
Ultron на GitHub: https://github.com/open-tool/ultron
Статья: https://habr.com/ru/articles/730144/
Платформа: Android
⭐️: 36
Ultron на GitHub: https://github.com/open-tool/ultron
Статья: https://habr.com/ru/articles/730144/
Платформа: Android
⭐️: 36
👍1
Обработка сетевых вызовов в Swift с помощью Moya
Moya - это сетевая библиотека Swift, построенная поверх Alamofire. Она выполняет сетевые вызовы без прямого взаимодействия с Alamofire и ориентирована на выполнение сетевых запросов типобезопасным способом с использованием перечислений (например, enum).
Статья: https://medium.com/simform-engineering/handling-network-calls-in-swift-with-moya-c82908c93e5
Платформа: iOS
Moya - это сетевая библиотека Swift, построенная поверх Alamofire. Она выполняет сетевые вызовы без прямого взаимодействия с Alamofire и ориентирована на выполнение сетевых запросов типобезопасным способом с использованием перечислений (например, enum).
Статья: https://medium.com/simform-engineering/handling-network-calls-in-swift-with-moya-c82908c93e5
Платформа: iOS
🤷1
Ускоряем дебаг в разы. Зачем и как использовать брейкпоинты
Когда я только начинал заниматься Android-разработкой, я не понимал истинную силу брейкпоинтов. Отладку я делал всегда через Timber и чувствовал себя прекрасно. Но однажды друг показал мне их истинную силу, и я понял, что зря их не ценил.
Сейчас я покажу эту силу и вам.
Статья: https://habr.com/ru/companies/agima/articles/730008/
Платформа: Android
Когда я только начинал заниматься Android-разработкой, я не понимал истинную силу брейкпоинтов. Отладку я делал всегда через Timber и чувствовал себя прекрасно. Но однажды друг показал мне их истинную силу, и я понял, что зря их не ценил.
Сейчас я покажу эту силу и вам.
Статья: https://habr.com/ru/companies/agima/articles/730008/
Платформа: Android
😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Показываем расширяемые текстовые поля в SwiftUI
Традиционно в iOS и macOS существует два вида элементов управления вводом текста: текстовые поля и текстовые представления. Разница между ними заключается в том, что текстовое поле принимает одну строку текста, а текстовое представление обеспечивает многострочное редактирование текста.
Хотя в macOS возможно - но не так часто - переопределить поведение текстового поля по умолчанию и игнорировать правило одной строки с помощью AppKit, в iOS такого не было. Но все это до iOS 16 и macOS 13 (Ventura), где в четвертой ревизии SwiftUI появилась функция, которую большинство разработчиков назвали бы... подарком. Речь идет о текстовых полях, которые могут расширяться как по горизонтали, так и по вертикали, что приводит к появлению нескольких строк, когда применяется последний вариант.
Плохая новость о расширяемых текстовых полях, также называемых прокручиваемыми текстовыми полями, заключается в том, что они не обеспечивают обратной совместимости. Мы не можем использовать их в проектах, поддерживающих iOS версии ниже 16 и macOS версии ниже 13. В таких случаях нам остается прибегнуть к уже готовым решениям, таким как текстовые представления.
Статья: https://serialcoder.dev/text-tutorials/swiftui/presenting-expandable-textfields-in-swiftui/
Платформа: iOS
Традиционно в iOS и macOS существует два вида элементов управления вводом текста: текстовые поля и текстовые представления. Разница между ними заключается в том, что текстовое поле принимает одну строку текста, а текстовое представление обеспечивает многострочное редактирование текста.
Хотя в macOS возможно - но не так часто - переопределить поведение текстового поля по умолчанию и игнорировать правило одной строки с помощью AppKit, в iOS такого не было. Но все это до iOS 16 и macOS 13 (Ventura), где в четвертой ревизии SwiftUI появилась функция, которую большинство разработчиков назвали бы... подарком. Речь идет о текстовых полях, которые могут расширяться как по горизонтали, так и по вертикали, что приводит к появлению нескольких строк, когда применяется последний вариант.
Плохая новость о расширяемых текстовых полях, также называемых прокручиваемыми текстовыми полями, заключается в том, что они не обеспечивают обратной совместимости. Мы не можем использовать их в проектах, поддерживающих iOS версии ниже 16 и macOS версии ниже 13. В таких случаях нам остается прибегнуть к уже готовым решениям, таким как текстовые представления.
Статья: https://serialcoder.dev/text-tutorials/swiftui/presenting-expandable-textfields-in-swiftui/
Платформа: iOS
❤1
HealthGPT - экспериментальное приложение для iOS, которое позволяет пользователям взаимодействовать с данными о своем здоровье, хранящимися в приложении Apple Health, используя естественный язык.
Построенное на базе CardinalKit, CardinalKitTemplateApplication и OpenAI. HealthGPT предлагает простое в расширении решение для тех, кто хочет создавать большие приложения на основе языковых моделей в экосистеме Apple Health.
Особенности:
• Интерфейс в стиле чата для удобного взаимодействия с медицинскими данными
• Интеграция с приложением Apple Health для обеспечения беспрепятственного использования своих данных
• Расширяемая архитектура на основе CardinalKit для легкой настройки
• Доступ к GPT-3.5 + GPT-4 через модуль OpenAI Swift
• Встроенная поддержка запросов о сне, количестве шагов, активной энергии, минутах тренировки, частоте сердечных сокращений и массе тела.
HealthGPT на GitHub: https://github.com/StanfordBDHG/HealthGPT
Платформа: iOS
⭐️: 690
Построенное на базе CardinalKit, CardinalKitTemplateApplication и OpenAI. HealthGPT предлагает простое в расширении решение для тех, кто хочет создавать большие приложения на основе языковых моделей в экосистеме Apple Health.
Особенности:
• Интерфейс в стиле чата для удобного взаимодействия с медицинскими данными
• Интеграция с приложением Apple Health для обеспечения беспрепятственного использования своих данных
• Расширяемая архитектура на основе CardinalKit для легкой настройки
• Доступ к GPT-3.5 + GPT-4 через модуль OpenAI Swift
• Встроенная поддержка запросов о сне, количестве шагов, активной энергии, минутах тренировки, частоте сердечных сокращений и массе тела.
HealthGPT на GitHub: https://github.com/StanfordBDHG/HealthGPT
Платформа: iOS
⭐️: 690
2 000 импортов: организация SwiftPM-модулей в моих приложениях
Как организовать Swift-модули ваших приложений для ясности и удобства с помощью скрытой (неофициальной) функции Swift. Практичное решение для приложений малого и среднего размера.
Статья: https://betterprogramming.pub/2-000-imports-organizing-my-apps-swiftpm-modules-f7c68c22ebd2
Платформа: iOS
Как организовать Swift-модули ваших приложений для ясности и удобства с помощью скрытой (неофициальной) функции Swift. Практичное решение для приложений малого и среднего размера.
Статья: https://betterprogramming.pub/2-000-imports-organizing-my-apps-swiftpm-modules-f7c68c22ebd2
Платформа: iOS
Суперзарядка вашего (Android) терминала
Вот некоторые из трюков и инструментов, которые я нашел за годы работы. Все они вам, конечно, не понадобятся, но если вы внедрите один или два из них в свой рабочий процесс, это даст вам преимущества в работе, которую вы выполняете каждый день. По мере продвижения вы найдете те инструменты, которые подходят вам как перчатка. Отсюда можно спуститься в кроличью нору, и кто знает, куда она может привести. Одно можно сказать наверняка: в командной строке вы будете чувствовать себя как дома и станете лучше.
Статья: https://medium.com/asos-techblog/supercharge-your-android-terminal-experience-c71448bf40cc
Платформа: Android
Вот некоторые из трюков и инструментов, которые я нашел за годы работы. Все они вам, конечно, не понадобятся, но если вы внедрите один или два из них в свой рабочий процесс, это даст вам преимущества в работе, которую вы выполняете каждый день. По мере продвижения вы найдете те инструменты, которые подходят вам как перчатка. Отсюда можно спуститься в кроличью нору, и кто знает, куда она может привести. Одно можно сказать наверняка: в командной строке вы будете чувствовать себя как дома и станете лучше.
Статья: https://medium.com/asos-techblog/supercharge-your-android-terminal-experience-c71448bf40cc
Платформа: Android
Видео и подкасты за неделю
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
•
(iOS Ru)
Coffee&Code #4: Анастасия Улитина (Amazon Prime Video)•
(iOS En)
Learning SwiftUI, when you already know UIKit•
(iOS En)
Discover how @MainActor work in less than 90 seconds•
(iOS En)
Understanding Swift Initializers•
(And Ru)
Собеседование Middle Android разработчика•
(And Ru)
Что нового в Android и куда нас приведут нейронки•
(And Ru)
Пишем Android-приложение с ChatGPT•
(And Ru)
Циклическая зависимость при создании объекта. Что это и как обойти•
(And En)
Главный доклад KotlinConf 2023•
(And En)
Now in Android: 81 - Android Studio Flamingo, Android 14 Beta 1, Kotlin DSL•
(And En)
How to Build a Multiline Text Field With Hint In Jetpack Compose•
(And En)
You're Collecting Your Flows Wrong In Compose•
(Dev Ru)
Intern Meetup Week. Mobile•
(Dev En)
Turn Midjourney Illustration to Vector in FigmaПосмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
AppTractor
Coffee&Code #4: Анастасия Улитина (Amazon Prime Video)
Поговорим о пути в FAANG, собеседовании и работе в Amazon , и узнаем чем все программисты Англии занимаются, когда не пишут код.
👍1🔥1
Как мы стриминг пилили, или 5 неочевидных палок в колеса от Flutter
Да, какие-то проблемы были из-за нашей неопытности и молодости технологии — мы стартовали проект в 2020 году. Были специфичные для Flutter баги. И были засады, которые неспецифичные для Flutter, но специфичны для натива — поэтому нативные разработчики, не спешите скроллить ленту дальше.
Статья: https://habr.com/ru/companies/surfstudio/articles/730340/
Платформа: кроссплатформа/Flutter
Да, какие-то проблемы были из-за нашей неопытности и молодости технологии — мы стартовали проект в 2020 году. Были специфичные для Flutter баги. И были засады, которые неспецифичные для Flutter, но специфичны для натива — поэтому нативные разработчики, не спешите скроллить ленту дальше.
Статья: https://habr.com/ru/companies/surfstudio/articles/730340/
Платформа: кроссплатформа/Flutter
FlorisBoard - это бесплатная клавиатура с открытым исходным кодом для устройств Android 7.0+. Ее цель - быть современной, удобной и настраиваемой, при этом полностью уважая конфиденциальность пользователя. В настоящее время находится в состоянии ранней бета-версии.
FlorisBoard на GitHub: https://github.com/florisboard/florisboard
Платформа: Android
⭐️: 4.1K
FlorisBoard на GitHub: https://github.com/florisboard/florisboard
Платформа: Android
⭐️: 4.1K
Схема кампуса в Android приложении
Еще на первом курсе я занялся разработкой мобильного приложения для просмотра расписания. Приложение росло, появлялись новые функции, и спустя 3 года им пользуются 5 тысяч студентов ежедневно, но в нем не хватало одной важной детали, а именно схемы территории. Институт большой, в нем 25 корпусов, и найти нужную аудиторию с первого раза непросто. А на сайте только картинки с номерами зданий. Где аудитория 24б-456? Как к ней пройти? Это приходится выяснять на месте перед парой и, возможно, опаздывать на нее. Похожие кейсы можно долго перечислять, и все они решаются интерактивной схемой, которая всегда будет под рукой.
Такие библиотеки уже есть, но все они стоят больших денег, а мое приложение денег не приносит, поэтому было принято волевое решение сделать все самостоятельно.
В статье до винтиков расскажу, как сделал кастомные карты и завернул в их android-библиотеку.
Статья: https://habr.com/ru/articles/729650/
Платформа: Android
Еще на первом курсе я занялся разработкой мобильного приложения для просмотра расписания. Приложение росло, появлялись новые функции, и спустя 3 года им пользуются 5 тысяч студентов ежедневно, но в нем не хватало одной важной детали, а именно схемы территории. Институт большой, в нем 25 корпусов, и найти нужную аудиторию с первого раза непросто. А на сайте только картинки с номерами зданий. Где аудитория 24б-456? Как к ней пройти? Это приходится выяснять на месте перед парой и, возможно, опаздывать на нее. Похожие кейсы можно долго перечислять, и все они решаются интерактивной схемой, которая всегда будет под рукой.
Такие библиотеки уже есть, но все они стоят больших денег, а мое приложение денег не приносит, поэтому было принято волевое решение сделать все самостоятельно.
В статье до винтиков расскажу, как сделал кастомные карты и завернул в их android-библиотеку.
Статья: https://habr.com/ru/articles/729650/
Платформа: Android
❤3
Как Senior iOS-инженеры оформляют код: производительность и ясность
Эта статья - результат изучения Swift Style от The Pragmatic Bookshelf и жизненного опыта. Это руководство может пригодиться iOS-инженеру любого уровня.
Статья: https://medium.com/@james.daniel.isaiah/how-senior-ios-engineers-style-code-for-performance-and-clarity-467fa2a9d1f1
Платформа: iOS
Эта статья - результат изучения Swift Style от The Pragmatic Bookshelf и жизненного опыта. Это руководство может пригодиться iOS-инженеру любого уровня.
Статья: https://medium.com/@james.daniel.isaiah/how-senior-ios-engineers-style-code-for-performance-and-clarity-467fa2a9d1f1
Платформа: iOS
Толковых каналов по iOS не так уж много. Поэтому, рекомендуем обратить внимание и подписаться на канал нашего коллеги – iOS / Swift Tips.
Там найдете: туториалы, best practices, материалы для подготовки к собесам, ну и конечно же архитектуре, куда без нее 💪
Несколько интересных постов с канала
• Swift iOS interview questions and answers
• 7 iOS Projects to Become a Better iOS Developer
• In-App Purchases in iOS
Подписывайтесь: @swift_tips
Там найдете: туториалы, best practices, материалы для подготовки к собесам, ну и конечно же архитектуре, куда без нее 💪
Несколько интересных постов с канала
• Swift iOS interview questions and answers
• 7 iOS Projects to Become a Better iOS Developer
• In-App Purchases in iOS
Подписывайтесь: @swift_tips
👍1
CustomView Android. Кольцевая диаграмма для отображения статистики
В этой статье мы пройдем все этапы реализации своей CustomView, с подробным описанием шагов, чтобы каждый смог повторить такое в своих проектах. Мы будем реализовывать кольцевую диаграмму для отображения какой-либо статистики, добавим много возможностей кастомизации диаграммы под любые виды задач, а также приправим это дело красивой анимацией отрисовки и сохранением состояния. Все будет написано на языке программирования Kotlin.
Статья: https://habr.com/ru/articles/730924/
Платформа: Android
В этой статье мы пройдем все этапы реализации своей CustomView, с подробным описанием шагов, чтобы каждый смог повторить такое в своих проектах. Мы будем реализовывать кольцевую диаграмму для отображения какой-либо статистики, добавим много возможностей кастомизации диаграммы под любые виды задач, а также приправим это дело красивой анимацией отрисовки и сохранением состояния. Все будет написано на языке программирования Kotlin.
Статья: https://habr.com/ru/articles/730924/
Платформа: Android
👍3
В тему недавнего HealthGPT, CardinalKit - фреймворк с открытым исходным кодом для быстрой разработки современных, совместимых приложений для цифрового здравоохранения. CardinalKit представляет основанный на стандартах модульный подход к созданию приложений для цифрового здравоохранения.
CardinalKit на GitHub: https://github.com/StanfordBDHG/CardinalKit
Платформа: iOS
⭐️: 39
CardinalKit на GitHub: https://github.com/StanfordBDHG/CardinalKit
Платформа: iOS
⭐️: 39
Ряд Фибоначчи и Мемоизация с примерами на Swift языке
Это удобно не только для рядов Фибоначчи, но и для всего, что связано с дорогостоящими вычислениями, которые можно сохранить, кэшировать и использовать в будущих результатах.
В этом и заключается сила мемоизации.
Она используется для самых разных вещей.
Ряд Фибоначчи - отличный пример. Когда дело доходит до реального интервью.
Я слышал, как людей просили воспроизвести ряд Фибоначчи.
Это не огромный алгоритм, он сводится к одной строчке и двум случаям: конец равен нулю и единице. Но мой совет - просто запомните эту строчку, потому что она демонстрирует такую вещь как рекурсия.
Статья: https://habr.com/ru/articles/731048/
Платформа: iOS
Это удобно не только для рядов Фибоначчи, но и для всего, что связано с дорогостоящими вычислениями, которые можно сохранить, кэшировать и использовать в будущих результатах.
В этом и заключается сила мемоизации.
Она используется для самых разных вещей.
Ряд Фибоначчи - отличный пример. Когда дело доходит до реального интервью.
Я слышал, как людей просили воспроизвести ряд Фибоначчи.
Это не огромный алгоритм, он сводится к одной строчке и двум случаям: конец равен нулю и единице. Но мой совет - просто запомните эту строчку, потому что она демонстрирует такую вещь как рекурсия.
Статья: https://habr.com/ru/articles/731048/
Платформа: iOS
Хабр
Ряд Фибоначчи и Мемоизация с примерами на Swift языке
Ряд Фибоначчи Чи́сла Фибона́ччи (вариант написания — Фибона́чи [2] ) — элементы числовой последовательности 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597,...
👍1