diff --git a/en/news/2025-09_kotlin-cross.md b/en/news/2025-09_kotlin-cross.md new file mode 100644 index 0000000..19b0ea8 --- /dev/null +++ b/en/news/2025-09_kotlin-cross.md @@ -0,0 +1,30 @@ +Title: The turn to cross-platform solutions +Date: 2025-09-03 +Category: News +Slug: kotlin-cross +Lang: en + +![][splash] + +# The clash with git push limits + +In August I've added `git commit` and `git push` commands to PSKOV. +However, it became clear that Vercel (we use the service to host CORS +proxy) does not allow `git push` requests for a moderately sized +repository (50M) of this very site. Vercel returns `413 Content +too large` error. + +Thus, to support `git push` for moderately sized repositories, I would +need to run my own server with CORS proxy. I have neither money, nor +time to do that at the moment, unfortunately. + +That's why, having stumpled upon the wall of reality once again, I have to +retreat: PSKOV will now be a Node.js application that generate sites +locally. A user can manager Git himself. + +# September + +In September I will create the first version of PSKOV for Node.js +using Kotlin Multiplatform. + +[splash]: ../../images/2025-09_push-error.jpg diff --git a/en/news/index.html b/en/news/index.html index 6977d6a..3674289 100644 --- a/en/news/index.html +++ b/en/news/index.html @@ -25,6 +25,28 @@
+ 2025-09-03 +
+
In August I've added git commit and git push commands to PSKOV.
+However, it became clear that Vercel (we use the service to host CORS
+proxy) does not allow git push requests for a moderately sized
+repository (50M) of this very site. Vercel returns 413 Content
+too large error.
Thus, to support git push for moderately sized repositories, I would
+need to run my own server with CORS proxy. I have neither money, nor
+time to do that at the moment, unfortunately.. . .
- 2024-12-09 00:00 -
-
Tiny web server called Local Host Access (LHA) is ready to replace -Local File System Access (LFSA) on JVM and macOS: I've generated this -very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for -cross-platform development with a minor limitation.
-The minor limitation is the fact that 99% of Kotlin is used on JVM. The -remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows. -Thus, when one needs something as simple as to find out if a symlink. . .
-Page 1 of 9
diff --git a/en/news/index2.html b/en/news/index2.html index 65e7a4d..060d02a 100644 --- a/en/news/index2.html +++ b/en/news/index2.html @@ -25,6 +25,27 @@
+ 2024-12-09 00:00 +
+
Tiny web server called Local Host Access (LHA) is ready to replace +Local File System Access (LFSA) on JVM and macOS: I've generated this +very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for +cross-platform development with a minor limitation.
+The minor limitation is the fact that 99% of Kotlin is used on JVM. The +remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows. +Thus, when one needs something as simple as to find out if a symlink. . .
+- 2024-03-10 00:00 -
-I spent January and February making Bus pattern implementation in Swift for iOS. -The end result looks nice to me.
-I have also done load testing. Turns out, the Bus is 92 times more expensive -than a function call. Nonetheless, this doesn't mean the Bus is bad. On the -contrary, the numbers highlight the Bus should be used in architectural -glue code where it can save up to 30% of code
-This example demonstrates several states rendered through a single instance:. . .
-Page 2 of 9
diff --git a/en/news/index3.html b/en/news/index3.html index 430d65d..8c5c1b2 100644 --- a/en/news/index3.html +++ b/en/news/index3.html @@ -25,6 +25,26 @@
+ 2024-03-10 00:00 +
+I spent January and February making Bus pattern implementation in Swift for iOS. +The end result looks nice to me.
+I have also done load testing. Turns out, the Bus is 92 times more expensive +than a function call. Nonetheless, this doesn't mean the Bus is bad. On the +contrary, the numbers highlight the Bus should be used in architectural +glue code where it can save up to 30% of code
+This example demonstrates several states rendered through a single instance:. . .
+- 2019-02-04 00:00 -
-
In this article, Michael shares his experience of teaching kids to program.
-Here's what he covers:
-Organization of the learning process
-The learning process is conducted as part of corporate social responsibility: a company provides a room with equipment and connects employees that want to try themselves in the role of teachers with employees that want their kids educated. All this is done voluntarily.. . .
-Page 3 of 9
diff --git a/en/news/index4.html b/en/news/index4.html index ced27cb..81c66df 100644 --- a/en/news/index4.html +++ b/en/news/index4.html @@ -25,6 +25,31 @@
+ 2019-02-04 00:00 +
+
In this article, Michael shares his experience of teaching kids to program.
+Here's what he covers:
+Organization of the learning process
+The learning process is conducted as part of corporate social responsibility: a company provides a room with equipment and connects employees that want to try themselves in the role of teachers with employees that want their kids educated. All this is done voluntarily.. . .
+- 2017-12-31 22:00 -
-
So, the year 2017 is approaching its finale, the year's results have already been summed up. We're going to take a break from igniting the fireworks or preparation of the champagne so that we can designate our goal for the following year.
-As it may be clear from other articles on the site, half of our plans in 2017 were destined to be completed at least approximately as we assumed. The other half was changed significantly.
-During the year, people joined the team and left it. As a result, we meet the end of the year with exactly the same team as 365 days ago. It made us think. A lot. But We'll save the story for another time.. . .
-Page 4 of 9
diff --git a/en/news/index5.html b/en/news/index5.html index f2d64ec..cfc398c 100644 --- a/en/news/index5.html +++ b/en/news/index5.html @@ -25,6 +25,22 @@
+ 2017-12-31 22:00 +
+
So, the year 2017 is approaching its finale, the year's results have already been summed up. We're going to take a break from igniting the fireworks or preparation of the champagne so that we can designate our goal for the following year.
+As it may be clear from other articles on the site, half of our plans in 2017 were destined to be completed at least approximately as we assumed. The other half was changed significantly.
+During the year, people joined the team and left it. As a result, we meet the end of the year with exactly the same team as 365 days ago. It made us think. A lot. But We'll save the story for another time.. . .
+- 2017-03-16 00:00 -
-
In this article we describe our progress in January and February of 2017: rendering under iOS/Web and a new tutorial tool.
-Rendering under iOS/Web
-To our surprise, we got a simple red cube rendered under iOS and Web pretty fast: in early February. However, this is only the beginning of this year's challenge to support Android, iOS, and Web platforms. There's a long and bumpy road ahead of us as we need a lot more on each platform before we can claim a success: visual effects, Python scripting, data archives.. . .
-Page 5 of 9
diff --git a/en/news/index6.html b/en/news/index6.html index ae8d721..82776ec 100644 --- a/en/news/index6.html +++ b/en/news/index6.html @@ -25,6 +25,22 @@
+ 2017-03-16 00:00 +
+
In this article we describe our progress in January and February of 2017: rendering under iOS/Web and a new tutorial tool.
+Rendering under iOS/Web
+To our surprise, we got a simple red cube rendered under iOS and Web pretty fast: in early February. However, this is only the beginning of this year's challenge to support Android, iOS, and Web platforms. There's a long and bumpy road ahead of us as we need a lot more on each platform before we can claim a success: visual effects, Python scripting, data archives.. . .
+- 2016-09-24 00:00 -
-Get ready for live session, it's about to happen in 24 hours! -. . .
-Page 6 of 9
diff --git a/en/news/index7.html b/en/news/index7.html index 91ef661..a302659 100644 --- a/en/news/index7.html +++ b/en/news/index7.html @@ -25,6 +25,21 @@
+ 2016-09-24 00:00 +
+Get ready for live session, it's about to happen in 24 hours! +. . .
+- 2016-02-02 00:00 -
-Unfortunately, we have failed to finish creation of the simple "Rolling ball" game in 3 hours. That's why we will hold the second LiveCoding session on 7 February 2016 at 12:00 CET.
-Let's finish the game! -. . .
-Page 7 of 9
diff --git a/en/news/index8.html b/en/news/index8.html index 6da9574..43d335b 100644 --- a/en/news/index8.html +++ b/en/news/index8.html @@ -25,6 +25,21 @@
+ 2016-02-02 00:00 +
+Unfortunately, we have failed to finish creation of the simple "Rolling ball" game in 3 hours. That's why we will hold the second LiveCoding session on 7 February 2016 at 12:00 CET.
+Let's finish the game! +. . .
+- 2015-07-19 00:00 -
-As promised, we have come up with a list of milestones and their approximate dates for the coming year:
-Page 8 of 9
diff --git a/en/news/index9.html b/en/news/index9.html index fa28a58..f608e0a 100644 --- a/en/news/index9.html +++ b/en/news/index9.html @@ -25,6 +25,25 @@
+ 2015-07-19 00:00 +
+As promised, we have come up with a list of milestones and their approximate dates for the coming year:
++ 2025-09-03 +
+
In August I've added git commit and git push commands to PSKOV.
+However, it became clear that Vercel (we use the service to host CORS
+proxy) does not allow git push requests for a moderately sized
+repository (50M) of this very site. Vercel returns 413 Content
+too large error.
Thus, to support git push for moderately sized repositories, I would
+need to run my own server with CORS proxy. I have neither money, nor
+time to do that at the moment, unfortunately.
That's why, having stumpled upon the wall of reality once again, I have to +retreat: PSKOV will now be a Node.js application that generate sites +locally. A user can manager Git himself.
+In September I will create the first version of PSKOV for Node.js +using Kotlin Multiplatform.
++ 2025-09-03 +
+
В Августе я добавил команды git commit и git push к ПСКОВу.
+Однако, выяснилось, что Vercel (на этом сервисе мы держим CORS proxy)
+не пропускает запросы git push для довольного скромного по размерам
+репозитория (50M) этого самого сайта. Vercel выдаёт ошибку 413 Content
+too large.
Таким образом, поддержка git push для репозиториев нормального размера
+требует от меня настройки и поддержки собственного сервера. На это
+у меня сейчас нет ни средств, ни времени, к сожалению.. . .
- 2024-12-09 00:00 -
-
Крошечный веб-сервер Local Host Access (LHA) готов заменить -Local File System Access (LFSA) на JVM и macOS: я сгенерировал -эту статью с помощью LHA на macOS. Таким образом, Kotlin оказался -хорошим языком для кросс-платформенной разработки, правда, с небольшим -ограничением.
-Это небольшое ограничение состоит в том, что 99% разработки Kotlin приходится -на JVM. Остальные 99% - на так называемый Kotlin Native для работы с iOS, -Linux, macOS и Windows. Таким образом, если кому-либо понадобится что-либо. . .
-Страница 1 из 9
diff --git a/ru/news/index2.html b/ru/news/index2.html index cc1611b..cedcb25 100644 --- a/ru/news/index2.html +++ b/ru/news/index2.html @@ -25,6 +25,28 @@
+ 2024-12-09 00:00 +
+
Крошечный веб-сервер Local Host Access (LHA) готов заменить +Local File System Access (LFSA) на JVM и macOS: я сгенерировал +эту статью с помощью LHA на macOS. Таким образом, Kotlin оказался +хорошим языком для кросс-платформенной разработки, правда, с небольшим +ограничением.
+Это небольшое ограничение состоит в том, что 99% разработки Kotlin приходится +на JVM. Остальные 99% - на так называемый Kotlin Native для работы с iOS, +Linux, macOS и Windows. Таким образом, если кому-либо понадобится что-либо. . .
+- 2024-03-10 00:00 -
-За январь и февраль довёл реализацию шаблона Шина на Swift до хорошего состояния -для iOS.
-Провёл нагрузочное тестирование. Оказалось, что общение элементов -приложения через Шину примерно в 92 раза медленнее обычного вызова функции. -И это говорит не о том, что Шина плоха. Наоборот, это говорит о том, что -Шина должна использоваться в архитектурных склейках кода, что позволяет -сократить такой код примерно на 30%.
-Так выглядит пример с использованием нескольких состояний, отображаемых. . .
-Страница 2 из 9
diff --git a/ru/news/index3.html b/ru/news/index3.html index d9f6d19..1205470 100644 --- a/ru/news/index3.html +++ b/ru/news/index3.html @@ -25,6 +25,27 @@
+ 2024-03-10 00:00 +
+За январь и февраль довёл реализацию шаблона Шина на Swift до хорошего состояния +для iOS.
+Провёл нагрузочное тестирование. Оказалось, что общение элементов +приложения через Шину примерно в 92 раза медленнее обычного вызова функции. +И это говорит не о том, что Шина плоха. Наоборот, это говорит о том, что +Шина должна использоваться в архитектурных склейках кода, что позволяет +сократить такой код примерно на 30%.
+Так выглядит пример с использованием нескольких состояний, отображаемых. . .
+- 2019-02-04 00:00 -
-
В этой статье Михаил делится своим опытом обучения детей программированию.
-Он расскажет о следующем:
-Организация процесса обучения
-Обучение проходит в рамках социальной ответственности бизнеса: компания предоставляет помещение с оборудованием, а также объединяет сотрудников, желающих попробовать себя в роли преподавателей, с сотрудниками, желающими обучить своих детей. Всё это исключительно на добровольной основе.. . .
-Страница 3 из 9
diff --git a/ru/news/index4.html b/ru/news/index4.html index 68ab6c0..3ee545a 100644 --- a/ru/news/index4.html +++ b/ru/news/index4.html @@ -25,6 +25,31 @@
+ 2019-02-04 00:00 +
+
В этой статье Михаил делится своим опытом обучения детей программированию.
+Он расскажет о следующем:
+Организация процесса обучения
+Обучение проходит в рамках социальной ответственности бизнеса: компания предоставляет помещение с оборудованием, а также объединяет сотрудников, желающих попробовать себя в роли преподавателей, с сотрудниками, желающими обучить своих детей. Всё это исключительно на добровольной основе.. . .
+- 2017-12-31 22:00 -
-
Итак, 2017й год стремительно приближается к финалу, итоги года уже подведены, так что в свободное от расчехления фейерверков и подготовки систем залпового огня шампанским время мы обозначим свою цель в следующем году.
-Как, наверное, понятно из других статей на сайте, примерно половине наших планов в 2017 году было суждено осуществиться хотя бы приблизительно так как мы предполагали, остальные поменялись существенно.
-В течение года люди приходили в команду, уходили из нее, в итоге конец года мы встречаем с тем же составом что и 365 дней назад. Это заставило нас задуматься, но о выводах как-нибудь в другой раз.. . .
-Страница 4 из 9
diff --git a/ru/news/index5.html b/ru/news/index5.html index 61d4bad..5ef575c 100644 --- a/ru/news/index5.html +++ b/ru/news/index5.html @@ -25,6 +25,22 @@
+ 2017-12-31 22:00 +
+
Итак, 2017й год стремительно приближается к финалу, итоги года уже подведены, так что в свободное от расчехления фейерверков и подготовки систем залпового огня шампанским время мы обозначим свою цель в следующем году.
+Как, наверное, понятно из других статей на сайте, примерно половине наших планов в 2017 году было суждено осуществиться хотя бы приблизительно так как мы предполагали, остальные поменялись существенно.
+В течение года люди приходили в команду, уходили из нее, в итоге конец года мы встречаем с тем же составом что и 365 дней назад. Это заставило нас задуматься, но о выводах как-нибудь в другой раз.. . .
+- 2017-03-16 00:00 -
-
В этой статье мы расскажем о результатах нашей работы в январе и феврале 2017: отображении куба на iOS/Веб и нашем инструменте для создания самоучителей.
-Отображение куба на iOS/Web
-К нашему удивлению, мы смогли отобразить простой красный куб на iOS и Веб довольно быстро: в начале февраля. Тем не менее, это лишь начало поддержки платформ Android, iOS и Веб. Впереди нас ждёт тернистая дорога, т.к. нам предстоит сделать ещё много вещей, прежде чем мы сможем объявить о полноценной поддержке этих платформ: визуальные эффекты, скрипты Python, архивы данных.. . .
-Страница 5 из 9
diff --git a/ru/news/index6.html b/ru/news/index6.html index becd4aa..0f515b8 100644 --- a/ru/news/index6.html +++ b/ru/news/index6.html @@ -25,6 +25,22 @@
+ 2017-03-16 00:00 +
+
В этой статье мы расскажем о результатах нашей работы в январе и феврале 2017: отображении куба на iOS/Веб и нашем инструменте для создания самоучителей.
+Отображение куба на iOS/Web
+К нашему удивлению, мы смогли отобразить простой красный куб на iOS и Веб довольно быстро: в начале февраля. Тем не менее, это лишь начало поддержки платформ Android, iOS и Веб. Впереди нас ждёт тернистая дорога, т.к. нам предстоит сделать ещё много вещей, прежде чем мы сможем объявить о полноценной поддержке этих платформ: визуальные эффекты, скрипты Python, архивы данных.. . .
+- 2016-09-24 00:00 -
-Приготовьтесь к прямому эфиру, он начнётся через 24 часа! -. . .
-Страница 6 из 9
diff --git a/ru/news/index7.html b/ru/news/index7.html index c17b499..5bb75d7 100644 --- a/ru/news/index7.html +++ b/ru/news/index7.html @@ -25,6 +25,21 @@
+ 2016-09-24 00:00 +
+Приготовьтесь к прямому эфиру, он начнётся через 24 часа! +. . .
+- 2016-02-02 00:00 -
-К сожалению, нам не удалось завершить создание простой игры "Катящийся мяч" за 3 часа. Поэтому вторая часть трансляции LiveCoding состоится 7 февраля 2016 в 14:00 MSK.. . .
-Страница 7 из 9
diff --git a/ru/news/index8.html b/ru/news/index8.html index 9b3239b..87c08e1 100644 --- a/ru/news/index8.html +++ b/ru/news/index8.html @@ -25,6 +25,19 @@
+ 2016-02-02 00:00 +
+К сожалению, нам не удалось завершить создание простой игры "Катящийся мяч" за 3 часа. Поэтому вторая часть трансляции LiveCoding состоится 7 февраля 2016 в 14:00 MSK.. . .
+- 2015-07-19 00:00 -
-Как и было обещано, мы составили список вех и их примерные даты на ближайший год:
-Страница 8 из 9
diff --git a/ru/news/index9.html b/ru/news/index9.html index 9311cfd..a17f770 100644 --- a/ru/news/index9.html +++ b/ru/news/index9.html @@ -25,6 +25,25 @@
+ 2015-07-19 00:00 +
+Как и было обещано, мы составили список вех и их примерные даты на ближайший год:
++ 2025-09-03 +
+
В Августе я добавил команды git commit и git push к ПСКОВу.
+Однако, выяснилось, что Vercel (на этом сервисе мы держим CORS proxy)
+не пропускает запросы git push для довольного скромного по размерам
+репозитория (50M) этого самого сайта. Vercel выдаёт ошибку 413 Content
+too large.
Таким образом, поддержка git push для репозиториев нормального размера
+требует от меня настройки и поддержки собственного сервера. На это
+у меня сейчас нет ни средств, ни времени, к сожалению.
Поэтому, столкнувшися в очередной раз со стеной действительности, приходится +отойти на следующую позицию: ПСКОВ теперь будет приложением Node.js, +генерирующим сайт локально. Гитом пусть сам пользователь +занимается.
+В сентябре создам заготовку ПСКОВа на Node.js с использованием +Kotlin Multiplatform.
+