Friday, July 3, 2026

 

Authenticity in the age of artificial intelligence is no longer a simple question of whether something was produced by a person or by a machine. It is becoming a question of agency, transparency, context, and intent. As generative systems increasingly assist with writing, image creation, speech, decision support, and interpersonal communication, the boundary between human expression and machine-mediated expression has become technically and socially ambiguous. A message may originate from a human idea but be refined by an algorithm; an image may depict a real event but be enhanced, compressed, or reconstructed by software; a profile, résumé, or professional statement may be truthful in substance while optimized in tone by an automated assistant. In this environment, authenticity should not be defined solely by the absence of automation. A more useful standard is whether the final artifact remains meaningfully connected to the human judgment, values, and accountability behind it.

From a technical perspective, AI challenges authenticity because it separates surface form from originating effort. Earlier digital tools changed how people edited, distributed, and formatted communication, but they did not usually generate the substance of expression at scale. Contemporary AI systems can produce fluent language, realistic media, and persuasive interaction patterns with minimal prompting. This creates a verification problem: the observable output may no longer reveal the process that produced it. A polished response may reflect careful human thought, automated pattern completion, or a hybrid of both. The same ambiguity applies to images, audio, video, and synthetic personas. As a result, audiences increasingly need process signals rather than relying only on content signals. Metadata, provenance standards, disclosure norms, and audit trails become important not because every automated contribution is deceptive, but because trust depends on understanding the relationship between representation and reality.

The professional risk is not that AI assistance exists, but that it can obscure responsibility. In business, education, research, design, and public communication, authenticity has traditionally carried an assumption of accountable authorship. Readers, customers, colleagues, and institutions evaluate not only what is said, but who stands behind it and how it was produced. When AI-generated or AI-shaped content is presented without appropriate context, accountability can become diffuse. A leader may appear more empathetic than their actual engagement supports. A candidate may seem more articulate than their underlying competence demonstrates. A brand may sound personal while operating through automated segmentation. These examples do not make AI inherently inauthentic; they show that authenticity depends on whether the use of AI amplifies genuine intention or substitutes for it in a way that misleads the audience.

A strong authenticity framework should therefore distinguish between assistance, augmentation, simulation, and deception. Assistance occurs when AI helps improve clarity, accessibility, translation, structure, or recall while the human remains the source of intent and final judgment. Augmentation occurs when AI expands a person’s expressive range, enabling communication that might otherwise be limited by language barriers, cognitive load, disability, time pressure, or lack of specialized production skills. Simulation occurs when AI creates the appearance of human presence, personality, expertise, or experience without the corresponding human basis. Deception occurs when that simulation is deliberately or negligently presented as something it is not. These categories are more practical than a binary distinction between human-made and machine-made content, because real workflows increasingly involve mixtures of human and computational contribution.

For organizations, the technical challenge is to design systems that preserve human agency rather than merely optimize engagement. Many AI tools are tuned to produce outputs that attract attention, increase response rates, or conform to statistically successful patterns. Those goals can be useful, but they can also flatten individuality and encourage formulaic communication. When optimization becomes the dominant design objective, authenticity erodes because people begin to communicate in the style most likely to perform well rather than in the style that best reflects their actual judgment. Responsible implementation requires explicit choices about when optimization is appropriate, when disclosure is necessary, and when human review is mandatory. It also requires recognizing that measurable engagement is not the same as trust, understanding, or meaningful connection.

Authenticity in 2025 should be treated as a socio-technical property rather than a nostalgic preference for unassisted creation. It emerges when people understand the role of AI in a communication, when the output remains aligned with the human values and decisions behind it, and when accountability is not hidden behind automation. The most credible future is not one in which AI is excluded from expression, but one in which AI is used with disciplined transparency and human control. A technically mature definition of being real must account for hybrid authorship while still protecting trust. In practice, this means that the question is not simply whether AI was used. The better question is whether the human remained meaningfully present in the choices, commitments, and consequences carried by the final work.

References:“AI & Authenticity: What Does It Mean to Be ‘Real’ in 2025?” written by Ben Szuhaj at Kungfu.ai in 2025

2.    

Thursday, July 2, 2026

 How to integrate reasoning models into dvsa-api

Integrate reasoning models into dvsa-api by adding a modular inference layer that routes requests to Azure Foundry/OpenAI reasoning deployments or to a hosted custom reasoning model via a lightweight orchestration policy, expose a unified prompt-and-observation interface in the API, and instrument token-level, provenance, and cost telemetry for safe production use.

The integration should treat reasoning models as first-class, stateful inference engines that produce both reasoning traces and final completions. Reasoning models improve complex decisioning, multi-step scene interpretation, and auditability because they explicitly generate internal reasoning tokens and verification steps; Azure Foundry and Azure OpenAI expose reasoning-specific controls (reasoning_effort, reasoning_tokens) and developer messages to tune effort and provenance. 

Start by adding a Reasoning Adapter inside dvsa-api that normalizes inputs (multi-frame metadata, object tracks, sensor confidence) into a compact context window and supports two modes: (1) explainable inference that returns reasoning traces for human review, and (2) actionable inference that emits structured actions (labels, bounding boxes, confidence, remediation steps). This mirrors ReAct-style interleaving of reasoning and actions to allow the model to query retrieval indices or call deterministic vision pipelines when needed. 

Operational design must include a model-orchestration policy that routes requests by cost, latency, and privacy: low-latency or PII-sensitive queries go to on-prem/custom models; high-complexity reasoning goes to Azure reasoning deployments; fallback rules and canary routing enable safe rollouts. Log model version, token counts, retrieval snapshot IDs, and reasoning_effort for every call to support audit and chargeback. 

Productionize with MLOps best practices: containerize custom reasoning models, expose a gRPC/REST inference shim, implement feature-store parity for any precomputed features, and add continuous monitoring for data drift, hallucination rates, and latency SLAs. Use shadow deployments and A/B canaries to validate reasoning trace quality against human labels before full rollout. 

Architectural trade-offs are straightforward: Azure reasoning models give superior out-of-the-box chain-of-thought and managed scaling but incur cloud cost and data residency constraints; custom models offer privacy and lower marginal cost at scale but require investment in quantization, inference optimization, and safety filters. A hybrid orchestration yields the best ROI for dvsa-api workflows that mix sensitive telemetry and high-complexity reasoning. 

Implementation roadmap: add the Reasoning Adapter and orchestration policy, wire Azure SDK clients and a pluggable custom-model shim, implement token- and trace-level telemetry, run a 4-week canary with shadow logging, then enable human-in-the-loop review for high-risk outputs. Key metrics to track: reasoning_tokens per request, hallucination incidents, latency P95, and model selection cost per inference.


Tuesday, June 30, 2026

Bulk mailer for mail campaigns

 // ── CONFIG ────────────────────────────────────────────────────────────────

const SHEET_NAME = "Contacts";

const DAILY_LIMIT = 500; // ← Change to 2000 if you have Google Workspace

const FROM_NAME = "Ravi Rajamani";


// Column indices (1-based, matching your sheet layout)

const COL_EMAIL = 1; // Column A: to_email

const COL_SUBJECT = 7; // Column G: subject

const COL_BODY = 8; // Column H: body

const COL_STATUS = 9; // Column I: Status


// ── MAIN FUNCTION ─────────────────────────────────────────────────────────

function sendCampaign() {

  const ss = SpreadsheetApp.getActiveSpreadsheet();

  const sheet = ss.getSheetByName(SHEET_NAME);


  if (!sheet) {

    Logger.log('ERROR: Sheet "' + SHEET_NAME + '" not found. Check the tab name.');

    return;

  }


  const lastRow = sheet.getLastRow();

  if (lastRow < 2) {

    Logger.log("No data rows found.");

    return;

  }


  // ── READ ALL DATA IN ONE CALL (the key fix) ───────────────────────────

  // This fetches the entire sheet as a 2D array in a single API call,

  // instead of making 4 individual calls per row inside the loop.

  const numRows = lastRow - 1; // exclude header row

  const allData = sheet.getRange(2, 1, numRows, COL_STATUS).getValues();

  // allData[i] is a 0-indexed array for row (i+2) of the sheet

  // allData[i][0] = to_email, [6] = subject, [7] = body, [8] = Status


  Logger.log("Data loaded. Total rows: " + numRows);


  // ── COLLECT ROWS TO SEND ──────────────────────────────────────────────

  // Build a list of {sheetRow, email, subject, body} for unsent rows only.

  // This entire pass is pure in-memory — no Sheets API calls.

  const toSend = [];

  for (let i = 0; i < allData.length; i++) {

    const status = String(allData[i][COL_STATUS - 1]).trim();

    if (status === "Sent") continue; // already sent

    if (status.startsWith("Error:")) continue; // skip permanent errors


    const email = String(allData[i][COL_EMAIL - 1]).trim();

    const subject = String(allData[i][COL_SUBJECT - 1]).trim();

    const body = String(allData[i][COL_BODY - 1]).trim();


    if (!email || !email.includes("@")) continue; // bad address

    if (!subject || !body) continue; // incomplete row


    toSend.push({ sheetRow: i + 2, email, subject, body }); // sheetRow is 1-based

  }


  Logger.log("Unsent rows found: " + toSend.length);


  if (toSend.length === 0) {

    Logger.log("Campaign complete — all rows have been sent.");

    return;

  }


  // ── SEND EMAILS ───────────────────────────────────────────────────────

  // Batch status updates: collect changes, then write them all at once

  // at the end of the run (or every 50 sends as a safety checkpoint).

  let sentThisRun = 0;

  let errorCount = 0;

  const statusUpdates = []; // {sheetRow, value}


  const limit = Math.min(DAILY_LIMIT, toSend.length);


  for (let j = 0; j < limit; j++) {

    const { sheetRow, email, subject, body } = toSend[j];


    try {

      MailApp.sendEmail({

        to: email,

        subject: subject,

        body: body,

        name: FROM_NAME

      });


      statusUpdates.push({ sheetRow, value: "Sent" });

      sentThisRun++;


      if (sentThisRun % 50 === 0) {

        // Checkpoint write every 50 sends so progress isn't lost if we time out

        flushStatusUpdates(sheet, statusUpdates);

        Logger.log("Checkpoint: " + sentThisRun + " sent so far...");

      }


    } catch (e) {

      statusUpdates.push({ sheetRow, value: "Error: " + e.message });

      errorCount++;

      Logger.log("FAILED row " + sheetRow + " (" + email + "): " + e.message);

    }


    // 200ms pause to stay within Gmail's per-second rate limit

    Utilities.sleep(200);

  }


  // ── FINAL WRITE ───────────────────────────────────────────────────────

  // Write any remaining status updates not yet flushed

  flushStatusUpdates(sheet, statusUpdates);


  // ── SUMMARY ───────────────────────────────────────────────────────────

  Logger.log("─────────────────────────────────────");

  Logger.log("Run complete.");

  Logger.log("Sent this run: " + sentThisRun);

  Logger.log("Errors this run: " + errorCount);

  Logger.log("Remaining: " + (toSend.length - sentThisRun));

  Logger.log("─────────────────────────────────────");

}


// ── HELPER: batch-write all pending status updates ─────────────────────────

// Clears the array after writing so we don't double-write on checkpoints.

function flushStatusUpdates(sheet, updates) {

  if (updates.length === 0) return;

  for (const { sheetRow, value } of updates) {

    sheet.getRange(sheetRow, COL_STATUS).setValue(value);

  }

  SpreadsheetApp.flush(); // force Sheets to commit writes immediately

  updates.length = 0; // clear in-place so the caller's array is emptied

}



Monday, June 29, 2026

 Understanding Perplexity’s “Computer” mode of execution for my drone video sensing applications:

When Perplexity introduced Computer, they described it as a digital worker capable of using “your computer to complete tasks for you.” Their public documentation and product pages emphasize that Computer can operate across desktop, mobile, Slack, and Microsoft 365, and that it can perform long running workflows such as research, document creation, email coordination, and scheduled jobs. The phrasing “uses your computer” naturally raises the question: does Perplexity install a local agent on the end user’s machine, similar to how Azure installs the Azure VM Agent or AWS installs the EC2 SSM Agent to gain visibility and control over compute resources?

Perplexity does not describe installing a privileged system level agent like Azure’s or AWS’s cloud management agents. Instead, their “uses your computer” capability appears to rely on a local execution harness embedded in the Perplexity desktop app, browser extension, or integration client. This harness exposes a controlled interface that the cloud hosted Computer agent can command. In other words, Perplexity does not install a daemon with OS level privileges; rather, it installs a client side sandbox that can perform user authorized actions such as opening tabs, filling forms, interacting with files the user selects, or automating workflows inside the boundaries of the app’s permissions.

This model is consistent with how Perplexity describes Computer’s security posture: tasks run in isolated environments, actions require explicit user permission, and the system is designed to avoid privileged access. It is also consistent with the fact that Computer runs identically on mobile, desktop, Slack, and Microsoft 365, which strongly suggests a portable client side execution layer rather than a deep OS level agent. The cloud agent plans and orchestrates tasks, but the actual execution on the user’s machine is mediated through the Perplexity client, which acts as a bridge between cloud intelligence and local capabilities.

The transition between cloud execution and local execution therefore follows a predictable pattern. The user issues a high level goal in the Perplexity interface. The cloud hosted Computer agent decomposes the goal into subtasks, selects appropriate skills, and determines which subtasks require local interaction. When a local action is needed—such as opening a browser window, filling a form, or manipulating a file—the cloud agent sends a structured command to the client side harness. The harness executes the action within the user’s environment, returns state information or results, and the cloud agent continues planning. This back and forth continues until the workflow completes, and because the cloud agent maintains persistent state, the workflow can run for hours or months without user supervision.

This hybrid model is conceptually similar to Azure’s and AWS’s cloud agents, but with a crucial difference. Azure VM Agent and AWS SSM Agent are privileged system services designed for infrastructure management, patching, telemetry, and remote command execution. Perplexity’s client harness is not a privileged agent; it is a user permissioned execution surface that allows the cloud agent to act as if it were a human user interacting with the machine. The similarity lies in the pattern: a cloud service orchestrates tasks, and a local component executes them. The difference lies in the depth of access and the security model.

How Perplexity transitions between cloud execution and local execution

To understand the transition mechanism, imagine a workflow such as booking travel. The user asks Computer to find flights, compare options, and complete the booking. The cloud agent performs the research using Perplexity’s search native intelligence and multi model orchestration. Once it identifies the desired itinerary, it needs to interact with the user’s browser or booking app. At this point, the cloud agent sends a command to the local harness: open the booking site, navigate to the correct page, fill in the traveler details, and wait for user confirmation before submitting payment. The harness executes these actions, streams back page content or DOM state, and the cloud agent continues reasoning. The workflow oscillates between cloud reasoning and local execution until the task is complete.

This pattern generalizes to any long running workflow. The cloud agent maintains the plan, memory, and schedule. The local harness provides access to the user’s environment. The two communicate through a secure channel, typically WebSocket or a similar bidirectional protocol. The cloud agent can pause, resume, retry, or escalate tasks. The local harness can request clarification or permission. The entire system behaves like a distributed agent with a cloud brain and local hands.

This architecture explains how Perplexity can run workflows for hours or months. The cloud agent persists state, monitors triggers, and schedules tasks. The local harness wakes when needed, executes actions, and returns results. The user does not need to keep the interface open; the agent continues working in the background.

Why this matters for my drone video sensing analytics system

My dvsa api application already embodies the computational core of drone analytics: ingesting video, extracting trajectories, detecting inflection signatures, computing importance sampling metrics, and producing observability outputs. What I want is the Perplexity style agentic layer: a system where users can define high level goals such as continuously analyzing flights, generating daily reports, or monitoring anomalies, and where an intelligent agent orchestrates long running workflows that span both cloud and local resources.

The Perplexity model provides a blueprint. I need a cloud hosted planner that decomposes user goals into subtasks, selects skills, and manages schedules. I need a local runner that exposes dvsa api and local compute resources to the cloud agent. I need a secure channel between the two. And I need a UX that presents this as “Your Drone Computer,” a mode where the agent can use the user’s machine to complete drone analytics tasks.

The local runner in my system would be analogous to Perplexity’s client harness. It would not be a privileged OS level agent like Azure VM Agent or AWS SSM Agent. Instead, it would be a user permissioned daemon or app that can access drone video files, run dvsa api, and return results. The cloud agent would orchestrate ingestion, analytics, reporting, and scheduling. The transition between cloud and local execution would follow the same pattern: cloud planning, local execution, cloud reasoning, and local execution.

This hybrid architecture is ideal for drone analytics because it allows us to combine cloud intelligence with local compute. Users can run dvsa api on their own GPU equipped machines while benefiting from cloud hosted planning, memory, and coordination. Long running workflows become possible: continuous ingestion of new flights, daily summaries, anomaly alerts, and scheduled reports. The agent can operate for hours or months, just like Perplexity’s Computer.


Sunday, June 28, 2026

 Sample Google Apps Script to send out bulk mails:

// ── CONFIG ────────────────────────────────────────────────────────────────
const SHEET_NAME  = "Contacts";
const DAILY_LIMIT = 500;        // ← Change to 2000 if you have Google Workspace
const FROM_NAME   = "Ravi Rajamani";

// Column indices (1-based, matching your sheet layout)
const COL_EMAIL   = 1;  // Column A: to_email
const COL_SUBJECT = 7;  // Column G: subject
const COL_BODY    = 8;  // Column H: body
const COL_STATUS  = 9;  // Column I: Status

// ── MAIN FUNCTION ─────────────────────────────────────────────────────────
function sendCampaign() {
  const ss    = SpreadsheetApp.getActiveSpreadsheet();
  const sheet = ss.getSheetByName(SHEET_NAME);

  if (!sheet) {
    Logger.log('ERROR: Sheet "' + SHEET_NAME + '" not found. Check the tab name.');
    return;
  }

  const lastRow = sheet.getLastRow();
  if (lastRow < 2) {
    Logger.log("No data rows found.");
    return;
  }

  // ── READ ALL DATA IN ONE CALL (the key fix) ───────────────────────────
  // This fetches the entire sheet as a 2D array in a single API call,
  // instead of making 4 individual calls per row inside the loop.
  const numRows = lastRow - 1; // exclude header row
  const allData = sheet.getRange(2, 1, numRows, COL_STATUS).getValues();
  // allData[i] is a 0-indexed array for row (i+2) of the sheet
  // allData[i][0] = to_email, [6] = subject, [7] = body, [8] = Status

  Logger.log("Data loaded. Total rows: " + numRows);

  // ── COLLECT ROWS TO SEND ──────────────────────────────────────────────
  // Build a list of {sheetRow, email, subject, body} for unsent rows only.
  // This entire pass is pure in-memory — no Sheets API calls.
  const toSend = [];
  for (let i = 0; i < allData.length; i++) {
    const status = String(allData[i][COL_STATUS - 1]).trim();
    if (status === "Sent") continue;                          // already sent
    if (status.startsWith("Error:")) continue;               // skip permanent errors

    const email   = String(allData[i][COL_EMAIL   - 1]).trim();
    const subject = String(allData[i][COL_SUBJECT - 1]).trim();
    const body    = String(allData[i][COL_BODY    - 1]).trim();

    if (!email || !email.includes("@")) continue;            // bad address
    if (!subject || !body) continue;                         // incomplete row

    toSend.push({ sheetRow: i + 2, email, subject, body });  // sheetRow is 1-based
  }

  Logger.log("Unsent rows found: " + toSend.length);

  if (toSend.length === 0) {
    Logger.log("Campaign complete — all rows have been sent.");
    return;
  }

  // ── SEND EMAILS ───────────────────────────────────────────────────────
  // Batch status updates: collect changes, then write them all at once
  // at the end of the run (or every 50 sends as a safety checkpoint).
  let sentThisRun = 0;
  let errorCount  = 0;
  const statusUpdates = []; // {sheetRow, value}

  const limit = Math.min(DAILY_LIMIT, toSend.length);

  for (let j = 0; j < limit; j++) {
    const { sheetRow, email, subject, body } = toSend[j];

    try {
      MailApp.sendEmail({
        to:      email,
        subject: subject,
        body:    body,
        name:    FROM_NAME
      });

      statusUpdates.push({ sheetRow, value: "Sent" });
      sentThisRun++;

      if (sentThisRun % 50 === 0) {
        // Checkpoint write every 50 sends so progress isn't lost if we time out
        flushStatusUpdates(sheet, statusUpdates);
        Logger.log("Checkpoint: " + sentThisRun + " sent so far...");
      }

    } catch (e) {
      statusUpdates.push({ sheetRow, value: "Error: " + e.message });
      errorCount++;
      Logger.log("FAILED row " + sheetRow + " (" + email + "): " + e.message);
    }

    // 200ms pause to stay within Gmail's per-second rate limit
    Utilities.sleep(200);
  }

  // ── FINAL WRITE ───────────────────────────────────────────────────────
  // Write any remaining status updates not yet flushed
  flushStatusUpdates(sheet, statusUpdates);

  // ── SUMMARY ───────────────────────────────────────────────────────────
  Logger.log("─────────────────────────────────────");
  Logger.log("Run complete.");
  Logger.log("Sent this run:   " + sentThisRun);
  Logger.log("Errors this run: " + errorCount);
  Logger.log("Remaining:       " + (toSend.length - sentThisRun));
  Logger.log("─────────────────────────────────────");
}

// ── HELPER: batch-write all pending status updates ─────────────────────────
// Clears the array after writing so we don't double-write on checkpoints.
function flushStatusUpdates(sheet, updates) {
  if (updates.length === 0) return;
  for (const { sheetRow, value } of updates) {
    sheet.getRange(sheetRow, COL_STATUS).setValue(value);
  }
  SpreadsheetApp.flush(); // force Sheets to commit writes immediately
  updates.length = 0;     // clear in-place so the caller's array is emptied
}

Saturday, June 27, 2026

 

The future of work is being reshaped by several big forces at the same time: faster digital change, artificial intelligence, automation, the green transition, higher living costs, slower economic growth in some places, geopolitical tensions, and major demographic shifts. These forces are not moving separately. They are overlapping, pushing businesses to change how they operate, what kinds of workers they need, what skills matter, and how people move through their careers. The overall message is not simply that technology will take jobs away, or that new jobs will automatically replace old ones. The picture is more mixed. Many jobs will grow, many will shrink, and many will change in ways that make training, redeployment, and better workforce planning much more important than before.

Digital access is one of the strongest drivers of change. As more people, businesses, and systems become connected, work becomes more digital, more data-driven, and more open to automation. Artificial intelligence and information-processing tools are expected to affect almost every sector, with generative AI making advanced technology easier for non-specialists to use. Robots and autonomous systems are also spreading, especially in manufacturing, logistics, transport, and other industries where machines can take on repeated or physically demanding tasks. At the same time, energy technologies, new materials, semiconductors, sensing technologies, quantum tools, biotechnology, and space technologies are all expected to influence parts of the economy. The biggest near-term impact, however, comes from AI, digital access, and automation because they touch so many jobs and tasks.

The labour market is expected to grow overall, but with a lot of churn. Across the jobs covered in the analysis, new job creation and job loss together are expected to affect about one fifth of current formal employment by 2030. The number of new jobs is expected to be larger than the number of jobs displaced, leaving a positive net gain. But that positive headline does not remove the difficulty of transition. Millions of people may need to move into different roles, learn new skills, or work alongside new technologies. Growth will not be evenly spread. Some workers will be in expanding fields, while others will be in jobs where demand is falling because software, AI, self-service systems, or automation can now do more of the work.

The fastest-growing jobs by percentage are mostly technology jobs. These include big data specialists, financial technology engineers, AI and machine learning specialists, software and application developers, data warehousing specialists, information security analysts, DevOps engineers, internet of things specialists, data analysts and scientists, and user experience designers. Security-related jobs are also growing because digital systems are more important and geopolitical risks are rising. Green and energy-related roles are also expanding, including renewable energy engineers, environmental engineers, sustainability specialists, electric and autonomous vehicle specialists, renewable energy technicians, and solar energy installation specialists. These roles show how the green transition is not only an environmental issue but also a labour-market issue.

In absolute numbers, many of the largest job gains are expected in everyday frontline and care roles rather than only in advanced technology roles. Farmworkers, delivery drivers, construction workers, shop salespersons, food processing workers, car and motorcycle drivers, food and beverage workers, nursing professionals, social workers, personal care aides, teachers, project managers, general operations managers, and software developers are all expected to add many jobs. This matters because the future of work is not only about coders and AI specialists. It also includes food systems, transport, building, healthcare, education, retail, and personal services. Many growing jobs are tied to basic needs, aging populations, rising demand for care, growing working-age populations in some regions, and the need to build and maintain infrastructure.

The jobs most likely to decline are concentrated in clerical, administrative, and routine information-processing work. Data entry clerks, bank tellers, postal service clerks, cashiers and ticket clerks, administrative assistants, executive secretaries, accounting and payroll clerks, material-recording clerks, telemarketers, legal secretaries, claims adjusters, and some printing-related roles are expected to shrink. These jobs are vulnerable because the tasks involved can often be standardized, digitized, automated, or shifted to self-service platforms. Some creative and professional support roles, such as graphic designers and legal secretaries, also face pressure as AI tools become better at producing drafts, images, summaries, and routine analysis. This does not mean that all human work in these areas disappears, but it does mean fewer people may be needed for the same tasks, and the remaining roles may require higher judgment, stronger client skills, or better ability to use digital tools.

An important question is not only whether machines replace people, but how people and machines work together. Today, nearly half of work tasks are still done mainly by people, with a smaller share done mainly by technology and another share done by people and technology together. By 2030, the balance is expected to be much more even. More tasks will be done by technology alone, and more will be done through human-machine collaboration. This shift can take two different paths. One path is deeper automation, where technology replaces human work. The other is augmentation, where technology helps people do more, make better decisions, work faster, or handle more complex tasks. The outcome will depend on business choices, worker training, job design, and public policy. If technology is used only to cut labour, disruption and inequality may grow. If it is used to raise human productivity and create better work, more people can share in the gains.

Technology is not the only force changing work. High living costs and economic uncertainty are pushing businesses to rethink prices, wages, productivity, staffing, and operating models. Even where inflation is easing, many households and companies still feel the pressure of higher costs. Slower growth can reduce hiring in some areas and lead firms to search for efficiency. At the same time, it can also increase demand for business development, sales, logistics, and AI-related roles that help organizations find new markets, lower costs, or improve operations. Economic pressure therefore creates both job loss and job growth, depending on whether a role is seen as a cost to reduce or a capability needed to adapt.

Geopolitical tension and fragmentation are also changing the labour market. Trade restrictions, industrial policy, subsidies, and conflict risks are leading some companies to rethink supply chains, where they locate work, and how much control they want over production. Some firms expect to reshore, nearshore, or friendshore parts of their operations, while others may still offshore where it helps them compete. These pressures raise demand for supply chain specialists, business intelligence analysts, business development professionals, strategic advisers, security managers, and cybersecurity workers. They also make resilience, leadership, flexibility, and global awareness more important because businesses need people who can operate in uncertain and divided conditions.

The green transition is another major source of change. Businesses expect investments in cutting emissions and adapting to climate change to reshape their operations. This is especially important in sectors such as energy, transport, construction, manufacturing, mining, metals, chemicals, agriculture, and infrastructure. Climate action is expected to create demand for environmental engineers, renewable energy engineers, sustainability specialists, electric vehicle specialists, energy engineers, and technicians who can install and maintain cleaner systems. It will also change existing jobs, especially in industries with high emissions or high exposure to climate risks. Workers will need green skills, but supply is not keeping up with demand. This means the green transition could create good opportunities, but only if training systems help people move into those jobs.

Demographic change is pulling labour markets in two directions. In many higher-income economies, populations are aging and the working-age population is shrinking. This creates pressure on healthcare, care services, pensions, and labour supply. It increases demand for nurses, personal care aides, social workers, healthcare managers, and workers who can support older populations. It may also push companies toward automation because there are fewer available workers. In many lower-income economies, the working-age population is growing. This can be a major advantage if enough good jobs are created, but it can also become a serious challenge if young people enter the labour market faster than economies can absorb them. Education, training, and job creation are therefore important to whether demographic change becomes an opportunity or a source of instability.

The skills picture is just as important as the jobs picture. Employers expect a large share of workers’ skills to change by 2030. The pace of disruption is slightly lower than in some earlier years, partly because more workers have already completed training and many companies have become more used to digital change. Even so, the scale is still large. If the global workforce were represented by 100 people, more than half would need some form of training by 2030. Many could be upskilled in their current jobs. Others could be trained and moved into different roles inside their organizations. But a significant group may not receive the training they need, leaving their employment prospects at risk.

Analytical thinking remains the most important core skill. Employers still need people who can understand problems, weigh evidence, and make sound decisions. But the next most important skills show that technical ability alone is not enough. Resilience, flexibility, agility, leadership, social influence, creative thinking, motivation, self-awareness, empathy, active listening, curiosity, lifelong learning, talent management, service orientation, and technological literacy all matter. The strongest future workers are likely to be those who combine human judgment with comfort using technology. The fastest-rising skills are AI and big data, networks and cybersecurity, technological literacy, creative thinking, resilience, flexibility, agility, curiosity, lifelong learning, leadership, talent management, analytical thinking, systems thinking, and environmental stewardship.

Some skills are expected to become less prevalent, especially manual dexterity, endurance, and precision where machines can take over repetitive physical tasks. Reading, writing, and mathematics remain basic and important, but some routine uses of these skills may be supported by AI. Dependability, attention to detail, and quality control remain useful, but employers expect other skills to grow faster. The difference between growing and declining jobs is especially clear in resilience, flexibility, resource management, operations, quality control, programming, technological literacy, and analytical thinking. In other words, workers moving into growing roles often need to be more adaptable, more comfortable with technology, and better able to manage complex work.

Generative AI is changing the skills debate because it can help with writing, summarizing, translating, coding, analyzing information, and producing drafts. But its limits are also important. Many skills still require physical presence, human judgment, trust, responsibility, empathy, creativity in context, and the ability to work with people. The most realistic near-term effect of AI is not full replacement across most skills, but a growing need for people to use AI well. Workers will need to know when AI is useful, when it is unreliable, how to check its output, how to ask better questions, and how to combine AI support with their own expertise. This makes AI literacy a general workplace skill, not only a specialist skill.

The biggest barrier to business transformation is the skills gap. Employers across most industries and economies say they cannot transform as quickly as they need to because workers with the right skills are hard to find. Other major barriers include organizational culture, resistance to change, outdated regulations, weak data and technical infrastructure, difficulty attracting talent to industries or firms, lack of investment capital, and weak understanding of new opportunities. This shows that the problem is not simply individual workers needing to try harder. Systems have to change too. Companies need better training and job pathways. Governments need stronger education and reskilling policies. Industries may need to cooperate because many talent shortages are shared across firms, not caused by one employer alone.

Most employers plan to respond by upskilling their current workforce. This is the most common strategy because it is often easier and more responsible to train existing workers than to replace them. Many employers also plan to automate tasks, hire people with new skills, use technology to augment workers, transition staff from declining roles into growing roles, and reduce staff where skills become less relevant. In response to AI specifically, many companies plan to train workers to work alongside AI, hire people who can design or adapt AI tools, hire people who can use AI effectively, and reorganize parts of their business around new AI-related opportunities. At the same time, a large share also expects to reduce headcount where AI can replicate human work. This means AI will be both a growth tool and a displacement risk.

Talent availability is becoming a serious concern. Fewer employers now expect hiring conditions to improve than in the past, and many expect it to become harder to find the right people. To attract and keep workers, employers are putting more attention on health and well-being, reskilling and upskilling, better promotion paths, higher wages, flexible work, better working hours, support for caregivers, safer workplaces, and broader talent pools. Skills-based hiring is gaining attention because relying too heavily on degrees can limit access to talent, especially when many growing roles can be reached through work experience, short courses, vocational training, apprenticeships, or practical assessment. Work experience remains the most common way employers judge skills, but pre-employment tests and skills assessments are becoming more important.

Employers also increasingly see broader hiring as a way to deal with talent shortages. Many have diversity, equity, and inclusion measures in place, and many plan training, targeted recruitment, pay reviews, anti-harassment policies, support for workers with caregiving responsibilities, and goals for improving representation. The practical reason is clear: when labour is scarce and skills needs are changing, businesses cannot afford to overlook qualified people. This includes women, workers with disabilities, younger workers, older workers, workers from low-income backgrounds, migrants, refugees, displaced workers, and people from groups that have been left out of opportunity. The broader point is that fairer access to work is not separate from workforce planning. It is part of how companies widen their talent base.

Wages are expected to take a larger share of revenue for many employers by 2030, mainly because companies need to retain talent and connect pay more closely to productivity and performance. Many employers also want to reduce wage inequality or protect workers’ purchasing power, although cost control still matters. The evidence also points to a wage premium for higher levels of preparation, training, and experience, meaning that workers in roles requiring more preparation generally earn more. But wage gains are not distributed equally, and there can be gaps between groups even at higher skill levels. This strengthens the case for better training access, fair pay systems, and clearer career pathways.

Public policy has a major role to play. Employers most often point to funding for reskilling and upskilling, direct provision of training, stronger public education systems, more flexible hiring practices, wage-setting flexibility, remote work rules, immigration policy, wage subsidies, transport infrastructure, pension changes, and support for caregivers. The right mix will differ by country. Aging economies may need policies that keep older workers connected to the labour market and make care work more sustainable. Younger economies may need large-scale job creation and better school-to-work transitions. Countries with high digital ambitions need stronger technology infrastructure and cybersecurity skills. Countries exposed to climate risks need green skills and transition support for workers in affected industries.

The impact of these changes differs across regions and industries. Some regions are more affected by aging populations, some by growing youth populations, some by trade tensions, some by climate risks, and some by shortages of investment or infrastructure. Europe and Eastern Asia face stronger pressure from aging and talent shortages. South-Eastern Asia and Southern Asia face major opportunities from digital growth, industrial change, and large workforces, but also need training and job creation at scale. Northern America is highly exposed to AI and climate adaptation, with strong demand for technical and cybersecurity skills. Latin America and the Caribbean are focused on digitalization, labour and social issues, and climate mitigation. The Middle East and Northern Africa face high skill disruption and stronger wage and training pressures. Sub-Saharan Africa faces a mix of labour-market growth, high need for skills, investment constraints, and the chance to build future-ready workforces if education and training improve.

Industries also face different futures. Information technology, financial services, telecommunications, insurance, and professional services are highly exposed to AI, data, and cybersecurity needs. Manufacturing, automotive, aerospace, electronics, mining, chemicals, oil and gas, energy, and utilities face strong pressure from automation, new materials, energy technologies, climate rules, and supply-chain changes. Healthcare and education will grow because of demographic change, social needs, and digital tools, but they also face culture, regulation, and talent challenges. Retail, hospitality, accommodation, food, leisure, logistics, and transport will continue to rely heavily on people while also adopting automation and digital systems. Agriculture and food systems face climate, technology, and labour pressures at the same time. Across almost every sector, the same pattern appears: routine tasks are under pressure, technical and adaptive skills are rising, and companies need better ways to move workers from shrinking tasks into expanding ones.

The main lesson is that the future of work is not fixed. The same technologies and trends can lead to very different outcomes depending on how businesses, governments, schools, and workers respond. If companies automate without investing in people, many workers will be pushed out of jobs without a clear path forward. If training remains too slow, skills gaps will block growth and leave people behind. If education systems do not adjust, young people may enter the labour market without the skills employers need. If climate policy does not include worker transition plans, green growth may be uneven and unfair. But if organizations invest in upskilling, use technology to support rather than simply replace workers, broaden access to opportunity, and build practical pathways into growing jobs, the next phase of labour-market change can create more work, better work, and more resilient economies.


Friday, June 26, 2026

 Dan Pontefract’s The Future of Work Is Grey: The Untapped Value of Age in the Workforce argues that organizations must rethink how they understand age, work, and long-term talent strategy. Rather than treating an aging workforce as a problem to manage, Pontefract presents age diversity as a major organizational advantage. His central claim is that companies facing demographic change should not simply look for younger workers to replace older ones; instead, they should build workplaces that retain, develop, and learn from employees at every stage of life.

One of Pontefract’s most important ideas is that many countries are entering a period of “Age Debt,” in which organizations fail to prepare for the reality that populations are getting older while birth rates are declining. Japan provides one of the clearest examples. Pontefract describes meeting a 74-year-old taxi driver in Tokyo who had returned to work after retirement because he needed income and wanted purpose. This story illustrates a broader social and economic shift: traditional retirement models no longer fit the lives of many workers. As people live longer and pension systems come under pressure, more employees will need or want to remain in the workforce beyond the ages once considered normal for retirement.

This demographic change matters because organizations depend on more than headcount. They also depend on accumulated knowledge, judgment, and experience. Pontefract calls this the “Experience Dividend”: the value organizations gain when they intentionally use the expertise of seasoned employees. Older workers often possess tacit knowledge that is difficult to document, such as how to solve recurring problems, manage client relationships, or recognize risks before they become crises. When companies lay off experienced employees simply because they are more expensive, they may save money in the short term while creating costly gaps in knowledge and execution. Pontefract’s discussion of Citigroup’s compliance problems after large layoffs shows how losing experienced staff can damage performance and increase risk.

Pontefract also challenges age-based assumptions about performance. Many employers behave as if people peak professionally at a predictable age, but careers rarely follow such a simple timeline. Older workers may still be learning, innovating, and contributing at a high level, while younger workers may be blocked by stereotypes that they lack seriousness or experience. Ageism therefore harms employees at both ends of the age spectrum. Job postings that ask for “recent graduates” may exclude older candidates, while entry-level positions requiring several years of experience can shut out younger applicants. Pontefract argues that organizations should train hiring managers to focus on skills, potential, and contribution rather than age-coded expectations.

To replace outdated career thinking, Pontefract proposes the “Career Canvas,” a flexible alternative to the traditional career ladder. The old ladder assumes that successful employees should always move upward, but real careers are more varied. Workers may want to stay in a role, move laterally, take on a short-term assignment, reduce their hours, step back from responsibility, leave and later return, or phase gradually into retirement. These options recognize that people’s needs change over time because of family responsibilities, health, education, ambition, or personal goals. By normalizing multiple career moves, companies can retain valuable people who might otherwise feel forced to leave.

Another practical solution is Pontefract’s “Wisdom Wheel,” which focuses on transferring knowledge across generations. Mentoring should not be one-directional, with older employees only teaching younger ones. Instead, reciprocal mentoring allows workers of different ages to exchange strengths: experienced employees can share judgment and institutional knowledge, while younger employees may contribute new technical skills or fresh perspectives. Age-diverse teams are especially valuable because they combine energy, adaptability, experience, and long-term insight. The example of Deutsche Bahn, which trains replacements for critical roles years in advance and pairs younger workers with experienced employees, shows how organizations can protect essential knowledge before it disappears.

Finally, Pontefract argues that companies should use a “Longevity Lens” to build cultures where employees can contribute over longer lives. This requires more than simply keeping older workers on the payroll. Organizations must create inclusive language, flexible schedules, ergonomic workplaces, accessible technology, financial planning resources, and support for caregiving or health needs. Westpac’s efforts to support workers over 50 demonstrate how longevity can become part of an organization’s strategy rather than a side benefit. Such policies help workers remain productive while also reducing turnover and preserving institutional knowledge.

Overall, The Future of Work Is Grey presents aging not as a workplace burden but as an opportunity to design better organizations. Pontefract’s argument is persuasive because it connects demographic reality with practical workplace reforms. If companies ignore aging populations, they risk labor shortages, lost knowledge, biased hiring, and weakened performance. If they embrace age diversity, however, they can benefit from the full range of human experience. A future-ready workplace is not one that favors the young over the old, or the old over the young. It is one that recognizes that workers of all ages have something valuable to offer and creates systems that allow that value to grow.

#codingexercise 

https://1drv.ms/w/c/d609fb70e39b65c8/IQCw_j1F3cCeRpwe8--1dl_7Adl2-k3hycHQJJpgJdUnks0?e=I27sdu