Double Performance! | OpenJDK Contrib | Java Coding | Head Crashing Informatics 69

Yes, I really did it! My latest contribution to #OpenJDK 21 will make your #Java program drive I/O bytes up to twice as fast through your streams.

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Leave a comment

#letsplay? | The Two Minutes Tuesday 036 | Announcement

Would you like to see me streaming a #java live coding #letsplay episode? Tell me your opinion in the video comments on Youtube!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects, The Two Minutes Tuesday | Tagged , , , , , | Comments Off on #letsplay? | The Two Minutes Tuesday 036 | Announcement

SequenceInputStream boosted: Latest OpenJDK Contrib | Java Coding | Head Crashing Informatics 68

If you are using SequenceInputStream, you will notice that it pulls all data into the JVM’s memory, just to drain it to another I/O sink. This is inefficient and slow. With my latest contribution contained in #OpenJDK 20, this will change dramatically: In the best case, all traffic is routed within the OS, and does not enter the JVM at all.

If you missed the original contribution last year, check my channel page, it is covered by a four-parts series!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Comments Off on SequenceInputStream boosted: Latest OpenJDK Contrib | Java Coding | Head Crashing Informatics 68

Small Change with BIG EFFECT | OpenJDK Contrib | Java Coding | Head Crashing Informatics 67

Contributions to #OpenJDK don’t have to be huge always. Sometimes it is the small things that have BIG EFFECT. For example if a class was intended to be non-synchronized (hence: fast), implicitly is synchronized by mistake (hence: slow), is finally getting fixed after 30 years. Just few code lines changed, but multiplied by lots of existing #Java applications using that class, makes a BIG EFFECT in sum!

To get this performance optimization, immediately upgrade to JDK 20!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Comments Off on Small Change with BIG EFFECT | OpenJDK Contrib | Java Coding | Head Crashing Informatics 67

I boosted the PushbackInputStream | OpenJDK Contrib | Java Coding | Head Crashing Informatics 66

As #PushbackInputStream is quite similar to #BufferedInputStream, it was rather easy for me to apply the performance optimizations I already developed for BufferedInputStream to the PushbackInputStream. The contribution was accepted in November 2022, so it is now part of #OpenJDK (aka #Java) 20.

The change will make your application #transferTo bytes faster in case your source or target is a file stream and you wrapped it using a PushbackInputStream. For example, if you read the magic byte of a file to find out about the file type, then push it back and transferTo() the complete content to a specific image processing algorithm, the bytes will not walk through the in-memory buffer anymore, sparing processing time.

If you missed the original contribution last year, check my channel page, it is covered by a four-parts series!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Comments Off on I boosted the PushbackInputStream | OpenJDK Contrib | Java Coding | Head Crashing Informatics 66

BufferedInputStream boosted AGAIN by OpenJDK Contrib | Java Coding | Head Crashing Informatics 65

Recently I boosted #BufferedInputStream by contributing to #OpenJDK. There was one case open, in which performance did not excel. Now in my new contribution to OpenJDK, which is contained in #Java 20, I fixed this – so in two thirds of all use cases, transferTo() should not stand in the way of I/O offloading anymore!

If you missed the original contribution last year, check my channel page, it is covered by a four-parts series!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Comments Off on BufferedInputStream boosted AGAIN by OpenJDK Contrib | Java Coding | Head Crashing Informatics 65

Good bye, application/svg+xml | The Two Minutes Tuesday 035 | Jakarta REST 4.0

Jakarta REST 4.0 will be backwards-incompatible, and here comes one of the first notable changes: The (actually wrong) MIME type application/svg+xml will not be provided out of the box anymore (at least eventually). If you want to use it (or even better, its correct successor image/svg+xml then simply created your own one instead.

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Stay safe and… Party On!

Posted in Allgemein | Tagged , , , , , , , , | Comments Off on Good bye, application/svg+xml | The Two Minutes Tuesday 035 | Jakarta REST 4.0

You will love this new method: containsHeaderString | #JAX-RS | Head Crashing Informatics 64

 

One of my first contributions to the upcoming #JakartaREST 4.0 API was just merged (https://github.com/jakartaee/rest/pull/1066), so it is time to demonstrate why you will love `containsHeaderString`!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | Comments Off on You will love this new method: containsHeaderString | #JAX-RS | Head Crashing Informatics 64

BufferedInputStream boosted: Another OpenJDK Contrib | Java Coding | Head Crashing Informatics 63

Last year I contributed a performance optimization to #OpenJDK that makes I/O operations much faster. Strange but true, with existing code often it did not chime in. The reason is that BufferedInputStream was used in many existing applications, which unfortunately skipped my optimization! So I had to fix that class, too! Check out this video to learn what I modified inside of #JDK20 and how it internally works like!

If you missed the original contribution last year, check my channel page, it is covered by a four-parts series!

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , , , , , , , | 1 Comment

I contributed to JCommander: Multi-Parameter Validation | Java Coding | Head Crashing Informatics 62

#JCommander (https://jcommander.org/) is a really cool micro-framework for command-line parsing in #Java ☕. While it has great parameter validation (even extensible), it lacks support for multi-parameter validation. So I simply added it, and since last week it is part of the original JCommander contribution! 🤩

 

If you like this video, please give it a thumbs up, share it, subscribe to my channel, or become my patreon https://www.patreon.com/mkarg. Thanks! 🙂

Posted in Java, Open Source, Programming, Projects | Tagged , , , , | Comments Off on I contributed to JCommander: Multi-Parameter Validation | Java Coding | Head Crashing Informatics 62