Suramya's Blog : Welcome to my crazy life…

August 6, 2025

Lessons learnt from AWS deleting a 10-year account and all that data without warning

Filed under: My Thoughts,Tech Related — Suramya @ 11:31 PM

The Tech industry has successfully convinced almost everyone that moving to the Cloud is the best option for them and in a lot of cases it is true. If you are a startup or trying out new idea’s or a small shot that doesn’t have a full time IT staff then it is more cost efficient and quicker to run everything on the cloud so that you don’t have to worry about it. However, remember what they say:

There is no cloud, it's just someone else's computer
There is no cloud, it’s just someone else’s computer

Once your data is on their computer you don’t really have full control of it anymore. If it is unencrypted then they can access it and depending on their terms of service use it for various purposes like training their AI models etc. If asked they can share your data with US law enforcement or others even if the server is physically not in the US. (Microsoft admitted under oath that it ‘cannot guarantee’ data sovereignty)

Another major risk is that if your account gets deleted or frozen for whatever reason then you loose all the data stored there with almost no recourse in most cases. Hacker News and Reddit are filled with threads where people have suddenly been locked out of their accounts and are desperate to get through to someone that can restore access. The latest instance of this is where Seuros who is a very prominent Open Source developer had their 10 year old account on AWS deleted without warning with no possibility of recovering the data. Then AWS tried to cover up their mistake and refused to give clear answers on the status of the data for over 20 days.

Seuros did almost everything correctly, they had a comprehensive backup strategy that:

  • Multi-region replication across AWS Europe (completely separate from US infrastructure)
  • Dead man’s switch implemented for disaster recovery
  • Proper backup architecture following AWS’s own best practices
  • Segregated encryption keys stored separately from data

But the only thing that they didn’t account for was the possibility that AWS itself would be the cause of the data loss across all the backups and redundancies. If you have data that you want to preserve you should ensure that you have a local copy of all the data no matter what service guaranty your cloud providers are giving. Nothing in the world is 100% secure/safe so if you don’t have a local copy then there is a possibility that you can loose the data permanently.

Some people will suggest instead of a local copy you can have copies on multiple cloud servers but that has a recurring cost implication to it. I would rather buy an external drive for a few hundred dollars and then periodically sync your data to it. This ensures that you have a copy of the data in your control no matter what happens to it on the server side.

If your cloud provider (Google Photos or Drive/AWS/Azure/Dropbox etc etc) is the only place you have copies of important data then you are risking complete loss of the data for something that isn’t in your control. Think about it before you put all your eggs in one basket.

– Suramya

August 4, 2025

BSNL offers 4G internet with 2GB per day for 1 Rs only.

Filed under: My Thoughts,Tech Related — Suramya @ 7:34 PM

Internet has become a necessity in the modern world and with so many of the services and functionality moving online it is more and more important that folks are able to connect to the internet cheaply. In 2020 (The last time I had looked at this), India had the cheapest mobile data in the world with the average cost of 1GB of mobile data are India ($0.09), Israel ($0.11), Kyrgyzstan ($0.21), Italy ($0.43), and Ukraine ($0.46).

Bharat Sanchar Nigam Limited (BSNL) which is a government-owned telecom network has launched a new offer that beats the 2020 costs hands down. They have launched a mobile data plan for new customers that offers unlimited voice calls and 4G data (2GB per day) at just Re 1(0.011 USD) per month.

This is an awesome offer and would be a tough competitor for the other mobile data providers. I expect other providers to start offering significant discounts in the near future as well just as they did when Jio launched their solution.

– Suramya

July 25, 2025

Using WiFi signals to identify people is now possible as per new research by Italian scientists

Filed under: Emerging Tech,My Thoughts,Tech Related — Suramya @ 6:46 PM

Our society is increasingly becoming a surveillance state across the globe. The number of active cameras in the world that record everything we do in the public have been exponentially increasing every year and it is now possible to follow a person across locations and track them easily. Systems have been using gait analysis, facial recognition etc to identify folks and now they have a new way to identify (or re-identify) people using Wifi. Researchers(Danilo Avola, Daniele Pannone, Dario Montagnini, and Emad Emam, from La Sapienza University of Rome) in Italy have developed a way to create a biometric identifier for people based on the way the human body interferes with Wi-Fi signal propagation and claim to have reached a 95.5% accuracy.

In 2020, the Wifi Alliance approved the IEEE 802.11bf specification that supported Wi-Fi Sensing which used existing Wi-Fi signals to sense motion amongst other things and routers with this capability are available in the market already. This study expands the Wi-Fi Sensing capabilities by using the Channel State Information (CSI) of a Wifi signal to distinguish individuals based on how their bodies alter signal waveforms. By learning the patterns from CSI sequences, the study claims to perform Re-ID by capturing and matching these radio biometric signatures.

“The core insight is that as a Wi-Fi signal propagates through an environment, its waveform is altered by the presence and physical characteristics of objects and people along its path,” the authors state in their paper. “These alterations, captured in the form of Channel State Information (CSI), contain rich biometric information.” CSI in the context of Wi-Fi devices refers to information about the amplitude and phase of electromagnetic transmissions. These measurements, the researchers say, interact with the human body in a way that results in person-specific distortions. When processed by a deep neural network, the result is a unique data signature.

Researchers proposed a similar technique, dubbed EyeFi, in 2020, and asserted it was accurate about 75 percent of the time. The Rome-based researchers who proposed WhoFi claim their technique makes accurate matches on the public NTU-Fi dataset up to 95.5 percent of the time when the deep neural network uses the transformer encoding architecture. “The encouraging results achieved confirm the viability of Wi-Fi signals as a robust and privacy-preserving biometric modality, and position this study as a meaningful step forward in the development of signal-based Re-ID systems,” the authors say.

The study claims are impressive but I am skeptical about the claims in it, primarily because it is quite easy to modify how Wifi signals propagate through your body. For example, I can carry a metal mesh rolled up in my pocket and then later on open it up and put it around my ribcage. I have immediately modified how the WiFi signal passes through the body and the study doesn’t go into details on how it would work in that scenario or other similar cases. In fact spraying metal infused water on myself would also change how the signal interacts with my body.

They claim this is more privacy preserving because it doesn’t show the face or body but I feel it is worse because it allows (if it works) folks to track a person with good accuracy across locations. Which makes it a powerful surveillance tool. I can imagine it being deployed in restrooms of companies like ‘Three Brothers Machine Manufacturing’ in China who have strict bathroom break policies (two-min max) to ‘boost efficiency’, as it will allow them to monitor who is inside a bathroom without having active camera’s in the bathroom.

Facial recognition is already flaky in real world use with a high error rate of 34.7% for darker-skinned people, according to a 2018 study titled “Gender Shades” by Joy Buolamwini and Timnit Gebru. People have been arrested after being falsely identified by facial recognition systems and I feel that if this WhoFi system gets deployed in large scale we will see similar issues with it as well.

Source: The Register: Humans can be tracked with unique ‘fingerprint’ based on how their bodies block Wi-Fi signals

– Suramya

May 21, 2025

Trouble shooting random shutdown of my desktop

Filed under: Computer Hardware,My Thoughts,Tech Related — Suramya @ 2:54 AM

Day before yesterday my computer randomly started switching off late at night. So I thought it could be a problem with the power supply or the power cable or the extension board powering the computer. First I changed the power cable and that seemed to resolve the problem. Unfortunately a little while later it happened again and I had to change the cable again before you started working. Which was very strange and made me think that the problem could be happening because of a short or something in the extension board that I was using so I ordered a new one for next day delivery.

In the mean time I connected the computer to a different board but it powered down again completely after a random interval. So I concluded that the issue had to be with the power supply itself and started looking options to get a new power supply as soon as possible. The local shop I used to use to get computer parts had gone out of business, so I asked around for recommendations and was going to reach out to them the next day (as it was around 1am at this time)

Once I had a plan of action I thought to try changing the cable again just to see what would happen and surprisingly the system powered on successfully. As I was working on the computer I heard a low volume beep from the computer but I didn’t see any message on the terminal as to why the beep was triggered and while I was checking on that I suddenly remembered that the system can also beep in case of overheating which can and does cause a shutdown. So I checked the temperature of the motherboard and the CPU and both were hovering at 98 degree Celsius. I remember from past experiences that the auto powerdown temperature in the BIOS is usually set to 100 Deg C so I figured that could be what was causing the problem.

I took a flashlight and took a look at the motherboard and CPU to see if there were any obvious problems causing the overheating and lo and behold one of the CPU fans was not working because a cable had moved which was blocking it from turning. I moved the cable out and once the fan started working again the CPU temperature started to drop quickly and its been a day and a half now with no issues.

Thankfully I had not ordered the replacement powersupply as that was not needed. The moral of the story is that we should always check hardware and software before you decide to replace equipment and if possible give your mind a bit of time to process information before going ahead and replacing the hardware.

– Suramya

May 17, 2025

Reflect Orbital Raises $20M to increase light pollution on Earth

Filed under: Astronomy / Space,Emerging Tech,My Thoughts,Tech Related — Suramya @ 11:59 PM

Solar power is awesome and we need more companies investing into this technologies but this project by Reflect Orbitals seems like a phenomenally bad idea. They are aiming to use orbital reflectors to shine sunlight on solar panel farms to extend the time they can generate power. In addition they are also looking at providing nighttime lighting i.e. an impossible to turn off bright light in the sky to light up a construction project or event.

Reflect’s ultimate vision is to boost solar power production on Earth. It aims to position mirrors in orbit to beam down sunlight to solar farms just before dawn, and just after dusk—effectively increasing the total time during which a solar farm can generate electricity.

In the meantime, the company has other plans to bring in revenue. Since its founding in 2021, the company has received 260,000+ requests for nighttime lighting. Future services could include illuminating overnight construction projects, public events, disaster relief efforts, and defense operations.

We already have problems due to light pollution such as health problems, confusing the circadian rhythm of animals and humans and many many more such problems. This system will light up areas without the consent of folks living there just because there is an event going on nearby. It will have a massive impact on the nocturnal animals, astronomers amongst others. But from a money minded perspective it makes complete sense as it allows companies to work through the night never mind the impact on others.

Even if we go with their press release and assume that they are only going to use it just before dawn and just after sunset it will still have a massive impact. Birds will not know when to fly back to their nests because it would still be light, nocturnal creatures will have less time to hunt/mate/survive because the length of the dark time is reduced.

The sad part is that they have raised $20 million already on this claiming to be ready to launch the first set of satellites next spring to illuminate 10 locations around the world. Thankfully there doesn’t seem to be much interest around this technology at this time but lets see. Hopefully that will continue and this nonsense shutdown fast.

Source: payloadspace.com: Reflect Orbital Raises $20M Series A

– Suramya

February 8, 2025

Reserve Bank of India launches exclusive domains ‘bank.in’ and ‘fin.in’ for Indian Banks to reduce cyber fraud

Filed under: Computer Security,Tech Related — Suramya @ 10:49 PM

A big problem in online security is verifying that the site you are accessing is the authentic version. As techies we have a bunch of ways to check if the site is valid but for regular users it can be a hard problem to solve. I personally know a few folks who have been scammed out of a lot of money so it is a pretty prevalent problem in the industry.

One of the ways people get scammed is that they are sent a link to a site that looks like the official bank site but is instead a cloned version of the site that hijacks the entered password and OTP to steal money. To combat this issue and the problem of banking sites not having a verifiable URL / Domain name, the Government of India has announced the launch an exclusive “.bank.in” domain for banks starting from April 2025.

Similar to how the .gov address is a known domain name for US Government and .gov.in for official Indian Government sites this new domain will be for verified/validated banks only. The Institute for Development and Research in Banking Technology (IDRBT) will be the exclusive registrar for the new domain and will start rolling out in April.

In addition, the RBI is also planning to launch a “.fin.in” domain for non-bank entities in the financial sector. This will cover entities like paypal/PhonePe and other Fintech firms in India.

I think that this is a great idea and it would be awesome if we have have a global official .bank domain. But something like that would take a lot of time and coordination to implement so for now we will just have the India specific domains.

Source: Times of India: RBI announces exclusive domains ‘bank.in’ and ‘fin.in’ to enhance cyber security in Indian banking

– Suramya

February 6, 2025

A Linux Distribution which runs directly within a PDF file

There is a semi-serious joke in the IT industry that anything that can compute is eventually used to play Doom and then run Linux. Now you can do both from inside a PDF file. Since the PDF specification supports Javascript a highschool student who goes by the handle ‘ading2210’ has implemented a RISC-V emulator in it which can run a barebones Linux distribution within the PDF file itself. This builds on top of the work done to get Doom to run inside the PDF file.

The full specfication for the JS in PDFs was only ever implemented by Adobe Acrobat, and it contains some ridiculous things like the ability to do 3D rendering, make HTTP requests, and detect every monitor connected to the user’s system. However, on Chromium and other browsers, only a tiny subset of this API was ever implemented, due to obvious security concerns. With this, we can do whatever computation we want, just with some very limited IO.

C code can be compiled to run within a PDF using an old version of Emscripten that targets asm.js instead of WebAssembly. With this, I can compile a modified version of the TinyEMU RISC-V emulator to asm.js, which can be run within the PDF. For the input and output, I reused the same display code that I used for DoomPDF. It works by using a separate text field for each row of pixels in the screen, whose contents are set to various ASCII characters. For inputs, there is a virtual keyboard implemented with a bunch of buttons, and a text box you can type in to send keystrokes to the VM.

The largest problem here is with the emulator’s performance. For example, the Linux kernel takes about 30-60 seconds to boot up within the PDF, which over 100x slower than normal. Unfortunately, there’s no way to fix this, since the version of V8 that Chrome’s PDF engine uses has its JIT compiler disabled, destroying its performance.

For the root filesystem, there are both 64 and 32 bit versions possible. The default is a 32 bit buildroot system (which was prebuilt and taken from the original TinyEMU examples), and also a 64 bit Alpine Linux system. The 64 bit emulator is about twice as slow however, so it’s normally not used.

You can try out the implementation of LinuxPDF here. More details of the project and the code used to create it is available on the project’s GitHub page.

– Suramya

January 22, 2025

ELIZA Resurrected using original code after 60 years

If you have been following the AI chat bot news/world then you would have heard the name ELIZA come up. Eliza was the world’s first chatbot created over 60 years ago by MIT professor Joseph Weizenbaum and was the first language model which a user could interact with. It had a significant impact on the AI world (Actual AI research not the LLM wanna be AI we have right now) and was the first to attempt the Turing test. It was originally written in a programming language invented by Weizenbaum called the Michigan Algorithm Decoder Symmetric List Processor (MAD-SLIP) and the pattern matching directives were provided as separate scripts. Shortly after the initial release it was rewritten in LISP which went viral. Unfortunately the original code in MAD-SLIP went missing till recently soon after that.

One of the most famous ELIZA scripts was called Doctor that emulated a psychotherapist of the Rogerian school (in which the therapist often reflects back the patient’s words to the patient). Much to his surprise Weizenbaum found that folks attributed human-like feelings to the computer program. Wikipedia explains how the software worked:

ELIZA starts its process of responding to an input by a user by first examining the text input for a “keyword”.[5] A “keyword” is a word designated as important by the acting ELIZA script, which assigns to each keyword a precedence number, or a RANK, designed by the programmer.[15] If such words are found, they are put into a “keystack”, with the keyword of the highest RANK at the top. The input sentence is then manipulated and transformed as the rule associated with the keyword of the highest RANK directs.[20] For example, when the DOCTOR script encounters words such as “alike” or “same”, it would output a message pertaining to similarity, in this case “In what way?”,[4] as these words had high precedence number. This also demonstrates how certain words, as dictated by the script, can be manipulated regardless of contextual considerations, such as switching first-person pronouns and second-person pronouns and vice versa, as these too had high precedence numbers. Such words with high precedence numbers are deemed superior to conversational patterns and are treated independently of contextual patterns.[citation needed]

Following the first examination, the next step of the process is to apply an appropriate transformation rule, which includes two parts: the “decomposition rule” and the “reassembly rule”.[20] First, the input is reviewed for syntactical patterns in order to establish the minimal context necessary to respond. Using the keywords and other nearby words from the input, different disassembly rules are tested until an appropriate pattern is found. Using the script’s rules, the sentence is then “dismantled” and arranged into sections of the component parts as the “decomposition rule for the highest-ranking keyword” dictates. The example that Weizenbaum gives is the input “You are very helpful”, which is transformed to “I are very helpful”. This is then broken into (1) empty (2) “I” (3) “are” (4) “very helpful”. The decomposition rule has broken the phrase into four small segments that contain both the keywords and the information in the sentence.[20]

The decomposition rule then designates a particular reassembly rule, or set of reassembly rules, to follow when reconstructing the sentence.[5] The reassembly rule takes the fragments of the input that the decomposition rule had created, rearranges them, and adds in programmed words to create a response. Using Weizenbaum’s example previously stated, such a reassembly rule would take the fragments and apply them to the phrase “What makes you think I am (4)”, which would result in “What makes you think I am very helpful?”. This example is rather simple, since depending upon the disassembly rule, the output could be significantly more complex and use more of the input from the user. However, from this reassembly, ELIZA then sends the constructed sentence to the user in the form of text on the screen

Now after over 60 years the original code written in MAD-SLIP has been resurrected by Jeff Shrager, a cognitive scientist at Stanford University, and Myles Crowley,an MIT archivist, who found it among Weizenbaum’s papers back in 2021. Which is when they started working on getting the code to run, which was a significant effort. They first created an emulator that approximated the computers available in the 1960’s and then cleaned up the original 420-line ELIZA code to get it to work. They published a paper: ELIZA Reanimated: The world’s first chatbot restored on the world’s first time sharing system on 12th Jan where they explain the whole process.

ELIZA, created by Joseph Weizenbaum at MIT in the early 1960s, is usually considered the world’s first chatbot. It was developed in MAD-SLIP on MIT’s CTSS, the world’s first time-sharing system, on an IBM 7094. We discovered an original ELIZA printout in Prof. Weizenbaum’s archives at MIT, including an early version of the famous DOCTOR script, a nearly complete version of the MAD-SLIP code, and various support functions in MAD and FAP. Here we describe the reanimation of this original ELIZA on a restored CTSS, itself running on an emulated IBM 7094. The entire stack is open source, so that any user of a unix-like OS can run the world’s first chatbot on the world’s first time-sharing system.

You can try it out: here.

Source:

– Suramya

November 7, 2024

Artificial Intelligence is not a reason to stop using your natural Intelligence

Filed under: Artificial Intelligence,My Thoughts,Tech Related — Suramya @ 6:59 PM

The more I see posts about some of the proposed use cases for AI the more I feel that some people just don’t want to use their brains and want to outsource all thinking to the ‘AI’. The latest example that triggered this post is screenshoted & Quoted below:

See BlockQuote Below the Image

Though malloc is a very useful function in c, it is not without its problems. The biggest is that it can be confusing for some to decide how much memory to allocate, needing complicated statements with sizeof . To solve this I propose a new alternative to malloc that utilizes the power of modern developments in Al, mallocPlusAI . The usage is simple.

int* x = (int*)mallocPlusAI(“Enough memory to store up to 5 integers”);

mallocPlusAI takes in a character array which is forwarded to a ChatGPT instance alongside an initial prompt “You are a memory allocator for a computer, and you need to tell me how many. bytes of memory I would need to accomplish a certain task. Make sure to give your response as only a whole number of bytes, do not provide any other text. Here is what I request: “

So instead of doing something like the following

5 * sizeof(int) + allocation overhead

Because apparently it is too hard to type 5 * sizeof() * Allocation Overhead, we will call an external API which brings the following downsides:

  • Which has a cost associated with it
  • Adds another layer of complexity & dependency to your application
  • Each ChatGPT query consumes an estimated 2.9 Wh of electricity, nearly ten times more than a standard Google search
  • Opens an avenue for attack where the remote prompt can be modified by a malicious actor to return incorrect values of size potentially causing the application to crash or leak data

Can someone please explain to me why you would use something like this instead of spending 2 mins thinking about what size of memory to assign?

– Suramya

October 22, 2024

Tech is not a replacement for human contact

Filed under: Artificial Intelligence,My Thoughts,Tech Related — Suramya @ 6:35 PM

The more I read about the kind of products these so call ‘AI Founders’ are coming up, the more I feel that they all need some serious therapy. The latest example of this is intouch.family which is an AI powered chatbot that calls your elderly parents so you don’t have to. I mean seriously? The official description is:

InTouch is a subscription service for seniors which regularly calls and keeps company to your parent, evaluates their well-being and alerts you if assistance is needed.

I get that we are all busy and it sometimes gets hard to call people and keep in touch, but anyone who thinks that AI is a replacement for the human touch especially in keeping up relationships needs to get their head examined.

I am quite bad at remembering birthdays and anniversaries except for close family and friends. When I was in college I thought that it would be nice if I could automate wishing folks Happy Birthday without having to actually wish them myself. So I wrote a program where I fed in all the birthday’s and the idea was that at a random time during the day it would email them a message wishing them. I even had a lot of enhancements planned, like use the ‘Poet’ program (it generated poems, based on certain criteria) and add it as part of the message to make it more personal. Spent a few days creating the program and it worked perfectly.

I was about to start using it and then realized that the whole point of wishing folks on their birthday was to keep in touch with them, not discharge an obligation. Especially if you have not talked to someone for a while, wishing them allows you to initiate a conversation. So I ended up changing the software to email me a reminder (This is in the days before Google Calendar and other reliable online calendars) so that I could call/email/text the person wishing them.

The whole idea behind technology is to make human contact easier, not to replace human contact. Telegrams allowed us to send urgent news quickly, then came phones that allowed us to talk to people who were far away, then we had VoIP/Voice Calls that allowed you to call without massive bills. Then came video calls such as zoom/Whatsapp etc that allow you to see the person you are talking to as well as hear them. In the near future we will have VR calls where you will feel that you are in the same room as the other person.

Unfortunately, most of the ‘AI’ services we see are being created/marketed as a replacement for human contact instead of as an aid to it. For example, instead of making friends to talk to, someone has created a AI ‘friends bot’ that you can share stuff with. (can’t find the link right now) Another genius created a whole social network that contains only AI bots that respond to your posts and create content.

I know making new friends can be scary at times but you need to find out what works for you. The stereotypical nerd who is anti-social is not something you want to aim for because that is absolute nonsense. You need to work with others if you want to succeed in life. If you are on the spectrum it can be harder for you to make friends but you need to see what works for you. One of my close friends is like that and we stay in touch over chat and emails as I know that they prefer non-verbal communications. With others I call or email or meet face to face. At one point a lot of my existing friends became busy with life (Got married/had kids etc) and I had to go out and make new friends so I started hiking and joined groups where we would go out for weekend trips or hikes. Ended up making new friends and actually met my wife in one of these trips. (Which was awesome!) I also have a lot of online friends that I have never met face to face (but I hope to when I can) and we email/message each other all the time.

Tech is awesome but nothing beats the human touch. Use Tech to enable/improve your connections/interactions but don’t make it a replacement for them.

– Suramya

« Newer PostsOlder Posts »

Powered by WordPress