Googling Organizational Culture revealed many folks offering
(often pricey) Organizational Culture workshops
based on theories concocted by a pair of enterprising boffins,
quietly contemplating
at the University of Michigan,
located in the picturesque village of Ann Arbor.
Though the definitive reference on their work is available for purchase from amazon, you can also get a feel for their process by reading this early paper:
A Process for Changing Organizational Culture by Kim Cameron, University of Michigan 2008
Handbook of Organizational Development, 2008: 429-445 (cited by 345)
Abstract: This chapter outlines a process for diagnosing and changing organizational culture.
It uses the Competing Values Framework to describe a validated approach to helping an organization change
from a current culture to a desired culture.
... and from the (mostly youtube) links in the References section below.
As you might expect, I was too cheap to pay for advice on this topic, so instead watched some youtube videos and read Kim's original paper.
Though not necessarily the best organizational change process (alternative citations welcome), at least this
is a concrete thing that can be discussed and analysed, and thus serve as a starting point for
discussing specific ways to improve Organizational Culture (and Perl organizational culture too).
For those seeking a Perl Monks connection to this academic paper,
notice that Ann Arbor Michigan
is a mere two hour scenic drive
from Hope College in Holland Michigan,
the sacred birthplace of Perl Monks
(if you drive via Portage Michigan,
you can further pick up some COVID-19 vaccines from Pfizer’s huge manufacturing facility on the way).
Definition of Organizational Culture
Although many definitions of culture have been proposed, the two main disciplines are:
- Sociological (organizations have cultures). Assumes you can identify differences among organizational cultures, can change cultures, and can empirically measure cultures.
- Anthropological (organizations are cultures). Assumes that nothing exists in organizations except culture, and one encounters culture anytime one rubs up against any organizational phenomena.
In her 2008 paper, Cameron gave a popular and practical definition of culture as:
the taken-for-granted values, underlying assumptions, expectations,
and definitions present which characterize organizations and their members
which:
- serves as the social glue binding an organization together; and
- represents how things are around here, affects the way members think, feel, and behave.
and further perceptively noticed that:
With very few exceptions, virtually every leading firm has developed a distinctive culture that is clearly identifiable by its key stakeholders
This distinctive culture is sometimes created by the initial founder: Walt Disney, Bill Gates, and Larry Wall, for example.
All three of these legends developed something special, something more vital than corporate strategy, market presence, or technical advantages:
the power that arises from a unique and spirited culture.
Curiously, most people are unaware of culture until suddenly confronted with a different one:
travelling to Vietnam, for example, finding yourself immersed in different noises and smells and unable to understand a word of the local lingo ... or asking a question on SO after years of posting at Perl Monks. :)
The culture of most organizations is invisible, most members have a hard time describing it, let alone consciously changing it --
that is why you need tools, such as The Competing Values Framework and the Organizational Culture Assessment Instrument (OCAI),
developed by scholars Cameron and Quinn.
Notice that Organizational Climate is distinct from Organizational Culture:
Climate is temporary, Culture enduring.
The Competing Values Framework
This framework, used to assess the dominant characteristics of organizations, differentiates on two vertical dimensions:
- Flexibility, Discretion, Dynamism (effective if: changing, adaptable, organic, e.g. Google, Nike)
- Stability, Order, Control (effective if: stable, predictable, mechanistic, e.g. Universities, Government agencies, Boeing)
and two horizontal dimensions:
- Internal orientation, Integration, Unity (harmonious internal characteristics, e.g. IBM, the IBM way)
- External orientation, Differentiation, Rivalry (effective if: competing with others outside their boundary, e.g. Toyota, Honda)
Together these two dimensions form four quadrants:
- Clan culture (Collaborate)
- Adhocracy culture (Create)
- Hierarchy culture (Control)
- Market culture (Compete)
Hierarchy Culture:
- Formalised and structured workplace. Procedures and controls govern what people do. Leaders: coordinators, organizers, monitors.
- Maintaining a smoothly running organization is important.
- Long term: stability, predictability, efficiency, formal rules and policies hold the organization together.
- Success is defined in clear lines: authority, control, accountability, e.g. McDonalds, Govt agency on airport controls (strict guidelines for every small detail).
Market Culture:
- Competing environment, results-oriented workplace, external environment is hostile, consumers are selective, want value.
- Leaders are hard-driving producers; competitors are tough and demanding.
- Productivity, results and profits; glue is emphasis on winning.
- Success is market share and penetration, e.g. Ikea, Walmart.
Clan Culture:
- Friendly workplace, people share a lot of themselves, leaders are mentors, facilitators, team builders, parent figures, held together by loyalty and tradition.
- Commitment is high, long-term benefit of individual development, high cohesion and morale important.
- Success is defined as internal climate and concern for people, premium on teamwork, participation and consensus, e.g. small family-owned companies, doctors without borders, wikipedia.
Adhocracy Culture:
- Dynamic, entrepreneurial culture, people take risks, leaders: visionary, innovative, risk-oriented.
- Glue: Commitment to experimentation and innovation, to be at the leading edge, readiness for change is essential.
- Long term emphasis is rapid growth.
- Success is creating unique & original products and services, e.g. start-ups.
Relationship between the four quadrants:
- Each side represents opposites
- Flexibility vs Stability
- Internal vs External
- Competing on the Diagonal: Clan (internal focus) v Market (external focus); Adhocracy (external organic) v Hierarchy (internal control)
The competing on opposite sides of each quadrant give rise to the name of the model.
Why Change Organizational Culture?
The Competing Values Framework Introduction youtube (around the 12:15 mark)
gives a fascinating case study of how Organizational Cultures change over time.
Steve Jobs, a charismatic entrepreneurial leader, was a great cultural fit for
the (Startup culture) Apple of the 1970s ... only to get fired in 1985 for
his chaotic management style, when Apple needed more controls and standard procedures ...
then finally re-hired in 1997 to heroically resurrect the company after it started
having a hard time inventing new products!
That is, Apple culture evolved
from Adhocracy (Apple II era) to Adhocracy/Clan (Macintosh era) to Hierarchy (John Scully era)
to Hierarchy/Market then balanced Hierarchy/Market/Adhocracy/Clan (on Jobs return).
How does a language win? By being compelling enough to be used for new things.
It's not solely a technical concern; it's a concern of the language community and ecosystem.
-- Why Perl Didn't Win (essay from outspeaking.com)
As indicated in the essay cited above, a good reason for Perl to change its culture may be to
make it more attractive for new projects (compared to competing languages).
Update: see this response for a present-day example of a domain in which Perl is less compelling than Python.
Of course, if Perl was a commercial enterprise, one business strategy to cope with losing market share
may be to seek a merger with Python
... thus allowing our new customers to write some truly astonishing code:
# copy stdin to stdout, except for lines starting with #
while left_angle_right_angle:
if dollar_underscore[0] =eq= "#":
continue_next;
}
print dollar_underscore;
}
Sorry, couldn't resist. :)
Note that if you choose not to attempt to explicitly change your organization's culture, it will change anyway. Culture is evolving all the time.
The Seven Steps To Culture Change
- Clarifying meaning.
- Identifying stories.
- Determining strategic initiatives.
- Identifying small wins.
- Crafting metrics, measures, and milestones.
- Communication and symbols.
- Leadership development.
The Organizational Culture Assessment Instrument (OCAI)
It might be fun to create a Perl Monks poll to see how people rate P5P culture or Perl Monks culture.
1. DOMINANT CHARACTERISTICS
The organization is:
A. a very special place. It is like an extended family. People seem to share a lot of themselves.
B. a very dynamic and entrepreneurial place. People are willing to stick their necks out and take risks.
C. very production oriented. A major concern is with getting the job done. People are very competitive and achievement oriented.
D. a very formalized and structured place. Bureaucratic procedures generally govern what people do.
2. ORGANIZATIONAL LEADERS
The leaders of the organization are generally considered to be:
A. mentors, facilitators, or parent figures.
B. entrepreneurs, innovators, or risk takers.
C. hard-drivers, producers, or competitors.
D. coordinators, organizers, or efficiency experts.
3. MANAGEMENT OF EMPLOYEES
The management style in the organization is characterized by:
A. teamwork, consensus and participation.
B. individual risk-taking, innovation, flexibility, and uniqueness.
C. hard-driving competitiveness, goal directedness, and achievement.
D. careful monitoring of performance, longevity in position, and predictability.
4. ORGANIZATION GLUE
The glue that holds the organization together is:
A. loyalty and mutual trust. Commitment to this organization runs high.
B. orientation toward innovation and development. There is an emphasis on being on the cutting edge.
C. the emphasis on production and goal accomplishment. Marketplace aggressiveness is a common theme.
D. formal rules and policies. Maintaining a smooth running organization is important.
5. STRATEGIC EMPHASES
The organization emphasizes:
A. human development. High trust, openness and participation persist.
B. acquiring new resources and meeting new challenges. Trying new things and prospecting for new opportunities are valued.
C. competitive actions and achievement. Measurement targets and objectives are dominant.
D. permanence and stability. Efficient, smooth operations are important.
6. CRITERIA OF SUCCESS
The organization defines success on the basis of:
A. development of human resources, teamwork, and concern for people.
B. having the most unique or the newest products. It is a product leader and innovator.
C. market penetration and market share. Competitive market leadership is key.
D. efficiency. Dependable delivery, smooth scheduling, and low cost production are critical.
Other Articles in This Series
References
See Also
Re: Organizational Culture (Part II): Meta Process (Perl Timeline)
by eyepopslikeamosquito (Archbishop) on Jun 21, 2021 at 00:17 UTC
|
Given the four fundamental cultures - Clan (Collaborate), Adhocracy (Create), Hierarchy (Control), Market (Compete) -
the Competing Values Framework Intro (12:15)
instructively noted how Apple's culture changed over the years:
- 1976: Jobs and Wozniak create the Apple-I and Apple-II. Adhocracy.
- 1981: IPM PC released. Apple-III fails.
- 1983: Development of Lisa and Macintosh. Adhocracy/Clan.
- 1985: Scully replaces Jobs as CEO. Hierarchy.
- 1997: Jobs returns. Hierarchy/Market.
- 2000s: Balanced culture: Hierarchy/Market/Adhocracy/Clan (it's common for companies to move to a more balanced culture as they mature).
Let's similarly speculate on how Perl culture changed during the years
of the Perl timeline:
- 1987: Wall starts work on Perl while working at Unisys. Perl 1.0 released Dec 18 1987, Perl 2 in June 1988, Perl 3 Oct 1989. Adhocracy*.
- 1991: Perl 4 released Mar 1991. Pink Camel book documented it. Adhocracy/Market.
- 1993: Perl 4.036 released. Perl 4 development ends.
- 1994: P5P formed as the primary forum for development, maintenance, and porting of Perl 5. Adhocracy/Clan.
- 1994: Perl 5 released.
- 1998: Perl 5.005 released. Adhocracy/Clan/Hierarchy.
- 2000: Perl 5.6 released.
- 2001: Work begins on Perl 6 "Apocalypses". Adhocracy/Clan.
- 2002: Perl 5.8 released. Clan/Hierarchy.
- 2004: Work begins on Perl 6 "Synopses". Adhocracy/Clan.
- 2005: Pugs launched, a Perl 6 interpreter written in Haskell (stalled in 2006). Pure Adhocracy! (I was there)
- 2003-2006: PONIE Project, a bridge between Perl 5 and Perl 6, an effort to rewrite the Perl 5 interpreter to run on Parrot, the Perl 6 virtual machine. Adhocracy.
- 2009: Rakudo Perl 6 released. Adhocracy/Clan.
- 2010: Perl 5.12 released. Perl 5 switches to regular annual releases. Clan/Hierarchy.
- 2020: Perl 7 announced as the successor to Perl 5. Adhocracy/Market.
- 2021: Perl 7 plan revised. Clan/Hierarchy/Market.
* (Update): During this very early period merlyn used an unorthodox and aggressive Perl marketing tactic by
answering usenet requests for Unix shell/sed/awk code with snippets of Perl code ...
so much so that posters started inserting "No Perl please" in their posts! ...
which of course was simply ignored.
merlyn believed so strongly in this tactic that he formed part of
the 2.7% who voted
against the formation of a separate comp.lang.perl newsgroup in December 1989!
... so perhaps this early period should be Adhocracy/Market.
Note that these estimates are just my guesses of Perl's culture during these years;
corrections and insights are welcome, especially from folks who were key players in these events.
I'd also love to see interesting or instructive cultural anecdotes from the years of the Perl timeline,
for example: The infamous Jon Orwant mug throwing incident.
BTW, I remember attending thriving Perl Mongers meetings in the early 2000s -
which had a completely different feel to the C++, Python and Agile user groups I was also attending.
The main difference was Perl's quirky humour
(e.g. London.pm declares war on Paris.pm 💥💣🪖 and London.pm sponsoring a camel 🐪 at London Zoo).
By comparison, the C++ and Python user groups were utterly humourless, the meetings having a totally different feel to them.
The rise of Meetup changed everything; there were so many meetings
that one of my workmates stopped buying food and cooking simply by attending a different geek Meetup group every night of the week
(scoring free food each time)!
Update: See also: How long have you been using Perl? poll by vroom (and TimToady's reply ;-) ... and is he involved with Perl Development? - Re: Re: Re: Re: Synopsis 3 is out :)
| [reply] |
Re: Organizational Culture (Part II): Meta Process
by hrcerq (Monk) on Jun 23, 2021 at 04:03 UTC
|
Interesting article.
I remember when I tried Python six or seven years ago. At that time,
I didn't see it as a "mainstream" language, and (judge me if you want)
perhaps that's what attracted me to it, and at the same time frustrated
me.
At the same time, I wanted the oportunity to use it (for practice in
my job at the time, and so it had to be known by my employer), but
didn't want to see it bloated and surrounded by people who know more
about marketing strategies than anything about programming.
That's a bit challenging. Now, we fast-forward it to this year and,
at least from my point of view, it really got mainstream, but it seems
there's a price for that. As I feared, it got assaulted by people who
know nothing and couldn't care less about real programming.
"Robustness, performance, stability, portability? No, shiny new
features are all that really matter..."
And let me state it very clear: this is not to say that a Python
programmer is a bad programmer, but that many bad programmers are
trying Python, and thus hijacking it, promoting it as something it
didn't use to be. I'm not even sure if these could be considered a
majority, but they're noisy.
So, that raises the question: did Python win, after all? Because now,
when you say you're part of a Python group, you may be confused with
"charlatans". Real Python programmers have no guilt on that, of course,
but it's a situation that got out of control, unfortunately.
In many of these "Python circles", it seems like programming is not
at all an art. Creating a beautiful piece of code is not important in
such circles. Self-promoting is.
So, if that's considered a victory, I definitely wouldn't want to
see Perl win. Ever. Having lost is appealing enough for me.
(I think this last part contrasts a bit with my signature, which
should only apply to perl code, not Perl culture :)
return on_success() or die;
| [reply] |
|
|
So, that raises the question: did Python win, after all? ...
In many of these "Python circles", it seems like programming is not at all an art.
Creating a beautiful piece of code is not important in such circles. Self-promoting is.
My personal opinion is that Perl, Python and Ruby are essentially equivalent.
At least I enjoy coding in all three ... not so much in Javascript, and especially not PHP.
As noted in the root node, the Why Perl Didn't Win essay
argues (convincingly IMHO) that to remain popular over time, a programming language
must be compelling for new projects ... while further noting this is
not solely a technical concern; it's a concern of the language community and ecosystem.
Curiously, this theory of programming language adoption reminds me of Planck's Principle:
An important scientific innovation rarely makes its way by gradually winning over and converting its opponents:
it rarely happens that Saul becomes Paul.
What does happen is that its opponents gradually die out, and that the growing generation is familiarized with the ideas
from the beginning: another instance of the fact that the future lies with the youth.
-- Planck's Principle (Scientific autobiography, 1950, p.33,97)
BioPerl and PDL
Illustrating community and ecosystem trumping language, notice what a superb job
Lincoln Stein did twenty years ago in evangelising Perl and
developing quality Perl libraries in the Bioinformatics space.
Perl remains compelling in this domain today as indicated by:
For a long list of PDL References see:
See also:
On CPAN:
AI and Machine Learning
Sadly, Perl is way behind in the newer domain of AI and Machine Learning.
Googling for Perl books on this topic looks barren ... I further noticed that the Perl books about AI PM question did not receive a single reply.
Googling for Python books on AI and Machine Learning is a totally different story with many recent books available, such as:
and many more ... so if I was embarking on an AI and Machine Learning career today, I'd choose Python, not Perl.
This is a specific example of why Perl is losing market share.
BTW, I used to work with a PhD AI researcher (and novice computer programmer) and she did most of her research using
Python AI libraries utilising GPGPU.
AI References:
- AI::MXNet and other modules in the CPAN AI namespace.
- Re^4: The recent outage by marto (2024) - They, and every other party involved in the great AI grift need content to feed their llms
- SO and AI by stevieb (2024) - Stack just monetized all of the data that we, as public advocates of free information, provided
Array Processing/HPC/GPGPU/CUDA References
- Perl GPGPU Modules by kcott (2021) - hunting around for (production-grade) modules providing GPGPU bindings or interface
- NVIDIA HPC SDK Version 24.3 Documentation (nvc++ is a C++17 compiler for NVIDIA GPUs and AMD, Intel, OpenPOWER, and Arm CPUs. It invokes the C++ compiler, assembler, and linker for the target processors with options derived from its command line arguments. nvc++ supports ISO C++17, supports GPU and multicore CPU programming with C++17 parallel algorithms, OpenACC, and OpenMP)
- The three compilers used by marioroy in Long List is Long are g++, clang++, nvc++; I also used Google abseil library (see also).
GNU Scientific Library
Mathematical
Statistics:
- Statistics::Descriptive by Shlomi Fish - module of basic descriptive statistical functions
- PDL::Stats - a collection of statistics modules in Perl Data Language, with a quick-start guide for non-PDL people
Embedded
Other
I originally missed other Perl strengths in the Scientific Computing domain:
Graphics:
Astronomy: 🌌 🔭
Other:
- Algorithm::BitVector by Avinash Kak - A memory efficient packed representation of arbitrary sized bit arrays and for logical and arithmetic operations on such arrays
- Bit::Vector by Steffen Beyer - Efficient bit vector, set of integers and "big int" math library
Science Perl Committee
- UCL Software Database - UCL is London's leading multidisciplinary university, with more than 16,000 staff and 50,000 students from over 150 different countries (BioPerl is in its software database for students and staff)
Other Perl Organisations
See also : Re: Perlmongers (was: Re^5: Editing node titles w.r.t. Perl 6 (communities)) - London.pm (Perl Mongers and Conference References)
Some Perl Monks interested in using Perl in Science
- afoken - embedded systems, usually for medical or aviation
- Aldebaran
- ambrus - Budapest mathematician (see The 10**21 Problem (Part 2) and Japh algebra for some of his theorems ;-)
- biohisham
- BioLion
- biosysadmin - Masters in Bioinformatics from Rochester Institute of Technology, PhD student in dept of Genome Sciences, BioPerl developer
- birdbrane - geophysics (see Re: Re (tilly) 1: Discipline)
- bliako - has used Perl to analyse data for biology or have fun with super-collider
- blokhead - information theory, applied discrete math, algorithms, computability & complexity ... and author of Mandelbrot flythrough
- Bod (AI/ChatGPT)
- cavac - owner of a simulated space agency
- choroba - PhD in mathematical linguistics - see also Re: Who's still around?
- Corion - By (formal) education, I'm a mathematician and programmer
- Danny - Computational biologist
- Discipulus
- Don Coyote - mathematics, geometry, algebra, calculus, rational trigonometry, ...
- duelafn - founded a Community Math Center
- Ea - home node has lots of Data Science with Perl links
- erix
- etj - especially PDL (see BioPerl/PDL References above)
- hrcerq
- helgi - Bioinformatics (and sysadmin) (see Re: 22 years, and about a quarter century of Perl)
- huck
- hv - mathematics (e.g. see Re: What do you know, and how do you know that you know it? and mathematical proof development)
- jdtoronto - born in Melbourne, moved to Toronto; electronics, hardware design, biomedical engineering, mathematics, physics
- jmlynesjr - degree in Electrical Engineering, home node mentions Raspberry Pi and Arduino
- jo37 - PDL user
- jpearl - working for a research group in bioinformatics, implementing easier ways to extract data from our 454 sequencing data
- kennethk - background in scientific computation using Fortran, lots of links on his home node
- LanX - Re^3: TPRC/Science Track Submission Dates and Deadlines Coming Fast! (contacting academics in London/UK using Perl)
- Laurent_R - author of Think Perl 6: How to Think Like a Computer Scientist
- lin0
- liverpole - mathematics
- Lotus1 - Home node mentions Raspberry Pi, binding compiled code, sound synthesis, physics modeling, image transformation
- mdperry
- mpeg4codec - research programmer and mathematician working at usc.edu (Los Angeles)
- mr_mischief - this reply mentions computational pharmacology
- NERDVANA - e.g. see Re: 2024 Perl Conference - Science Track Interest Survey
- oiskuu - mathematics (many useful responses to The 10**21 Problem (Part 3) et al)
- oodler - see Science Perl Committee above (also active with Houston.pm)
- perlboy_emeritus - PDL user
- salva - mathematics (lots of maths-related modules in his CPAN directory)
- stevieb - especially Raspberry Pi
- swampyankee - once an aerodynamicist, high school teacher of physics and other science
- swl -
- syphilis - Math::Ryu (see Re^5: Calling a sub without enclosing its argument inside brackets)
- tachyon - physics
- thechartist - trigonometry and PDL (see Re^2: How to write testable command line script?)
- tilly - mathematics, e.g. Re^5: What do you know, and how do you know that you know it? and the classic The path to mastery
- tonyc - author of Imager
- tritan
- Xilman
- zentara - e.g. Solving Simultaneous Equations with Matrices
See Also
Updated: Many references added long after the original reply was made. Dec 2022: moved some PDL links to Re: first stumbling steps in PDL (PDL References).
Dec 2023: Added Planck's Principle analogy.
| [reply] [d/l] [select] |
|
|
My personal opinion is that Perl, Python and Ruby are essentially
equivalent. At least I enjoy coding in all three ...
Yes, I can understand that, and I also enjoy Python (not as much as
in past days, and not as much as Perl, but I still do). I hope my
comments don't sound like I have anything against Python or its
community as a whole. That was not intended.
Glad you mentioned
this node. Makes
perfect sense, actually. As stated there,
... they blame the language for the messes created by people who
didn't know what they were doing ...
So, that should remind us that writing poor programs just to get
stuff done may give a bad reputation to the language and its community.
It happened to Perl in the past, and seems like it's happening to Python
now. Copy/paste isn't just ugly programming practice. It'll harm
someone, eventually.
... if I was embarking on an AI and Machine Learning career today, I'd
choose Python, not Perl. ...
Indeed, there's a thriving AI/ML community among Python developers. I
wish I could say the same for Perl.
return on_success() or die;
| [reply] |
|
|
many bad programmers are trying Python, and thus hijacking it, promoting it as something it didn't use to be. I'm not even sure if these could be considered a majority, but they're noisy.
Yes, your observation reminds me of a noisy Python lover at work who never tired of telling everyone
how much he loved Python and hated Perl because Python was so much more "readable" than Perl
... until later outed (during code reviews) as a mediocre Python programmer.
Update: it turns out he hated Perl based on appearances and hearsay because he'd never actually written a Perl program!
(Stroustrup noticed similar bigotry towards C++ "twice as many people claimed to hate C++ as had ever written even a single small C++ program").
It seems that Python can have a superficial attraction to mediocre programmers (even non-programmers!) because it looks like English ...
so they think they understand it ... and then marvel at its magical powers of "readability" :) ...
while Perl looks like line noise ... which reminds me of the famous
Larry Wall quote:
I'm reminded of the day my daughter came in, looked over my shoulder at some Perl 4 code, and said, 'What is that, swearing?'
which I remember from painstakingly constructing this old and fragile obfu (which sadly no longer works).
It used to generate a Larry Wall quote from perl's error messages.
BTW, I accidentally discovered when writing The Lighter Side of Perl Culture (Part III): Obfu that Python obfus exist!
I also met some very capable Python hackers when playing code golf and really liked them.
Python is nowadays a much more popular code golfing language than Perl - which surprises a lot of people.
| [reply] |
|
|