SlideShare une entreprise Scribd logo
1  sur  63
Télécharger pour lire hors ligne
Smalltalk and Corporate Cultures
                        Presented by
                      Piotr Palacz
                      piotr@palacz.net
                    piotr.palacz@acm.org




August 28th, 2000                          1
0. What this is all about?
                       Motivation
                    Driving Questions
                       Main Focus
                    Main Challenges
                       Disclaimers



August 28th, 2000                         2
0.1 Motivation
•  Bewilderment and surprises
•  Self-defense
•  Trying to systematize experiences




August 28th, 2000                      3
0.2 Driving Questions
•  About my tools of trade
     –  what is that I value when I choose Smalltalk as my
        favorite tool of trade?
     –  what I share with others who do the same?
•  About using my tools in real life, i.e.
   corporate reality
     –  how can I recognize environments in which I have
        chance of using my tools sensibly?

August 28th, 2000                                            4
0.3 Main Focus
•    Smalltalk culture
•    Corporate cultures
•    Intersections of the above
•    Consequences and examples, including a
     perspective on XP.



August 28th, 2000                             5
0.4 Main Challenges
Cultural viewpoint usually deemed
 inconsequential or boring or both.




August 28th, 2000                         6
0.5 Disclaimers
In accordance with the Hollywood Presentation
   Principle, it must be stated that this is, in a sense,
   a work of fiction by a private individual.

Any similarity with persons and organizations,
 existing or imagined, or their views, may turn out
 to be purely coincidental.


August 28th, 2000                                           7
0.6 Plan of the Game
•    Concept of Culture
•    Culture of Smalltalk
•    Nostalgic Bits
•    On two types of corporate cultures
•    Intersections
•    A point of view on XP

August 28th, 2000                          8
1. Preliminaria
•  Concept of Culture

•  Culture of tools (and tools of culture)

•  Culture of Programming?
•  Culture of Corporate World?

August 28th, 2000                            9
1.1 Culture #1
•  Humorous
     Culture is what we do on Friday night (American).
     Culture is what differentiates us from apes (Darwinian).

•  Pedestrian
     Culture is what makes us behave “correctly”.

•  Historical
     Roman Cultura originally referred to the cultivation of the soil; later,
       transferred meaning of cultura animi (culture of the soul), as in
       Cicero. The concept was not widely used in Europe until late 18th
       c. (Herder, Kant, Hegel, etc.).
August 28th, 2000                                                           10
1.2 Culture #2
Anthropological
     Descriptive, rather than normative, approach.
     Focuses more on groups than individuals.
      Description of a culture of a group includes:
     –  shared, learned patterns of behavior, conscious or not;
     –  repeatable and dominating patterns of thought and perception;
     –  common value hierarchy.
     In some approaches, cultures are described in terms of a structure or
        as a system.



August 28th, 2000                                                            11
1.2 Culture of Tools
•  Craftsmen tend to choose their favorite tool(s),
   sometimes for reasons not fully understood by them.
•  Attitude towards specific tools creates or enforces
   group identification. The group shares some
   convictions and values; often inherits a tradition; also
   rejects some other convictions, values, traditions.
•  Craftsmen’s know-how about patterns of usage of a
   tool creates knowledge; much of it is tacit knowledge.


August 28th, 2000                                         12
1.3 Programming Culture?
Substitute “programmer” for “craftsman” in the
  previous slide.

Corollary: dream of mass production of software and
  replaceable “resources”.




August 28th, 2000                                 13
1.4 Musical Metaphor
Programmers are like musicians. They play different
  instruments (and reportedly choice of instrument
  follows not only aptitude but also character), and
  perform different kinds of music ( say: classical,
  jazz, pop, etc).
Programming tools correspond to various musical
  instruments; programming cultures correspond to
  different music genres.
There is also a similarity in attitude towards tools.
August 28th, 2000                                   14
1.5 Military Metaphor
Most programmers are like soldiers in Soviet Army.
   They are replaceable, and their tools are be cheap
   and uncomplicated. Using them is tedious, but
   deterministic.
Some programmers are like members of special
   forces: well trained, passionate about what they
   do, with elaborate tools and need for high
   adrenaline levels.
In both cases, casualty rates may be high.
August 28th, 2000                                   15
1.6 Game Metaphor
Some play finite games, towards a specific
  end.
Some play infinite games, for the sake of
  playing.
Some try to play both.

Actual cultural metaphors: chess, poker and go.

August 28th, 2000                                 16
1.7 Corporate Cultures
There is a variety of cultures, but arguably, there are
  two elements that differentiate corporate cultures
  in a fundamental way:
   –  their control mechanisms
   –  their attitude towards knowledge creation,
      growing and dissemination.
Both are closely related.


August 28th, 2000                                     17
2. Culture of Smalltalk
•    Smalltalk Design Principles
•    Tradition and Heritage
•    Common Threads
•    Smalltalk Family Values
•    Contrasts



August 28th, 2000                        18
2.1 Smalltalk Design Principles
Paper by Dan Ingalls is a good point of start.
“The purpose of the Smalltalk project is to
  provide computer support for the creative
  spirit in everyone.”

Is the creative spirit merely a figure of speech?



August 28th, 2000                                   19
2.2 Idea of Amplification
Intellect Amplification Project:
“Our plan is basically to provide human subjects with the best
  technological aids possible … and to re-design the subjects' way of
  attacking intellectual problems so as to take advantage of the
  capabilities provided in these aids.” [Engelbart62]


“The thing I've always been interested in is the amplification possibilities
   when you take something that's already interesting and already part of
   deep human interest and use some technology to amplify the reach.”
A. Kay in [Frenkel94]


August 28th, 2000                                                          20
2.3 Common Threads
•  Extending and amplifying human cognitive capabilities
   through special tools.
Properties of the tools:
encourage learning, symbol manipulation, ease of use, appeal to many
   senses; the tool is “transparent”, becomes “intimate”, etc.
•  Contrast with using tools merely as means to increase
   “productivity”, i.e. maximize profit.
•  Changing to new forms of cultural discourse: away from
   the textual.


August 28th, 2000                                                      21
2.4 Smalltalk Family Values
•  Simplicity, uniformity, power, accessibility
•  Expressiveness
•  Semantic transparency
•  Habitability (Gabriel)
as facilitators for creation and understanding.

What those values have to do with today’s corporate software
    production?
August 28th, 2000                                         22
2.4 Contrasts
     Culture of efficiency, the esoteric and
      arcane.
     Culture of correctness.
     Culture of marketing in programming.




August 28th, 2000                              23
2.5 Darwinism Again
“Natural Selection: Languages and systems
  that are of sound design will persist, to be
  supplanted only by better ones.”
[Ingalls81]

Does it really work that way?


August 28th, 2000                                24
3 Nostalgic Bits

Between fortune of one and Fortune 1.
On expectations, surprises and possible
 causes.




August 28th, 2000                         25
3.1 Great Expectations
•    Post-Industrialism
•    Technopolis
•    Economic rationality
•    Technological aggressiveness
•    Large budgets



August 28th, 2000                        26
3.2 Surprises
•    Authoritarianism
•    Factory pattern
•    Death march
•    Mimicry
•    Degenerated pragmatism



August 28th, 2000                   27
3.3 More Surprises
•    Functional illiteracy
•    Distorted and controlled discourse
•    Manufactured consent
•    Omnipresent amnesia
•    Absence of management theory



August 28th, 2000                         28
3.4 Causes?
•  Educational System?
“Children should be taught to think. … a bunch of people trying to move curriculum-from
   some book that they didn’t write, about subjects that they don’t know anything about-
   into some poor child’s mind. That could not be more ridiculous. Its basically an
   institutional factory type model. And it just doesn’t work.” [Frenkel1994]

•  Corporate Culture?
•  Mass Culture?
“Recent studies [1996] have shown that fewer than 5% of American adults have learned to
   think fluently in … modern non-story forms.” [Kay1996]. (these forms are: logical
   argument and systemic thinking).

•  All of the above?

August 28th, 2000                                                                          29
4. Models of Corporate Cultures

Western-like binary division:
     –  Sales-centered culture vs.”people”-centered [Rosenbluth94]
     or:
     –  Closed vs. open culture [vaguely K.R. Popper]




August 28th, 2000                                                    30
4.1 Comparison Criteria
•  Dominant Traits                •    Information flow
•  Focal points of business       •    Motivational instruments
•  Sources and replication of     •    Training and learning
   culture                        •    Use of technology
•  Hierarchy of concerns          •    Measurements
•  Perception of the main asset   •    Quality
•  Hierarchy of power             •    Awarding system
•  Management traits              •    Culture of discussion
•  Workforce                      •    Capability for structural change
•  Decision making


August 28th, 2000                                                    31
4.2 Dominant Traits
Organization unable to learn and     Learning organization
   innovate                          Dynamic
Static, Authoritarian and Closed     Innovating
Discouraging creativity              Long-term perspective
Short-term perspective               Adhering to values
Pretending to implement values
Culture imposed unconsciously        Culture explicitly maintained and
Based on defensiveness, denial of       grown
   reality, fear of responsibility
Self-denying                         Confronting issues head-on
                                     Self-conscious

August 28th, 2000                                                        32
4.3 Sources and Replication of
              Culture
Big consulting companies             No single dominant source
Military culture, command and
   control                           Discriminative recruitment process
Either no discrimination in             to ensure a cultural fit
   recruitment or a preference for
   specific sources                  Culture explicitly maintained and
Culture imposed unconsciously           grown
Based on defensiveness, denial of
   reality, fear of responsibility   Confronting issues head-on



August 28th, 2000                                                        33
4.4 Hierarchy of Concerns
Sales -> profits                      People -> service -> profits
Meeting quotas
Preoccupation with costs, esp.        Measurable financial effects:
   labor costs, rather than              -  Revenue per employee
   productivity; hence:                  -  Return on investment
    People are treated as
       expendable “resources”
    Availability of cheap resources
    Malleability of resources



August 28th, 2000                                                     34
4.5 Focus and Assets
                       Focal points of business

Acquiring a contract, a deal         Growing culture
Getting away with its realization    Servicing needs of people

                      Perception of the main asset
“Deal” and contract; project         People, their knowledge and
Delivery date and bonuses               involvement;
                                     Shared culture




August 28th, 2000                                                  35
4.6 Power Hierarchy
Centralized and secretive     Decentralized and public
Elaborate                     Shallow
Inflexible                    Flexible
Hierarchy creates tasks       Hierarchy is adjusted to tasks




August 28th, 2000                                              36
4.7 Information Flow
Thwarted                            Open
Single routes or no routes          Multiple routes
Actual discouragement of feedback   Encouraging feedback
Feedback not processed              Processing feedback
Delayed, partitioned, twisted       Cross-pollination
Fear of the written
Documents not signed                Written documents produced and
                                      signed
Oral exchanges: face to face,       Asynchronous, remote, written
   meeting, voice mail are main       forms of communication also
   forms of communication             present

August 28th, 2000                                                    37
4.8 Decision Making
Centralized                          Distributed
controlled by specific persons;      controlled by process and culture
Informal;                               rather that specific people;
secretive                            public
Attached to forms and appearances
   rather than issues to be solved
Outcomes not openly criticisable     Outcomes criticisable
Authorship and responsibilities      Responsibility clearly assigned
   vague or hidden
Meetings as a way to diffuse
   responsibility for a decision

August 28th, 2000                                                        38
4.9 Discourse
Arguments ex-authority are the         Basic rational forms uphold, e.g.:
   main kind of argumentation          Arguments ex-authority, ad
   augmented by personal attacks          personam are rejected
Pseudo-logical argumentation is
   acceptable and accepted



Discussion is either superficial or
   irrelevant; often manipulative;
   if it fails, discussion authority
   imposition


August 28th, 2000                                                           39
4.10 Motivational Instruments
Punishment and staying out of       Whole spectrum of motivational
   trouble rather than positive       instruments
   amplification
Position in the hierarchy, in the   Satisfaction
   inner circle                     Development
                                    Belonging to a culture
Financial                           Financial

Tacit, closed doors promotion
                                    Clear routes to advancement and
   policies
                                       promotion


August 28th, 2000                                                     40
4.11 Award and Punishment
Obedience                          Professionalism
Loyalty                            Productivity
Passivity                          Creativity and ability to innovate
                                   Merit
Ousting individuals as trouble-
  makers, non-team payers,
  arrogant, and similar forms of
  character attack




August 28th, 2000                                                       41
4.12 Management Traits
No observable self-reflection         Self-examination and reflection
Self defense & denial
Self-delusional image
Megalomania
Inability/unwillingness to delegate   Ability to delegate power to solve
   power                                problems

Sticking to fossilized bureaucratic   Recognition of and breaking away
    forms                                from the outdated rules and
Motivated by and motivating with         fundamental assumptions
    mainly financial rewards

August 28th, 2000                                                          42
4.13 Workforce Traits
Unhappy or resigned                 Mostly happy

Very high turnover (e.g. 75% per    Natural turnover ( <10%)
   year)
Forced to work overtime to solve    Productive in terms of income
   trivial but entangled and           produced and return on
   mismanaged issues                   investment

Adopting defensive measures
  against excessive and arbitrary
  load


August 28th, 2000                                                   43
4.14 Working Environment
From bleak to depressing              Mixed floor plans
Small or overcrowded cubes            Adjusted so it is not a hindrance
Location reflects status              Working air conditioning

Too hot or too cold

Often items of group identification
   displayed




August 28th, 2000                                                         44
4.15 Learning and Training
Ad-hoc training and not learning   Continuous learning

No idea of investment present      Learning is a fundamental
                                      investment
Training happens only when
   resources idle or management    Learning is culture-supported
   desperate (cannot get trained
   resources cheaply enough)




August 28th, 2000                                                  45
4.16 Technological
                      Consequences
Technology is imposed                 Technology is evaluated

Following the crowd as                Not following the crowd as
   minimization of risk                 maximization of opportunity

Choice criteria absent, incoherent,   There are explicit criteria for
  or ignored                             choice




August 28th, 2000                                                       46
4.17 Tools
Weak use in internal operations   Used in products
  because of the focus on         Used in internal operations
  projects and unwillingness to
  invest

Project-imposed                   Assessed, revised




August 28th, 2000                                               47
5. Overlaps
•  The dominating type of culture is sales-
   based, closed culture.
•  What does it have to do with Smalltalk
   culture?
•  Features of organizations where Smalltalk
   functioned well


August 28th, 2000                              48
6. Examples
Visual Programming Smalltalk style.
Dropping Smalltalk




August 28th, 2000                     49
7. A Perspective on XP
•  Programming methodologies as cultural
   utopias
•  XP and big M’s
•  Main features of XP
•  XP’s in a cultural context



August 28th, 2000                          50
7.2 Methodology & Utopia
Methodologies can be treated as cultural utopias.
They prescribe a tacit value system without going to
  deeply (if at all) in areas like:
     –  what are the real preconditions of their success;
     –  who is and who is not the main audience;
     –  whose interests they serve.
     (that may be a reason why they fail so often).



August 28th, 2000                                           51
7.3 XP and BIG M’s




August 28th, 2000                        52
7.4 Statement of the Problem
“The basic problem of software development
  is risk” [Beck00]
This is a valid view, but within a limited perspective;
typically shared by contractors and project managers.
From a distance, most types of risk are consequences
  of troubled knowledge flow. These risks are not
  unavoidable; they are typical for closed cultures.


August 28th, 2000                                    53
7.5 The Goal
“What we need to do is to invent a style of
 software development that addresses these
 risks” [Beck00]




August 28th, 2000                             54
7.5 Applicability of XP
“… developing software in the face of vague
 or rapidly changing requirements” [Beck00]
Rapidly changing requirements are very rare.
(financial instruments?) Vague requirements are
   common.


Also: small to medium size teams.

August 28th, 2000                                 55
7.6 The XP Solution
•  Code as the main artifact
•  Coding as the central activity
•  Pair programming as combined knowledge
   sharing mechanism and a quality gate
•  Refactoring, unit and integration testing



August 28th, 2000                              56
7.7 Minimalism in XP
•    Stress on oral communication
•    Metaphor serves as architecture
•    Refactoring replaces (re-)design
•    Tight tracking of the goal using continuous
     integration testing.

These are defensive measures.
August 28th, 2000                                  57
7.8 XP in Context
XP as a self-defense reaction against
 contamination of development by corporate
 culture.

In that context, XP has an important role to
  play and introduces practices that are
  usually absent.

August 28th, 2000                              58
7.9 XP Outside Context
Outside that context, XP’s viability is
   problematic:
•  Risk is not the main problem.
•  Oral communication is not an acceptable
   way of sharing knowledge in software
   development.
•  Code is not the main artifact.

August 28th, 2000                            59
8 References
[Engelbart62] Douglas C. Engelbart, Augmented Human Intellect Program, SRI-ARC, 1962
[Ingalls81] Dan Ingalls, Design Principles Behind Smalltalk, Byte, August 1981
[Frenkel94] Karen Frenkel, Conversation with Alan Kay, interactions, Vol 1, Issue 2, pp
    13-22, 1994
[Nonaka95] Nonaka & Takeuchi, The Knowledge-Creating Company, Oxford Press, 1995
[Kay96] Alan Kay, Revealing the Elephant, Sequence, Vol. 31, No. 4.
[Yourdon97] E. Yourdon, Death March, Prentice-Hall 1997




August 28th, 2000                                                                         60
8.1 More References

[Rosenbluth94] Hal F. Rosenbluth, Customer Comes Second, William Morrow Inc., 1994
[Saul97] J. R. Saul, The Doubter’s Companion, A Dictionary of Aggressive Common Sense,
    Free Press, 1997
[Hiltzig99] Michael Hiltzig, Dealers of Lightning: Xerox PARC and the Dawn of the
    Computer Age, HarperCollins, 1999
[Beck00] K. Beck, eXtreme Programming eXplained, Addison-Wesley, 2000
[Rheingold00] Howard Rheingold, Tools For Thought, MIT Press, 2000




August 28th, 2000                                                                    61
9. Acknowledgments
I’d like to thank my colleagues and friends with
   whom I worked and discussed issues presented
   here over the last few years.

Special thanks go to Jean-Claude Beaudoin
and Russell Modlin.



August 28th, 2000                                  62
10. The End




August 28th, 2000                 63

Contenu connexe

Similaire à Smalltalk and Corporate Cultures

Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
Marcus Dapp
 
Q1a uses of conventions db edit m googan guide
Q1a uses of conventions db edit m googan guideQ1a uses of conventions db edit m googan guide
Q1a uses of conventions db edit m googan guide
DB3igs
 
Med122 participatory culture
Med122 participatory cultureMed122 participatory culture
Med122 participatory culture
Rob Jewitt
 
Key media concept
Key media conceptKey media concept
Key media concept
ElliottChyi
 
Genre Theory
Genre Theory Genre Theory
Genre Theory
04kelfos
 
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
Creativeslides
 
Theories of Culture
Theories of CultureTheories of Culture
Theories of Culture
Dustin Kidd
 
Genre theory monday 2014
Genre theory monday 2014Genre theory monday 2014
Genre theory monday 2014
Emma Leslie
 
Week 3 summer hum 140 - hanging out and messing around
Week 3 summer hum 140  - hanging out and messing aroundWeek 3 summer hum 140  - hanging out and messing around
Week 3 summer hum 140 - hanging out and messing around
Ray Brannon
 

Similaire à Smalltalk and Corporate Cultures (20)

SociologyExchange.co.uk Shared Resource
SociologyExchange.co.uk Shared ResourceSociologyExchange.co.uk Shared Resource
SociologyExchange.co.uk Shared Resource
 
Socio101 report pres
Socio101 report presSocio101 report pres
Socio101 report pres
 
Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
Lecture 2011.01: General Introduction and Open Access (Digital Sustainability)
 
A2 question 1 a
A2 question 1 aA2 question 1 a
A2 question 1 a
 
Collective Intelligence
Collective IntelligenceCollective Intelligence
Collective Intelligence
 
Q1a uses of conventions db edit m googan guide
Q1a uses of conventions db edit m googan guideQ1a uses of conventions db edit m googan guide
Q1a uses of conventions db edit m googan guide
 
Med122 participatory culture
Med122 participatory cultureMed122 participatory culture
Med122 participatory culture
 
Key media concept
Key media conceptKey media concept
Key media concept
 
2012 sabbatical findings: part 1
2012 sabbatical findings: part 12012 sabbatical findings: part 1
2012 sabbatical findings: part 1
 
T & p week 1 upload version
T & p week 1 upload versionT & p week 1 upload version
T & p week 1 upload version
 
Virtual futures
Virtual futuresVirtual futures
Virtual futures
 
Genre Theory
Genre Theory Genre Theory
Genre Theory
 
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
Kennedy and Crogan 'Identity and Interdisciplinarity in Games and Play Resear...
 
Theories of Culture
Theories of CultureTheories of Culture
Theories of Culture
 
Genre theory monday 2014
Genre theory monday 2014Genre theory monday 2014
Genre theory monday 2014
 
Exam 1 b genre
Exam 1 b   genreExam 1 b   genre
Exam 1 b genre
 
Digital storytelling for higher education
Digital storytelling for higher educationDigital storytelling for higher education
Digital storytelling for higher education
 
Week 3 summer hum 140 - hanging out and messing around
Week 3 summer hum 140  - hanging out and messing aroundWeek 3 summer hum 140  - hanging out and messing around
Week 3 summer hum 140 - hanging out and messing around
 
Networking and creativity: the future of pass-it-on
Networking and creativity: the future of pass-it-onNetworking and creativity: the future of pass-it-on
Networking and creativity: the future of pass-it-on
 
Representation exam
Representation examRepresentation exam
Representation exam
 

Plus de ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

Plus de ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Dernier

Dernier (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Smalltalk and Corporate Cultures

  • 1. Smalltalk and Corporate Cultures Presented by Piotr Palacz piotr@palacz.net piotr.palacz@acm.org August 28th, 2000 1
  • 2. 0. What this is all about? Motivation Driving Questions Main Focus Main Challenges Disclaimers August 28th, 2000 2
  • 3. 0.1 Motivation •  Bewilderment and surprises •  Self-defense •  Trying to systematize experiences August 28th, 2000 3
  • 4. 0.2 Driving Questions •  About my tools of trade –  what is that I value when I choose Smalltalk as my favorite tool of trade? –  what I share with others who do the same? •  About using my tools in real life, i.e. corporate reality –  how can I recognize environments in which I have chance of using my tools sensibly? August 28th, 2000 4
  • 5. 0.3 Main Focus •  Smalltalk culture •  Corporate cultures •  Intersections of the above •  Consequences and examples, including a perspective on XP. August 28th, 2000 5
  • 6. 0.4 Main Challenges Cultural viewpoint usually deemed inconsequential or boring or both. August 28th, 2000 6
  • 7. 0.5 Disclaimers In accordance with the Hollywood Presentation Principle, it must be stated that this is, in a sense, a work of fiction by a private individual. Any similarity with persons and organizations, existing or imagined, or their views, may turn out to be purely coincidental. August 28th, 2000 7
  • 8. 0.6 Plan of the Game •  Concept of Culture •  Culture of Smalltalk •  Nostalgic Bits •  On two types of corporate cultures •  Intersections •  A point of view on XP August 28th, 2000 8
  • 9. 1. Preliminaria •  Concept of Culture •  Culture of tools (and tools of culture) •  Culture of Programming? •  Culture of Corporate World? August 28th, 2000 9
  • 10. 1.1 Culture #1 •  Humorous Culture is what we do on Friday night (American). Culture is what differentiates us from apes (Darwinian). •  Pedestrian Culture is what makes us behave “correctly”. •  Historical Roman Cultura originally referred to the cultivation of the soil; later, transferred meaning of cultura animi (culture of the soul), as in Cicero. The concept was not widely used in Europe until late 18th c. (Herder, Kant, Hegel, etc.). August 28th, 2000 10
  • 11. 1.2 Culture #2 Anthropological Descriptive, rather than normative, approach. Focuses more on groups than individuals. Description of a culture of a group includes: –  shared, learned patterns of behavior, conscious or not; –  repeatable and dominating patterns of thought and perception; –  common value hierarchy. In some approaches, cultures are described in terms of a structure or as a system. August 28th, 2000 11
  • 12. 1.2 Culture of Tools •  Craftsmen tend to choose their favorite tool(s), sometimes for reasons not fully understood by them. •  Attitude towards specific tools creates or enforces group identification. The group shares some convictions and values; often inherits a tradition; also rejects some other convictions, values, traditions. •  Craftsmen’s know-how about patterns of usage of a tool creates knowledge; much of it is tacit knowledge. August 28th, 2000 12
  • 13. 1.3 Programming Culture? Substitute “programmer” for “craftsman” in the previous slide. Corollary: dream of mass production of software and replaceable “resources”. August 28th, 2000 13
  • 14. 1.4 Musical Metaphor Programmers are like musicians. They play different instruments (and reportedly choice of instrument follows not only aptitude but also character), and perform different kinds of music ( say: classical, jazz, pop, etc). Programming tools correspond to various musical instruments; programming cultures correspond to different music genres. There is also a similarity in attitude towards tools. August 28th, 2000 14
  • 15. 1.5 Military Metaphor Most programmers are like soldiers in Soviet Army. They are replaceable, and their tools are be cheap and uncomplicated. Using them is tedious, but deterministic. Some programmers are like members of special forces: well trained, passionate about what they do, with elaborate tools and need for high adrenaline levels. In both cases, casualty rates may be high. August 28th, 2000 15
  • 16. 1.6 Game Metaphor Some play finite games, towards a specific end. Some play infinite games, for the sake of playing. Some try to play both. Actual cultural metaphors: chess, poker and go. August 28th, 2000 16
  • 17. 1.7 Corporate Cultures There is a variety of cultures, but arguably, there are two elements that differentiate corporate cultures in a fundamental way: –  their control mechanisms –  their attitude towards knowledge creation, growing and dissemination. Both are closely related. August 28th, 2000 17
  • 18. 2. Culture of Smalltalk •  Smalltalk Design Principles •  Tradition and Heritage •  Common Threads •  Smalltalk Family Values •  Contrasts August 28th, 2000 18
  • 19. 2.1 Smalltalk Design Principles Paper by Dan Ingalls is a good point of start. “The purpose of the Smalltalk project is to provide computer support for the creative spirit in everyone.” Is the creative spirit merely a figure of speech? August 28th, 2000 19
  • 20. 2.2 Idea of Amplification Intellect Amplification Project: “Our plan is basically to provide human subjects with the best technological aids possible … and to re-design the subjects' way of attacking intellectual problems so as to take advantage of the capabilities provided in these aids.” [Engelbart62] “The thing I've always been interested in is the amplification possibilities when you take something that's already interesting and already part of deep human interest and use some technology to amplify the reach.” A. Kay in [Frenkel94] August 28th, 2000 20
  • 21. 2.3 Common Threads •  Extending and amplifying human cognitive capabilities through special tools. Properties of the tools: encourage learning, symbol manipulation, ease of use, appeal to many senses; the tool is “transparent”, becomes “intimate”, etc. •  Contrast with using tools merely as means to increase “productivity”, i.e. maximize profit. •  Changing to new forms of cultural discourse: away from the textual. August 28th, 2000 21
  • 22. 2.4 Smalltalk Family Values •  Simplicity, uniformity, power, accessibility •  Expressiveness •  Semantic transparency •  Habitability (Gabriel) as facilitators for creation and understanding. What those values have to do with today’s corporate software production? August 28th, 2000 22
  • 23. 2.4 Contrasts Culture of efficiency, the esoteric and arcane. Culture of correctness. Culture of marketing in programming. August 28th, 2000 23
  • 24. 2.5 Darwinism Again “Natural Selection: Languages and systems that are of sound design will persist, to be supplanted only by better ones.” [Ingalls81] Does it really work that way? August 28th, 2000 24
  • 25. 3 Nostalgic Bits Between fortune of one and Fortune 1. On expectations, surprises and possible causes. August 28th, 2000 25
  • 26. 3.1 Great Expectations •  Post-Industrialism •  Technopolis •  Economic rationality •  Technological aggressiveness •  Large budgets August 28th, 2000 26
  • 27. 3.2 Surprises •  Authoritarianism •  Factory pattern •  Death march •  Mimicry •  Degenerated pragmatism August 28th, 2000 27
  • 28. 3.3 More Surprises •  Functional illiteracy •  Distorted and controlled discourse •  Manufactured consent •  Omnipresent amnesia •  Absence of management theory August 28th, 2000 28
  • 29. 3.4 Causes? •  Educational System? “Children should be taught to think. … a bunch of people trying to move curriculum-from some book that they didn’t write, about subjects that they don’t know anything about- into some poor child’s mind. That could not be more ridiculous. Its basically an institutional factory type model. And it just doesn’t work.” [Frenkel1994] •  Corporate Culture? •  Mass Culture? “Recent studies [1996] have shown that fewer than 5% of American adults have learned to think fluently in … modern non-story forms.” [Kay1996]. (these forms are: logical argument and systemic thinking). •  All of the above? August 28th, 2000 29
  • 30. 4. Models of Corporate Cultures Western-like binary division: –  Sales-centered culture vs.”people”-centered [Rosenbluth94] or: –  Closed vs. open culture [vaguely K.R. Popper] August 28th, 2000 30
  • 31. 4.1 Comparison Criteria •  Dominant Traits •  Information flow •  Focal points of business •  Motivational instruments •  Sources and replication of •  Training and learning culture •  Use of technology •  Hierarchy of concerns •  Measurements •  Perception of the main asset •  Quality •  Hierarchy of power •  Awarding system •  Management traits •  Culture of discussion •  Workforce •  Capability for structural change •  Decision making August 28th, 2000 31
  • 32. 4.2 Dominant Traits Organization unable to learn and Learning organization innovate Dynamic Static, Authoritarian and Closed Innovating Discouraging creativity Long-term perspective Short-term perspective Adhering to values Pretending to implement values Culture imposed unconsciously Culture explicitly maintained and Based on defensiveness, denial of grown reality, fear of responsibility Self-denying Confronting issues head-on Self-conscious August 28th, 2000 32
  • 33. 4.3 Sources and Replication of Culture Big consulting companies No single dominant source Military culture, command and control Discriminative recruitment process Either no discrimination in to ensure a cultural fit recruitment or a preference for specific sources Culture explicitly maintained and Culture imposed unconsciously grown Based on defensiveness, denial of reality, fear of responsibility Confronting issues head-on August 28th, 2000 33
  • 34. 4.4 Hierarchy of Concerns Sales -> profits People -> service -> profits Meeting quotas Preoccupation with costs, esp. Measurable financial effects: labor costs, rather than -  Revenue per employee productivity; hence: -  Return on investment People are treated as expendable “resources” Availability of cheap resources Malleability of resources August 28th, 2000 34
  • 35. 4.5 Focus and Assets Focal points of business Acquiring a contract, a deal Growing culture Getting away with its realization Servicing needs of people Perception of the main asset “Deal” and contract; project People, their knowledge and Delivery date and bonuses involvement; Shared culture August 28th, 2000 35
  • 36. 4.6 Power Hierarchy Centralized and secretive Decentralized and public Elaborate Shallow Inflexible Flexible Hierarchy creates tasks Hierarchy is adjusted to tasks August 28th, 2000 36
  • 37. 4.7 Information Flow Thwarted Open Single routes or no routes Multiple routes Actual discouragement of feedback Encouraging feedback Feedback not processed Processing feedback Delayed, partitioned, twisted Cross-pollination Fear of the written Documents not signed Written documents produced and signed Oral exchanges: face to face, Asynchronous, remote, written meeting, voice mail are main forms of communication also forms of communication present August 28th, 2000 37
  • 38. 4.8 Decision Making Centralized Distributed controlled by specific persons; controlled by process and culture Informal; rather that specific people; secretive public Attached to forms and appearances rather than issues to be solved Outcomes not openly criticisable Outcomes criticisable Authorship and responsibilities Responsibility clearly assigned vague or hidden Meetings as a way to diffuse responsibility for a decision August 28th, 2000 38
  • 39. 4.9 Discourse Arguments ex-authority are the Basic rational forms uphold, e.g.: main kind of argumentation Arguments ex-authority, ad augmented by personal attacks personam are rejected Pseudo-logical argumentation is acceptable and accepted Discussion is either superficial or irrelevant; often manipulative; if it fails, discussion authority imposition August 28th, 2000 39
  • 40. 4.10 Motivational Instruments Punishment and staying out of Whole spectrum of motivational trouble rather than positive instruments amplification Position in the hierarchy, in the Satisfaction inner circle Development Belonging to a culture Financial Financial Tacit, closed doors promotion Clear routes to advancement and policies promotion August 28th, 2000 40
  • 41. 4.11 Award and Punishment Obedience Professionalism Loyalty Productivity Passivity Creativity and ability to innovate Merit Ousting individuals as trouble- makers, non-team payers, arrogant, and similar forms of character attack August 28th, 2000 41
  • 42. 4.12 Management Traits No observable self-reflection Self-examination and reflection Self defense & denial Self-delusional image Megalomania Inability/unwillingness to delegate Ability to delegate power to solve power problems Sticking to fossilized bureaucratic Recognition of and breaking away forms from the outdated rules and Motivated by and motivating with fundamental assumptions mainly financial rewards August 28th, 2000 42
  • 43. 4.13 Workforce Traits Unhappy or resigned Mostly happy Very high turnover (e.g. 75% per Natural turnover ( <10%) year) Forced to work overtime to solve Productive in terms of income trivial but entangled and produced and return on mismanaged issues investment Adopting defensive measures against excessive and arbitrary load August 28th, 2000 43
  • 44. 4.14 Working Environment From bleak to depressing Mixed floor plans Small or overcrowded cubes Adjusted so it is not a hindrance Location reflects status Working air conditioning Too hot or too cold Often items of group identification displayed August 28th, 2000 44
  • 45. 4.15 Learning and Training Ad-hoc training and not learning Continuous learning No idea of investment present Learning is a fundamental investment Training happens only when resources idle or management Learning is culture-supported desperate (cannot get trained resources cheaply enough) August 28th, 2000 45
  • 46. 4.16 Technological Consequences Technology is imposed Technology is evaluated Following the crowd as Not following the crowd as minimization of risk maximization of opportunity Choice criteria absent, incoherent, There are explicit criteria for or ignored choice August 28th, 2000 46
  • 47. 4.17 Tools Weak use in internal operations Used in products because of the focus on Used in internal operations projects and unwillingness to invest Project-imposed Assessed, revised August 28th, 2000 47
  • 48. 5. Overlaps •  The dominating type of culture is sales- based, closed culture. •  What does it have to do with Smalltalk culture? •  Features of organizations where Smalltalk functioned well August 28th, 2000 48
  • 49. 6. Examples Visual Programming Smalltalk style. Dropping Smalltalk August 28th, 2000 49
  • 50. 7. A Perspective on XP •  Programming methodologies as cultural utopias •  XP and big M’s •  Main features of XP •  XP’s in a cultural context August 28th, 2000 50
  • 51. 7.2 Methodology & Utopia Methodologies can be treated as cultural utopias. They prescribe a tacit value system without going to deeply (if at all) in areas like: –  what are the real preconditions of their success; –  who is and who is not the main audience; –  whose interests they serve. (that may be a reason why they fail so often). August 28th, 2000 51
  • 52. 7.3 XP and BIG M’s August 28th, 2000 52
  • 53. 7.4 Statement of the Problem “The basic problem of software development is risk” [Beck00] This is a valid view, but within a limited perspective; typically shared by contractors and project managers. From a distance, most types of risk are consequences of troubled knowledge flow. These risks are not unavoidable; they are typical for closed cultures. August 28th, 2000 53
  • 54. 7.5 The Goal “What we need to do is to invent a style of software development that addresses these risks” [Beck00] August 28th, 2000 54
  • 55. 7.5 Applicability of XP “… developing software in the face of vague or rapidly changing requirements” [Beck00] Rapidly changing requirements are very rare. (financial instruments?) Vague requirements are common. Also: small to medium size teams. August 28th, 2000 55
  • 56. 7.6 The XP Solution •  Code as the main artifact •  Coding as the central activity •  Pair programming as combined knowledge sharing mechanism and a quality gate •  Refactoring, unit and integration testing August 28th, 2000 56
  • 57. 7.7 Minimalism in XP •  Stress on oral communication •  Metaphor serves as architecture •  Refactoring replaces (re-)design •  Tight tracking of the goal using continuous integration testing. These are defensive measures. August 28th, 2000 57
  • 58. 7.8 XP in Context XP as a self-defense reaction against contamination of development by corporate culture. In that context, XP has an important role to play and introduces practices that are usually absent. August 28th, 2000 58
  • 59. 7.9 XP Outside Context Outside that context, XP’s viability is problematic: •  Risk is not the main problem. •  Oral communication is not an acceptable way of sharing knowledge in software development. •  Code is not the main artifact. August 28th, 2000 59
  • 60. 8 References [Engelbart62] Douglas C. Engelbart, Augmented Human Intellect Program, SRI-ARC, 1962 [Ingalls81] Dan Ingalls, Design Principles Behind Smalltalk, Byte, August 1981 [Frenkel94] Karen Frenkel, Conversation with Alan Kay, interactions, Vol 1, Issue 2, pp 13-22, 1994 [Nonaka95] Nonaka & Takeuchi, The Knowledge-Creating Company, Oxford Press, 1995 [Kay96] Alan Kay, Revealing the Elephant, Sequence, Vol. 31, No. 4. [Yourdon97] E. Yourdon, Death March, Prentice-Hall 1997 August 28th, 2000 60
  • 61. 8.1 More References [Rosenbluth94] Hal F. Rosenbluth, Customer Comes Second, William Morrow Inc., 1994 [Saul97] J. R. Saul, The Doubter’s Companion, A Dictionary of Aggressive Common Sense, Free Press, 1997 [Hiltzig99] Michael Hiltzig, Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age, HarperCollins, 1999 [Beck00] K. Beck, eXtreme Programming eXplained, Addison-Wesley, 2000 [Rheingold00] Howard Rheingold, Tools For Thought, MIT Press, 2000 August 28th, 2000 61
  • 62. 9. Acknowledgments I’d like to thank my colleagues and friends with whom I worked and discussed issues presented here over the last few years. Special thanks go to Jean-Claude Beaudoin and Russell Modlin. August 28th, 2000 62
  • 63. 10. The End August 28th, 2000 63