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 priorities:

  1. User reported bugs.
  2. Self reported bugs.
  3. 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 autonomously:

Configuration management

A configuration management contains:

Simplicity

Dependencies

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

Testability

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

There are multiple types of code:

Integration

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

Also; see my purpose