Sign in

Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️)

@asm0dey.site
304 followers 261 following 376 posts

Developer advocate for @BellSoft Love people, both listen and talk to asm0dey.site

PostsRepliesMedia
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 13/04/2026
🛫BER -> AMS -> BCL🛬 Let's go! @springio.net I'm coming to you! One of my favourite conferences, BTW, which stably brings me into top-100 viewed tech talks of the year
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 20/11/2025
It seems the last business trip this year starts: going to talk at jug.cy hosted by @a-kogun.bsky.social Catch my of you can at www.meetup.com/jug-cy/event...
020
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 29/10/2025
Be careful with that, please.
100
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 18/09/2025
It's this time of the year! sdk install java 25-librca
000
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 23/07/2025
It's always nice to know something from your personal history. For example, this person died in roughly 1780s. For my 6th-generation grandpa, we know the year of death, but not the date. He died in 1831
020
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 23/06/2025
I dunno folks, not sure if I really missed it
Screenshot of UTM virtual machine with Win 98 installation
240
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 29/05/2025
To those people who strongly advocate for Maven instead of Gradle, how can this diff break a simple project? Red doesn't work, green works
220
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 21/05/2025
To the infinity and beyond! From DevOps days Geneva to @springio.net!
110
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 16/05/2025
And this is how we should worship The Evil Bunny
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 16/05/2025
Ayayay bang-bang, as they said on TBBT /Flicking thru sweet memories of @jcon.one #jcon2025
110
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 14/05/2025
To the infinity and beyond! Thank you, @jcon.one for your hospitality and opportunity to give 2 talks! Now on my way to @jprimeconf.bsky.social in Sofia!
030
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 13/05/2025
Starting @jcon.one with @jbaru.ch and that's how it should start ;)
091
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 12/05/2025
BTW, Kölnische Wasser schmeckt nicht gut. Aber Dom ist schön
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 11/05/2025
To the infinity and beyond! From #Java day Istanbul heading to @jcon.one in Cologne (or Köln as some mispronounce it 😉)
021
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 19/04/2025
How did you do this invalid handle thingie?
100
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 19/04/2025
I don't deserve to be in such an amazing @skircle.bsky.social!
040
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 11/04/2025
Thanks unstructured.io and @mariak.bsky.social personally for a nice swag!
120
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 28/03/2025
A while back, @antonarhipov said that the typewriter plugin (plugins.jetbrains.com/plugin/20245...) would make livecoding easier, but I had to admit that it was still too limited. But now, thanks to @jetbrains Junie that's all changed! It taught me how to dynamically register hotkeys for snippets!
230
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 26/03/2025
Okay, I'll be honest. Spring Framework MongoTemplate really needs a better way to express something like this, especially for Kotlin. It starts nice and clean with newAggregation(unwind("authors")), but then I need something like group(field("authors.fullName").substrCp(0,1).toUpper)
110
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 17/03/2025
On my way to Chicago, for @chicago.devopsdays.org, Chicago JUG hosted by @mgrygles.bsky.social, and JCP EC meeting in San Francisco! BER -> FRA -> ORD Let's go!
0133
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 20/02/2025
#Spring shell is pretty impressive: many features OOTB: auto-completion, arguments, history, and useful help. But the one thing that is not approachable with almost any other solution is Terminal UI. The terminal UI is cool but with a pinch of @kotlinlang.org DSL becomes even better, for example
@Command(command = ["run"])
fun sample() {
    builder.ui {
        eventLoop.keyEvents().subscribe { event ->
            if ((CTRL + 'q').matches(event))
                eventLoop.dispatch(ShellMessageBuilder.ofInterrupt())
        }
        boxView {
            drawFunction { rectangle ->
                writer {
                    text("Hello World", rectangle, HCENTER, VCENTER)
                    text("bye", rectangle, HRIGHT, VBOTTOM)
                }
                rectangle
            }
        }
    }
}
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 19/02/2025
000
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 19/02/2025
100
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 29/01/2025
Current status #Java #Anniversary
042
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 27/01/2025
Recently, Microsoft released DocumentDB, the document layer on top of PostgreSQL. Immediately, FerretDB moved to documentdb for their MongoDB implementation. Once I found it, I decided to read about Spring Data MongoDB support and look at how you can query nested properties in MongoDB with Kotlin!
000
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 08/01/2025
Not bad! Now I need to make it into 1%!
Badge from sessionize that reads "Congratulations, you are in TOP 3% of most active speakers in the year 2024"
230
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 21/12/2024
Hello Zurich
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 09/12/2024
When your insurance company knows more about GCs than many developers
000
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 03/12/2024
Spoiler alert: #adventofcode I like how gatherers play nicely with record classes. Yes, there is no `Pair` class in Java, but we can define it ad-hoc without polluting the namespace.
020
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 02/12/2024
Top-1% in Duolingo. Maybe not that bad
010
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 02/12/2024
Today I used the new (preview) Java Stream Gatherers API for #adventofcode. And I have to say: I quite like them! Suddenly collection handling became much easier!
The code reads:

@SuppressWarnings("preview")
private static boolean validReport(Integer[] report) {
    int dir = signum(report[1] - report[0]);
    if (dir == 0) return false;
    return Stream
        .of(report)
        .gather(Gatherers.windowSliding(2))
        .noneMatch(l -> {
            int diff = report[0] - report[1];
            return abs(diff) > 3 || signum(diff) != dir;
        });
}
200
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 28/11/2024
Experimenting with manim for one of my presentations
000
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 05/11/2024
Here is what I see by your link
100
Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) @asm0dey.site · 22/09/2024
Bluesky now has over 10 million users, and I was #173,236!
A virtual certificate with text "Celebrating 10M users on Bluesky, #173,236, Pasha Finkelshteyn 🇩🇪⬅️🇷🇺(✡️) ‪@asm0dey.bsky.social‬, joined on Jun 29, 2023"
050