---
# System prepended metadata

title: Carvel Software Making Credo
tags: [process]

---

---
tags: process
---

# Carvel Software Making Credo


## TL;DR.

`We` can deliver the **maximum `value`** \
through mitigating the **most `risk`** \
with the **least `cost`** \
over **the `lifespan` of the product**.

We can achieve this by being `empathetic`, `effective`, and `ethical`.


Q: How do we quickly learn?
- the rate of learning is a fundamental engine for achieving this.

Q: Does this model help you make decisions (day-to-day) better?
  - If not, what changes (or other idea) would do that for you?

## Details

Defining our terms...

- `We` = all maintainers and contributors that will work on the product
- `value` = (`usefulness` + `facility`) ÷ `defects`
    - `usefulness` = `leverage` * `applicability`
      - `leverage` = `work` ÷ `cost`
        - `work` = meaningful result
        - `cost` = cost to the user (see below)
      - `applicability` = the breadth of situations in which the tool provides `leverage`
    - `facility` = inverse of the cognitive load on the typical user accomplishing tasks with the tool
    - `defects` = a result (i.e. requirement, implementation, or output) that is wrong
- `risk` = probability of a defect occurring
- `cost` = `effort` + `waste`
    - `effort` = the current-state intrinsic effort required by all involved to achieve a result
    - `waste` = sum of the following:
        - unnecessarily complexity
            - feature complexity
            - technical complexity
            - lack of reuse
        - extraneous cognitive load
            - ...
        - ...
- `lifespan` — the expected service life of the product
- `empathetic` — so actively curious about others' experiences that we could be changed by what we learn
- `effective` — we balance getting things done with building our capacity to get things done
- `ethical` — we do what's right

## Helpful Principles

- how quickly we learn is one of the most influential factors in our achieving these optimizations
- refactor to accommodate a change
- reduce coupling to only what’s intrinsically needed



## Resources

- https://www.researchgate.net/publication/313360479_Software_Development_Waste
- https://www.intercom.com/blog/podcasts/intercom-on-product-ep04/
- 