Suramya's Blog : Welcome to my crazy life…

May 23, 2026

Thoughts on the Cockroach Janata Party that is supposedly representing GenZ in India

Filed under: My Thoughts — Suramya @ 6:53 PM

A few days ago a new political party emerged in India called ‘Cockroach Janata Party’ following remarks attributed to the Chief Justice of India during a court hearing and apparently rapidly gained traction online through memes. I am going to talk about the political aspect of it in a bit but first want to talk about the branding of the party. When a new party/organization is formed people try to get a brand image that points to what the party wants to do. For example, when AAP (Aam Aadmi Party) was formed they named themselves as the representing the regular man (Aam Admi) and their symbol was a Broom because they claimed to be looking at sweeping the corruption clean from the country (what they actually did is a whole other story).

This new party decided to call themselves Cockroach janata party. A cockroach is something that no sane person wants in their house, if you find one in a house you know that is is not cleaned properly. I don’t know anyone who would say something like ‘oh I want more Cockroach’s in my house’. So why would you choose an insect that pretty much every human would hate finding in their houses?

Cockroach’s breed in dirty houses with food left in the open or garbage not taken out regularly (found this out the hard way when I got an infestation in my house). Is the party saying that they want India (Bharat) to go back to the ‘good old days’ of corruption and dirty cities without public toilets? (India went from 38.70 per cent population having access to toilets in 2013 to 87.5% having access in 2025). There is a lot we need to improve but we have come a long way since 2014.

The founder of the party Abhijeet Dipke used to work with AAP Communications, doesn’t stay in India (He lives in Boston) claims that the name was chosen because of the quote by Chief Justice Surya Kant during a Supreme Court hearing where they supposedly called the youth of India cockroaches & parasites but claimed later that he was misquoted. (If that quote is accurate then action should be taken against him). Abhijeet on the other hand is known for his pro-Pakistan takes on Section 370 and during the CAA protests. Other folks pushing the party are similarly not in India and are happily staying Abroad but still push the anti-India narratives.

The ‘party’ claims to be a popular platform that is giving voice to GenZ concerns but if you look at the founders, the follower metrics and the actual real life impact/reach it doesn’t seem to be there. Most of the noise generated by the party is coming from the usual Anti-India groups followed by folks from Pakistan and Bangladesh. The ‘party’ appealed everyone to assemble in front of the Bangalore Town Hall and even with 20 million followers on Instagram & 200k followers on Twitter, exactly 0 people showed up for their protest. In contrast when Anna Hazare protested in Bangalore in 2011 with his India Against Corruption (IAC) movement over 87,000 people were there supporting him against the corruption we saw in India. (I was there in Bangalore at the time and saw the support they have).

Text in Block Quote below

Cockroach Janta Party has 20 million followers on Instagram.
CJP has 200k followers on Twitter.
They appealed to everyone to assemble in the front of Town hall Bengaluru.
The number of GenZ reached in the front of the Town Hall: 0

In the past few weeks, we have seen multiple attempts to malign India starting with the Norwegian journalist who claimed that Modi didn’t answer questions during a briefing but walked out when given the option to ask questions in an actual press conference. Then we have the whole drama being created about a casual mutually respectful joke between two leaders that are comfortable enough with each other to joke with each other. Look at the video below, does it look like any of the participants are disrespecting the other?:


Modi Gifts ‘Melody’ Toffee to Giorgia Meloni During High Stakes Italy Visit | ‘Melodi’ Diplomacy

In contrast, apparently Nehru lighting a cigarette for Mrs Simon and hugging/kissing foreign diplomats/heads of state is all ok and in the best of manners and diplomacy. I can only imagine the ruckus that would have been raised if Modi had kissed a foreign head of state or hugged them.

Nehru, Prime Minister of India lighting the cigarette for Mrs Simon, wife of Deputy High Commissioner of Britain, 1960.
Nehru, Prime Minister of India lighting the cigarette for Mrs Simon, wife of Deputy High Commissioner of Britain, 1960.

After their miserable showing in West Bengal and barely adequate showing in Kerala & Tamil Nadu the opposition parties are at this point literally throwing things at BJP/Modi/India to see what sticks. The same person who is complaining today that India doesn’t have a good AI ecosystem when compared to China was protesting shirtless in the AI summit back in February.

This is the latest attempt by Congress, AAP and others to try to get GenZ to revolt against the government. Online followers & bots can be bought to create a buzz but the actual humans in India know what is what when they see this absolutely transparent attempt to hurt Bharat’s image on the international stage. Some more facts about about the claim that Modi is a Dictator are easily countered by facts comparing Congress actions and BJP actions.

Text in Block Quote below

Nehru dissolved 7 state governments when he was the Prime Minister.
Indira Gandhi dissolved 49 state governments when she was the Prime Minister.
Rajiv Gandhi dissolved 6 state governments when he was the Prime Minister.
Narasimha Rao dissolved 11 state governments when he was the Prime Minister.
Manmohan Singh dissolved 11 state governments when he was the Prime Minister.
After 2014, the Modi government has not dissolved a single state government…
But, is Modi a dictator? Who says? A sticker government! Long live Bharat..

There are so many such examples that it would takes a series of posts to cover them all. But I will end this post with just a statement that BJP & Modi have a lot of room for improvements and I don’t always agree with their policies but when compared to the other parties such as TMC, Congress, AAP and others I will take BJP over them anytime. Atleast they are trying to improve the country (and in a few cases making themselves richer while at it) as opposed to the others who seem to be in it for just making themselves richer.

– Suramya

May 13, 2026

Godfather of digital forensics creates a guide to identify Deepfakes

Filed under: Artificial Intelligence,Interesting Sites,My Thoughts — Suramya @ 9:39 PM

After Photoshop was released in 1990 and more and more people started using it to create fake/morphed photos in the subsequent years there was a big panic about not being able to trust photo’s as evidence or logging of truth because they could be modified and it was hard for the average user to quickly identify fake images. But over the years a whole lot of people put their minds together and created guidelines that folks could use to see if a photo was edited or not.

Now a little over 3 decades later AI generated images are becoming more and more prolific and it is hard for average users to identify real images vs generated ones. Hany Farid, who is known as the Godfather of digital forensics has been looking into this problem and has created a guide that can be used to determine whether a photo or video has been manipulated or deepfaked over at Science.com: Reality Check, where he talks about various techniques that can be used to identify fake images using examples.

It is a pretty well written article and I highly recommend everyone read it so that you have some idea on how to identify fake images.

– Suramya

May 11, 2026

China’s Iron Battery Prototype is 80 times cheaper than lithium and can last 16 years

Filed under: Emerging Tech,My Thoughts — Tags: , , — Suramya @ 2:39 AM

One of the biggest problems with any of the renewable power sources is that we need batteries to store the power generated so that it can be used when the solar/wind etc is not able to generate power for whatever reason (its night or no wind etc). Battery capacity limits the amount of power that can be stored and the charge time required limits how much power can be stored. Another major issue is that the current generation of batteries are Lithium based which is a rare mineral and mining it has significant environmental footprint, primarily involving excessive water consumption, habitat destruction, and carbon emissions. Keep in mind that the impact is less than the impact of burning hydrocarbons but still it is an issue.

The second issue is that because it is relatively rare mineral the countries that have deposits can potentially limit/control access the same way the middle-eastern countries control access to Petroleum and as you can guess this significantly increases the chance of conflict over the minerals. So using alternate materials in battery manufacture is something pretty much every country in the world is working on.

Earlier this month, China announced that they have created an Iron Battery that maintains a stable structure and perfect reversibility over 6,000 cycles with almost zero loss in storage capacity. If this is true then this completely changes the battery landscape opening the door for cheap and efficient batteries that are 80 times cheaper than a lithium battery.

The battery prototype demonstrated endurance, maintaining a stable structure and perfect reversibility over 6,000 cycles — equivalent to more than 16 years of daily operation — with zero loss in storage capacity.

Throughout this period, the system remained free of harmful by-products or sediment while achieving a 99.4 percent leak-proof efficiency. Even at high power outputs, it retained 78.5 percent of its energy efficiency, proving that the design is both reliable and durable.

Source:
* @danslerush@floss.social
* scmp.com: China unveils ultra-cheap ‘all-iron flow battery’ for renewable energy storage

– Suramya

May 6, 2026

What is Vibe Coding?

Filed under: Artificial Intelligence,My Thoughts — Suramya @ 10:25 AM

I have talked about Vibe coding in a lot of my posts about AI and I just realized that some of the readers of my Blog Posts might not actually know what it means. ACM (Association for Computing Machinery) recently shared a Tech Brief on Vibe Coding (AI-Assisted Software Development, or Vibe Coding: Benefits and risks of AI-driven Software Development) that gives a good high level overview along with the benefits and risks associated with the practice so I am sharing it here.

You can download/view the PDF version of the document at: Vibe Coding: Benefits and risks of AI-driven Software Development.


AI-Assisted Software Development, or Vibe Coding: Benefits and risks of AI-driven Software Development
by simson Garfinkel, mohan sankaran, rohan sharma, Shrinivass Arunachalam Balasubramanian, Arpan Pandey, and Aruun Kumar

AI-Assisted Software Development, often referred to as “Vibe Coding,” is the practice of using Generative Artificial Intelligence to create or modify software systems in which humans describe what they want to build or modify, and an AI coding assistant writes and debugs computer code. Several popular vibe coding systems are built on top of Agentic AI systems, an “approach of making AI systems capable of setting or refining plans and executing tasks with minimal or
no human oversight”

Vibe Coding Benefits
Vibe coding enables people with little or no coding experience to create highly functional applications [2]. It can also assist experienced programmers by generating code that leverages complex application programming interfaces (APIs), a hallmark of modern software development.

Because vibe coding lets developers spend less time writing code, they can focus on higher-level concerns like design, user experience, and other creative problem-solving. Vibe coding might thus shift developer effort from time-consuming implementation toward higher-level design and intent specification.

Many developers report feeling more productive when using AI to generate code [3], especially with mundane programming tasks that do not require significant creativity [4], although these reports are subjective and may not be borne out by empirical measurements over time.

Vibe Coding Risks
Software engineering’s established practices produce systems that are generally secure, reliable, and maintainable. Vibe coding circumvents these practices. While it can produce code that meets immediate requirements for style, conventions, and targeted (“unit”) tests, it does not produce well-designed software systems. Because many of these systems have been trained on data that includes cybersecurity vulnerabilities, there is a risk that they will replicate these in the code that they generate [5, 6].

A core principle of modern software development is that a program’s functions and behavior need to be specified in advance. “A program that has not been specified cannot be incorrect, it can only be surprising” [7]. AI-generated code typically lacks specifications. Even when specifications are provided, many of today’s vibe coding platforms lack mechanisms to enforce them. As a result, AI-generated code drifts away from stated requirements, including core functionality.

Few vibe coding platforms systematically test their AI-generated code to ensure it runs correctly and consistently [8]. Although it is possible to give these systems acceptance tests for the code they generate—or even have them generate their own tests—AI systems have been observed to modify, disable, or simply remove such tests rather than correcting
their code [9, 10].

Vibe coding platforms often produce over-engineered solutions with redundant code and subtle errors that create maintenance nightmares, known as “technical debt” [11]. Entry-level programmers do this as well, but they are typically supervised by senior programmers when code is critical. Entry-level programmers often seek to improve their skills and
are penalized if they try to subvert internal controls. AI-generated code, in contrast, is frequently unaudited, and there is no way to penalize a misbehaving AI. This can result in code that is, paradoxically, maintainable only by AI: the sheer volume and complexity of AI-generated code make manual code review impractical, increasing the likelihood that
undetected errors slip into production.

Recently, many vibe coding platforms have added “agentic” features that go beyond software development, allowing the platform to run programs on the software developer’s behalf, often without the human first reviewing and approving the program’s execution. This can make users more productive, since the platform can operate more quickly without
human intervention. However, it also lulls the user into granting the platform increased authority to run new executables without explicit review.

The agentic platforms can typically execute these programs not only on users’ computers but also on any computer reachable over their network. This leaves the users and their networks at risk if the AI executes commands users did not intend. For example, deleting critical information, sending confidential information outside the enterprise security
perimeter, downloading and executing software from the Internet, or reconfiguring computers so they become susceptible to intrusion. Vibe coding platforms can also be vulnerable to “prompt injection attacks” when third parties embed malicious commands in software that are interpreted as instructions from the programmer [12].

Vibe coders may generate significantly more CO2 emissions than traditional programmers. This is often debated, as vibe coding produces code faster than humans do, and in small-language models, the total energy difference between AI and prolonged code development could be comparable. But because vibe coding often overproduces code, it still
requires human intervention to refine and optimize. Energy consumption with “standard, widely-used models is far more environmentally strenuous” [13].

Vibe coding may also have long-term negative effects on skill development in the programming profession. An internal study from a major AI provider found that students and early-career programmers using vibe coding showed decreased mastery of sophisticated programming concepts and skills [14]. In educational settings, students with advanced pro-
gramming skills were more likely to succeed in building a program with AI assistance, whereas students with less coding experience were less likely to do so, indicating that instruction in fundamental programming concepts remains necessary.

Vibe coding may thus contribute to a hypothesized “experience gap,” in which AI automates many early-career skills that are both drudgery for more experienced programmers and a necessary step in building mastery. Such skills include simplifying redundant code, porting code to new environments, and the routine addition of simple features, which
typically require a programmer to first understand the codebase. Some studies have shown significant cognitive erosion resulting from AI tools, although they did not specifically consider vibe coding [15, 16]. Nevertheless, by eliminating opportunities for junior programmers to become senior while simultaneously deskilling those later in their careers,
increased AI use in software development may paradoxically contribute to a shortage of more experienced workers.

Conclusion

It is unclear what vibe coding means for the future of programming or the economic outlook for the programming profession. While the job market for programmers appears to be cooling [17], some studies find that junior developers see the biggest impact of vibe coding, which makes it less likely they will themselves be replaced with AI agents [18].
Vibe coding can make expert developers more productive and allow novice developers to create and deploy working apps, but current platforms do not enforce modern software engineering practices. The core issues are systemic: these platforms do not create formal specifications and frequently ignore them when provided; they do not systematically test
their outputs and may remove/modify failing tests rather than address the underlying problems; and they generate code that becomes maintainable only by AI, not by human developers. The same mechanism responsible for these failures — the lack of a rigorously enforced semantic model that allows AI systems to validate their outputs — is also responsible for AI hallucinations more broadly. Because of these fundamental limitations, vibe coding requires that users and organizations compensate with improved technical checks and governance mechanisms to avoid predictable failure modes.

Existing techniques for improving code quality can be applied to both human- and AI-generated code. This includes the use of mathematical verification and other formal methods and techniques [19], as well as new work on developing specially tuned AI models adept at finding security vulnerabilities [20]. Such techniques will be needed to make vibe
coding a cost-effective and secure alternative to traditional software development.

Hopefully you found this as useful as I did to understand Vibe-Coding, what it means and how it impacts software development.

– Suramya

May 4, 2026

Some more thoughts on AI

Filed under: Artificial Intelligence,My Thoughts — Suramya @ 9:25 AM

Was talking to a friend working in a startup with an AI focused product and asked him how is AI helping them. He answered that it allows them to make releases faster. You should have seen the look on his face when I asked “so what? Are the releases bug free? Do they solve the business requirement without errors?” It blew his mind when I asked this and he told me they can now release the fix faster.

The above behavior is typical when you talk to AI proponents. The main selling point for them is that you can release faster. My counterpoint is that are the faster releases solving business problems faster? Or allowing you to push out fixes for stuff that doesn’t work/broke in production because you didn’t check it correctly? If it is the former then fantastic. That is what I need AI to help me do, nut if it is the latter then it is of no use to me or the business. People forget that IT is not there in a company to try out the latest tools or use the latest technologies. It is there to solve business problems and deliver solutions that help business proceed. If this means using a 30 years old technology because ‘it just works’ then that is what you do. Whatever we do that doesn’t give fast, reliable and efficient releases is of no use.

Taking the example of being able to release faster. It is awesome if I can release features faster to production, but if the release introduces bugs or breaks functionality it is worse than a slow release because till the fix is deployed their work is stuck or they are getting wrong information which means that the work needs to be redone post the fix being deployed. How is that a win for the business? Sure, in some cases it is a genuine win because you released a feature faster but in a majority of vibe-coded instances it is something that kind-of-sort-of works and you have to go back and release a fix because something broke. This is apparent in the stability and uptime of every single application/site that has boasted of using vibe-coding be it Microsoft with its multiple bug-fix releases, Twitter going down almost daily, Amazon services going down because of AI release deleting production data and many other such examples.

Another issue that people don’t really think about is maintainability of code. People tend to thing that code can easily be replaced with newer code when we need to, but the people who think like that never had to work with 30 years old legacy code that can’t be replaced because it is running critical systems and it is too expensive to replace. Every bank I have worked in has ongoing multi-year project to replace mainframes with newer systems. Think about that, mainframes are older than I am still run critical banking systems worldwide. Similarly we have other critical systems that run old code that has to be managed and with AI generated code that is difficult to achieve if you have not reviewed/updated/understood the code on an ongoing basis. It does get things to a working state (most of the time) but it also in a lot of cases create code that is very hard to maintain. For example, the below screenshot was posted on the vibecoding reddit a little while ago and this is similar experiences faced by others in the industry when they do pure vibe-coding.

Alt-Text in Blockquotes below the image

r/vibecoding ( 19h ago )
vibe coded for 6 months. my codebase is a disaster.

the app works. users are happy. revenue is coming in.( that’s
actually the only good part)

but i just tried to onboard a dev to help me and he opened
the repo and went quiet for like 2 minutes. then said “what is
this.”

6 months of cursor and lovable and bolt. every feature
worked when i shipped it. but nobody was thinking about
structure. the Al just kept adding. new file here, duplicate
function there, 3 different ways to handle the same thing
across the codebase.

tried to refactor it myself last week. gave up after 2 hours.
the thing is so tangled that touching one part breaks
something completely unrelated.

the generation was fast. the cleanup is a nightmare.

is there even a way out of this or do i just rewrite everything from scratch?

Finally, if AI/LLM’s were so good and perfect in generating code you wouldn’t need an industry wide media campaign to get people to use it, folks would use it on their own without companies having to track the usage and incentivize it. I have been coding for 28+ years now and have seen multiple advances/changes in how we code over the years. For example when IDE’s started supporting auto-complete for boiler-plate stuff people immediately started using it. When git came out folks started using it and immediately found it useful so no push was needed to get people to adopt the new tool. The same folks then pushed their work IT teams to start supporting git in the enterprise. If Microsoft/Amazon and other companies have to mandate their teams to use AI then it looks like the rank and file are not finding the tools to be that useful.

Personally I love it for Proof of Concept or quick and dirty prototyping/trying out new things. But before any code that is AI generated goes into production you need to ensure it is reviewed by a human who knows coding.

– Suramya

Powered by WordPress