Blog posts
Chocolate Driven Development started as a blog. This is where I let my thoughts on software development live. Often they are bite sized. Sometimes they are a bigger treat.
Dec 13, 2021
Multiple processing units in a computer can provide speed, validation, redundancy and specialization. The same is true for software developers working in an ensemble.
Mar 30, 2021
The agile manifesto is written as a reaction to the IT-industry of its time. As it wins ground it also slowly destroys its original context. If we lose sight of the heart of agile, we might end up in the other ditch. People growing up with agile will sound like waterfall evangelists, but only since they take the agile manifesto for granted.
Jan 18, 2024
Unit tests define the collaborators and the purpose of a piece of code. When reading code with unit tests, we can read the tests first, and focus on how the unit interacts with the system. Then reading the computational code is only about the implementation of that unit. Separating concerns like that lightens the cognitive load.
Oct 4, 2022
What does too many stakeholders do to a piece of code?
Jan 18, 2024
Unit tests define the collaborators and the purpose of a piece of code. When reading code with unit tests, we can read the tests first, and focus on how the unit interacts with the system. Then reading the computational code is only about the implementation of that unit. Separating concerns like that lightens the cognitive load.
Mar 30, 2021
The agile manifesto is written as a reaction to the IT-industry of its time. As it wins ground it also slowly destroys its original context. If we lose sight of the heart of agile, we might end up in the other ditch. People growing up with agile will sound like waterfall evangelists, but only since they take the agile manifesto for granted.
Nov 20, 2020
As Tolkien puts it in *The fellowship of the ring* “Not all those who wander are lost.” and "even the very wise cannot see all ends.” This is a text about agile software development and adventures.
Jan 18, 2024
Unit tests define the collaborators and the purpose of a piece of code. When reading code with unit tests, we can read the tests first, and focus on how the unit interacts with the system. Then reading the computational code is only about the implementation of that unit. Separating concerns like that lightens the cognitive load.
Sep 26, 2023
One way to construct a workshop is to think of it as a series of data transformations. Each step has to filter or transform the input in a way that it matches the input of the next exercise, until we have reached the requested result. This helps in controlling the format, and quality, of the results, without controlling its content.
Oct 12, 2022
Conditionals in the code can come from rules in the domain, or from how we constructed the solution. Make sure to know the differance.
Oct 10, 2022
Verbose and descriptive naming can be ugly, but if the code is messy it is better to show that in the names. Then the names can be a tool for further re-design.
Oct 4, 2022
What does too many stakeholders do to a piece of code?
Sep 29, 2021
Get the benefits from abstractions by turning each signature into a curiosity barrier. When looking at the signature, a developer should know what the piece of code does, without needing to read the implementation.
Apr 19, 2021
We have to practise new skills in a setting where everything else is easy. Getting to a point where the sustainable way to write software is done by reflex, also on the easier tasks.
Oct 27, 2020
This text has one reason to exist. I want you to write smaller and simpler units of code. I want each unit of code to have only one reason to exist.
Aug 23, 2022
Systems thinking helps us understand why DevOps happens in the joining of dev and ops. It can not be bottled and sold separately.
May 26, 2021
Self contradictions are things with a built in logical conflict. A DevOps person is not possible, since DevOps is about collaboration and shared responsibility. It can not be contained by a person.
May 6, 2021
There is a scientifically better way to write software. It is all available in the DORA DevOps report and learning about it will save lives, for real.
Apr 27, 2021
The software industry has to dream bigger when it comes to excellence, and use research available to improve. We need to dare to imagine a world where writing code is fun and pain free. It is possible!
Sep 26, 2023
One way to construct a workshop is to think of it as a series of data transformations. Each step has to filter or transform the input in a way that it matches the input of the next exercise, until we have reached the requested result. This helps in controlling the format, and quality, of the results, without controlling its content.
Oct 10, 2022
Verbose and descriptive naming can be ugly, but if the code is messy it is better to show that in the names. Then the names can be a tool for further re-design.
Oct 4, 2022
What does too many stakeholders do to a piece of code?
With Comments
Apr 27, 2021
The software industry has to dream bigger when it comes to excellence, and use research available to improve. We need to dare to imagine a world where writing code is fun and pain free. It is possible!
Apr 19, 2021
We have to practise new skills in a setting where everything else is easy. Getting to a point where the sustainable way to write software is done by reflex, also on the easier tasks.
Under one minute
Apr 19, 2021
We have to practise new skills in a setting where everything else is easy. Getting to a point where the sustainable way to write software is done by reflex, also on the easier tasks.
About two minutes
Jan 18, 2024
Unit tests define the collaborators and the purpose of a piece of code. When reading code with unit tests, we can read the tests first, and focus on how the unit interacts with the system. Then reading the computational code is only about the implementation of that unit. Separating concerns like that lightens the cognitive load.
Oct 12, 2022
Conditionals in the code can come from rules in the domain, or from how we constructed the solution. Make sure to know the differance.
Oct 10, 2022
Verbose and descriptive naming can be ugly, but if the code is messy it is better to show that in the names. Then the names can be a tool for further re-design.
Oct 4, 2022
What does too many stakeholders do to a piece of code?
Aug 23, 2022
Systems thinking helps us understand why DevOps happens in the joining of dev and ops. It can not be bottled and sold separately.
Dec 13, 2021
Multiple processing units in a computer can provide speed, validation, redundancy and specialization. The same is true for software developers working in an ensemble.
Sep 29, 2021
Get the benefits from abstractions by turning each signature into a curiosity barrier. When looking at the signature, a developer should know what the piece of code does, without needing to read the implementation.
May 26, 2021
Self contradictions are things with a built in logical conflict. A DevOps person is not possible, since DevOps is about collaboration and shared responsibility. It can not be contained by a person.
May 6, 2021
There is a scientifically better way to write software. It is all available in the DORA DevOps report and learning about it will save lives, for real.
Mar 30, 2021
The agile manifesto is written as a reaction to the IT-industry of its time. As it wins ground it also slowly destroys its original context. If we lose sight of the heart of agile, we might end up in the other ditch. People growing up with agile will sound like waterfall evangelists, but only since they take the agile manifesto for granted.
Nov 20, 2020
As Tolkien puts it in *The fellowship of the ring* “Not all those who wander are lost.” and "even the very wise cannot see all ends.” This is a text about agile software development and adventures.
Oct 27, 2020
This text has one reason to exist. I want you to write smaller and simpler units of code. I want each unit of code to have only one reason to exist.
Three minutes or longer
Sep 26, 2023
One way to construct a workshop is to think of it as a series of data transformations. Each step has to filter or transform the input in a way that it matches the input of the next exercise, until we have reached the requested result. This helps in controlling the format, and quality, of the results, without controlling its content.
Apr 27, 2021
The software industry has to dream bigger when it comes to excellence, and use research available to improve. We need to dare to imagine a world where writing code is fun and pain free. It is possible!