![Page 1: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/1.jpg)
Feedback Loops in Practice
Marcus Denker
Talk held at ESUG2017
![Page 2: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/2.jpg)
Two talks
![Page 3: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/3.jpg)
ESUG14
https://www.slideshare.net/MarcusDenker/2014-esugcathedral
![Page 4: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/4.jpg)
ESUG16
https://www.slideshare.net/MarcusDenker/perfection-feedback-loops-or-why-worse-is-better-65540840
![Page 5: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/5.jpg)
(do not expect too much)
![Page 6: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/6.jpg)
ESUG14
![Page 7: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/7.jpg)
![Page 8: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/8.jpg)
![Page 9: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/9.jpg)
Scaffolding
![Page 10: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/10.jpg)
ESUG16
![Page 11: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/11.jpg)
Perfection
![Page 12: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/12.jpg)
Feedback
![Page 13: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/13.jpg)
Smalltalk can be feedback loop
![Page 14: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/14.jpg)
Smalltalk should be feedback loop
![Page 15: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/15.jpg)
TODAY
![Page 16: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/16.jpg)
What does that mean in reality?
![Page 17: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/17.jpg)
Examples for Pharo
![Page 18: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/18.jpg)
What we do / what are the challenges
![Page 19: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/19.jpg)
Goal: Getting feedback and ideas!
![Page 20: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/20.jpg)
Trivial Changes
2014
![Page 21: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/21.jpg)
Every improvement has an effect
2014
![Page 22: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/22.jpg)
2014
![Page 23: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/23.jpg)
A small change fed back will have huge payout
2016
![Page 24: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/24.jpg)
A tiny linear change now would be a huge change some iterations ago
2016
![Page 25: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/25.jpg)
Trivial Change
• Issue tracker
• Make it easy to contribute
• Do not ignore contributions
![Page 26: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/26.jpg)
Issue Tracker
• Fun: It was once thought as not needed
• Record issues people have
• Record contributions, too!
• Open: 651 Closed: 17459 (!!)
![Page 27: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/27.jpg)
Challenges
• Work needed to keep clean
• Duplicates, already fixed, non-actionable…
• Reviewing / Getting in good state
• Actually fixing reported bugs
![Page 28: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/28.jpg)
Solutions
• Automatic close after 1 year inactivity
• Has to be automatic else people get upset
• Some people look every to keep things in check
• Regular Sprints: every last Friday the month
• More fun to do together then alone!
![Page 29: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/29.jpg)
Make it easy
• It should be very easy to contribute
• We are not there yet!
![Page 30: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/30.jpg)
Large(r) Change
![Page 31: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/31.jpg)
2014
![Page 32: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/32.jpg)
Scaffolding
2014
![Page 33: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/33.jpg)
Todays system is scaffolding for tomorrow
2014
![Page 34: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/34.jpg)
![Page 35: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/35.jpg)
Elephant in the Room
![Page 36: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/36.jpg)
Backward Compatibility
![Page 37: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/37.jpg)
Example: Bloc/Bric
![Page 38: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/38.jpg)
You can not stay 100% compatible to Morphic and do something better
![Page 39: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/39.jpg)
Morphic is scaffolding to develop the next step
![Page 40: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/40.jpg)
The Platform
Jump to large
Proj
ect1
Proj
ect2
Proj
ect3
2014
![Page 41: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/41.jpg)
Nomadic Solution
- Do not build infrastructure
- Use resources until depleted
- Move on
2014
![Page 42: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/42.jpg)
The Platform
Jump Possible
Proj
ect1 Pr
ojec
t2
Proj
ect3
Proj
ect4
2014
![Page 44: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/44.jpg)
Backward Compatibility
• Especially problematic for portable projects
• Why improve the Platform if projects can only use a 100% backward compatible subset?
• Is that a good situation?
![Page 45: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/45.jpg)
Backward Compatibility
• We need better tools and structures to support evolution of client code
• Some experiments: rewriting deprecations (fun!)
![Page 46: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/46.jpg)
Accept Imperfection
2016
![Page 47: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/47.jpg)
2016
![Page 48: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/48.jpg)
True for both small and big small
![Page 49: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/49.jpg)
Good enough to integrate
• Deciding to integrate is very very hard
• You do not want to reject everything
• But accepting blindly is wrong, too
• Lots of work!
![Page 50: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/50.jpg)
Involve the community• Make it easy to review and test
• Delegate reviewing to subsystem maintainers
• Accept that nothing is perfect and mistakes can happen.
![Page 51: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/51.jpg)
Accept Chaos
• You can not control everything. There is not enough time in the day.
• Things can get to be a bit chaotic at times
• Yet better than limiting activity to what is controllable
![Page 52: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/52.jpg)
Feedback + Chaos• Many examples where systems got into loop
based exponential growth are examples lack of control:
• The web vs. online services
• Many examples at companies
• e.g Unics vs Multics, even X86 (often examples of perfect vs. DONE).
![Page 53: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/53.jpg)
Release =! Perfect
• Until Pharo 6: Lots of critic from outsiders about releasing something not perfect.
• But: Releases are done every year, not when everything is perfect.
![Page 54: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/54.jpg)
Learned helplessness
• Smalltalk is open, can be changed
• Clients are programmers
• People do change tools/environment
• But “Smalltalk, the system” did not learn
![Page 55: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/55.jpg)
Structure for Feedback
![Page 56: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/56.jpg)
Structure for Feedback
• Example: GT Inspector
• Extending the inspector is easy
• There are lots of examples
• It can be done in a modular way
![Page 57: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/57.jpg)
Structure for Feedback
• Future Example: Sista
• Implement Optimizer of the VM in the Image
• Makes it easier (hopefully) for Smalltalkers to contribute
![Page 58: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/58.jpg)
… round 1,000 times the global production of rice in 2010 (464,000,000 metric tons)
2016
![Page 59: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/59.jpg)
If it really works…
![Page 60: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/60.jpg)
… we have a problem
![Page 61: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/61.jpg)
Growth: everything gets “more”
![Page 62: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/62.jpg)
Challenge: Growth
• More Boring tasks
• More complex tasks
• Require full time, long term attention
![Page 63: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/63.jpg)
Solution for Scaling• Technical
• e.g. Git for reviews and submissions, more people can get involved.
• Community Structure
• Example: Consortium
• Even better solutions can be invented!
![Page 64: Feedback Loops - Marcus DenkerFeedback + Chaos • Many examples where systems got into loop based exponential growth are examples lack of control: • The web vs. online services](https://reader036.vdocument.in/reader036/viewer/2022070909/5f95cc00ec11c41df02d214a/html5/thumbnails/64.jpg)
Input needed!
• Now
• At the Conference
• Later by Mail or in Discord