Open sourcing a library: how hard can that be?
summary
A Java library is born from a Diablo II savegame parser plus a tiny Quarkus/GraalVM executable that starts in 0.74s and ships at ~25–50MB, released to Maven Central after also using GitHub Packages and Sonatype. Real problems are bit-level endianness and packed-bit parsing, PGP signing and release workflows, migrating from Java 17→21 with OpenRewrite, removing Lombok and writing docs, and publishing quirks; result: published artifact, four users in a weekend, and incoming feature requests.
AI-written summary · about
chapters (9)
- 0:00Introduction to open sourcing
- 1:05Reasons to open source
- 5:20Diablo 2 save game library
- 15:36Documenting decisions and code
- 18:45Using OpenRewrite for migrations
- 21:15Building a library vs a tool
- 24:04Publishing to Maven Central
- 36:30Challenges and takeaways
- 40:05Q&A
related talks
46mOpen sourcing a library: how hard can that be?
45mOpen sourcing a library: how hard can that be?
48mJava's Hidden Gems: Tools and Libraries
32mMicro Open Source: From Passion to Pet Project Publication
57mKeynote: Surviving Open Source
45mCode Once, Use Everywhere: Building Shared Libraries for Multiple Projects
43mLibrary Developer Confidential
47mWhy your shared libraries are ill - and how to cure them
