oliverdavies.uk/content/node.8a0608f1-361e-4618-a9a8-8ec2e2d1397e.yml

109 lines
4.3 KiB
YAML
Raw Normal View History

2025-07-10 00:14:12 +01:00
uuid:
- value: 8a0608f1-361e-4618-a9a8-8ec2e2d1397e
langcode:
- value: en
type:
- target_id: daily_email
target_type: node_type
target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7
revision_timestamp:
- value: '2025-05-11T09:00:00+00:00'
revision_uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
revision_log: { }
status:
- value: true
uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
title:
- value: 'Work in sprints, deploy continuously'
created:
- value: '2025-03-28T00:00:00+00:00'
changed:
- value: '2025-05-11T09:00:00+00:00'
promote:
- value: false
sticky:
- value: false
default_langcode:
- value: true
revision_translation_affected:
- value: true
path:
- alias: /daily/2025/03/28/continuous
langcode: en
body:
- value: |
<p>Agile and Scrum have become standard approaches in software development.</p>
<p>Work is planned and organised into iterations/cycles/sprints, usually lasting two weeks.</p>
<p>As one sprint is being worked on, the next is usually already planned and the following one is being discussed.</p>
<p>It's common for code deployments and releases to follow the same pattern.</p>
<p>When a sprint is finished, the changes are released.</p>
<p>But that means if a task is worked on at the start of the sprint, it won't be available for at least two weeks.</p>
<p>It may be longer if the sprint is longer or if there are steps like manual testing that also happen.</p>
<p>What if a change is needed or a bug is found?</p>
<p>Is that going to be at least another two weeks before it can be addressed?</p>
<p>Do you need to start using hotfixes and dealing with multiple branches and <a href="/daily/2025/02/18/conflicts">merge conflicts</a>?</p>
<p>I suggest separating your planning and work schedules from your deployments.</p>
<p>Deploy as often as possible, even during a sprint.</p>
<p>You want your feedback loop to be as small and quick as possible.</p>
<p>But, importantly, <a href="/daily/2023/06/21/deployments-or-releases">deploying code is different to releasing features</a>.</p>
<p>If you need to do manual testing, use feature flags to <a href="/daily/2022/12/07/separating-releases-from-deployments-with-feature-flags">separate deploying the code from releasing the feature</a>.</p>
<p>Then, when it's ready to go live, you only need to enable the feature flag - no code deployment needed.</p>
format: full_html
processed: |
<p>Agile and Scrum have become standard approaches in software development.</p>
<p>Work is planned and organised into iterations/cycles/sprints, usually lasting two weeks.</p>
<p>As one sprint is being worked on, the next is usually already planned and the following one is being discussed.</p>
<p>It's common for code deployments and releases to follow the same pattern.</p>
<p>When a sprint is finished, the changes are released.</p>
<p>But that means if a task is worked on at the start of the sprint, it won't be available for at least two weeks.</p>
<p>It may be longer if the sprint is longer or if there are steps like manual testing that also happen.</p>
<p>What if a change is needed or a bug is found?</p>
<p>Is that going to be at least another two weeks before it can be addressed?</p>
2025-07-16 12:00:00 +01:00
<p>Do you need to start using hotfixes and dealing with multiple branches and <a href="/daily/2025/02/18/conflicts">merge conflicts</a>?</p>
2025-07-10 00:14:12 +01:00
<p>I suggest separating your planning and work schedules from your deployments.</p>
<p>Deploy as often as possible, even during a sprint.</p>
<p>You want your feedback loop to be as small and quick as possible.</p>
2025-07-16 12:00:00 +01:00
<p>But, importantly, <a href="/daily/2023/06/21/deployments-or-releases">deploying code is different to releasing features</a>.</p>
2025-07-10 00:14:12 +01:00
2025-07-16 12:00:00 +01:00
<p>If you need to do manual testing, use feature flags to <a href="/daily/2022/12/07/separating-releases-from-deployments-with-feature-flags">separate deploying the code from releasing the feature</a>.</p>
2025-07-10 00:14:12 +01:00
<p>Then, when it's ready to go live, you only need to enable the feature flag - no code deployment needed.</p>
summary: null
field_daily_email_cta: { }