start kmp

This commit is contained in:
Михаил Капелько
2026-01-20 11:57:18 +03:00
parent 7145f5a6ff
commit 90683d2b77
15 changed files with 660 additions and 4 deletions

216
budget/2026-01.md Normal file
View File

@@ -0,0 +1,216 @@
19.01: 40
* создать заготовку компонента budget в iOS
* реализовать budgetReportedDate()
* реализовать budgetReportedWeekday()
18.01: 30
* собрать проект с подключенной либой gb
* вызвать simplyPrint в iOS
* перенести функции в gb
18.01: 50
* досоздать заготовку build.gradle.kts
* создать заготовку ver-sdkios
* переименовать ver-sdkios -> sdk-ios
* сделать скрипт util/gen-ios
√ сборка
√ архивирование
17.01: 40
* доверстать заготовку интерфейса
два поля ввода
текстовый результат
кнопки для буфера
17.01: 35
* сверстать поле ввода spent с кнопкой
16.01: 40
* долг:
entities.yml: удалить copyResult
это didClickCopy ведь уже
* создать заготовку приложения на iOS по примеру песочницы
* оформить ЗС
https://github.com/kornerr/git-budget/pull/7
* влить ЗС
16.01: 35
* создать ЗС
[GigaIDE AI version]
до изменений paste
* повторить копирование в буфер через Giga IDE
не удалось
ибо не работает агент
15.01: 45
* уведомить о факте копирования
на моём Samsung это и так происходит
ГигаЧат сказал, что и многие другие производители отображают уведомление на копирование в буфер
итог: не надо ничего показывать дополнительно
* создать новую ветку для ЗС с помощью Cursor
* продублировать копирование в буфер с помощью Cursor
* оформить ЗС cursor
* оформить ЗС ручной
* влить ЗС ручной
* скачать Giga IDE
15.01: 35
* оформить ЗС ручной
* влить ЗС ручной
* включить запись
* добавить кнопку копирования в буфер
* сделать копирование результата в буфер руками
https://stackoverflow.com/questions/19253786/how-to-copy-text-to-clipboard-in-android
14.01: 40
* оформить ветку, но не сливать её
https://github.com/kornerr/git-budget/pull/2
* сделать руками вставку в буфер
тоже под запись
замерить время
вышло 40 минут
а с cursor AI было 40 минут второй части + сколько в первой
т.е. никак не быстрее
как минимум то же время
но в голове меньше мыслей было
а по факту было больше review
и меньше внимательности
ибо я пропустил в review, что нужно было didClickPaste вместо pasteSpent
14.01: 40
* исправить работу с inputSpent, pastedSpent
надо ввести shouldResetSpent
spent на основе inputSpent и pastedSpent
после чего убрать из shouldResetResult весь блок if с вызовом budgetCtrl()
ибо внутри should нельзя вызывать эффекты вроде budgetCtrl()
* исправить задание значения для vm.inputSpent из spent при отличии
cursor неверно выбрал поле и не так написал эффект
* проверить отображение pasted spent в поле ввода
и что нет цикла после задания inputSpent руками
цикла нет
отображение есть
вставка из буфера произошла успешно
13.01: 40
* оформить ЗС
https://github.com/kornerr/git-budget/pull/1
* влить ЗС
перед Cursor AI
обязательно
иначе потом ничего не видно будет по комитам
* сделать вставку из буфера
13.01: 45
* сделать budgetReportedWeekday()
использовать LocalDate
оно больше подходит, чем Calendar
https://stackoverflow.com/questions/38739983/calendar-set-day-of-week-not-correct
* передавать значения по умолчанию
* сделать подсчёт строки результата
* (практически) сравнять функциональность W и A
12.01: 45
* добавить Scaffold
как-будто из-за его отсутствия может быть чёрная штука вверху при выборе поля
не использовать modifier из Scaffold
использовал - помогло
* сделать два поля ввода
* сделать budgetReportedDate()
12.01: 40
* переименовать Playground -> Budget
* сверстать интерфейс с двумя полями ввода и одним выводом
11.01: 35
* влить ветку budget на сайте
чтобы можно было добавить cv/ files
* запустить заготовку в Android Studio
запустилось
* создать util/do-tmux
* вернуть и перегенерить cld/*
11.01: 40
* обработать файлы первого уровня
* обработать уровень app
* обработать уровень app/src/main
* обработать уровень app/src/main/res
* обработать уровень app/src/main/kotlin
10.01: 25
* найти репозиторий старого git budget
https://github.com/kornerr/git-budget
его и возьму
* найти эталон по UI для бюджета
вот этот сайт плюс-минус на мой уровень
https://costtrack.app/
общий список прилложений по бюджетированию
https://t-j.ru/short/all-budget-apps
итог
эталона нет
почти все приложения уродливые
так что я могу делать свою уродливую версию
а там уже посмотрим
09.01: 35
* определять weekday / weekend
* считать перерасход
* считать 'осталось Р/д' для будней
09.01: 30
* обдумать создание отдельного приложения
уже без JS
либо забить на буфер пока что
но потом всё равно хочется его иметь
либо всё-таки приложение
тогда и гит чисто для бюджета будет смотреться логичнее
да и просто как пример приложения-доказательства выглядит лучше
создать надо, но в следующей итерации
прямо сейчас мне полезнее подсчёт, а не форма
итог:
потом -да, сейчас - нет
* убрать pre
кнопки буфера можно оставить, они ведь в браузере работают
* считать целевой утренний баланс
08.01: 45
* изучить отсутствие вставки из буфера в WebView
Uncaught (in promise) NotAllowedError: Failed to execute 'readText' on 'Clipboard': Read permission denied.
после ввода WebCC ничего не изменилось
onPermissionRequest не вызывается
короче, это прям проблема на WebView
так что аналог электрона - это прям сильно упорото будет
в JS стопицот вещей иначе работают
их тупо невозможно поддержать
гораздо проще КМП
08.01: 45
* добавить кнопку быстрой вставки из буфера в поле ввода
* добавить кнопку быстрого копирования результата
* сделать вставку из буфера
07.01: 15
* исправить форматирование даты 3.1 -> 03.01
* учитывать отрицательный баланс

80
budget/article-points.md Normal file
View File

@@ -0,0 +1,80 @@
плюсы:
хорошо описывает стуртуру кода и шаблоны используемые
хоть сам Cursor и не умеет им следовать
можно узнать о новых спецификаторах для Compose
хотя ценность этого низкая
ибо их всё равно можно потом нагуглить
а в самом начале их и использовать не будешь, т.к. вроде и не нужны
но Cursor их проставил, т.к. они могут понадобиться
можно тренироваться делать review и оценивать эффективность своих советов по правкам
писать действительно можно, но динамика не положительная
минусы:
часто ошибается и пишет код не туда, т.е. нарушает архитектуру
приходится постоянно уточнять мысль вместо того, чтобы написать сразу туда
приходится и постоянно делать review/проверку
и как-будто это вместе - повторы уточнений и review - обнуляют эффект положительный
написание кода заменяется написанием этого же кода посредством объяснения, что ощущается тяжелее
ибо в голове уже есть представление, которое хочется просто выместить в виде кода
без промежуточного человеческого описания
не видит упорядоченность по алфавиту функций
не видит в секциях effects/other functions то, что надо передавать конечные значения
а не их контейнеры
в целом, нифига не видит и не понимает проект
результат сильно зависит от того, сколько букв вложишь в описание
и сколько итераций придётся уточнять это описание
ответственность остаётся на человеке
делегировать ничего не получится
ИИ ничему не научится
а лишь делегированием и переносом ответственности можно разгрузить себя
часто не замечаешь, что ИИ сдеал ошибку
ибо сам не пишешь, пропускаешь некоторые моменты
типа pasteSpent я пропустил
хотя везде делаю didClickPaste (и сделал руками)
т.е. точность выше при самостоятельном письме
ну, и мозг лучше работает
а экономию не увидел
из той же области
избавился от функции budgetDisplayPasted
т.к. одна строка и сравнение на самом деле не нужно
цикла ведь нет
а это можно увидеть и почувствовать лишь при записи руками
видео:
~/cursorai
реклама
фотки с Грокс от 14.01
реклама GigaIDE с 25% приростом производительности
Философские вопросы
Если всё так радужно, то почему преподаватели курсов волшебного ИИ
не используют этот самый ИИ для того, чтобы решить свои финансовые проблемы суперэффективно?
вместо этого продают "кожаным мешакам" курсы
ведь ИИ же, зачем платить за рекламу, показываемую "кожаным мешкам"?
ответы
либо сами не верят
либо сами не умеют
либо знают, что это хайп, на котором можно попробовать успеть заработать
Психологически я не считал версию Cursor AI своей
т.е. при использовании ИИ я себя в своих глазах принизил
и это чувствовалось как минус
Если ты не можешь сформулировать проблему, то ИИ ничего не сможет
так что это не Грааль, завладев которым что-то изменится
это именно иной инструмент с кучей минусов и малым количеством плюсов
т.е. это повтор того, как COBOL должен быть помочь избавиться от программистов директорам
а это было в 50-х? 60х? надо найти статью
Если GigaIDE такой крутой продукт, который ускоряет разработку, почему
используют IntelliJ IDEA, а не полностью свою платформу, которую
за 5 минут напишет ИИ? Или за 5 минут не напишет? А за 50 минут разве
тоже не напишет? А за 50 дней тоже не напишет? Вопросы, вопросы...
заметки с телефона
[  ] ИИ: Восхваление: https://habr.com/ru/companies/redmadrobot/articles/978112/
[  ] Вопрос по ИИ: иногда пишет не тот код, а ктоттогда этот ИИ попрпвит, если разработчик сам не знает, насколько сгенеренный код соответствует архитектуре?
[  ] Вопрос ИИ: Да, можно получать старый результат за то же время, но посредством букв. А зачем? Ведь review сам делаешь именно кода. Делегировать не можешь, ведь бужет каша
[  ] Факт ИИ: Шёл 4-й год ИИ-истерии, начиная с ноября 22-го, когда вышел "революционный сервис" (фото на телефоне от 2026-01-15)
[  ] ИИ: А воз и ныне там

78
budget/now.md Normal file
View File

@@ -0,0 +1,78 @@
НАДО:
* исправить weekday, чтобы reportedWeekday был 7, а не 1
в iOS monday == 2
* добавить registerCallback для отладки
* заполнить setupShoulds
* заполнить setupEffects
* подключить функциональность из gb в iOS
* исправить -0%
* сделать Swift extension для возможности вызвать budgetCtrl().set(x, y) без label
* оформить ЗС
https://github.com/kornerr/git-budget/pull/8
* влить ЗС
* CLD:
обновить до 1.3.0
влить подвисший ЗС
* оформить ЗСы с ИИ
https://github.com/kornerr/git-budget/pull/2
https://github.com/kornerr/git-budget/pull/5
добавить ссылки на статью
добавить ссылки на видеозаписи
* восстановить страницу kornerr.ru/git-budget
её же на своём сайте добавить в примеры
либо сделать её на ogs?
* привести в порядок git-budget/README
я ведь по сути дам ссылку лишь на проект
возможно, и в README стоит дать ссылку на kotlintut
* написать статью про Vibe Coding
рассказать про канал kotlintut
рассказать про CLD, entities.yml, Controller/Shoulds/Effects
разметить видео титрами обязательно
возможно, совместить в одно длинное видео
есть ли смысл рассказывать про модель собственно бюджета?
наверно, пока нет
статьи других по ИИ
тут пример работы с агентом (но нет сравнения по скорости)
https://habr.com/ru/companies/haulmont/articles/978172/
> Любые предложения Continue должны проходить такой же код-ревью, как изменения живого разработчика.
> Потенциальные проблемы с приватностью
* продублировать статью на Английском
* не добавлять в lines пустые строки
либо пропускать в joinToString пустые элементы
* разрешить ввод лишь цифр?
* сделать вкладки
один из вариантов - сверху segmented
SingleChoiceSegmentedButtonRow
https://developer.android.com/develop/ui/compose/lists
* пересчитывать значения без input
при F5 нет ввода в поля
но сами значения присутствуют
* хранить предыдущие показания
Git
просто в local storage первое время?
* считать осталось Р/д и для выходных
для выходных не хватает остаточного баланса будней
но сейчас я его не ввожу
ибо стоит это делать лишь после хранения истории в Гит
тогда всё лучше сходится
* тысячи форматировать доппробелами
* сделать вставку из буфера
* сделать кнопку копирования результата
показывать уведомление о факте копирования
чтобы не путаться
* сделать копирование результата в буфер
* расположить начальные суммы и форматирование в репе гита, в настройках
* сделать локализацию EN/RU
выйти на международный рынок типа
комментарии тоже не только русские тогда в коде нужны как-будто