Fossil SCM

Added paragraph on feedback loops, control theory, and OODA to the fossil-v-git doc, distilling a recent discussion on the forum.

wyoung 2019-09-13 12:00 trunk
Commit b0f2a48f98e0bf0eeabdee4d3b2fdffaef209c95a984056ab6ba31ce566b6f89
1 file changed +17 -1
--- www/fossil-v-git.wiki
+++ www/fossil-v-git.wiki
@@ -384,11 +384,11 @@
384384
they're normally used to handle rare exception cases, whereas in
385385
many Git projects, they're part of the straight-line development
386386
process.</p></li>
387387
388388
<li><p><b>Identical clones:</b> Fossil's autosync system tries to
389
- keep local clones identical to the repository it cloned
389
+ keep each local clone identical to the repository it cloned
390390
from.</p></li>
391391
</ul>
392392
393393
Where Git encourages siloed development, Fossil fights against it.
394394
Fossil places a lot of emphasis on synchronizing everyone's work and on
@@ -395,10 +395,26 @@
395395
reporting on the state of the project and the work of its developers, so
396396
that everyone — especially the project leader — can maintain a better
397397
mental picture of what is happening, leading to better situational
398398
awareness.
399399
400
+You can think about this difference in terms of
401
+[https://en.wikipedia.org/wiki/Feedback | feedback loop size], which we
402
+know from the mathematics of
403
+[https://en.wikipedia.org/wiki/Control_theory | control theory] to
404
+directly affect the speed at which any system can safely make changes.
405
+The larger the feedback loop, the slower the whole system must run in
406
+order to avoid loss of control. The same concept shows up in other
407
+contexts, such as in the [https://en.wikipedia.org/wiki/OODA_loop | OODA
408
+loop] concept originally developed to explain the success of the US F-86
409
+Sabre fighter aircraft over the on-paper superior MiG-15, then later
410
+applied in other contexts, such as business process management.
411
+Committing your changes to private branches in order to delay a public
412
+push to the parent repo increases the size of your collaborators'
413
+control loops, either causing them to slow their work in order to safely
414
+react to your work, or to overcorrect in response to each change.
415
+
400416
Each DVCS can be used in the opposite style, but doing so works against
401417
their low-friction paths.
402418
403419
404420
<h4 id="scale">2.5.2 Scale</h4>
405421
--- www/fossil-v-git.wiki
+++ www/fossil-v-git.wiki
@@ -384,11 +384,11 @@
384 they're normally used to handle rare exception cases, whereas in
385 many Git projects, they're part of the straight-line development
386 process.</p></li>
387
388 <li><p><b>Identical clones:</b> Fossil's autosync system tries to
389 keep local clones identical to the repository it cloned
390 from.</p></li>
391 </ul>
392
393 Where Git encourages siloed development, Fossil fights against it.
394 Fossil places a lot of emphasis on synchronizing everyone's work and on
@@ -395,10 +395,26 @@
395 reporting on the state of the project and the work of its developers, so
396 that everyone — especially the project leader — can maintain a better
397 mental picture of what is happening, leading to better situational
398 awareness.
399
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
400 Each DVCS can be used in the opposite style, but doing so works against
401 their low-friction paths.
402
403
404 <h4 id="scale">2.5.2 Scale</h4>
405
--- www/fossil-v-git.wiki
+++ www/fossil-v-git.wiki
@@ -384,11 +384,11 @@
384 they're normally used to handle rare exception cases, whereas in
385 many Git projects, they're part of the straight-line development
386 process.</p></li>
387
388 <li><p><b>Identical clones:</b> Fossil's autosync system tries to
389 keep each local clone identical to the repository it cloned
390 from.</p></li>
391 </ul>
392
393 Where Git encourages siloed development, Fossil fights against it.
394 Fossil places a lot of emphasis on synchronizing everyone's work and on
@@ -395,10 +395,26 @@
395 reporting on the state of the project and the work of its developers, so
396 that everyone — especially the project leader — can maintain a better
397 mental picture of what is happening, leading to better situational
398 awareness.
399
400 You can think about this difference in terms of
401 [https://en.wikipedia.org/wiki/Feedback | feedback loop size], which we
402 know from the mathematics of
403 [https://en.wikipedia.org/wiki/Control_theory | control theory] to
404 directly affect the speed at which any system can safely make changes.
405 The larger the feedback loop, the slower the whole system must run in
406 order to avoid loss of control. The same concept shows up in other
407 contexts, such as in the [https://en.wikipedia.org/wiki/OODA_loop | OODA
408 loop] concept originally developed to explain the success of the US F-86
409 Sabre fighter aircraft over the on-paper superior MiG-15, then later
410 applied in other contexts, such as business process management.
411 Committing your changes to private branches in order to delay a public
412 push to the parent repo increases the size of your collaborators'
413 control loops, either causing them to slow their work in order to safely
414 react to your work, or to overcorrect in response to each change.
415
416 Each DVCS can be used in the opposite style, but doing so works against
417 their low-friction paths.
418
419
420 <h4 id="scale">2.5.2 Scale</h4>
421

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button