User Tools

Site Tools


emergence

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
emergence [2021/05/10 10:11]
9gu1h [Emergent Code]
emergence [2021/05/11 13:43] (current)
9gu1h [Emergent Learning]
Line 71: Line 71:
 Robert C. Martin in //Clean Code : ch Emergence// associates these properties with his own traits of "Clean Code". Robert C. Martin in //Clean Code : ch Emergence// associates these properties with his own traits of "Clean Code".
  
-Neither author though tells us what to expect, nor how to achieve "Emergence".+Neither author though tells us what to expect, nor how to achieve or observe "Emergence".
  
 ===== Emergent Refactoring ===== ===== Emergent Refactoring =====
Line 85: Line 85:
  
  
 +===== Emergent Learning =====
 +You may have detected that //execution// of the above discussions is a time-consuming endeavour!  This is exactly correct; and we can lean-into this time and use it to our advantage.
  
 +Our industry, specifically software technology, has become fixated on **right now**.   Agile process is debunked as "too flexible" -- we want **all the design**... //now!//  Testing is deferred (and forgotten!) because we want **all the results** ... //now!//  This becomes especially clear in application management, when a BusinessOwner turns to micromanagement as the only tool that seems useful in attempting to control a process and effort (MONEY$$) that they do not understand.   Upon examination, we want to enable that BusinessOwner to have a recurring opportunity to "guide the ship" of development, helping the development and design team respond to business opportunities and challenges as they arise.  The critical theme here is that **time goes by**.  Business opportunities and challenges are unkown.  They come about "at a time"  We cannot predict them and must take them in turn. 
  
 +We humans also do another important task "over time"... LEARNING.   We don't learn //all the things// **immediately**. We spend //years// learning our trade, learning languages, learning about each others as acquaintances, friends, partners.  We also //learn about software// The BusinessOwner learns about how the software we're building interoperates with the business process.  We developers learn how the software is used (in unpredictable ways!!).  We encourage the BusinessOwner take //time to learn//, leaving space in the planning and design process to **learn as we go**.
  
-   +Similarily, in refactoring our code, we need to give //time to learn// Small refactorings don't necessarily take days to contemplate and review.  We //do// need to give ourselves time to reflect on these small refactorings and //learn// the larger themes and modules that are. ... wait for it... **EMERGING** from the previous work. 
-CleanCode version+
  
-MonkeysAtKeyboards+Emergence comes from learning.   They are a form of each other.  Emergence begets learning.  Learning begets Emergence.
  
-Embrace 
emergence.1620655909.txt.gz · Last modified: 2021/05/10 10:11 by 9gu1h