Saturday, 20 September 2025

Hot topic called Gen-Z

Gen-Z vs. the System: A Tussle Over the Future

One of the hottest topics right now is Gen-Z — not just as a demographic, but as a rising force shaping the political and social landscapes. From youth-led movements in Sri Lanka and Bangladesh to recent upheavals in Nepal, we're witnessing a global trend: young people challenging—and in some cases, toppling—unpopular governments through sheer collective force.

We hear phrases like “reclaim history” and “make history.” But what is this history really about? For many in Gen-Z, it's about demanding a future where they are not sidelined. It's about proving their relevance by dismantling systems that no longer serve them—or never did.

Democracy was supposed to give people the power to choose leaders who would shape a future inclusive of all generations. But when those in power are more focused on extracting benefits from the system than serving the people, dysfunction follows. The system stops being a neutral tool and starts evolving into something with its own self-interest — its own “future” to protect.

This is where tension escalates. A system worried about its own survival creates leaders who are more concerned with securing their legacy than with enabling the next generation. Meanwhile, Gen-Z, fueled by adrenaline and urgency, sees this as a call to action — or even confrontation.

Here lies the core conflict: the system’s obsession with preserving itself leaves less space for Gen-Z’s future to unfold. The question isn’t whether Gen-Z has the energy or will to challenge this — they clearly do. The real question is: Is adrenaline enough to resolve this generational standoff?

Or does something deeper need to change — both in the system, and in how we define leadership, legacy, and shared future?

Wednesday, 17 September 2025

Look Beyond the Numbers: See the Game

Look Beyond the Numbers: See the Game

The one who speaks of universal connections sees a very different picture.

As Prime Minister Modi celebrates his 75th birthday, millions across the country — especially many Sanatanis — join in the celebrations. But what about the minorities? Who listens to their silence?

When numbers speak for Modiji — in lakhs, in crores — it feels like the whole nation is celebrating. But in the wave of such massive support, who cares if a few thousand choose not to participate?

We often get lost in the noise of numbers. But numbers, by themselves, are meaningless unless they tell us something deeper.

Imagine this: someone says they scored 100 points in a competition. Impressive, right? But what if the competition was about something horrific — say, beheading people, with one point awarded per victim? Suddenly, those 100 points paint a very different picture. At first glance, the number may impress, but once you understand the context, it shocks.

The same applies to social media. We hear things like "100 lakh followers" or "1 million likes." But before being impressed, ask: what is the content? what is the message? Without context, numbers are just distractions — tools used to manipulate perception.

So, the next time you hear that thousands are protesting a project while lakhs are in support, don't be fooled by the scale. For those thousands, it might be a matter of survival, of life and death. Numbers alone can’t measure that kind of truth.

Don’t follow the numbers. Understand the game. Game lies in how the numbers are connected.



Sunday, 14 September 2025

Great Indian Path (ology)

Narendra Modi Path vs Constitutional Path: A Crossroads for Indian Democracy

Introduction

In the world’s largest democracy, the balance between strong leadership and constitutional integrity has always been delicate. Since 2014, with the rise of Prime Minister Narendra Modi, India has witnessed a shift in political culture—marked by assertive governance, centralized power, and a redefinition of national priorities. This has led many to contrast what is now referred to as the “Modi path” with the traditional “Constitutional path.”

But what do these two paths really represent? And more importantly, which one better serves the spirit of Indian democracy?

The Constitutional Path: A Framework for Democratic Governance

India’s Constitution, adopted in 1950, is not just a legal document—it is the soul of the Republic. It ensures:

Separation of powers among the legislature, executive, and judiciary

Fundamental rights that protect citizens from state overreach

Federalism, where power is shared between the Centre and states

Secularism and pluralism, which guarantee equality irrespective of religion, caste, or language

A system of checks and balances to avoid authoritarianism

The constitutional path is often slow, deliberative, and complex—but it is designed that way to ensure inclusivity, accountability, and justice.

The Narendra Modi Path: Speed, Centralization, and Strongman Politics

Under Narendra Modi, India has seen a leadership style that is:

Highly centralized in the Prime Minister’s Office (PMO)

Driven by a nationalist ideology, often aligned with the RSS and Hindutva worldview

Focused on efficiency, image-building, and decisive action

From digital initiatives and infrastructure projects to global diplomacy and economic reforms, Modi has projected an image of a leader who “gets things done.” However, critics argue that this has often come at the cost of institutional independence and constitutional norms.

Where the Paths Diverge

Let’s look at some key areas where these two paths have diverged:

🔹 1. Parliamentary Democracy vs Executive Dominance

While Parliament is meant to debate and scrutinize laws, the Modi government has been accused of pushing through legislation without adequate debate—such as the controversial farm laws or CAA.

🔹 2. Federalism vs Centralized Control

The constitutional vision of cooperative federalism has been challenged by moves seen as undermining state powers (e.g., GST implementation, governor interventions, Delhi Ordinance Bill).

🔹 3. Pluralism vs Majoritarianism

The Constitution protects minorities and promotes secularism. Modi’s critics argue that under his watch, there's been a normalization of majoritarian narratives, leading to concerns among religious minorities, especially Muslims.

🔹 4. Dissent vs Nationalism

From student activists to journalists, many have been booked under UAPA and sedition laws, raising questions about freedom of speech and the space for democratic dissent.

Supporters Say: Modi Delivers

It’s important to recognize that many Indians support Modi precisely because of his decisiveness, anti-corruption stance, and nationalist appeal. They argue that:

Bureaucratic red tape has been cut

India’s global image has improved

Welfare delivery has become more efficient

National security is prioritized

To them, the "Modi path" is not unconstitutional, but rather a reinterpretation of leadership suited for the 21st century.

The Risk of Elective Autocracy

But democracy is not just about elections. Winning a majority does not give unchecked power. When institutions bend to the will of one office, dissent is criminalized, and constitutional values are undermined, the line between democracy and elective autocracy begins to blur.

Conclusion: The Need for Course Correction

India today stands at a crossroads. The “Modi path” offers speed and strength, but risks ignoring the very framework that safeguards democracy. The constitutional path is slower, but ensures that power is accountable, inclusive, and just.

A strong leader can be an asset—but only if anchored in constitutional values. Without that anchor, strength can quickly turn into suppression.

In the end, the real question is not whether India should follow the Modi path or the constitutional path. It’s whether we can reconcile strong leadership with strong institutions, and decisive action with democratic accountability.

That is the test of a mature democracy—and the challenge India must now face.

Thursday, 11 September 2025

Constitution and local interpretation

Constitution and Local Phenomenon Interpretation: A Path to True Democracy

The constitution is often described as the supreme law of the land—a foundational document that shapes governance, rights, and the rule of law. But an age-old question remains: Who gets to interpret the constitution? And perhaps more importantly, how should it be interpreted?

Traditionally, constitutional interpretation is centralized—vested in supreme courts, constitutional courts, or national institutions. However, a growing perspective suggests that constitutions should be interpreted through the lens of local phenomena—meaning the unique cultures, values, and lived experiences of diverse communities within a country.

Why Local Phenomenon Interpretation Matters

Every society is made up of a mosaic of communities with distinct histories, needs, and worldviews. Imposing a one-size-fits-all interpretation risks alienating large parts of the population and creating democratic deficits. Local phenomenon interpretation recognizes this diversity, offering a more nuanced and democratic approach.

By grounding constitutional meaning in local realities, we enable a living constitution—one that adapts, evolves, and resonates with people on the ground. This decentralization of interpretative power encourages civic participation, cultural respect, and democratic legitimacy.

The Threat of Centralized Authoritarian Interpretation

History shows that centralized constitutional interpretation can be weaponized by authoritarian or fascist forces. When a small group monopolizes the right to define constitutional meaning, they can manipulate it to suppress dissent, erode freedoms, and concentrate power.

Authoritarian regimes often cloak their actions in legalistic terms, claiming they act in the “national interest” or reflect the “true spirit” of the constitution. Without local checks and balances, these claims can go unchallenged, leading to the erosion of democracy from within.

How Local Phenomenon Interpretation Counters Authoritarianism

When constitutional interpretation is decentralized and grounded in local contexts, it naturally invites pluralism. Different communities bring their own interpretations, values, and checks on power, making it harder for any one authoritarian narrative to dominate.

Local interpretation encourages transparency and accountability because it is tied directly to communities that experience the impact of constitutional decisions. Moreover, it fosters democratic participation, as people engage in shaping the meaning of their own rights and governance structures.

Challenges and Safeguards

Of course, local interpretation is not without risks. Local majorities might marginalize minorities, or local institutions might be captured by illiberal forces. That’s why:

Robust protections for minority rights are essential.

Democratic institutions at all levels must be strong and participatory.

Civic education should empower communities to engage critically with constitutional issues.

A balanced framework where local interpretations are respected but aligned with fundamental constitutional values can ensure unity amid diversity.

Conclusion

Interpreting constitutions through local phenomena is not about abandoning national unity or the rule of law—it’s about enriching them. By embracing the diversity of lived experiences and empowering communities, we foster a constitutional democracy that is vibrant, resilient, and truly representative.

In a world where authoritarianism often exploits legal interpretation to consolidate power, decentralizing constitutional interpretation is a powerful tool to protect democracy, human rights, and pluralism.

The constitution lives not just in texts and courts but in the everyday realities of people—where local voices must be heard and respected.

Tuesday, 2 September 2025

MQTT_Firebase bridge

In my previous post, I had shared a tutorial about posting data from ESP32 to Firebase using Arduino Firebase client.

But what if you want to use MQTT on ESP32 side and still post messages to Firebase. This made me to work upon an intermediate C program which receives data from ESP32 MQTT client and post the data to Firebase REST API.

 A MQTT_Firebase bridge couples an MQTT enabled IOT device to talk to Firebase without additional work in IOT end. With IOT device having access to Firebase database which serves as a backend for mobile and web applications, we are moving towards an unified backend for embedded, mobile and web applications. There are many advantages of having an unified backend which enables seamless integration of application across the domain. 

Here is a simple C program which you can execute on your Rasberry Pi that can execute C program.

Prerequisites to execute this C program

1. A linux OS on your Rasberry Pi

2. Install Paho MQTT client and libcurl using the command  sudo apt install libcurl4-openssl-dev libpaho-mqtt-dev

3. Run the Program using  gcc name_of_program.c -o name_of_program -lcurl -lpaho-mqtt3c

4. Execute the program using  ./name_of_program

To test the program

1. Run the C program

2. Open an Online Mqtt client and publish to the Mqtt broker & Topic configured in your C program. 

3. Once you publish the data to the topic, you should see the output of the C program listening to the topic and posting the topic data to the Firebase URL. On successful posting to the Firebase URL you will see an appropriate success message or the error code.

Once the program is tested, you can replace the online MQTT client with ESP32 MQTT client.

Here is the C Program

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <curl/curl.h>
#include "MQTTClient.h"

// MQTT Config
#define MQTT_ADDRESS   "tcp://broker.hivemq.com:1883" 
#define MQTT_CLIENTID  "MQTT_FIREBASE_BRIDGE"
#define MQTT_TOPIC     "test/int"
#define MQTT_QOS       1
#define MQTT_TIMEOUT   10000L

// Firebase Config
#define FIREBASE_URL "https://your-project-id.firebaseio.com/test_int.json" // Must end with .json

// POST to Firebase
void post_to_firebase(const char *value) {
    CURL *curl;
    CURLcode res;
    char json_data[256];

    snprintf(json_data, sizeof(json_data), "{\"value\": \"%s\"}", value);

    curl_global_init(CURL_GLOBAL_ALL);
    curl = curl_easy_init();

    if (curl) {
        struct curl_slist *headers = NULL;
        headers = curl_slist_append(headers, "Content-Type: application/json");

        curl_easy_setopt(curl, CURLOPT_URL, FIREBASE_URL);
        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json_data);

        printf("Sending to Firebase: %s\n", json_data);

        res = curl_easy_perform(curl);

        long response_code = 0;
        curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response_code);

        if (res != CURLE_OK || response_code != 200) {
            fprintf(stderr, "POST failed. CURL error: %s, HTTP response: %ld\n",
                    curl_easy_strerror(res), response_code);
        } else {
            printf("POST successful. HTTP %ld\n", response_code);
        }

        curl_slist_free_all(headers);
        curl_easy_cleanup(curl);
    }

    curl_global_cleanup();
}

// MQTT Message Callback
int message_arrived(void *context, char *topicName, int topicLen, MQTTClient_message *message) {
    char *payload = malloc(message->payloadlen + 1);
    memcpy(payload, message->payload, message->payloadlen);
    payload[message->payloadlen] = '\0';

    printf("MQTT Message received: %s\n", payload);
    post_to_firebase(payload);

    free(payload);
    MQTTClient_freeMessage(&message);
    MQTTClient_free(topicName);
    return 1;
}

// Main Function
int main() {
    MQTTClient client;
    MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;
    int rc;

    MQTTClient_create(&client, MQTT_ADDRESS, MQTT_CLIENTID, MQTTCLIENT_PERSISTENCE_NONE, NULL);
    conn_opts.keepAliveInterval = 20;
    conn_opts.cleansession = 1;

    MQTTClient_setCallbacks(client, NULL, NULL, message_arrived, NULL);

    printf("Connecting to MQTT broker...\n");
    rc = MQTTClient_connect(client, &conn_opts);
    if (rc != MQTTCLIENT_SUCCESS) {
        fprintf(stderr, "MQTT connection failed: %d\n", rc);
        return EXIT_FAILURE;
    }

    printf("Subscribed to topic: %s\n", MQTT_TOPIC);
    MQTTClient_subscribe(client, MQTT_TOPIC, MQTT_QOS);

    // Keep running
    while (1) {
        sleep(1);
    }

    MQTTClient_disconnect(client, MQTT_TIMEOUT);
    MQTTClient_destroy(&client);
    return 0;
}
 

✅ Final Thoughts

This C-based bridge lets you decouple your ESP32 from directly interacting with Firebase, which is useful in systems that prefer lightweight MQTT communication. You can now process or filter data at the intermediary (Raspberry Pi) before sending it to Firebase.


 

 

Living a Decision

The Difference Between Taking a Decision and Living a Decision

We often think of decision-making as a single moment — the instant we choose one path over another. But the truth is, there’s a profound difference between taking a decision and living a decision. Understanding this difference can transform how we approach life, growth, and even success.

Taking a Decision: The Starting Point

Taking a decision is the moment of choice. It’s mental, strategic, and often influenced by logic, pressure, or external expectations. For example, you might decide to change careers, move to a new city, or start a new relationship. This decision is important, but it’s just the beginning.

At this point, the decision is mostly abstract. It exists in your mind, your plans, or your conversations. It can be exciting, scary, or hopeful. But crucially, taking a decision is a single event—something that happens once.

Living a Decision: The Real Challenge

Living a decision is entirely different. It’s the ongoing process of bringing your decision into reality. It means showing up every day, navigating uncertainty, overcoming obstacles, and committing emotionally and physically to the choice you made.

If you decided to change careers, living that decision means actually stepping into a new work environment, learning new skills, and facing challenges you couldn’t predict. It means resilience, persistence, and sometimes sacrifice.

Living a decision transforms who you are. It’s where growth happens, where intentions become habits, and where dreams meet reality.

Why Living the Decision Matters

Many people take decisions but never fully live them. This is why so many goals remain dreams and why so many plans fall apart. A decision that’s only made but not lived can feel hollow, uncertain, or fleeting.

On the other hand, a decision that is truly lived—despite hardships or doubts—never fails. It shapes your identity, teaches invaluable lessons, and ultimately leads to transformation.

The Takeaway

Taking a decision is necessary but not sufficient.

Living a decision is the real work—and the true path to change.

The difference lies in commitment, action, and endurance over time.

As the saying goes, “A decision not lived is just a wish. A decision lived is a path.” So next time you make a choice, remember that the real journey begins after you say yes.


Monday, 1 September 2025

Art of Disruption

The Charge Cycle and the Curve: Breaking Patterns to Awaken Progress

In every society, in every community, there exists a powerful force — a force that shapes how people think, believe, and act. I call it the “charge”: the collective emotional, social, and ideological energy that binds a group together. It’s the invisible current of shared identity, myths, and beliefs that creates belonging, but also builds walls.

This charge is not inherently bad. It gives us roots, culture, and meaning. But when the charge becomes rigid, sacred, and unquestionable, it locks communities into a repeating loop — the charge cycle — that resists change, punishes dissent, and fights the truth.

And that cycle has a profound impact on what I call “the curve” — the arc of progress, awakening, and collective evolution.

What is the Charge Cycle?

The charge cycle is the repeating pattern where:

A belief or myth becomes central to a group’s identity.

Questioning or opposing this myth is seen as a threat.

The challenger is framed as an enemy — an outsider, a rebel, a traitor.

The group defends the myth with renewed vigor.

The cycle repeats, often for generations.

This cycle is the backbone of social cohesion, but also the prison of social stagnation.

Why Does the Charge Cycle Persist?

Because the charge provides:

Safety — belonging to a group feels safer than standing alone.

Comfort — familiar myths simplify the world.

Identity — the charge gives people a sense of who they are.

Breaking the cycle means risking isolation, conflict, and uncertainty. Most people naturally avoid this.

The Curve: Progress and Its Adversary

The curve represents the growth of:

Truth

Awareness

Justice

Compassion

Freedom

It’s the slow but steady rise toward something better — both within individuals and societies.

But the charge cycle works against this curve:

It flattens progress by punishing innovation and dissent.

It warps progress by distorting values to fit old myths.

In extreme cases, it breaks the curve altogether, collapsing communities into chaos or authoritarianism.

Disrupting the Charge Cycle

To awaken the curve — to foster genuine progress — we must disrupt the charge cycle.

This doesn’t mean chaos or rebellion for its own sake. It means:

Exposing patterns without blame.

Living and embodying truth, even when misunderstood.

Using art, story, and metaphor to reach beyond defense.

Protecting the flame of inner clarity over external approval.

Finding or creating communities of fellow seekers.

Why This Matters Now

In a world rife with polarization, misinformation, and tribalism, the charge cycle is more powerful than ever. But so is the hunger for truth, connection, and meaning.

Breaking the cycle is hard. It’s lonely. It’s risky. But it is also the only path to real awakening — for individuals, communities, and humanity itself.

Closing Reflection

The curve is meant to rise — not in perfection, but in awakening. The charge cycle weighs it down. Only when we release the charge can the curve remember its path.

If this resonates with you, share it. Start conversations. Be the disruption the world needs.