Accepting a messy git history
There are two kinds of git users: those who commit often and those who rebase carefully.
There are two kinds of git users: those who commit often and those who rebase carefully.
Prefer dependencies over information flow
Dashed arrow means dependency
Avoid doing it but if you have to there are many options.
Python as a target, not a toolchain, in a Bazel build system
There has never been such a direct comparison between standardization and Open Source before.
There are levels of power and you should stay low.
Many people playing war in Discord results in fun communication chaos.
a simple and expressive versioning specification
A list of things that were not supposed to be Turing-complete, but are.
User stories as requirements are bad. User stories as work items might be ok.
The one book which provides a balanced assessment of Agile.
A novel dice mechanic for RPGs.
If you are looking for a free name, there is none.
A microdefect is a one-in-a-million chance for a defect and we can use that to quantify technical debt in dollars.
A book about improving organizations without introducing more rules or changing mindsets.
External hardware, distributed systems, resource constraints, realtime, hw-sw-codesign, and safety-criticality make it hard.
The lessons from the history of the two companies are not at all obvious to me.
CMake requires old-school include-guards and prefix at scale
Software architects must code, talk business, and tell stories.
Write decision records, write a newsletter, and explain at concrete examples.
Humans rely on mental shortcuts and that is exploited.
Sticky ideas are simple, unexpected, concrete, credentialed, emotional, and a story.
An interface is owned above, below, or at the same layer.
Grow an effective team through building safety, sharing vulnerability, and establishing purpose.
Change initiatives succeed in stages building on each other.
The best book about empowerment. Turns a submarine from worst to best.
To develop more systematically, decision records are a great first step.
Objectives and Key Results is better understood by Change principles
How to change things when change is hard
Amazon's build system provides valuable insights for manyrepo environments.
Describing my note taking system inspired by Zettelkasten
Leaders of software developer teams should care more about sociology.
The book describes the dangerous transition from early adopters to an early majority market
A book which presents a map visualization for business strategy
Interactive article about the pitfalls of integer and floating point arithmetic.
Bazel does surprisingly little and it could be easily ported
How a VCS designed for monorepos would look like and why I don't build it.
Did a small exercise with TLA+, an easy model checker.
A book about a revolution of education which sadly never happened.
Short Lion King fanfic
Software architecture documents the shared understanding of a software system.
A shallow introduction to Systems Thinking.
At scale version control and build system seem to merge but there is no unified tool available yet.
Depending on the definition of intelligence, companies are intelligent beings.
The automotive industry knows how to develop software as demonstrated by ASPICE.
Avoid input parameters so state machines transitions are decoupled from transition effects.
More than 15 years ago I published a little wiki software.
A book about system thinking, statistics, learning, and psychology.
Story points are a useful technique to improve prediction but they have limits because the lack in statistics.