June 30, 2026

The logger that logged a fight

Show HN: C++, Java and C# light-weight-logger

A tiny logging tool lands and the comments instantly turn into a style war

TLDR: A developer showed off a tiny terminal message tool for three major programming languages, promising simple setup and colorful, customizable output. Commenters instantly split between fans of the no-fuss design and critics who said it’s just another logging tool dressed up as something new.

A Show HN post about a small logging tool for C++, Java, and C# somehow turned into a full-blown comment-section talent show. The project itself is pretty simple to explain: it’s a lightweight way for apps to print messages to the terminal, with colors, timestamps, thread info, and even file-and-line details if you want them. The creator’s big flex is that it’s small, dependency-free, and works across three popular languages without dragging in a giant toolbox.

But the real fireworks were in the crowd reaction. One camp basically said, “Finally, a simple tool that just logs stuff without making me install half the internet.” They loved the single-file, drop-in vibe and the fact that users can create their own labels instead of being stuck with the usual boring warning/error setup. The other camp immediately went for the jugular: why does a “lightweight” logger need stack-walking tricks, color codes, and a mini formatting language at all? That kicked off the classic internet split between “practical and neat” versus “you reinvented a thing that already exists 400 times.”

The jokes were almost more predictable than the timestamps. People riffed on programmers building “yet another logger,” mocked how every tiny utility claims to be lightweight until it grows opinions, and had fun with the idea that the logger meant to record drama accidentally created the drama. In other words: the code logs messages, but the comments logged emotions.

Key Points

  • The article introduces Light-Weight-Logger as a zero-dependency terminal logging library for C++, C#, and Java.
  • The library uses runtime-registered log levels with a format-string mini-language instead of fixed log output formats.
  • Supported format specifiers include color, alignment, time, date, milliseconds, timezone, thread ID, and source-location metadata.
  • The article provides preset output styles and examples of custom formatting combinations for different logging needs.
  • The C++ version is header-only and requires C++20, while source-location capture in each language relies on language-specific stack or location APIs.

Hottest takes

"yet another logger" — anon
"lightweight until it grows a mini-language" — anon
"I actually love tools that are just one file and vibes" — anon
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.