Gunnar Morling

Gunnar Morling

@gunnarmorling.dev

Technologist @ Confluent · Ex-lead of Debezium · Spec lead of Bean Validation 2.0 · Creator of Hardwood, kcctl, JfrUnit, MapStruct · Java Champion · morling.dev · 🚴

8.2K followers207 following985 posts

Gunnar Morling reposted

🟨 SPEAKER DETECTED: Gunnar Morling @gunnarmorling.dev Gunnar built Hardwood: a modern Java Parquet library focused on parallel decoding and high throughput, with a little help from AI. “Hardwood: Building a Parquet Library From Scratch (With a Little Help From AI)” jfokus.se #Jfokus

Today is the day: #Hardwood reaches 1.0 🚀! A from-scratch #Parquet library for the JVM, reading (and soon writing) Apache Parquet fast: multi-threaded at its core, with no mandatory dependencies. Java 21+, Apache 2.0, production-ready. Happy Parquet parsing!

Gunnar Morling reposted

1 Billion Row Challenge creator @gunnarmorling.dev is back with #Hardwood - a zero-dependency, ultra-fast #Java parser for #ApacheParquet. 🎧 Listen to the #InfoQ #podcast to learn more about Hardwood’s architecture, parallelization & performance optimization ⇨ bit.ly/4wP8jlR #AI

bit.lyChasing Efficient Java Development: From 1BRC to Developing Hardwood AI NativelyGunnar Morling, technologist at Confluent and Java Champion, shares his experiences with building high-performance applications in Java, especially in the data space. He shares insights from experimen...

Gunnar Morling reposted

I don’t buy the idea that libraries will go away since everyone can just write their own now. Maybe for small internal company use-cases. But libraries are not just code, they’re time invested in edge cases, they’re hundreds of hours of human eyes. I don’t want to replace that.

🥳 Just merged support to #Hardwood for reading Parquet files directly from S3! Including projections and predicate push-down (row group level), to fetch only the actually required column chunks, thus limiting the amount of data downloaded from the object store. Should be ready to ship next week!

"Are we using AI for building Hardwood? Absolutely. Is Hardwood vibe-coded? Absolutely not." Coding agents are incredibly powerful, but they're no magic wand. Sharing some experiences with using AI for building a relatively low-level code base like a Parquet parser in the #Hardwood announcement 👇.

Gunnar Morling@gunnarmorling.dev

📝 "Hardwood: A New Parser for Apache Parquet" Today is the day--beyond excited to share the first release of #Hardwood, a new parser for the Apache #Parquet file format, optimized for minimal dependencies and great performance. 👉 www.morling.dev/blog/hardwoo...

Gunnar Morling reposted

Interesting usage of the lessons learned during the #1BRC contest !

Gunnar Morling@gunnarmorling.dev

📝 "Hardwood: A New Parser for Apache Parquet" Today is the day--beyond excited to share the first release of #Hardwood, a new parser for the Apache #Parquet file format, optimized for minimal dependencies and great performance. 👉 www.morling.dev/blog/hardwoo...

Woot, woot, tackled my personal final boss, the Maven release plug-in, and we now have a fully automated release pipeline for hashtag#Hardwood. Gonna do some more testing, but we should be really close now to a first tagged release on Maven Central 🥳. Thx to @andresalmiray.com for all the help!

Today is a great day to verify you don't get yourself locked out of any 2FA-secured accounts when losing your phone. Print out back-up codes, set up fallback keys, etc. It takes just a few moments and can save you massive headaches later on.

Gunnar Morling reposted

Discover how #DataFrames are transforming #DataOrientedProgramming in #Java! Analyze the #1BRC challenge & see how Java frameworks can outperform Python in memory management without sacrificing readability. Discover how DataFrames elevate your Java programming experience ⇨ bit.ly/4avEDzZ

bit.lyAre You Missing a Data Frame? The Power of Data Frames in JavaVladimir Zakharov explains how DataFrames serve as a vital tool for data-oriented programming in the Java ecosystem. By analyzing The One Billion Row Challenge, he shares how Java frameworks can outpe...

Happy Holidays, and to those who celebrate: Merry Christmas 🎄🎁☃️! Enjoy the days ahead ("between the years", as we call it in German), and of course: yippee ki-yay!

Gunnar Morling reposted

In the past few years, we’ve seen a cambrian explosion of new columnar formats, challenging the hegemony of Parquet. Presumably, the design of yore is not going to cut it moving forward. I spent some time to understand a bit better how things actually changed. sympathetic.ink/2025/12/11/C...

sympathetic.inkColumn Storage for the AI EraIn the past few years, we’ve seen a cambrian explosion of new columnar formats, challenging the hegemony of Parquet: Lance, Fastlanes, Nimble, Vortex, AnyBlox, F3 (File Format for the Future). The thi...

A key factor for making technical discussions more successful (and enjoyable) is to resist the urge to one up each other. Don't try to prove you're smarter than others, instead work collaboratively towards a solution, benefiting everyone involved.

"Streams for machines, tables for humans". Kinda proud of this tag line from my upcoming blog post, discussing how pull and push queries go hand in hand in data management systems. Out early next week 🤓.