Tomorrow is already #bdxio, for its 10 year anniversary!
You'll find me at the Grappe Numerique booth, organizing new secret events with other local user groups... come and see what's up!
@ivcanet.bsky.social
Kotlin developer & teacher @ 4SH, learn more about me: ivan.canet.dev Open source at https://opensavvy.dev • @opensavvy.techhub.social.ap.brid.gy Organizing the Kotlin Bordeaux User Group at https://bordeauxkt.io
Tomorrow is already #bdxio, for its 10 year anniversary!
You'll find me at the Grappe Numerique booth, organizing new secret events with other local user groups... come and see what's up!
I'm curious to get a more detailed argument 👀
04.11.2025 17:40 — 👍 0 🔁 0 💬 0 📌 0This set of representations for a same value is called a cohort. Zero has 12288 possible representations (24576 if both signed zeros are included, in two different cohorts).
great
01.11.2025 18:20 — 👍 1 🔁 0 💬 0 📌 0@KtorDsl @JvmName("routeOrRaise6") inline fun <reified In : Any, reified Out : Any, reified F1 : Any, reified F2 : Any, reified F3 : Any, reified F4 : Any, reified F5 : Any, reified F6 : Any, reified Params : Parameters> Route.routeWithRaise( endpoint: Endpoint<In, Out, Or<Or<Or<Or<Or<Or<*, ByCode<F1>>, ByCode<F2>>, ByCode<F3>>, ByCode<F4>>, ByCode<F5>>, ByCode<F6>>, Params>, crossinline block: suspend context(Raise<F1>, Raise<F2>, Raise<F3>, Raise<F4>, Raise<F5>, Raise<F6>) TypedResponseScope<In, Out, Or<Or<Or<Or<Or<Or<*, ByCode<F1>>, ByCode<F2>>, ByCode<F3>>, ByCode<F4>>, ByCode<F5>>, ByCode<F6>>, Params>.() -> Unit, ) { route(endpoint) response@{ recover( block = { recover( block = { recover( block = { recover( block = { recover( block = { recover( block = { block() }, recover = { it: F6 -> fail(it) } ) }, recover = { it: F5 -> fail(it) } ) }, recover = { it: F4 -> fail(it) } ) }, recover = { it: F3 -> fail(it) } ) }, recover = { it: F2 -> fail(it) } ) }, recover = { it: F1 -> fail(it) } ) } }
Well, I am trying it out
01.11.2025 16:41 — 👍 1 🔁 0 💬 0 📌 0@KtorDsl @JvmName("routeOrRaise6") inline fun <reified In : Any, reified Out : Any, reified F1 : Any, reified F2 : Any, reified F3 : Any, reified F4 : Any, reified F5 : Any, reified F6 : Any, reified Params : Parameters> Route.routeWithRaise( endpoint: Endpoint<In, Out, Or<Or<Or<Or<Or<Or<*, ByCode<F1>>, ByCode<F2>>, ByCode<F3>>, ByCode<F4>>, ByCode<F5>>, ByCode<F6>>, Params>, crossinline block: suspend context(Raise<F1>, Raise<F2>, Raise<F3>, Raise<F4>, Raise<F5>, Raise<F6>) TypedResponseScope<In, Out, Or<Or<Or<Or<Or<Or<*, ByCode<F1>>, ByCode<F2>>, ByCode<F3>>, ByCode<F4>>, ByCode<F5>>, ByCode<F6>>, Params>.() -> Unit, ) { route(endpoint) response@{ recover( block = { recover( block = { recover( block = { recover( block = { recover( block = { recover( block = { block() }, recover = { it: F6 -> fail(it) } ) }, recover = { it: F5 -> fail(it) } ) }, recover = { it: F4 -> fail(it) } ) }, recover = { it: F3 -> fail(it) } ) }, recover = { it: F2 -> fail(it) } ) }, recover = { it: F1 -> fail(it) } ) } }
It's getting out of hand
01.11.2025 16:40 — 👍 0 🔁 0 💬 0 📌 0That logo is perfect! Congrats @lilywhiteout.bsky.social!
31.10.2025 10:09 — 👍 2 🔁 1 💬 0 📌 0KtMongo 0.24.0 is out, with our new mascot, Mokodee!
This version contains new syntax sugar for $unset, and improvements to the documentation.
ktmongo.opensavvy.dev/news/2025/10...
Happy Halloween everyone!
31.10.2025 09:31 — 👍 6 🔁 2 💬 0 📌 0Documents (28,760,238)
Government website: "Around 15 millions entities"
Me after processing all the data:
The description says ‘Note: we are not on crates.io yet” 🙈
31.10.2025 09:16 — 👍 0 🔁 0 💬 1 📌 0mokodee, but there is a bandage on its tail and a maple leaf on its head
Also I drew mokodee for some reason so @ivcanet.bsky.social this one goes out to you
31.10.2025 05:00 — 👍 8 🔁 1 💬 1 📌 0yeeeeeeees ♥️🎃
31.10.2025 07:20 — 👍 5 🔁 0 💬 0 📌 0Spine is really the project in which I torture the Kotlin spec.
If you haven't, please read the "The trick" section on this page: spine.opensavvy.dev/api-docs/api...
val delete: Endpoint<Unit, Unit, FailureSpec.Or<FailureSpec.Or<FailureSpec.Never, NotFound.Companion>, NotAllowed.Companion>, Parameters.Empty> by delete() .failure(NotFound) .failure(NotAllowed)
I feel like a TypeScript developer
30.10.2025 21:00 — 👍 1 🔁 0 💬 1 📌 0Do you think there's a max inline depth in Kotlin?
27.10.2025 21:42 — 👍 1 🔁 0 💬 1 📌 0FailureSpec.Or<FailureSpec.Or<FailureSpec.Never, FailureSpec<NotFound>>, FailureSpec<AlreadyExists>>
I'm cooking 👀
27.10.2025 20:59 — 👍 2 🔁 0 💬 1 📌 0“My happy marriage”
> 2 seasons
> not married
Bluesky compression was not nice with this one :/
You can find high-resolution Mokodee here: gitlab.com/opensavvy/kt...
I love Java dates
This code fails with
```
UNEXPECTED SERVER ERROR:
Invalid value for MonthOfYear (valid values 1 - 12): 0
```
idk, the scene with dead frogs falling from the sky is forever burned in my memories
17.10.2025 14:40 — 👍 1 🔁 0 💬 1 📌 0That was such a weird movie. I've seen it so many times as a child, it's a very strange memory
17.10.2025 13:12 — 👍 1 🔁 0 💬 1 📌 0That much??? What's in it?
16.10.2025 12:00 — 👍 1 🔁 0 💬 1 📌 0Ah, I didn't know its name
16.10.2025 05:37 — 👍 1 🔁 0 💬 0 📌 0Don't hesitate to fork mine, it's in Kotlin itself 👀
15.10.2025 20:48 — 👍 1 🔁 0 💬 0 📌 0What's Rouge?
15.10.2025 20:19 — 👍 1 🔁 0 💬 1 📌 0Yeah I understand why old people are always complaining about computers not working right
It's actually impressive how bad we are at everything
IntelliJ you're tired, go to sleep
15.10.2025 16:56 — 👍 1 🔁 0 💬 1 📌 0👀
15.10.2025 15:07 — 👍 2 🔁 0 💬 1 📌 0anyways as always tapping the "learned helplessness is a disease" sign. you must never resign yourself to stagnation and rot of mind, body, or soul
13.10.2025 16:26 — 👍 206 🔁 18 💬 4 📌 0