diff --git a/en/news/2026-02_git-budget-android-ios.md b/en/news/2026-02_git-budget-android-ios.md index 7c8139b..9e4b862 100644 --- a/en/news/2026-02_git-budget-android-ios.md +++ b/en/news/2026-02_git-budget-android-ios.md @@ -11,7 +11,7 @@ Lang: en In January I've resurrected GitBudget project for two reasons: 1. Combine job goals and hobby ones because they overlap through Kotlin Multiplatform -2. Evaluate Kotlin Multiplatform in decreasing code duplication among platforms (the positive results are described in [Хабр article][habr]). +2. Evaluate Kotlin Multiplatform in decreasing code duplication among platforms (the positive results are described in [Reddit article][reddit]). [In the distant 2020][gb-old] when I approached GitBudget the first time my main idea was to track history of spendings, not analysis. This time my @@ -23,5 +23,5 @@ analysis. In February I plan to port GitBudget to Desktop with the help of Qt. [gb-old]: git-budget.html -[habr]: https://habr.com/ru/articles/989286/ +[reddit]: https://www.reddit.com/r/KotlinMultiplatform/comments/1rgtn1z/is_kotlin_multiplatform_able_to_cut_development/ [splash]: ../../images/2026-01_git-budget-android-ios.jpg \ No newline at end of file diff --git a/en/news/2026-03_kotlin-dialect.md b/en/news/2026-03_kotlin-dialect.md new file mode 100644 index 0000000..ef4e18d --- /dev/null +++ b/en/news/2026-03_kotlin-dialect.md @@ -0,0 +1,22 @@ +Title: Kotlin dialect +Date: 2026-03-04 +Category: News +Slug: cld-to-kd +Lang: en + +![][splash] + +# February + +I planned to run GitBudget on Desktop with the help of Qt, however, +the rabbit's hole of Kotlin Multiplatform + C++ turned out to be way +deeper than I initially anticipated. Thus, I only managed to confirm the +technical feasibility of the idea and turn Cross-language dialect project +into Kotlin dialect one to have a clear focus on Kotlin. + +# March + +My plan is to continue working on Kotlin dialect up to the point when I'll be +able to run GitBudget on Desktop with the help of Qt. + +[splash]: ../../images/2026-02_cld-to-kd.jpg \ No newline at end of file diff --git a/en/news/cld-to-kd.html b/en/news/cld-to-kd.html new file mode 100644 index 0000000..264ce3d --- /dev/null +++ b/en/news/cld-to-kd.html @@ -0,0 +1,66 @@ + + + +
+ + + + + ++ 2026-03-04 +
+
I planned to run GitBudget on Desktop with the help of Qt, however, +the rabbit's hole of Kotlin Multiplatform + C++ turned out to be way +deeper than I initially anticipated. Thus, I only managed to confirm the +technical feasibility of the idea and turn Cross-language dialect project +into Kotlin dialect one to have a clear focus on Kotlin.
+My plan is to continue working on Kotlin dialect up to the point when I'll be +able to run GitBudget on Desktop with the help of Qt.
+In January I've resurrected GitBudget project for two reasons:
In the distant 2020 when I approached GitBudget the first time my main idea was to track history of spendings, not analysis. This time my diff --git a/en/news/index.html b/en/news/index.html index 189cb64..e01a64e 100644 --- a/en/news/index.html +++ b/en/news/index.html @@ -24,6 +24,29 @@
+ 2026-03-04 +
+
I planned to run GitBudget on Desktop with the help of Qt, however, +the rabbit's hole of Kotlin Multiplatform + C++ turned out to be way +deeper than I initially anticipated. Thus, I only managed to confirm the +technical feasibility of the idea and turn Cross-language dialect project +into Kotlin dialect one to have a clear focus on Kotlin.
+My plan is to continue working on Kotlin dialect up to the point when I'll be +able to run GitBudget on Desktop with the help of Qt.. . .
+In January I've resurrected GitBudget project for two reasons:
In the distant 2020 when I approached GitBudget the first time my main idea was to track history of spendings, not analysis. This time my @@ -244,31 +267,6 @@ time to do that at the moment, unfortunately.. . .
Continue reading- 2025-06-03 -
-In May I created PSKOV 2 editor draft which is only capable of:
-You probably can't see anything substantial in this, however, the listed -functionality is run by a component. In this case it's called WelcomeComponent. -Future functionality like Git and Markdown is expected to follow the same pattern of. . .
-Page 1 of 10
diff --git a/en/news/index10.html b/en/news/index10.html index 2436174..5768e47 100644 --- a/en/news/index10.html +++ b/en/news/index10.html @@ -24,6 +24,26 @@
+ 2015-03-07 00:00 +
+We completed Editor 0.4.0 in January. As it was planned, it only contains basic abilities to open and save a project. The major goal was to make MJIN, Python and Qt work together (we were unable to use PyQt or PySide due to technical difficulties).
+You can see 0.4.0 in action here.
+We started Editor 0.5.0 development in February. It's 45% ready at the moment.
+Editor 0.5.0 planned features:
++ 2025-06-03 +
+In May I created PSKOV 2 editor draft which is only capable of:
+You probably can't see anything substantial in this, however, the listed +functionality is run by a component. In this case it's called WelcomeComponent. +Future functionality like Git and Markdown is expected to follow the same pattern of. . .
+- 2024-09-06 00:00 -
-In August I implemented scene switching, which allowed me to do the following:
-Thus, scenes are good both for focusing on items and moving the player around.. . .
-Page 2 of 10
diff --git a/en/news/index3.html b/en/news/index3.html index 447185a..8d37482 100644 --- a/en/news/index3.html +++ b/en/news/index3.html @@ -24,6 +24,31 @@
+ 2024-09-06 00:00 +
+In August I implemented scene switching, which allowed me to do the following:
+Thus, scenes are good both for focusing on items and moving the player around.. . .
+- 2021-01-28 00:00 -
-
In this article Michael shares his experience of creating durable applications.
-In 2013 Canonical tried to crowdfund Ubuntu Edge smartphone. -Its main feature could be the ability to use the smartphone as a full-fledged -PС. Unfortunatly, the crowdfunding campaign did not accumulate enough money, -so a dream of having a universal device remained to be the dream.
-I've been searching for universality, too, on the software side, -not the hardware one. Today I can confidently say I found the necessary. . .
-Page 3 of 10
diff --git a/en/news/index4.html b/en/news/index4.html index 6be2f1d..42b52eb 100644 --- a/en/news/index4.html +++ b/en/news/index4.html @@ -24,6 +24,27 @@
+ 2021-01-28 00:00 +
+
In this article Michael shares his experience of creating durable applications.
+In 2013 Canonical tried to crowdfund Ubuntu Edge smartphone. +Its main feature could be the ability to use the smartphone as a full-fledged +PС. Unfortunatly, the crowdfunding campaign did not accumulate enough money, +so a dream of having a universal device remained to be the dream.
+I've been searching for universality, too, on the software side, +not the hardware one. Today I can confidently say I found the necessary. . .
+- 2018-10-02 00:00 -
-
We are glad to announce the release of the second demonstration of OGS Mahjong 2. The purposes of this release were to refine our development techniques and build a solid cross-platform foundation.
-Release
-Run the latest version of OGS Mahjong 2 in your web browser: http://ogstudio.github.io/ogs-mahjong
-You are encouraged to run the game with seed parameter like this: http://ogstudio.github.io/ogs-mahjong?seed=0. . .
Page 4 of 10
diff --git a/en/news/index5.html b/en/news/index5.html index b7e7117..8b32b10 100644 --- a/en/news/index5.html +++ b/en/news/index5.html @@ -24,6 +24,24 @@
+ 2018-10-02 00:00 +
+
We are glad to announce the release of the second demonstration of OGS Mahjong 2. The purposes of this release were to refine our development techniques and build a solid cross-platform foundation.
+Release
+Run the latest version of OGS Mahjong 2 in your web browser: http://ogstudio.github.io/ogs-mahjong
+You are encouraged to run the game with seed parameter like this: http://ogstudio.github.io/ogs-mahjong?seed=0. . .
- 2017-09-10 00:00 -
-
This article describes the birth of MJIN world in August 2017.
-mjin-player
-As you know, we spent July to research scripting. We found a solution that satisfies the following criteria. Scripts should:
-We have verified the second criterion by writing a sample application. The first criterion was taken for granted because it SHOULD be true.. . .
-Page 5 of 10
diff --git a/en/news/index6.html b/en/news/index6.html index 3f1c200..dc6a6f6 100644 --- a/en/news/index6.html +++ b/en/news/index6.html @@ -24,6 +24,28 @@
+ 2017-09-10 00:00 +
+
This article describes the birth of MJIN world in August 2017.
+mjin-player
+As you know, we spent July to research scripting. We found a solution that satisfies the following criteria. Scripts should:
+We have verified the second criterion by writing a sample application. The first criterion was taken for granted because it SHOULD be true.. . .
+- 2016-12-15 00:00 -
-
This article describes the start of MJIN library separation into modules.
-Once we built OpenSceneGraph for Android, it became obvious that some MJIN functionality is not suitable for Android. For example, UIQt provides a basis for OGS Editor UI. Since OGS Editor is a desktop application, we don't need UIQt for Android.
-We decided to have a look at two approaches to separate MJIN into modules: build-time separation and run-time one. -Build-time separation means MJIN becomes highly configurable and each platform gets specifically tailored MJIN build.. . .
-Page 6 of 10
diff --git a/en/news/index7.html b/en/news/index7.html index 6ef6a5a..e119449 100644 --- a/en/news/index7.html +++ b/en/news/index7.html @@ -24,6 +24,24 @@
+ 2016-12-15 00:00 +
+
This article describes the start of MJIN library separation into modules.
+Once we built OpenSceneGraph for Android, it became obvious that some MJIN functionality is not suitable for Android. For example, UIQt provides a basis for OGS Editor UI. Since OGS Editor is a desktop application, we don't need UIQt for Android.
+We decided to have a look at two approaches to separate MJIN into modules: build-time separation and run-time one. +Build-time separation means MJIN becomes highly configurable and each platform gets specifically tailored MJIN build.. . .
+- 2016-08-18 00:00 -
-If you follow us on Facebook, Twitter, or VK you noticed we started to use them again. That's no coincidence: we're finally ready to communicate our progress verbally after 4 years of almost silent development.
-Follow us to stay up-to-date!
-. . .
-Page 7 of 10
diff --git a/en/news/index8.html b/en/news/index8.html index c8ed74e..98892eb 100644 --- a/en/news/index8.html +++ b/en/news/index8.html @@ -24,6 +24,22 @@
+ 2016-08-18 00:00 +
+If you follow us on Facebook, Twitter, or VK you noticed we started to use them again. That's no coincidence: we're finally ready to communicate our progress verbally after 4 years of almost silent development.
+Follow us to stay up-to-date!
+. . .
+- 2015-12-26 00:00 -
-As you know, according to the previously published roadmap, we now have sound system in place. However, we decided to go further and implement the first version of Player. We wanted to get it done by December, but, unfortunately, more work resulted in the change of dates.
-Here's the revised roadmap for the first half of 2016:
-Page 8 of 10
diff --git a/en/news/index9.html b/en/news/index9.html index a42cece..74393f2 100644 --- a/en/news/index9.html +++ b/en/news/index9.html @@ -24,6 +24,25 @@
+ 2015-12-26 00:00 +
+As you know, according to the previously published roadmap, we now have sound system in place. However, we decided to go further and implement the first version of Player. We wanted to get it done by December, but, unfortunately, more work resulted in the change of dates.
+Here's the revised roadmap for the first half of 2016:
+- 2015-03-07 00:00 -
-We completed Editor 0.4.0 in January. As it was planned, it only contains basic abilities to open and save a project. The major goal was to make MJIN, Python and Qt work together (we were unable to use PyQt or PySide due to technical difficulties).
-You can see 0.4.0 in action here.
-We started Editor 0.5.0 development in February. It's 45% ready at the moment.
-Editor 0.5.0 planned features:
-Page 9 of 10
diff --git a/images/2026-02_cld-to-kd.jpg b/images/2026-02_cld-to-kd.jpg new file mode 100644 index 0000000..c1f941d Binary files /dev/null and b/images/2026-02_cld-to-kd.jpg differ diff --git a/ru/news/2026-03_kotlin-dialect.md b/ru/news/2026-03_kotlin-dialect.md new file mode 100644 index 0000000..7987206 --- /dev/null +++ b/ru/news/2026-03_kotlin-dialect.md @@ -0,0 +1,22 @@ +Title: Диалект Котлина +Date: 2026-03-04 +Category: News +Slug: cld-to-kd +Lang: ru + +![][splash] + +# Февраль + +В феврале планировал запустить GitBudget на Desktop с помощью Qt, но +глубина кроличьей норы Kotlin Multiplatform + C++ превзошла мои ожидания. +В итоге, за февраль мне удалось лишь проверить техническую осуществимость +задуманного, и преобразовать проект Cross-language dialect в Kotlin dialect, +чтобы сосредоточиться на Kotlin. + +# Март + +В марте продолжу работу над проектом Kotlin dialect до состояния, когда удастся +запустить GitBudget на Desktop с помощью Qt. + +[splash]: ../../images/2026-02_cld-to-kd.jpg \ No newline at end of file diff --git a/ru/news/cld-to-kd.html b/ru/news/cld-to-kd.html new file mode 100644 index 0000000..7b2725d --- /dev/null +++ b/ru/news/cld-to-kd.html @@ -0,0 +1,66 @@ + + + +
+ + + + + ++ 2026-03-04 +
+
В феврале планировал запустить GitBudget на Desktop с помощью Qt, но +глубина кроличьей норы Kotlin Multiplatform + C++ превзошла мои ожидания. +В итоге, за февраль мне удалось лишь проверить техническую осуществимость +задуманного, и преобразовать проект Cross-language dialect в Kotlin dialect, +чтобы сосредоточиться на Kotlin.
+В марте продолжу работу над проектом Kotlin dialect до состояния, когда удастся +запустить GitBudget на Desktop с помощью Qt.
++ 2026-03-04 +
+
В феврале планировал запустить GitBudget на Desktop с помощью Qt, но +глубина кроличьей норы Kotlin Multiplatform + C++ превзошла мои ожидания. +В итоге, за февраль мне удалось лишь проверить техническую осуществимость +задуманного, и преобразовать проект Cross-language dialect в Kotlin dialect, +чтобы сосредоточиться на Kotlin.
+В марте продолжу работу над проектом Kotlin dialect до состояния, когда удастся +запустить GitBudget на Desktop с помощью Qt.
+. . .
+- 2025-06-03 -
-В мае сделал заготовку редактора ПСКОВ 2, которая умеет лишь:
-Функционально в этом сложно увидеть что-либо занимательное. Но -таковое есть: и левое меню, и содержимое управляются компонентом, -в данном случае WelcomeComponent. Будущая функциональность вроде Git. . .
-Страница 1 из 10
diff --git a/ru/news/index10.html b/ru/news/index10.html index 42c2583..9a71a45 100644 --- a/ru/news/index10.html +++ b/ru/news/index10.html @@ -24,6 +24,22 @@
+ 2015-03-07 00:00 +
+Мы завершили работу над версией 0.4.0 редактора в январе. Как было запланировано, эта версия содержит лишь базовые возможности открыть и сохранить проект. Основная цель была в том, чтобы подружить MJIN, Python и Qt (в частности, по ряду технических причин мы не смогли использовать PyQt или PySide).
+Вы можете увидеть 0.4.0 в действии здесь.
+Мы начали разработку Редактора 0.5.0 в феврале, на текущий момент сделаны 45% работ.. . .
++ 2025-06-03 +
+В мае сделал заготовку редактора ПСКОВ 2, которая умеет лишь:
+Функционально в этом сложно увидеть что-либо занимательное. Но +таковое есть: и левое меню, и содержимое управляются компонентом, +в данном случае WelcomeComponent. Будущая функциональность вроде Git. . .
+- 2024-09-06 00:00 -
-В августе сделал переключение сцен, после чего стало возможно следующее:
-Таким образом, сцены хорошо решают вопросы как фокусирования на предметах,. . .
-Страница 2 из 10
diff --git a/ru/news/index3.html b/ru/news/index3.html index 1f51443..11a24c3 100644 --- a/ru/news/index3.html +++ b/ru/news/index3.html @@ -24,6 +24,31 @@
+ 2024-09-06 00:00 +
+В августе сделал переключение сцен, после чего стало возможно следующее:
+Таким образом, сцены хорошо решают вопросы как фокусирования на предметах,. . .
+- 2021-01-28 00:00 -
-
В этой статье Михаил поделится опытом создания доступных долговечных приложений.
-В 2013 году компания Canonical пыталась собрать средства на выпуск смартфона -Ubuntu Edge. Особенностью продукта должна была стать возможность -преобразовывать смартфон в полноценный ПК. Увы, необходимую сумму собрать не -удалось, поэтому мечта создать универсальное устройство так и осталась мечтой.
-Со своей стороны я давно искал универсальность со стороны программного -обеспечения, не железа. Сегодня с уверенностью могу сказать, что нашёл. . .
-Страница 3 из 10
diff --git a/ru/news/index4.html b/ru/news/index4.html index cf96f54..6a1d445 100644 --- a/ru/news/index4.html +++ b/ru/news/index4.html @@ -24,6 +24,27 @@
+ 2021-01-28 00:00 +
+
В этой статье Михаил поделится опытом создания доступных долговечных приложений.
+В 2013 году компания Canonical пыталась собрать средства на выпуск смартфона +Ubuntu Edge. Особенностью продукта должна была стать возможность +преобразовывать смартфон в полноценный ПК. Увы, необходимую сумму собрать не +удалось, поэтому мечта создать универсальное устройство так и осталась мечтой.
+Со своей стороны я давно искал универсальность со стороны программного +обеспечения, не железа. Сегодня с уверенностью могу сказать, что нашёл. . .
+- 2018-10-02 00:00 -
-
Мы рады сообщить о выпуске второй демонстрации OGS Mahjong 2. Её целью были улучшение техники разработки и создание надёжной основы кроссплатформенной разработки.
-Выпуск
-Запустите последний выпуск OGS Mahjong 2 в вашем браузере: http://ogstudio.github.io/ogs-mahjong
-Рекомендуем запускать игру с параметром seed следующим образом: http://ogstudio.github.io/ogs-mahjong?seed=0. . .
Страница 4 из 10
diff --git a/ru/news/index5.html b/ru/news/index5.html index f559792..73ff7c0 100644 --- a/ru/news/index5.html +++ b/ru/news/index5.html @@ -24,6 +24,24 @@
+ 2018-10-02 00:00 +
+
Мы рады сообщить о выпуске второй демонстрации OGS Mahjong 2. Её целью были улучшение техники разработки и создание надёжной основы кроссплатформенной разработки.
+Выпуск
+Запустите последний выпуск OGS Mahjong 2 в вашем браузере: http://ogstudio.github.io/ogs-mahjong
+Рекомендуем запускать игру с параметром seed следующим образом: http://ogstudio.github.io/ogs-mahjong?seed=0. . .
- 2017-09-10 00:00 -
-
Эта статья описывает рождение вселенной MJIN в августе 2017.
-mjin-player
-Как вы знаете, в июле мы изучали скриптование. Мы нашли решение, которое удовлетворяет следующим критериям. Скрипты должны:
-Мы проверили второй критерий в рамках тестового приложения. В первый критерий мы просто поверили, т.к. он ДОЛЖЕН быть верен.. . .
-Страница 5 из 10
diff --git a/ru/news/index6.html b/ru/news/index6.html index e39114a..c9fd671 100644 --- a/ru/news/index6.html +++ b/ru/news/index6.html @@ -24,6 +24,28 @@
+ 2017-09-10 00:00 +
+
Эта статья описывает рождение вселенной MJIN в августе 2017.
+mjin-player
+Как вы знаете, в июле мы изучали скриптование. Мы нашли решение, которое удовлетворяет следующим критериям. Скрипты должны:
+Мы проверили второй критерий в рамках тестового приложения. В первый критерий мы просто поверили, т.к. он ДОЛЖЕН быть верен.. . .
+- 2016-12-15 00:00 -
-
Эта статья описывает начало разделения библиотеки MJIN на модули.
-Как только мы собрали OpenSceneGraph для Android, стало очевидно, что часть функционала MJIN не нужна на Android. Например, UIQt - это основа интерфейса Редактора. Раз Редактор - это приложение для ПК, то UIQt не нужен на Android.
-Мы решили рассмотреть два подхода к разделению MJIN на модули: во время сборки (build-time) и исполнения (run-time). -Разделение во время сборки означает гибкую систему настроек MJIN, что позволит собирать её различно под каждую платформу.. . .
-Страница 6 из 10
diff --git a/ru/news/index7.html b/ru/news/index7.html index 3ee0006..8de98cc 100644 --- a/ru/news/index7.html +++ b/ru/news/index7.html @@ -24,6 +24,24 @@
+ 2016-12-15 00:00 +
+
Эта статья описывает начало разделения библиотеки MJIN на модули.
+Как только мы собрали OpenSceneGraph для Android, стало очевидно, что часть функционала MJIN не нужна на Android. Например, UIQt - это основа интерфейса Редактора. Раз Редактор - это приложение для ПК, то UIQt не нужен на Android.
+Мы решили рассмотреть два подхода к разделению MJIN на модули: во время сборки (build-time) и исполнения (run-time). +Разделение во время сборки означает гибкую систему настроек MJIN, что позволит собирать её различно под каждую платформу.. . .
+- 2016-08-18 00:00 -
-Если вы подписаны на нашу группу в Facebook, Twitter или VK, вы заметили, что мы начали использовать её снова. Это не случайно: мы наконец созрели для вербального общения после 4 лет молчаливой разработки.
-Подписывайтесь!
-. . .
-Страница 7 из 10
diff --git a/ru/news/index8.html b/ru/news/index8.html index 9c33e5d..430996c 100644 --- a/ru/news/index8.html +++ b/ru/news/index8.html @@ -24,6 +24,22 @@
+ 2016-08-18 00:00 +
+Если вы подписаны на нашу группу в Facebook, Twitter или VK, вы заметили, что мы начали использовать её снова. Это не случайно: мы наконец созрели для вербального общения после 4 лет молчаливой разработки.
+Подписывайтесь!
+. . .
+- 2015-12-26 00:00 -
-Как вы знаете, согласно ранее опубликованной дорожной карте, мы добавили звуковую систему. Тем не менее, мы решили пойти дальше и создать первую версию Проигрывателя. Мы хотели завершить его в декабре, но, к сожалению, изменение планов вылилось в изменение сроков.
-Представляем вам обновлённую дорожную карту на первую половину 2016:
-Страница 8 из 10
diff --git a/ru/news/index9.html b/ru/news/index9.html index 19b9cf3..347a1a6 100644 --- a/ru/news/index9.html +++ b/ru/news/index9.html @@ -24,6 +24,25 @@
+ 2015-12-26 00:00 +
+Как вы знаете, согласно ранее опубликованной дорожной карте, мы добавили звуковую систему. Тем не менее, мы решили пойти дальше и создать первую версию Проигрывателя. Мы хотели завершить его в декабре, но, к сожалению, изменение планов вылилось в изменение сроков.
+Представляем вам обновлённую дорожную карту на первую половину 2016:
+- 2015-03-07 00:00 -
-Мы завершили работу над версией 0.4.0 редактора в январе. Как было запланировано, эта версия содержит лишь базовые возможности открыть и сохранить проект. Основная цель была в том, чтобы подружить MJIN, Python и Qt (в частности, по ряду технических причин мы не смогли использовать PyQt или PySide).
-Вы можете увидеть 0.4.0 в действии здесь.
-Мы начали разработку Редактора 0.5.0 в феврале, на текущий момент сделаны 45% работ.. . .
-Страница 9 из 10