<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>hardwood on Gunnar Morling</title>
    <link>https://www.morling.dev/tags/hardwood/</link>
    <description>Recent content in hardwood on Gunnar Morling</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <copyright>© 2019 - 2026 Gunnar Morling</copyright>
    <lastBuildDate>Wed, 29 Apr 2026 18:45:00 +0100</lastBuildDate>
    <atom:link href="https://www.morling.dev/tags/hardwood/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>VARIANT Support, Interactive Parquet File TUI: Hardwood 1.0.0.Beta2 Is Out</title>
      <link>https://www.morling.dev/blog/variant-support-interactive-parquet-file-tui-hardwood-1.0.0.beta2-is-out/</link>
      <pubDate>Wed, 29 Apr 2026 18:45:00 +0100</pubDate>
      <guid>https://www.morling.dev/blog/variant-support-interactive-parquet-file-tui-hardwood-1.0.0.beta2-is-out/</guid>
      <description>&lt;div id=&#34;toc&#34; class=&#34;toc&#34;&gt;&#xA;&lt;div id=&#34;toctitle&#34;&gt;Table of Contents&lt;/div&gt;&#xA;&lt;ul class=&#34;sectlevel1&#34;&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_variant_support&#34;&gt;VARIANT Support&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_hardwood_cli_tui&#34;&gt;Hardwood CLI TUI&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_unified_reader_api&#34;&gt;Unified Reader API&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_performance_improvements&#34;&gt;Performance Improvements&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_wrapping_up&#34;&gt;Wrapping Up&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;I am happy to announce the release of Hardwood 1.0.0.Beta2!&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;The latest version of this &lt;a href=&#34;https://hardwood.dev&#34;&gt;new parser for Apache Parquet&lt;/a&gt; comes with support for &lt;code&gt;VARIANT&lt;/code&gt; columns,&#xA;an interactive text-based UI (TUI) for examining and analysing the structure of Parquet files,&#xA;significantly improved performance, more efficient reading of files from object storage, and much more.&lt;/p&gt;&#xA;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Hardwood Reaches Beta: S3, Predicate Push-Down, CLI, and More</title>
      <link>https://www.morling.dev/blog/hardwood-reaches-beta-s3-predicate-push-down-cli/</link>
      <pubDate>Thu, 02 Apr 2026 19:20:00 +0100</pubDate>
      <guid>https://www.morling.dev/blog/hardwood-reaches-beta-s3-predicate-push-down-cli/</guid>
      <description>&lt;div id=&#34;toc&#34; class=&#34;toc&#34;&gt;&#xA;&lt;div id=&#34;toctitle&#34;&gt;Table of Contents&lt;/div&gt;&#xA;&lt;ul class=&#34;sectlevel1&#34;&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_s3_backend&#34;&gt;S3 Backend&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_predicate_push_down&#34;&gt;Predicate Push-Down&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_avro_bindings&#34;&gt;Avro Bindings&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_hardwood_cli&#34;&gt;hardwood-cli&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_wrapping_up&#34;&gt;Wrapping Up&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;I am pleased to announce the release of Hardwood 1.0.0.Beta1!&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/hardwood-hq/hardwood&#34;&gt;Hardwood&lt;/a&gt; is a new parser for Apache Parquet, optimized for minimal dependencies and great performance.&#xA;Since the project’s initial release just &lt;a href=&#34;https://www.morling.dev/blog/hardwood-new-parser-for-apache-parquet/&#34;&gt;a few weeks back&lt;/a&gt;, a small yet very active community has come together and evolved Hardwood significantly.&#xA;Today, we are shipping an S3 backend, allowing to parse files directly from object storage,&#xA;predicate pushdown for both local and remote files, Avro bindings, a CLI for inspecting Parquet files, and much more.&#xA;We’re also excited to launch a website for the project, &lt;a href=&#34;https://hardwood.dev&#34;&gt;hardwood.dev&lt;/a&gt;, which contains the documentation and API reference.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;Let’s dig in.&lt;/p&gt;&#xA;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Hardwood: A New Parser for Apache Parquet</title>
      <link>https://www.morling.dev/blog/hardwood-new-parser-for-apache-parquet/</link>
      <pubDate>Thu, 26 Feb 2026 14:30:00 +0200</pubDate>
      <guid>https://www.morling.dev/blog/hardwood-new-parser-for-apache-parquet/</guid>
      <description>&lt;div id=&#34;toc&#34; class=&#34;toc&#34;&gt;&#xA;&lt;div id=&#34;toctitle&#34;&gt;Table of Contents&lt;/div&gt;&#xA;&lt;ul class=&#34;sectlevel1&#34;&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_why_hardwood&#34;&gt;Why Hardwood?&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_hello_hardwood&#34;&gt;Hello, Hardwood!&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_parsing_performance&#34;&gt;Parsing Performance&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_built_with_ai_not_by_ai&#34;&gt;Built With AI, Not By AI&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#_whats_next&#34;&gt;What’s Next?&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;Today, it’s my great pleasure to announce the first public release of Hardwood, a new parser for the Apache Parquet file format, optimized for minimal dependencies and great performance.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;paragraph&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/hardwood-hq/hardwood&#34;&gt;Hardwood&lt;/a&gt; is open-source (Apache License 2.0) and supports Java 21 or newer. You can grab it from &lt;a href=&#34;https://central.sonatype.com/search?q=hardwood&amp;amp;namespace=dev.hardwood&#34;&gt;Maven Central&lt;/a&gt; and start parsing your Parquet files with ease and efficiency.&lt;/p&gt;&#xA;&lt;/div&gt;</description>
    </item>
  </channel>
</rss>
