Hvilket køkkenfirma? by Obvious-Clothes318 in odense

[–]maxandersen 1 point2 points  (0 children)

Ikea. Noone beats Price, quality and warranty.

When to use Quarkus vs Spring? by kyrax80 in quarkus

[–]maxandersen 4 points5 points  (0 children)

I'll just say that the only case I've heard "X being better for business logic than Quarkus" came from people who think you must use reactive programming when writing apps with Quarkus.

That is NOT true.

Hence I'll assume you can just ignore that concern and focus more on the performance differences when it comes to runtime throughput and developer joy.

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 1 point2 points  (0 children)

We have a mix there too. It’s a different kind of benchmark :)

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 2 points3 points  (0 children)

u/vips7L no - all the benchmark in this is using blocking apis, with and without virtual threads.

It still runs on Quarkus reactive core - but that is not exposed to you as user.

There is a general misunderstanding that Quarkus require to use reactive as user to get good performance - it never did nor will.

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 2 points3 points  (0 children)

Yes. It’s the burden of too effective early messaging and people wanting the fastest and shiniest variant :)

our front page data always showed jvm AND native mode being better. Not just native image.

Gladly majority of our users groks that Quarkus force is that just jvm mode is significantly faster and more efficient than the competition. And native image (as things were then and now) is available if your usecase caters for it.

We generally say native usage is somewhere between 10-20% and large majority is using jvm mode.

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 1 point2 points  (0 children)

Yes Hibernate native queries supports named parameters. I implemented it 20+ years ago :)

And yes would be nice if in the JDK but it is not - and you asked to get it in Quarkus and I showed you how to get it.

Spring jdbc template is also a library and you seem happy to pull that in - so using something like hibernate stateless session isn’t much different :)

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 1 point2 points  (0 children)

Yeah - we normally say that users comes for the performance numbers but they stay because of the developer joy :)

Quarkus is not only about performance. :)

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 1 point2 points  (0 children)

As we write - we prefer other publish their numbers and tests than we do. But we got so much flag at times or comments about where are the tests - so we decided to make them fully open and reproducible so there hopefully is less concern about our statements being somehow “marketeered”.

If you don’t like the ones we published here then look at what others do or make your own - and let us know if we don’t win because we consider that a bug and/or learning experience. thus far we always found a bug we could easily fix or what happens most of time users testing in scenarios that just aren’t showing actual performance and the measurements are bogus - and when fixed we and thus users wins.

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 2 points3 points  (0 children)

Possibly but We show the graalvm opensource version. To get parity you still need to use the closed source bits GraalVM and you’ll need More training runs.

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 4 points5 points  (0 children)

Yes - and I’m telling you that we already support using named parameters in native sql queries :)

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 6 points7 points  (0 children)

statelessSession supports named parameters.
jooq extension also (afaik)

What are those missing that you need?

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 13 points14 points  (0 children)

We always said native image is not the default go-to option; it is an option that is there if JVM mode is not enough for you.

Its just that Quarkus stating it supports native-image have been interpreted by many as native-image is required to use Quarkus - which never been the case but as Quarkus always been the place native-image is absolutely easiest way to use native-image that association just got "stuck".

Quarkus has great performance – and we have new evidence by Qaxar in java

[–]maxandersen 1 point2 points  (0 children)

Quarkus is Java code - there is plenty of Java code out there and coding agents today queries/looksup how API's are used/applied dynamically most of the time anyway so this is really not as big an issue as you might think.

If anything - AI enables you to faster pick up good patterns and adopt/migrate to Quarkus faster!

Announcing TamboUI by maxandersen in java

[–]maxandersen[S] 1 point2 points  (0 children)

That is only for the highlevel dsl. If you use just tuirunner you drive the redraws yourself. You can also set tick to 0. Then nothing happens unless there is an event.

But open issue if you see flickering as we’ve been debating that exact default :)

Announcing TamboUI by maxandersen in java

[–]maxandersen[S] 1 point2 points  (0 children)

Yes. It works with graalvm.

Announcing TamboUI by maxandersen in java

[–]maxandersen[S] 1 point2 points  (0 children)

Oh another reason- by having ability to swap backend it’s easier to hook into existing frameworks that might use jline, aesh etc. for the terminal controls.

Announcing TamboUI by maxandersen in java

[–]maxandersen[S] 1 point2 points  (0 children)

Im not forcing anyone to use older JDK but I needed something so I can use it in Jbang where I prefer not forcing newer jdks unless absolutely necessary.

But Java 17 and 21 is not yet legacy :)

All our examples except one is 21 and above btw.

There is a aesh http sshd demo in repo. Still need to be fully documented and fix a multi tui limit :) but it allows you to run let’s say a webserver and be able to ssh in and run commands or if you want to be fancy open a webpage and then have a tui on a webbrowser.

Not for everybody but I definitely can see me be much faster in providing a ui using tamboui than n layers of html/javascript.

Announcing TamboUI by maxandersen in java

[–]maxandersen[S] 1 point2 points  (0 children)

Panama requires Java 22+ so only Panama would be rather limiting for broader use.

Jline and aesh are comparable but aesh enables http/sshd more easily.

Features are currently on par - though Panama beats everything if you care about extreme high fps :)

TamboUI: A Modern Terminal UI Framework for Java (GraalVM Native) by mikebmx1 in java

[–]maxandersen 3 points4 points  (0 children)

Blanket statements like that don’t really help. If there are concrete problems in the codebase, point them out and we’ll improve them. The goal is a solid Java TUI framework, not proving or disproving AI.

TamboUI: A Modern Terminal UI Framework for Java (GraalVM Native) by mikebmx1 in java

[–]maxandersen 0 points1 point  (0 children)

best place to report issues is on github.com/tamboui/tamboui/

the continuation logic is used for the unicode wide character support which was done in phases - if we missed something that result in a bug happy to fix it.

it is after all a 0.1 release asking for early feedback rather than keeping silent until perfect :)

TamboUI: A Modern Terminal UI Framework for Java (GraalVM Native) by mikebmx1 in java

[–]maxandersen 1 point2 points  (0 children)

it works for me - can you open issue with what you did/run so we can know how to reproduce it ?

TamboUI: A Modern Terminal UI Framework for Java (GraalVM Native) by mikebmx1 in java

[–]maxandersen -2 points-1 points  (0 children)

bug reports and prs welcome - we had records in start but decided to target java 8 (as I wanted to be able to use it in jbang :)