home.social

#graalvm — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #graalvm, aggregated by home.social.

  1. Are you still using Spring over @quarkusio Are you sure you want to use native?

    Think again: quarkus.io/blog/new-benchmarks/

    And this is BEFORE Leyden, which smashes the numbers for startup time compared to native.

    #java #development #software #openjdk #leyden #performance #optimization #native #springFramework #quarkus #quarkus3 #graalvm

  2. Are you still using Spring over @quarkusio Are you sure you want to use native?

    Think again: quarkus.io/blog/new-benchmarks/

    And this is BEFORE Leyden, which smashes the numbers for startup time compared to native.

    #java #development #software #openjdk #leyden #performance #optimization #native #springFramework #quarkus #quarkus3 #graalvm

  3. Previously I shared a blog post comparing Java JNI and FFM examples, the follow up is compiling these back to native images using GraalVM lofthouse.dev/2026/02/20/java-

  4. Previously I shared a blog post comparing Java JNI and FFM examples, the follow up is compiling these back to native images using GraalVM lofthouse.dev/2026/02/20/java- #JNI #FFM #Native #Java #GraalVM

  5. Previously I shared a blog post comparing Java JNI and FFM examples, the follow up is compiling these back to native images using GraalVM lofthouse.dev/2026/02/20/java- #JNI #FFM #Native #Java #GraalVM

  6. Post-OOP Imperative Functional Java.
    Model the process. Not the domain.

    Most Java code still asks the wrong question:
    "What is this domain object?"
    But production systems fail, scale, and burn because of processes, not nouns.

    If your system is a sequence of irreversible steps, model it as a sequence,
    not as interacting objects pretending to be immortal.

    This follows ideas from Railway-Oriented Programming (ROP):
    errors and decisions are values, not control-flow side effects.

    Modeling the process means you can read this top to bottom
    and understand exactly what happens.
    No debugger. No IDE magic. No tribal knowledge.

    Control flow is explicit.
    You see the execution order.
    Nothing hides in constructors, annotations, or overrides.

    Failure is a first-class concept.
    Once it fails or decides early, nothing else runs.
    No exception archaeology.

    Processes > Objects.
    Real systems are workflows where refactoring is safe.

    Steps are reordered, removed, or replaced
    without collapsing a class hierarchy.
    Testing is trivial, small stepwise context — even for an AI.

    Feed input. Assert final result.
    No mocking five layers of indirection.

    GraalVM / native-friendly.
    No reflection rituals.
    The compiler smiles.

    Objects are great for long-lived entities.
    User actions, payments, rules, and failures are short-lived processes.

    I model what happens,
    not what pretends to exist forever.

    Influenced by:
    Railway-Oriented Programming,
    Functional Core / Imperative Shell,
    Workflow / Saga patterns,
    Command pipelines,
    Unix philosophy,
    and value-oriented libraries like Vanilla-DI.

    Don't be stuck in axioms.

    #PostOOP
    #ImperativeFunctional
    #ProcessOverObjects
    #ModelTheProcess
    #WorkflowFirst
    #RailwayOrientedProgramming
    #FunctionalCore
    #ImperativeShell
    #CommandPipeline
    #ExplicitControlFlow
    #ValueOrientedDesign
    #ProcessModeling
    #FailFast
    #NoExceptionArchaeology
    #ComposableSystems
    #NativeFriendly
    #GraalVM
    #NoReflection
    #DeterministicCode
    #RefactorSafe
    #SagaPattern
    #UnixPhilosophy
    #VanillaDI
    #ModernJava
    #ArchitectureMatters

  7. Post-OOP Imperative Functional Java.
    Model the process. Not the domain.

    Most Java code still asks the wrong question:
    "What is this domain object?"
    But production systems fail, scale, and burn because of processes, not nouns.

    If your system is a sequence of irreversible steps, model it as a sequence,
    not as interacting objects pretending to be immortal.

    This follows ideas from Railway-Oriented Programming (ROP):
    errors and decisions are values, not control-flow side effects.

    Modeling the process means you can read this top to bottom
    and understand exactly what happens.
    No debugger. No IDE magic. No tribal knowledge.

    Control flow is explicit.
    You see the execution order.
    Nothing hides in constructors, annotations, or overrides.

    Failure is a first-class concept.
    Once it fails or decides early, nothing else runs.
    No exception archaeology.

    Processes > Objects.
    Real systems are workflows where refactoring is safe.

    Steps are reordered, removed, or replaced
    without collapsing a class hierarchy.
    Testing is trivial, small stepwise context — even for an AI.

    Feed input. Assert final result.
    No mocking five layers of indirection.

    GraalVM / native-friendly.
    No reflection rituals.
    The compiler smiles.

    Objects are great for long-lived entities.
    User actions, payments, rules, and failures are short-lived processes.

    I model what happens,
    not what pretends to exist forever.

    Influenced by:
    Railway-Oriented Programming,
    Functional Core / Imperative Shell,
    Workflow / Saga patterns,
    Command pipelines,
    Unix philosophy,
    and value-oriented libraries like Vanilla-DI.

    Don't be stuck in axioms.

    #PostOOP
    #ImperativeFunctional
    #ProcessOverObjects
    #ModelTheProcess
    #WorkflowFirst
    #RailwayOrientedProgramming
    #FunctionalCore
    #ImperativeShell
    #CommandPipeline
    #ExplicitControlFlow
    #ValueOrientedDesign
    #ProcessModeling
    #FailFast
    #NoExceptionArchaeology
    #ComposableSystems
    #NativeFriendly
    #GraalVM
    #NoReflection
    #DeterministicCode
    #RefactorSafe
    #SagaPattern
    #UnixPhilosophy
    #VanillaDI
    #ModernJava
    #ArchitectureMatters

  8. Oh, look. It's @graalvm being ~thrown under the bus~ detached from the train.

    Right in time before Java 25 (LTS) has been released.

    Gotta love the timing. 🤡

    blogs.oracle.com/java/post/det

    #Java #JVM #GraalVM #ProjectLeyden

  9. Oh, look. It's @graalvm being ~thrown under the bus~ detached from the train.

    Right in time before Java 25 (LTS) has been released.

    Gotta love the timing. 🤡

    blogs.oracle.com/java/post/det

    #Java #JVM #GraalVM #ProjectLeyden

  10. Wie verändern #SnapStart & #GraalVM die Startzeiten von Java-#Lambdas? @VKazulkin liefert reproduzierbare Messdaten, zeigt Performanceeffekte verschiedener Priming-Techniken & dokumentiert die Umsetzung mit #AWS SAM & #Quarkus.

    Lese: javapro.io/de/entwicklung-ausf

    @graalvm @QuarkusIO

  11. Wie verändern #SnapStart & #GraalVM die Startzeiten von Java-#Lambdas? @VKazulkin liefert reproduzierbare Messdaten, zeigt Performanceeffekte verschiedener Priming-Techniken & dokumentiert die Umsetzung mit #AWS SAM & #Quarkus.

    Lese: javapro.io/de/entwicklung-ausf

    @graalvm @QuarkusIO

  12. Developers can summon 20,000 lines of framework incantations.
    But writing 100 lines of pure Java, and suddenly, their keyboards break.

    Frameworks were supposed to simplify things. Instead, we’ve built microservices with the elegance of a collapsing Jenga tower. Defended layers on layers of “necessary” abstractions, all just to call a method.

    Java, on the other hand?
    Solid. Modern. Dangerous in the right hands.
    Especially when wielded with jlink, jpackage, pr the surgical precision of GraalVM native executables.

    From time to time, it’s good to step away from the glue. Touch the metal to actually feel something again.

    (PS: Java Logging format still sucks. But we can’t all be perfect.) ☠️🧠💻

    #PlainJava #GraalVM #MinimalismIsNotAMyth #CodeLikeYouMeanIt #coding #java #programming #developers

  13. Developers can summon 20,000 lines of framework incantations.
    But writing 100 lines of pure Java, and suddenly, their keyboards break.

    Frameworks were supposed to simplify things. Instead, we’ve built microservices with the elegance of a collapsing Jenga tower. Defended layers on layers of “necessary” abstractions, all just to call a method.

    Java, on the other hand?
    Solid. Modern. Dangerous in the right hands.
    Especially when wielded with jlink, jpackage, pr the surgical precision of GraalVM native executables.

    From time to time, it’s good to step away from the glue. Touch the metal to actually feel something again.

    (PS: Java Logging format still sucks. But we can’t all be perfect.) ☠️🧠💻

    #PlainJava #GraalVM #MinimalismIsNotAMyth #CodeLikeYouMeanIt #coding #java #programming #developers

  14. 🚀 Call for Contributors – #JVM #Performance #Benchmarks

    If you're interested in contributing to the #JVM #Performance #Benchmarks project - an initiative that gained significant traction in the #Java community through our recent #JDK17 and #JDK21 analyses - check out the repo:

    🔗 github.com/ionutbalosin/jvm-pe

    🧵 DM me or open a PR to get started

    #Java #JVM #OpenJDK #GraalVM #JMH #Performance #OpenSource

  15. 🚀 Call for Contributors – #JVM #Performance #Benchmarks

    If you're interested in contributing to the #JVM #Performance #Benchmarks project - an initiative that gained significant traction in the #Java community through our recent #JDK17 and #JDK21 analyses - check out the repo:

    🔗 github.com/ionutbalosin/jvm-pe

    🧵 DM me or open a PR to get started

    #Java #JVM #OpenJDK #GraalVM #JMH #Performance #OpenSource

  16. With #Spring Framework 6.1 and Spring Boot 3.2 general availability approaching, don't miss this comprehensive blog post on "Runtime Efficiency with Spring" I have just published. #graalvm #projectloom #projectcrac #projectleyden spring.io/blog/2023/10/16/runt

  17. With #Spring Framework 6.1 and Spring Boot 3.2 general availability approaching, don't miss this comprehensive blog post on "Runtime Efficiency with Spring" I have just published. #graalvm #projectloom #projectcrac #projectleyden spring.io/blog/2023/10/16/runt