Developer Box
33 subscribers
50 photos
8 videos
37 links
channel unstoppable developer

author: @normno
github: github.com/NORMss
website: normno.ru
Download Telegram
Channel created
Channel photo updated
Всем привет. Этот канал посвящен моей жизни разработчика. Надеюсь, разработчика под мобильные платформы или вообще кроссплатформы. Постараюсь здесь публиковать контент только посвященный IT миру.

Вся информация по автору канала есть в описании канала. Добро пожаловать!
🔥2
Developer Box pinned «Всем привет. Этот канал посвящен моей жизни разработчика. Надеюсь, разработчика под мобильные платформы или вообще кроссплатформы. Постараюсь здесь публиковать контент только посвященный IT миру. Вся информация по автору канала есть в описании канала. Добро…»
Сразу хочу поделиться или похвастаться своей ежедневной разработкой на android и публикацией всех совершенных действий в мой GitHub в открытые репозитории.

В основном я изучаю и повторяю чужие проекты по видео с YouTube или статьям. В каждом репозитории (если это не мой проект) есть закрытые задачи (issues), которые содержат ссылку на источник оригинала проекта. В будущем хочу все это спарсить и показать в красивом виде у себя на сайте.

Также у меня есть мои проекты, которые я по мере достижения опыта развиваю:
AiCameraAttractions (дипломная)
VpnFriendlyClient
🔥1
Продолжаем мучить изучать фишки compose. Тут мы видим различные способы применения элемента TextField
Хочется вести как-то по особенному данный канал, но из-за это пропадает желание вообще что-то выкладывать.

Вот например сегодня сделал простой тестовый сайт на KMP. И еще сделал то, что давно вынашивал в голове.
Сайт со всеми моими проектами с GitHub и ссылки на источники по каким статьям и видео было все сделано. Парсер на Python. Сайт на JS, HTML, CSS. Видя четкую структуру получилось объяснить ChatGPT 4o как все надо сделать. Вот результат за 30 минут работы...
GitHub уже сам меня отправляет спать
Channel photo updated
Резко вспомнил про этот канал. Хочу поделиться своей решенной проблемой и радостно сообщить, что решить ее получилось очень быстро.

Уже давно знаю про проблему "гонки" в программирование, когда процессы в потоках выполняются не в ожидаемом порядке для программиста и вот я наконец-то явно столкнулся с этим.

Что есть и как исправили?
Есть метод записи токена в data store и метод получения информации с сервера, который предварительно берет токен из data store. Так вы уже наверное поняли в кокам порядке все выполнялось в случае изменения токена. Все верно, сначала мы отправляли новый токен на сохранение, затем обращались к серверу по старому токену, а потом уже сохранялся новый токен. Исправить получилось быстро и вроде как без особых костылей.
❤️
Очередная ночь за разработкой Android приложения и вы даже не представляете насколько я кайфую от процесса.

Да, не все получается идеально, но какой же сумасшедший опыт от всего этого приходит.
🔥1
Это кстати мое тестовое задание)))
Смотрите! Это же CI в GitHub. Решил попробовать на проектах Kotlin. И сборку выполнит и тесты прогонит. Кайф
Developer Box
Это кстати мое тестовое задание)))
Кстати тестовое приняли и даже на собеседование попал, но получил отказ. Ничего, фигачим дальше)
😢2
Забавно встречать знакомые лица связанные с мобильной разработкой на сайтах, где ты их не ожидаешь найти.
Сейчас разбираюсь с принципом работы навигатора в XML и периодический сталкиваюсь с ошибками. При одном из таких поисков исправления ошибки наткнулся на автора популярного блога по мобильной разработке, Никиту Розова. Очень рад таким случайностям.
🔥1
Несколько часов назад вышел kotlin 2.1.0 и я решил вспомнить про давно анонсированную фичу k2, "explicit backing fields (явные резервные поля)". Получилось с первого раза запустить проект с этим новым представлением state'ов.

Только пред запуском надо:

1. Поднять версию kotlin до 2.0.0 и выше.
2. Включить K2 в IDE
"Settings -> Languages & Frameworks -> Kotlin: Check the "Enable K2 Kotlin Mode"
3. И разрешить использование "ExplicitBackingFields" прописав в \app\build.gradle.kts
kotlin {
sourceSets.all {
languageSettings.enableLanguageFeature("ExplicitBackingFields")
}
}


Можно пользоваться!
Привет, первый подписчик!

Попробовал значит свой первый Хакатон и понял, что идти в соло против команд по 4-6 человек и пытаться сделать всё и сразу - это ОЧЕНЬ НЕУДАЧНЫЙ первый опыт.

Разбор ошибок...
1. Первый день я тупо потратил на планирование, составление моделей, подбор стека, инициализацию проекта, когда это можно было сделать все заранее, потому что я знал какую тему буду реализовывать.

2. Когда всегда писал нативно под android, и хочешь за 48 часов сделать проект на KMP и хоть каким-то настоящим backend'ом, то это гарантированный провал.

3. Надо делать то, что умеешь, а не что знаешь в теории, иначе потратишь кучу времени на разбор множества микромоментов, которым учит только практика. Например, кто знал, что аннотация Preview напрочь не будет работать в CMP, когда JetBrains показывал у себя в статьях что все работает.

4. Ну и самое важное - это не пытаться сделать красивый проект, а надо максимально быстро вкладывать свои знания и показать максимум своих возможностей. То есть не сидим, вспоминая все паттерны, антипаттерны и принципы разработки.

KMP очень мощный инструмент, который реально даёт возможность за короткое время сделать одному разработчику большие количество задач, но при этом сложный и требует какого-то опыта. Ktor уже показал мне, каким он бывает крутым со стороны клиента, но теперь я обязательно сделаю на нём бэк для этого проекта, хоть уже и не в рамках хакатона.
1