Friday, March 27, 2026

 

Daniel F. Spulber’s The Market Makers: How Leading Companies Create and Win Markets (McGraw-Hill, 1998) argues that the real contest in modern business is not primarily about making better products or delivering better services—it is about enabling better transactions. As technology makes exchange faster and cheaper, Spulber urges leaders to rethink what firms fundamentally do: the winners are the organizations that consistently reduce the cost and friction of exchange for both customers and suppliers, and that deliberately position themselves where value is being transferred.

Viewed through this lens, a company’s primary mission becomes building “market bridges” that connect buyers and sellers more effectively than anyone else. Spulber’s strategic framework treats firms as intermediaries and transaction facilitators—institutions of exchange—rather than as standalone producers. That shift in perspective changes how you think about strategy, growth, innovation, and even technology adoption: instead of benchmarking leaders or piling on tools, winning firms learn how to use what they have to communicate and coordinate with the outside world, tightening the link between supply and demand.

Spulber emphasizes that competition plays out across the entire chain of transactions required to make, move, price, and deliver an offering. As he puts it, “Firms achieve success not only by offering better prices and products, but also by reducing the costs of transactions for their customers and suppliers.” In practice, that means treating exchange itself as the arena of innovation: a firm wins by designing smoother, clearer, and more reliable ways for counterparties to find each other, decide, contract, and complete the deal.

The book makes a hard-edged claim about ambition: in many markets, settling for “good enough” is a slow path to irrelevance. If you are not striving to be the best bridge in your market, someone else will be—and once customers and suppliers coordinate around a dominant intermediary, that position can reinforce itself. The payoff for leadership is not just higher returns; it is a stronger reputation, easier recruiting, more stable supplier relationships, and a lower “search cost” for customers who do not have time to shop around.

To lead a firm toward that kind of advantage, Spulber recommends recasting strategy around exchange: make it your job to create innovative transactions and to participate actively in the institutions where trade happens. A firm that focuses on growth through better market-making leaves behind a defensive past of endless cutbacks and retrenchment. It stops looking inward and starts coordinating outward—helping customers and suppliers meet, communicate, and commit with less uncertainty and delay. In that spirit, Spulber cautions that maximizing shareholder value cannot be the corporation’s only objective; sustained market success is what ultimately raises long-run value.

The book returns repeatedly to the logic of being number one. Spulber compares markets to tournaments: the “gold medal” can justify the risk, time, and investment because leadership makes the bridge more valuable to everyone involved. “Competition means much more than manufacturing a better widget,” he writes. “It means carrying out the entire set of economic transactions needed to make and distribute that widget.” In that broader contest, a leading intermediary becomes the default choice for customers in a hurry and for suppliers seeking stability. Blockbuster Video, for example, built a near-universal bridge between filmmakers and viewers by making rentals reliably available at scale—a transaction innovation as much as a retail footprint.

Rather than trying to win by “cutting, scrimping, and saving,” Spulber argues that market leaders expand what is possible by pushing against four boundaries: scale, scope, span, and speed. Scale is not simply about getting bigger; it is about building the largest operation you can coordinate well, where the limiting factor is often the efficiency of communication. Scope concerns variety—time-pressed customers value one-stop solutions and broad selection, so increasing the range of offerings can strengthen the bridge. Span forces decisions about what to do in-house versus what to contract out, whether you manufacture, retail, distribute, or integrate across multiple stages of the value chain. Speed, finally, is the modern imperative: innovation depends on faster information, better technology, and quicker execution.

Pricing, in Spulber’s account, is not an afterthought imposed by an “invisible outside force,” but a strategic instrument that can reinforce the market bridge. Because the firm mediates between suppliers and customers, purchasing and marketing must stay tightly coordinated so the channel of exchange remains smooth. Price is also a form of service—your greeting and your handshake—so clarity matters. Complicated contracts that save a seller pennies while costing customers time ultimately weaken the relationship. Clear pricing, by contrast, becomes a way to learn: customers’ reactions reveal what they value, and early prices can be adjusted as the firm gathers real market feedback.

You should also begin to think of pricing as a service. In the end, your price is how you greet your customers – it’s your handshake. Your customers are not fools. You can’t trick them into buying your product or service by creating complicated or obscure pricing contracts. Save your customers time by keeping your price information clear. Clear pricing will give you a golden opportunity to learn about your customers. Don’t waste too much time trying to figure out the price for a new product, though. First, someone else might break the product before you. Second, once you introduce it at whatever price you set, you can glean invaluable information from your customers’ reactions and adjust if necessary.

The mechanics of pricing also shape how a firm manages broad product lines and diverse customer segments. A discount on a “traffic-driving” item can lift sales of complementary goods—Spulber points to familiar fast-food dynamics, where cheaper burgers can increase purchases of fries and soft drinks, while potentially cannibalizing other menu items. Pricing can also segment by quantity through volume discounts, letting customers self-select into larger purchases if per-unit savings are attractive. Or it can segment by quality, as with graded gasoline offerings. Across these approaches, the goal is the same: capture and retain different groups before rivals do, while keeping the bridge easy to use for the customers who rely on it.

To make the idea operational, Spulber proposes the MAIN framework—Market Making, Arbitrage, Intermediation, and Networking—as a practical way to think about winning markets by strengthening market bridges. Market making focuses on creating new, simple ways for many buyers and many sellers to transact quickly and reliably; supermarkets exemplify this by giving numerous suppliers efficient access to shoppers who save time by consolidating trips. Arbitrage emphasizes information and movement—obtaining timely exchange data and improving the ability to buy and sell across places, times, or conditions in ways that create value. Intermediation highlights the multiple roles a firm can play as an agent, monitor, broker, and communicator across marketing, purchasing, hiring, financing, and research—often with price and other exchange terms carrying more information than branding claims alone. Networking ties it together by maintaining the relationships and infrastructure that keep participants connected, sometimes by stepping aside so counterparties can interact directly, and sometimes by improving distribution so the whole system runs with less friction.

In the end, The Market Makers asks readers to re-envision competition itself. Rivals are not merely alternative product sellers; they are alternative transaction facilitators, including channels where suppliers bypass you to reach customers directly or venues that permanently undercut your terms. The path to success, Spulber suggests, is both more complex and more straightforward than it appears: find where capital is changing hands, earn the right to stand in the middle of that exchange, and then make the transfer faster, clearer, and less costly for everyone involved.


Thursday, March 26, 2026

 The following sample script illustrates how to control the access to containers and folders inside a storage account such as Azure Data Lake Storage so that users with only Reader control plane access can be allowed access to individual folders and files at that fine-granular level.

Script begins:

#!/usr/bin/bash

subscriptionid=

az account set --subscription "$subscriptionid"

accountkey=

accountname=

cradle=

domesticrw=

domesticro=

globalro=

globalrw=

removegroup1=

removegroup2=

if [[ -n "$domesticrw" ]] && ! [[ "$domesticrw" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating domesticrw=$domesticrw"

  domesticrw=$(az ad group list --filter "displayName eq '$domesticrw'" --query "[0].id" --output tsv)

  echo "domesticrw=$domesticrw"

fi

if [[ -n "$domesticro" ]] && ! [[ "$domesticro" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating domesticro=$domesticro"

  domesticro=$(az ad group list --filter "displayName eq '$domesticro'" --query "[0].id" --output tsv)

  echo "domesticro=$domesticro"

fi

if [[ -n "$globalrw" ]] && ! [[ "$globalrw" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating globalrw=$globalrw"

  globalrw=$(az ad group list --filter "displayName eq '$globalrw'" --query "[0].id" --output tsv)

  echo "globalrw=$globalrw"

fi

if [[ -n "$globalro" ]] && ! [[ "$globalro" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating globalrw=$globalro"

  globalro=$(az ad group list --filter "displayName eq '$globalro'" --query "[0].id" --output tsv)

  echo "globalro=$globalro"

fi

if [[ -n "$removegroup1" ]] && ! [[ "$removegroup1" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating removegroup1=$removegroup1"

  removegroup1=$(az ad group list --filter "displayName eq '$removegroup1'" --query "[0].id" --output tsv)

  echo "removegroup1=$removegroup1"

fi

if [[ -n "$removegroup2" ]] && ! [[ "$removegroup2" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating removegroup1=$removegroup2"

  removegroup2=$(az ad group list --filter "displayName eq '$removegroup2'" --query "[0].id" --output tsv)

  echo "removegroup2=$removegroup2"

fi

echo "domesticrw="$domesticrw""

echo "domesticro="$domesticro""

echo "globalro="$globalro""

echo "globalrw="$globalrw""

echo "removegroup1="$removegroup1""

echo "removegroup2="$removegroup2""

echo "create container, if not exists"

az storage container create -n $cradle --account-name "$accountname" --account-key "$accountkey"

echo "container exists, acling..."

[[ -n "$globalro" ]] && [[ -n "$domesticro" ]] && az storage fs access set --acl "group:"$globalro":r-x,group:"$domesticro":r-x" -p "/" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$domesticro" ]] && az storage fs access update-recursive --acl "group:"$domesticro":r-x,default:user:"$domesticro":r-x" -p "/" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

echo "container acl'ed."

echo "creating global and domestic folders..."

az storage fs directory create -n domestic -f "$cradle" --account-name "$accountname" --account-key "$accountkey" --only-show-errors

az storage fs directory create -n global -f "$cradle" --account-name "$accountname" --account-key "$accountkey" --only-show-errors

echo "folders exist, remove existing acls..."

echo "beginning remove"

[[ -n "$removegroup1" ]] && az storage fs access remove-recursive --acl "group:"$removegroup1"" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$removegroup2" ]] && az storage fs access remove-recursive --acl "group:"$removegroup2"" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$removegroup1" ]] && az storage fs access remove-recursive --acl "group:"$removegroup1"" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$removegroup2" ]] && az storage fs access remove-recursive --acl "group:"$removegroup2"" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

echo "ending remove"

echo "folders exist, acling..."

[[ -n "$domesticrw" ]] && az storage fs access update-recursive --acl "group:"$domesticrw":rwx,default:user:"$domesticrw":rwx" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$domesticro" ]] && az storage fs access update-recursive --acl "group:"$domesticro":r-x,default:user:"$domesticro":r-x" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$globalrw" ]] && az storage fs access update-recursive --acl "group:"$globalrw":rwx,default:user:"$globalrw":rwx" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$globalro" ]] && az storage fs access update-recursive --acl "group:"$globalro":r-x,default:user:"$globalro":r-x" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

echo "folders acl'ed."

Sample log:

-----

translating domesticro=AZU_PI_Domestic_RO_DSS_U2

domesticro=d39e64e3-4c72-4d7b-83fd-5bdba321629b

translating globalrw=AZU_PI_Global_RO_DSS_U2

globalro=d2683e46-9f59-4cc4-9a77-f95e5bdf8a6d

translating removegroup1=AZU_PI_Domestic_RW_DM

removegroup1=20be57b0-157a-4b59-88ce-086dab652d57

translating removegroup1=AZU_PI_Global_RW_DM

removegroup2=5b5ed4b3-9462-43fc-94aa-80dc00d3c02d

domesticrw=

domesticro=d39e64e3-4c72-4d7b-83fd-5bdba321629b

globalro=d2683e46-9f59-4cc4-9a77-f95e5bdf8a6d

globalrw=

removegroup1=20be57b0-157a-4b59-88ce-086dab652d57

removegroup2=5b5ed4b3-9462-43fc-94aa-80dc00d3c02d

create container, if not exists

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "created": false

}

container exists, acling...

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "client_request_id": "5761d34a-27cd-11f1-97a9-8ef5922a9147",

  "date": "2026-03-24T22:03:51+00:00",

  "etag": "\"0x8DE89ED2F7CA9FC\"",

  "last_modified": "2026-03-24T21:34:53+00:00",

  "request_id": "b72d61e2-c01f-0038-26da-bb0186000000",

  "version": "2021-08-06"

}

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 3,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

container acl'ed.

creating global and domestic folders...

{

  "content_length": 0,

  "continuation": null,

  "date": "2026-03-24T22:03:54+00:00",

  "encryption_key_sha256": null,

  "etag": "\"0x8DE89F13E05F710\"",

  "last_modified": "2026-03-24T22:03:55+00:00",

  "request_id": "63228947-f01f-0019-58da-bb6cb7000000",

  "request_server_encrypted": true,

  "version": "2021-08-06"

}

{

  "content_length": 0,

  "continuation": null,

  "date": "2026-03-24T22:03:56+00:00",

  "encryption_key_sha256": null,

  "etag": "\"0x8DE89F13EF8F98C\"",

  "last_modified": "2026-03-24T22:03:56+00:00",

  "request_id": "89334994-001f-0084-34da-bb16f7000000",

  "request_server_encrypted": true,

  "version": "2021-08-06"

}

folders exist, remove existing acls...

beginning remove

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

ending remove

folders exist, acling...

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

Command group 'az storage' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

{

  "continuation": null,

  "counters": {

    "directoriesSuccessful": 1,

    "failureCount": 0,

    "filesSuccessful": 0

  },

  "failedEntries": []

}

folders acl'ed.

Reference:

1. Online documentation on acls: https://learn.microsoft.com/en-us/azure/storage/blobs/data-lake-storage-access-control


Wednesday, March 25, 2026

 This is a summary of the book titled “Care to Dare: Unleashing Astonishing Potential Through Secure Base Leadership” written by George Kohlrieser, Susan Goldsworthy and Duncan Coombe and published by Jossey-Bass, 2012. This book explores a model of leadership grounded in the idea that people perform best when they feel both safe and challenged. Drawing on psychology, organizational research, and real-world leadership experience, the authors argue that effective leaders act as “secure bases” for others. In this role, leaders provide emotional security, protection, and acceptance while also encouraging exploration, risk-taking, and growth. Rather than choosing between being supportive or demanding, secure base leadership depends on holding both qualities at the same time.

The concept of a secure base originates in attachment theory, developed after the Second World War by John Bowlby and Mary Ainsworth. Their research showed that human beings are biologically wired to seek safety and reassurance from trusted figures, particularly in times of stress or uncertainty. When people feel securely attached, they are more willing to explore their environment, test their abilities, and cope with setbacks. The authors apply this insight to the workplace, suggesting that leaders often serve as the most influential secure bases in adult professional life. However, they emphasize that leaders cannot provide stability and confidence to others unless they have secure bases themselves, whether in the form of trusted relationships, guiding values, or meaningful goals.

Throughout the book, secure base leadership is described as a balance between caring and daring. Caring involves calmness, empathy, accessibility, and genuine respect for others as individuals. Daring involves setting high expectations, encouraging risk, and pushing people beyond familiar routines. Leaders who focus only on results without emotional connection may achieve short-term outcomes, but they often experience isolation, burnout, and disengagement within their teams. Conversely, leaders who care without challenging others may create comfort without progress. The authors argue that sustainable performance arises when leaders combine emotional security with purposeful challenge.

Secure base leaders demonstrate calm, particularly in emotionally charged or uncertain situations. When leaders regulate their own emotions, they model stability for others and create space for thoughtful decision-making. This calmness is linked to self-awareness, including attention to mood, language, and behavior. The authors recommend practices such as reflection and mindfulness as tools for maintaining composure. Secure base leaders also focus on seeing potential rather than limitation. Instead of blaming individuals when problems arise, they concentrate on the issue at hand and hold a long-term view of people’s capacity to grow.

Listening plays a crucial role in this leadership approach. Rather than solving problems for others or issuing directives, secure base leaders ask questions that encourage people to think for themselves. They deliver messages that are concise and meaningful, recognizing that people remember clarity more than volume. Positivity is another defining trait, not in the sense of ignoring difficulty, but in choosing to direct attention toward learning, possibility, and constructive effort. These leaders encourage risk-taking by responding to failure with curiosity rather than punishment, understanding that how mistakes are handled shapes the willingness of others to experiment and innovate.

The book also addresses the emotional reality of change at work, particularly the experience of loss. Organizational transitions such as restructuring, leadership turnover, mergers, or layoffs often trigger grief, even when those affected do not consciously label it as such. Drawing on research influenced by Elisabeth Kübler-Ross’s work on grief, the authors describe a non-linear emotional process that can include denial, anger, fear, and eventual acceptance. Secure base leaders do not rush people through this process or insist on premature positivity. Instead, they listen attentively, allow silence, and acknowledge emotional responses as legitimate. By doing so, they help individuals move forward without becoming stuck.

Another key idea explored in the book is the “mind’s eye,” which refers to the internal lens through which people interpret events. The authors illustrate this concept through examples such as Randy Pausch’s final public lecture, in which he described obstacles as opportunities to demonstrate commitment rather than as reasons to quit. Leaders influence the mind’s eye of others by helping them reframe challenges, practice self-control, and delay gratification. Secure base leaders do not rescue people from difficulty or think on their behalf. Instead, they support others in developing resilience and perspective, recognizing that expectations often shape outcomes.

Personal development is presented as an essential foundation for secure base leadership. The authors encourage leaders to take stock of their own secure bases and behavioral patterns, including how past experiences shape current reactions. Tools such as reflecting on major life events or examining one’s attachment style can deepen self-awareness. The book outlines four attachment patterns—secure, avoidant-dismissive, anxious, and detached—each associated with particular strengths and risks in leadership. Understanding these patterns allows leaders to work consciously on areas that may limit connection or effectiveness.

Finally, the authors extend the idea of the secure base beyond individual leaders to entire organizations. When trust, accountability, and open communication are embedded in culture, workplaces can become environments where people feel safe enough to take responsibility and ambitious enough to grow. The authors stress that words, tone, and everyday interactions matter deeply, particularly during difficult decisions. Change handled with clarity and respect preserves dignity, even when outcomes are painful. In this way, organizations can become places where people not only work, but also develop, contribute, and find meaning over time.


Tuesday, March 24, 2026

 The following sample script illustrates how to acl containers and folders inside an Azure Data Lake Storage so that users with only Reader control plane access can be allowed access at a fine-granular level.

Script begins:

subscriptionid=%1

az account set --subscription "$subscriptionid"

accountkey=%2

accountname=%3

cradle=%4

domesticrw=%5

domesticro=%6

globalro=%7

globalrw=%8

if  [[ -n "$domesticrw" ]] && ! [[ "$domesticrw" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating domesticrw=$domesticrw"

  domesticrw=$(az ad group list --filter "displayName eq '$domesticrw'" --query "[0].id" --output tsv)

  echo "domesticrw=$domesticrw"

fi

if  [[ -n "$domesticro" ]] && ! [[ "$domesticro" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating domesticro=$domesticro"

  domesticro=$(az ad group list --filter "displayName eq '$domesticro'" --query "[0].id" --output tsv)

  echo "domesticro=$domesticro"

fi

if  [[ -n "$globalrw" ]] && ! [[ "$globalrw" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating globalrw=$globalrw"

  globalrw=$(az ad group list --filter "displayName eq '$globalrw'" --query "[0].id" --output tsv)

  echo "globalrw=$globalrw"

fi

if [[ -n "$globalro" ]] && ! [[ "$globalro" =~ ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ ]]; then

  echo "translating globalro=$globalro"

  globalro=$(az ad group list --filter "displayName eq '$globalro'" --query "[0].id" --output tsv)

  echo "globalro=$globalro"

fi

echo "create container, if not exists"

az storage container create -n $cradle --account-name "$accountname" --account-key "$accountkey"

echo "container exists, acling..."

az storage fs access set --acl "group:"$globalrw":r-x,group:"$globalro":r-x,group:"$domesticro":r-x" -p "/" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

az storage fs access update-recursive --acl "group:"$domesticrw":rwx,default:user:"$domesticrw":rwx" -p "/" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

echo "container acl'ed."

echo "creating global and domestic folders..."

az storage fs directory create -n domestic -f "$cradle" --account-name "$accountname" --account-key "$accountkey" --only-show-errors

az storage fs directory create -n global -f "$cradle" --account-name "$accountname" --account-key "$accountkey" --only-show-errors

echo "folders exist, acling..."

[[ -n "$domesticrw" ]] && az storage fs access update-recursive --acl "group:"$domesticrw":rwx,default:user:"$domesticrw":rwx" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$domesticro" ]] && az storage fs access update-recursive --acl "group:"$domesticro":r-x,default:user:"$domesticro":r-x" -p "domestic" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$globalrw" ]] && az storage fs access update-recursive --acl "group:"$globalrw":rwx,default:user:"$globalrw":rwx" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

[[ -n "$globalro" ]] && az storage fs access update-recursive --acl "group:"$globalro":r-x,default:user:"$globalro":r-x" -p "global" -f "$cradle" --account-name "$accountname" --account-key "$accountkey"

echo "folders acl'ed."

#codingexercise: CodingExercise-03-24-2026.docx

Sunday, March 22, 2026

 

This is a summary of a book titled “The AI Revolution in Customer Service and Support: A Practical Guide to Impactful Deployment of AI to Best Serve Your Customers” written by Ross Smith, Emily McKeon and Mayte Cubino and published by Pearson Education (USA) in 2024. This book examines how artificial intelligence is reshaping customer service at a moment when expectations for speed, personalization, and convenience are higher than ever. The authors argue that customer service has become a defining factor in how organizations are judged, often as important as the products or services themselves. Many traditional support models struggle to meet contemporary demands, leaving customers frustrated by long wait times and inefficient interactions. Against this backdrop, the authors position AI as a tool capable of transforming customer service into something more responsive, consistent, and closely aligned with individual customer needs.

 

Drawing parallels with earlier technological shifts such as electrification and industrial automation, the book situates AI within a broader pattern of innovation that alters how work is organized and value is delivered. In customer service, AI systems can process vast amounts of data to provide personalized assistance at scale, often more quickly and reliably than human agents alone. While implementing such systems can require significant upfront investment, the authors suggest that long-term efficiencies and improved customer satisfaction can offset these costs.

 

Organizations are encouraged to develop a clear vision for how AI fits into their long-term strategy rather than treating it as a short-term efficiency fix. This vision should articulate what success looks like several years into the future and should be communicated clearly to all stakeholders, including employees and customers. The authors emphasize that leadership commitment must be visible and consistent, and that AI initiatives should be grounded in a realistic understanding of both technological capabilities and organizational needs. Setting concrete, measurable goals allows companies to move beyond abstract enthusiasm and toward meaningful outcomes.

 

Before deploying AI, the authors stress the need to understand existing customer service operations. Establishing a baseline helps organizations evaluate whether AI adoption is actually improving performance. This involves identifying gaps between current service levels and customer expectations, prioritizing areas for improvement, and quantifying desired changes in metrics such as customer satisfaction. During development, AI systems should be tested iteratively with different customer segments, assessed for integration with existing tools, and reviewed regularly from an ethical standpoint. Validation should include basic accuracy checks, stress testing under real-world conditions, and confirmation that systems comply with regulatory and internal ethical standards.

 

Once deployed, AI systems must be accessible across the channels customers already use and adaptable to the needs of both customers and employees. Successful integration depends not only on technical infrastructure but also on education and change management. The authors note that while customers ultimately benefit from faster and more consistent service, some may be concerned about losing human interaction. Transparency about when and how AI is used, along with clear pathways to human support, can help address these concerns. Employee responses to AI adoption also vary, ranging from enthusiasm to anxiety about job security. The book emphasizes that AI should be framed as a tool that supports human work rather than replaces it, and that employees should be encouraged to engage with and learn from the technology.

 

Ethical considerations run throughout the authors’ discussion. As AI systems become more influential, the risks associated with bias, lack of accountability, and opaque decision-making increase. The book argues that responsible AI use must be grounded in human values, with explicit commitments to fairness, transparency, security, and accountability. Organizations are urged to take responsibility for the outputs of their AI systems and to address any harms that arise from their use, rather than treating ethical issues as secondary or abstract concerns.

 

Cultural factors also play a significant role in how AI is received. Resistance to new technology often stems from fear or misunderstanding, and the authors suggest that organizational culture can either amplify or mitigate these reactions. A culture that values learning and adaptation is more likely to view AI as an opportunity rather than a threat. Generational differences can shape expectations as well, with younger customers and employees generally more comfortable with automation than older ones. Addressing these differences thoughtfully, such as by showing how AI can reduce routine work and allow for deeper human engagement, can ease adoption.

 

The book also explores how AI changes the nature of customer support roles. As organizations map their customer journeys and introduce AI into specific touchpoints, employee responsibilities shift toward more complex, judgment-based tasks. Training becomes essential, particularly in teaching staff how to work effectively with AI systems and interpret their outputs. At the same time, new roles emerge, including specialists focused on data, model performance, ethics, and content management. These roles help ensure that AI systems remain aligned with organizational goals and customer needs.

 

The authors argue that leadership itself must evolve. Leaders in customer service are tasked not only with managing operations but also with guiding their organizations through ongoing technological change. This requires openness to learning, attentiveness to employee concerns, and a willingness to address the broader social implications of AI use. By emphasizing transparency, accountability, and respect for data privacy, leaders can build trust among customers, employees, and other stakeholders as AI becomes an integral part of customer service and support.


#codingexercise: CodingExercise-03-22-2026.docx

Saturday, March 21, 2026

 This is a summary of a book titled “The Mentally Strong Leader: Build the Habits to Productively Regulate Your Emotions, Thoughts, and Behaviors” written by Scott Mautz and published by Peakpoint Press in 2024. This book says that mentally strong leaders are distinguished by their capacity for self-regulation. They are intentional about their behavior, their thoughts, and their emotional responses, and this intentionality translates into self-discipline, confidence, decisiveness, and clarity of purpose. Rather than reacting impulsively, they choose responses that align with their values and long-term goals. Mental strength shows up in observable ways, including fortitude in adversity, boldness in pursuing meaningful goals, sustained focus, and the ability to motivate others through clear and credible messages.

Mautz treats mental strength as something that can be developed, much like physical fitness. With consistent effort and the right practices, leaders can expand their capacity to think expansively, stay positive, and make sound decisions. Experience and maturity naturally contribute to this growth, but progress accelerates when leaders adopt deliberate habits that help them recover from setbacks, learn from failure, and maintain momentum.

Fortitude, the ability to withstand adversity without losing direction or resolve, is essential. Building fortitude begins with discipline and with reframing how challenges are perceived. Leaders are encouraged to see difficulties not as threats but as problems to be worked through and, potentially, as sources of learning. This shift requires tolerating routine and pressure, confronting uncomfortable situations, planning for setbacks, and resisting the pull of victim thinking. It also involves welcoming disagreement and engaging in hard conversations rather than avoiding them.

When facing challenges, Mautz advises leaders to slow down their thinking and look for what a situation might teach them or how it could open new options. Perspective is gained by connecting current problems to past experiences and remembering previous moments of difficulty that were ultimately resolved. Emotional reactions are acknowledged but not allowed to dominate; action is emphasized over rumination, and leaders are urged to move forward even when they feel discouraged.

Problem-solving starts with honestly admitting that a problem exists while maintaining confidence in one’s ability to address it. Effective leaders focus on the issue itself rather than personalizing conflict, remain flexible in their approach, and ask questions that clarify root causes. They generate multiple possible solutions, narrow their options, commit to a course of action, and follow through. Under sustained pressure, they concentrate on immediate priorities instead of worst-case scenarios and build on what is already working. Mautz offers a simple mental model to guide leaders through turbulent moments: being candid to reduce uncertainty, serving as a steady anchor for others, providing clear direction, and paying attention to how people are responding.

Avoiding a victim mindset is another aspect of fortitude. Leaders are encouraged to question the comfort that self-pity can provide and to replace “Why me?” with “Why not me?” By owning their role in a situation and letting go of the expectation that everything must be fair, they regain a sense of agency. In disagreements, they treat differing views as opportunities for better ideas, provided the environment feels safe, everyone is heard, and discussions stay focused on facts rather than personal attacks. Difficult conversations are not postponed indefinitely but scheduled and approached with preparation for emotional reactions.

Confidence and intentionality form the next pillar of mentally strong leadership. Mautz frames mistakes as part of an ongoing learning process rather than as verdicts on competence. Leaders build confidence by learning how to receive criticism without defensiveness, extracting useful lessons, and deciding consciously which feedback to act on. Improvement is integrated into daily work through intentional practices, self-correction, optimism, and a willingness to accept oneself as imperfect but capable.

Managing self-doubt requires balance. Leaders are cautioned against both overconfidence and excessive fear and encouraged to aim for a grounded sense of self-belief. Feelings of inadequacy or impostorism are addressed by challenging negative self-talk, focusing on the value one brings, and seeking perspective from trusted colleagues. Comparison with others is discouraged, since outward success rarely tells the whole story; the only meaningful comparison is with one’s own past performance. Optimism is cultivated by recognizing that responses to events shape their impact and by remembering that difficulties, while uncomfortable, often contribute to growth.

Boldness is not recklessness but informed courage. Leaders grow by expanding their thinking, questioning limiting narratives, and allowing themselves to imagine ambitious possibilities. They identify their strengths, study examples of success, draw on others’ insights, and take purposeful leaps forward. Bold leaders challenge assumptions, remain open to new information, adjust quickly as conditions change, and replace wishful thinking with effort. Risk is treated as a skill to be developed, with learning and even failed attempts viewed as necessary investments. Change itself is framed as an opportunity for improvement, and leaders help others navigate it by articulating a clear and realistic vision of the future.

Communication is presented as a critical expression of mental strength. The way leaders speak, listen, and frame messages shapes trust and motivation. When emotions run high, mentally strong leaders pause to name what they are feeling and consciously choose a more constructive response. They listen with the intent to understand and to signal genuine interest, staying present and attentive even when conversations are challenging. Positivity is expressed through acceptance, forgiveness, gratitude, and encouragement, while transparency and integrity guide what leaders share and how they act. Clear personal values serve as reference points for decisions and behavior.

The book also connects mental strength to decision-making quality. Leaders are urged to recognize and counter common cognitive biases, to replace unhelpful habits with better ones, and to bring discipline to group decisions by clarifying roles and expectations. Data is used thoughtfully rather than indiscriminately, with attention paid to bias, missing information, and what truly matters. Leaders are encouraged to look beyond binary choices, consider timing, delegate appropriately, and ensure that decisions align with broader goals. Once a decision is made, confidence and follow-through reinforce credibility.

#codingexercise: https://1drv.ms/w/c/d609fb70e39b65c8/IQCQ5_vu_UCOQaAtWXPEFpCSAXzIyKBI6t9U2EAvyBiM88s?e=A2iIz0