Ansible Roles

Simple and compatible on many platforms.

Home Blog My manifesto About Uptime View on GitHub

My Manifesto

To keep a sharp eye on what is “right” in software development, here are a few rules I agree with.

Priorities

When working on code, these are the priorities:

  1. Failing CI
  2. User reported bugs.
  3. Self reported bugs.
  4. New features.

Where to fix

Solve bugs and dependencies in the lowest level possible. From low to high:

  1. Package management.
  2. Configuration management.
  3. Application.

Packages

A package should be able to autonomously:

Configuration management

A configuration management contains:

Simplicity

Dependencies

Use dependencies when absolutely required, in other words: only use dependencies when two entities have no value without each other. This ensures:

Testability

Keep the smallest (testable) related code in a repository. This ensures autonomous development, most independent testing and easy collaboration.

There are multiple types of code:

Integration

Testing (integration) happens on an environment that’s production-like.