sblog 0.2.0

A tiny static blog generator written in Rust. Write posts in Markdown with YAML frontmatter and render them into plain HTML and CSS.
---
title: Why I publish open source
date: 2026-08-04
tags: [meta, ideas, tools]
summary: Sharing code is not charity. It is a way to make the work better and to learn in public.
---

I publish open source because it makes my work better. Sharing code is not
charity. It is a discipline that improves the code and the person who wrote it.

## The selfish reasons

- **Review.** When strangers read your code, you write cleaner code.
- **Docs.** A public project forces you to document the parts you would
  otherwise skip.
- **Feedback.** Users find the bugs you never would.

## The generous reasons

- **Reuse.** Someone else does not have to rebuild what you built.
- **Learning.** Reading other people's code is the fastest way to learn.
- **Community.** Good software is a conversation, not a monologue.

## A checklist before you publish

- [x] A clear README.
- [x] A license.
- [x] A minimal example.
- [ ] A changelog.
- [ ] Tests that run with one command.

## The hard part

> The hard part of open source is not writing the code. It is maintaining it
> after the excitement fades.

## A short example

Here is a tiny project layout that I like:

```text
my-project/
  Cargo.toml
  README.md
  LICENSE
  src/
    lib.rs
  examples/
    basic.rs
  tests/
    integration.rs
```

## The long view

Open source is a long game. The projects that last are the ones with clear
scope, a friendly maintainer, and a steady rhythm of small releases. I try to
be that maintainer.