Fully-Faltoo blog by Pratyush

Bio Twitter Screener

26th June 2025

Using bgrun to run a command in background

Yesterday I wrote a script to create backups for my server. Just when I ran the script, I realised it would take an hour to complete.

It was 7pm. I needed to leave for home.

I cursed myself for not doing bgrun bash backup.sh instead of bash backup.sh.

The thing is bgrun doesn’t exist.

The closest thing I found was:
nohup your_command > output.log 2>&1 & disown.

Let’s break it down:

  • nohup = no hangup
  • your_command = anything like bash backup.sh
  • > output.log = put the output of the …

23rd June 2025

MarsEdit = more blogging

A bad carpenter blames his tools

I implemented metaWeblog APIs on this blog over the weekend. This allows me to use MarsEdit (or any other blogging tool) for writing posts.

I remember using Microsoft’s Live Writer a lot in the early days. The desktop interface reduces the friction of opening a webpage, logging in, and navigating various menus. I created my own blogging system to avoid the ever-growing complexity of WordPress. Still it is a multi-step work to write. MarsEdit removes this need for a browser and provides focus on writing.

Screenshot of MarsEdit website

What to write …


17th April 2025

Handling DDoS attacks

Handling millions of requests from thousands of IPs is hard! A flood of millions of requests clogs one drain after another.

This is what happened when we had a DDoS attack this week.
  • First, our hard-disk got filled due to access logs
  • Then our hard-disk got filled due to too many open files error logs
  • Various services started hitting file descriptor limits
  • The system started dropping packets and killing connections as the connections table got full

Is it a DDoS?

The best way to check if it is a DDoS is to run the netstat command
sudo netstat -nta …

3rd Jan. 2025

Learning = Sweating. Otherwise it's entertainment.

This post by Andrej Karpathy stuck with me.
There are a lot of videos on YouTube/TikTok etc. that give the appearance of education, but if you look closely they are really just entertainment. This is very convenient for everyone involved : the people watching enjoy thinking they are learning (but actually they are just having fun). The people creating this content also enjoy it because fun has a much larger audience, fame and revenue. But as far as learning goes, this is a trap. This content is an epsilon away from watching the Bachelorette. It's like snacking on those "Garden …

14th Sept. 2024

Neovim Workshop

9bba297456e84abcaa092e2c4f265ca0_w1200_h671.png
Flyer for my Neovim Workshop
Last week, I did a workshop on Neovim.

I haven't seen any technical workshops in Lucknow before. I thought of starting one.

I created a standee and placed it right outside the TCS gate.
standee.jpeg
Standee for Workshop
I didn't expect too many registrations because of the niche topic. I wanted to attract only the nerds-and-geeks for the first event.

I used HasGeek for registrations. HasGeek has pretty good event organisation system:
  • HasGeek is free.
  • It automatically sends the reminders for the events.
  • It allows us to broadcast messages before and after the event. This is …

11th Sept. 2024

Domain Names Migration to Porkbun

Last week, I transferred my domains from Squarespace to PorkBun. All 12 of them!
CleanShot 2024-09-11 at 12.54.28@2x_3c1785c6524475fefb3275b179378d737758fb5b37a3d38f28fe94093fd49ced.png
Porkbun's Domain Dashboard

Squarespace Billing Nuisance

I was frustrated with the billing page on Squarespace. Their auto-payments didn't work. This was a major risk as I could lose my domains. Part of it was because of RBI regulation in India. But more frustrating part was jumping between the pages finding the "retry" link.

Squarespace doesn't have a single billing page for all your domains. They have a weird concept of "independent billing subscriptions". Each domain has a separate portal for payment. There is no …

7th Sept. 2024

Remember Github login in CLI

I changed my laptop recently. I was unable access GitHub from command line after that.

I was getting this error.
remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed

Fix

The fix is to install git-credential-manager. This is mentioned by Github but very poorly.

Once the manager is installed, git push works like ever before. We don't need to create new tokens after every few months.

Page 1 of 64.
next last »