This document discusses how individual coders can thrive while commercializing a new product. It outlines the new product development and commercialization process. It then discusses two approaches to new product development - fragile environments that do not welcome uncertainty versus antifragile environments that thrive on uncertainty. The document recommends ways for coders to improve their skills and environment, such as achieving requisite variety, practicing pair development, facilitating disintermediation, and improving focus and expectations. The overall goal is for coders and their teams to develop in a way that survives and thrives when facing unpredictable changes.
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
From Coding to the Development of a Commercial Product
1. From Coding to the
Development of a
Commercial Product:
How to Survive and Thrive
Mark A. Hart, NPDP
1 March 2016
2. Outline
• What is New Product Development and
Commercialization
• Two Approaches to New Product Development
• Defining Winning
• Development Options
• Six Ways to Synthesize and Exercise more Attractive
Development Options
• Improving Focus and Expectations
• You still have to master your coding skills but you can
thrive while commercializing a product 2
4. New Product Development
Commercialization: The process of taking a new
product from development to market. It generally
includes production launch and ramp-up,
marketing materials and program development,
supply chain development, sales channel
development, training development, training, and
service and support development.
[PDMA glossary]
4
5. Expectations include:
• Product vision, forecasts, guesses, hypotheses
• Deliverables, artifacts, prototypes, minimum
viable products, product/market fit
• Resources, budgets, people
• Metrics, milestones, schedules, timelines
• Competitive responses
• Relatively stable organization
5
The probability of being correct on all of
these expectations is zero!
9. New Product Development Process
from an individual coder’s perspective
9
UX – User
Experience
Transform this into a GIF that has
four builds. Add individuals to the
network
while the fidelity of the prototype and
interaction increases.
DX – Development
Experience
10. Done
“A winner is someone (individual or
group) who can build snowmobiles,
and employ them in an appropriate
fashion, when facing uncertainty and
unpredictable change.”
10
John Boyd – fighter pilot, aircraft
designer, and military strategist
Proxy metrics in units of user stories,
velocity, tests that passed, features,…
Win
(Boyd, Metaphorical Revelation, 1987
12. Potential Roles of Coders during a Project
that includes Commercialization
• Providers of code that build to specifications in
selected languages
• Individuals that prefer to work in isolation or as
part of a small group working separately from
contributors with other specialties
• Agents within a complex adaptive system that
share responsibilities within a network
• Professionals that are expected to shape the
focus and direction of the project and thus
impact the outcome
• Individuals with other responsibilities 12
13. New Product Development Environment
13
Complex Adaptive System: A co-evolving system
characterized by nonlinearities. It has the ability
to adapt to a changing environment. Predisposed
to self-organization. Changes its structure based
on external or internal information that flows
through the network. The system impacts the
individual. The individual impacts the system.
Characterized by emergence through interaction
with individuals and the environment.
20. Antifragile
An antifragile system thrives and grows
when exposed to volatility,
randomness, disorder, and stressors
and it welcomes adventure, risk, and
uncertainty
20
21. How can you improve your capability
to survive and thrive?
21
22. Development Options are more powerful than:
• Operational, tactical, or strategic choices
• Real options (delaying decisions until the last
responsible moment)
• A contract, like a financial option, where one
group may obtain items at a specified price in the
future
• The creation of two versions of a component
followed by comparative (A/B) testing within a
specialty group
22
23. Development Options
• Accelerate the most valuable learning
• Improve the capability for a more valuable
shared understanding
• Add the appropriate adaptive capability to reduce
the dependence on detailed forecasting and
planning
• Facilitate safe-to-fail experiments that may have
the potential for asymmetric gains (more upside
than downside)
23
24. Improve the development network’s capability to
synthesize and exercise more attractive
development options:
• Requisite variety over the status quo
• Synthesis via pair development over pattern
matching
• Disintermediation over barriers between
decision makers
• Harmony and synergy over sub-optimization
• Recursion over iteration
• Mismatch detection over error propagation
24
25. Formulated by W Ross Ashby
= variety of potential responses
= variety of disturbances (problems)
= variety of outcomes tolerable by
the essential variables
Requisite Variety
25
27. Achieving Requisite Variety
• Mobilize network of
contributors with
diverse specialties and
multiple perspectives
• Additional training
• Access to expertise
• Cooperation
27
33. Pair Development
• Not cross-training
• Example: Novel
approach produced
by the interaction of
Spock and Kirk
33
Publicity photo of Leonard Nimoy and William Shatner
https://en.wikipedia.org/wiki/Spock#/media/File:Leonard_Nimoy_William_Shatner_Star_Trek_1968.JP
G
34. Pair Development
• Analysis/Synthesis
• Novel solutions
34
Pattern Matching
• Previous solutions
• First pattern match
• Availability bias
• Availability heuristic
37. Harmony and Synergy
Harmony: “Power to perceive or create
interaction of apparently disconnected
events or entities in a connected way” (
[Boyd, 1986. Patterns of Conflict 144] 37
Synergy: Results are better than predicted by the sum of the
components. Each individual catalyzed better contributions
from the other.
38. Harmony and Synergy
• Improve group
communication
• Shape interactions
between colleagues
that share similar goals
• Reduce dysergy by
minimizing interactions
with certain individuals
38
Sub-optimization
• Also known as micro-
optimization.
• Compare to local
maximum.
39. Recursion: Solving problems of the same type
Using an early prototype, determine the
words that customers use when describing
this problem
39
Using a refined prototype, determine the
words that customers use when describing
this problem
40. Recursion: Solving problems of the same type
• Benefits from continuous
integration
• Users engage in tasks with
prototypes over completing
surveys
• Brief, frequent interactions
(at least a few times per
month) over waiting for
elaborate integrations at the
end of the project
40
41. Mismatch
• Mismatch: the incompatibility of an
individual’s conceptual model of a
situation and the actual
phenomena.
• The magnitude of a mismatch may
depend on deficiencies with the
initial forecast or problems with
perceptions.
• The cause of a mismatch may be
execution insufficiencies.
41
42. Mismatch Detection
• Self-detection
• Incorporate approaches to improve
requisite variety, pair development,
continuous integration, and
continuous delivery
42
• If mismatches are not detected, the
potential for winning is reduced
• If mismatches are not corrected,
errors are propagated
43. Employing the six approaches for the win
• Requisite Variety
• Pair Development
• Disintermediation
• Harmony and Synergy
• Recursion
• Mismatch Detection
43
45. Adapting Focus and Expectations (1/2)
Focus: Short-term efforts. Focus
determines the items that commanded
attention and those that are secondary.
Focus shapes hour-to-hour choices.
45
46. Adapting Focus and Expectations (2/2)
Expectations: A set of items
that include what we
hypothesize will be important
for success in the future and
what we deliver when facing
uncertainty and unpredictable
change.
46
From Coding to the Development of a Commercial Product: How to Survive and Thrive
Mark A. Hart, NPDP
A presentation to Code & Supply. 1 March 2016.
Outline
My goal is to share several insights on how to survive and thrive while commercializing a new product.
What is New Product Development and Commercialization
Two Approaches to New Product Development
Defining Winning
Development Options
Six Ways to Synthesize and Exercise more Attractive Development Options
Improving Focus and Expectations
You still have to master your coding skills but you can thrive while commercializing a product
Typically, the project under consideration can be characterized by enough information to fill a page or two. The project under consideration is completing with other opportunities. The definition of win depends on the role of the evaluator. Often, winning is defined in terms of revenue forecasts. There are many recommendations on how to approach the intermediate portion.
From the perspective of the buyer/user, commercialization includes all the efforts required to be informed about a product, select it, purchase it, train to use it, and have the support to retain the use of the product. From the perspective of the development organization, commercialization is proceeded by many decisions about how to approach this challenge in terms of people, ideas, and tools within an business.
Note: Buzzwords such as DevOps do not cover most of this scope described in the commercialization definition.
Expectations include:
Vision, forecasts, guesses, hypotheses, milestones,
Execution, deliverables, artifacts, prototypes, minimum viable product, product/market fit,
Metrics, resources, budget, people
There are many approaches to achieving these expectations. The probability of being correct is zero. This makes it difficult to thrive.
The Business Model Canvas was popularized by Alex Osterwalder. His name is connected with Steve Blank and Eric Ries (known for the book “The Lean Startup” and the Minimum Viable Product (MVP) concept. Besides familiar items such as “Value Proposition,” this template prompts the development team to consider additional items related to commercialization. One takeaway from the Business Model Canvas is that success will required more than contributions from coders.
A common way to present the development process is from a management perspective. Often this references a documented process. One of the trademarked versions of an approach is called Stage-Gate. This is a sequential, deterministic, waterfall process. Within a portion of the development organization, an Agile framework may be used such as Scrum. An approach called DevOps suggests cooperation between the development organization and the manufacturing group.
Design Thinking has been popularized by Idea (the company that helped Apple commercialize a mouse), Stanford (with a D-School), and Roger Martin at the University of Toronto. It elevates ideas from the design perspective.
The origin of the word design is ‘mark out.’ The word is similar to ‘signature.’ The connotation is consistent with the idea of a preliminary sketch.
The origin of the word develop is unwrap or unfurl (a flag). The connotation is consistent with bring to a more advanced state.
Everyone is a designer. Everyone is a developer. The important items relate to proficiency is isolation and harmony in practice.
From the perspective of an coder, individuals engage and are released from the new product development effort throughout the project. If individual coders are not effectively engaged, the process or the metrics will not drive the maximum potential to win. For the individual contributor, factors such as happiness and professional satisfaction are important. Other factors are autonomy, mastery, and purpose. Effectively engaged individual contributors drive success.
Done and Win – One of these is a proxy
A items such as a user story or feature can be assessed as ‘done.’ Items may be considered done when their card moves to the ‘DONE’ column of a Kanban board. GIT commit have a sense of ‘done.’ If the code it not used or the project is cancelled, the classification loses importance. There are many items that can be classified as ‘done’ in a project. In contrast, a win is an outcome. There are a few perspectives on winning.
Boyd had a metaphorical definition of a winner. “A winner is someone (individual or group) who can build snowmobiles, and employ them in an appropriate fashion,w hen facing uncertainty and unpredictable change. (Boyd. Revelation. 1987)
Defining Wins
There are many ways to define a win in a commercialization project. One type of win is from the perspective of the customers. If an high percentage of customers are giving 5-star reviews, it suggests that there are no significant problems with features, prices, delivery, installation, support, performance,… It implies that sales have the potential to be abundant.
Another type of win is from the perspective of individual contributors.
Potential Roles of Coders during a Project that includes Commercialization
How does a proficient coder help to commercialize a product? Beside coders, you need individuals with diverse specialties to produce a new product that gets 5-Star reviews. How can an individual survive and thrive in roles that include:
- Providers of code that build to specifications in selected languages. [Code Monkey]
- Individuals that prefer to work in isolation or as part of a small group working separately from contributors with other specialties.
- Agents within a complex adaptive system that share responsibilities within a network.
Professionals that are expected to shape the focus and direction of the project and thus impact the outcome.
Individuals with other responsibilities
It is shortsighted to model a new product development environment as deterministic. New Product Developments evolve.
Complex Adaptive System: A co-evolving system characterized by nonlinearities. It has the ability to adapt to a changing environment. Predisposed to self-organization. Changes its structure based on external or internal information that flows through the network. The system impacts the individual. The individual impacts the system. Characterized by emergence through interaction with individuals and the environment.
In the book Antifragile: Things that Gain from Disorder, Nassim Nicholas Taleb shared insights on optionality that can be expanded to include new product development environments.
Taleb's classification of systems as fragile, robust, resilient, and antifragile may be used to characterize development environments. Every development environment can be characterized in terms of its fragility, robustness, resilience, and antifragility.
A development environment that tends to be fragile does not welcome disorder. When uncertainty is injected, the results may be unpleasant.
In a fragile development environment, one obstacle can prevent the realization of value.
The Pentium FDIV bug was a computer bug that affected the floating point unit (FPU) of the early Intel Pentium processors. Because of the bug, the processor could return incorrect decimal results during complex mathematical calculations. On January 17, 1995, Intel announced a pre-tax charge of $475 million against earnings, ostensibly the total cost associated with replacement of the flawed processors.[1] Some of the defective chips were later turned into key rings by Intel. https://en.wikipedia.org/wiki/Pentium_FDIV_bug
The more fragile the development environment, the less likely it is to thrive.
The word ‘antifragile' is an adjective created by Taleb. It can be defined as the exact opposite of fragile.
An antifragile system thrives and grows when exposed to a moderate amount of volatility, randomness, disorder, and stressors. An antifragile system benefits from a moderate amount of adventure, risk, and uncertainty.
As a code that has many roles in a project that include commercialization, how do you improve your hour-to-your and day-to-day capability to survive and thrive? Strive for better development options.
Development Options are more powerful than:
Operational, tactical, or strategic choices
Real options (delaying decisions until the last responsible moment)
A contract, like a financial option, where one group may obtain items at a specified price in the future
The creation of two versions of a component followed by comparative (A/B) testing within a specialty group
Development Options
Accelerate the most valuable learning
Improve the capability for a more valuable shared understanding
Add the appropriate adaptive capability to reduce the dependence on detailed forecasting and planning
Facilitate safe-to-fail experiments that may have the potential for asymmetric gains (more upside than downside)
Improve the development network’s capability to synthesize and exercise more attractive development options
Requisite variety over the status quo
Synthesis via pair development over pattern matching
Disintermediation over barriers between decision makers
Harmony and synergy over sub-optimization
Recursion (solving problems of the same type) over iteration
Mismatch detection over error propagation
Requisite Variety
The concept of requisite variety can be used to explain the importance of having a diversity of attractive responses in a development environment
Requisite Variety: For a system to be viable, only a variety in responses can force down the variety due to disturbances.
The Law of Requisite Variety was formulated by W. Ross Ashby
Requisite Variety
For a development environment to be successful, only a large repertoire of possible responses can address the variety presented by a complex set of development problems that emerge throughout projects.
Achieving Requisite Variety
In a new product development environment, requisite variety may be achieved by mobilizing a network of contributors with diverse specialties and multiple perspectives. To be successful, individuals may require additional training, access to individuals with unique expertise, and cooperation.
Without requisite variety, previously successful responses to familiar patterns may not be recognized as insufficient responses.
Without a variety of potential responses at the appropriate times, a development environment may be fragile.
If there is excessive variety, the agility of the development environment may be reduced.
To ensure appropriate adaptability, the network determines that certain responses should be amplified. Other responses are attenuated.
Pair Development is implemented by facilitating the interaction of individuals of different disciplines (such as a coder and a marketer). Pair development provides an opportunity for interaction through activities such as dialog and sketching. The result of pair development should be the synthesis of options, not a summary of previous activities. Typically, no slides sets are used during these interactions.
The purpose is to develop a self-correcting focus and direction informed by the analyses of multiple perspectives.
The purpose of pair development is not cross-training. The desired result is a novel approach produced by the interaction of Spoke and Kirk.
Pair Development produces novel solutions.
First pattern match is also known as availability bias or availability heuristic.
Disintermediation removes layers between individual contributors and data. It removes barriers between decision makers.
Facilitate Disintermediation
One way to facilitate disintermediation in new product development environments involves individual contributors experiencing the interactions of customers with prototypes (or other experiments related to the product being developed). Direct observations that promote full-fidelity interactions are preferable to mediation approaches such as presenting individuals with reports that summarize activities.
Harmony and Synergy
Harmony: “Power to perceive or create interaction of apparently disconnected events or entities in a connected way” (
[Boyd, 1986. Patterns of Conflict 144]
Synergy: Results are better than predicted by the sum of the components. Each individual catalyzed better contributions from the other.
The potential for harmony and synergy can be improved by encouraging interaction between certain colleagues that share similar goals.
Sub-optimization consumes energy that may not improve the overall results. For example, creating more lines of code may seem attractive with the coding group but it may not produce a better product. The same may be true for metrics such as velocity.
Recursion: Strive to learn the language customer use when describing a problem. Test using early and refined prototypes.
Recursion: Solving problems of the same type
Mismatch: the incompatibility of an individual’s conceptual model of a situation and the actual phenomena.
The magnitude of a mismatch may depend on deficiencies with the initial forecast or problems with perceptions.
The cause of a mismatch may be execution insufficiencies.
Some mismatches may be self-detected. Other mismatches benefit from approaches that include requisite variety, pair development, continuous integration, and continuous delivery.
If mismatches are not detected, the potential for winning is reduced. If mismatches are not corrected, errors are propagated
Some mismatches may be self-detected. Other mismatches benefit from approaches that include requisite variety, pair development, continuous integration, and continuous delivery.
If mismatches are not detected, the potential for winning is reduced. If mismatches are not corrected, errors are propagated
For individual contributors, such as coders, Dan Pink in the book Drive suggested that when the tasks involve rudimentary cognitive skill, the motivators were autonomy, mastery, and purpose. In new product development, stereotypical management techniques do not emphasize these factors.
For individual contributors, such as coders, Dan Pink in the book Drive suggested that when the tasks involve rudimentary cognitive skill, the motivators were autonomy, mastery, and purpose. In new product development, stereotypical management techniques do not emphasize these factors.
Expectations: A set of items that include what we hypothesize will be important for success in the future and what we deliver when facing uncertainty and unpredictable change.
This presentation included extracts from the book "Developing Winners: Assimilating the Insights Encapsulated in Boyd's OODA Loop" by OpLaunch founder, Mark A Hart.
If you would like to learn more about “From Coding to the Development of a Commercial Product” or explore other new product development resources, I invite you to visit the OpLaunch website at www.oplaunch.com
The “Development Experience” podcast is available on iTunes.
Copyright Mark A Hart, 1 March, 2016.