oldest to newest (change)
-
Anti Research
So one of our professors assigned us some group presentations. And there was one topic or argument, and he asked a bunch of students to present or debate or give arguments in favor of it (whatever that was) and then to a bunch of other students ask to prepare presentation with arguments against that thing. Then, he explained how you have to consult sources, like research papers, news articles, and this and that in order to form basis of your arguments. Like you have to first review such material and then you use those sources to back your argument.
This pissed me off so much. I asked what if the topic that I have been asked to present in favor of, is something I am against, and same thing can apply vice versa. He didn’t understand my point and said that you have to use sources and blah blah. But I was so angry and I think I couldn’t control my frustration and that’s why I was unable to articulate my point clearly, and it came out something like, ‘it’s not the way it is. Something either is, or it isn’t. How can one pre-decide if it is or it isn’t.’ Yeah, I know it was very weirdly phrased. My voice this time was slightly loud and had some kind of argumentative tone in it. He replied the same blah blah but at the end he said something like, that’s what research is; to find things out. I knew it wasn’t any use. I said nothing.
Two of my friends later told me that sir didn’t understand the question. And on some level, I think that yes he didn’t understand my question, but not because I articulated it badly (my friends were smart enough to understand me, he wasn’t?), it’s because he had been trained and indoctrinated in that manner.
There is an enormous amount of people who don’t understand what research is. They think research or science or whatever the academia is supposed to do, is to find out things (which I think is correct). But their way of finding things out is so wrong. They think of it like finding the right source to quote, or finding the right data to analyze, or the right econometric model to apply, or finding some other right thing to do, and this kind of finding will result in production of some academic work. Yes, it will produce academic work but not valuable work.
What a true researcher simply needs to find is truth. Some overlooked, un-discovered piece of truth. That is the end. Rest are all means. Why don’t people such distinguished understand a matter that simple. You can’t give conclusions to people, and ask them to research arguments in favor of the conclusion because that exactly is the opposite of research. IT’S ANTI-RESEARCH!!
I don’t know to what extent this applies to academia at other places but atleast here, we are all producing an enormous amount of anti-research work.
Thank you for coming to my Rant-Talk.
-
Busy Day
After spending hours trying to debug a Critical Error on a client’s WordPress site, realized that I was debugging it in the wrong place. I had SSHed into the VM on GCP while I myself had transferred that site out of GCP to my own server when it was impacted by malware. Now, I was in the GCP server seeing woah, there’s malware here, trying to clean it up and then trying to debug, but nothing seemed to change anything, tried everything. Eventually decided I will move this backup stored in wp-content to my own server and then will set up a new site there and restore that backup, and it was after I had copied the backup to my own server, that I realized that site is being served from my server and not GCP’s. Meh
Turns out, it was a theme issue, which got fixed by replacing theme content manually.
Then spent some time streamlining my personal site publishing workflow. Firstly, I created a proper git rep on my local device and version stored the previous versions in git. Then, I added a mechanism to push the changes live on my server (not git) by just executing ./.deploy.sh
That took some time but not much. But then spent hours trying to figure out how to set up conf on my HestiaCP server which is running apache + nginx reverse proxy, to perform the following two seemingly simple functions:-
- Serve respective html document (domain.tld/essay.html) when user visits a non.html url (domain.tld/essay) if it exists
- When user visits url with .html appended (domain.tld/essay.html), redirect to clean version (domain.tld/essay)
What I essentially wanted was a single cleaned url for every piece of content. Because it doesn’t seem a good practice to have two urls serving the same content.
But it wasn’t as simple as it seems, primarily because of my messy HestiaCP apache + nginx setup. I really should move to pure nginx server but I’m being lazy about that. Anyways, when I figured out it should be done in nginx conf and not apache, the issue was I couldn’t edit the main conf rule because HestiaCP rebuilds it every time. So, I had to add to nginx.conf_custom, but somehow it wasn’t working. Realized, they should be added in nginx.ssl.conf_custom since my site has an https redirect.
But now, one rule was working but not the other. That was because we can’t add a new location tag in the custom conf which is being included from the main conf file. So, I had to use a different rule (Even though this took me much time, but thanks to LLMs, I could get the rules atleast, otherwise I would have to spend a whole day understanding rules, which I wouldn’t have spent on it) for that which wasn’t a / location tag.
This worked, but it broke the www to non-www redirect. Figured out that custom conf is included before the redirect conf and that is why, when a redirect rule is matched in custom conf, later rules aren’t applied. So, I added that part (which hestia has separated out) in my custom conf as well, and finally I had it working.
Still, a url such as http://www.tamseel.pk/internet-companions.html is redirecting 4 times before reaching out https://weblog.tamseel.pk/internet-companions which isn’t great and can obviously be fixed, but maybe that’s for another day.
—–
Also, I listened some more part of Henrik’s recent podcast and there was this part where he describes how the book by a mathematician, with title something like proofs and refutations, was helpful in his internalizing of this method of increasing the surface complexity of the problem – no, I guess that’s not a good description. But, I thought of it like as was talking with Talha on how there are no books on how to think. This seemed to be (according to Henrik’s description) a book that was indirectly about how to think.
-
Steins;Gate
Watching Steins;Gate, all I can say is that the following comment by Talha Ashraf (when I had asked him about Serial Experiments Lain) was so right.
looking at the cover for this [Serial Experiments Lain] anime, hell no!
You know I’ve seen sad movies but the thing with dark animes is that the word sad does not cover it. They’re on a whole different level. A dark anime will reach into your chest, squish your heart, pull it out, put it through a meat mincer, twice, and then put it back in its place while you try to grasp what happened.
There couldn’t have been a more apt description.
Funnily, Serial Experiments Lain wasn’t that dark. In a sense, you can say, it kind of was. But not in that way.
-
Ideal Weblog Platform
Blogger is not the right platform for a tech person to use for long-term. It is only good for non-tech people. If someone has the technical expertise the best way is to compose the blog posts as .md files on Obsidian or VS code and have a static site generator convert them into html files to host somewhere.
But there is one major flaw I have seen in all SSGs is their closed look. By default all of these have an index of posts (maybe along with some excerpts) but not an open feed view of the weblog. This exactly is why Blogger felt compelling to me. This old-school bloggish feeling is not just about nostalgia, there’s an open feel to it, because you don’t get a list of posts that you can open if you wish to. Rather, you automatically get a feed of recent posts by which you get to know what the person has been recently upto. Interestingly, Substack also has this feature but this is specifically an issue with the idea of weblog and not essays, it isn’t much useful there.
Consider the experience of reading a book. You randomly swift through pages, and if something catches your attention, you stop and read around. You do not first have to select a topic from the TOC to decide what to read. Weblog should be like this, where entries are open by default, and the homepage should be a feed of atleast around 20 recent entries from which the person can swift through by scrolling. And if someone wants a list of entries, there should be a table of content for that too (which is something blogger is missing).
Also, I still need to think whether I would want /essays or /weblog in subdomain of the site or in the slug. This is difficult to decide.
I am leaning towards latter because the written content is supposed to be the substantial thing on weblog.tamseel.pk/. What else am I thinking of having on my site? I can’t think of anything. So, why not have it under the main site. Because different subdomain is kind of a different site.
Apparently, it seems no pre-cooked solution would satisfy my needs. I will have to tinker with these SSGs to specifically achieve what I want. I can’t tolerate Blogger’s stupidly long permalinks for long.
-
First Filter
Few days back I told GZ who had recommended me Steins;Gate anime based on my interest in science that I had watched it and I liked it, and asked him if there are other anime like this, and he recommended me to watch Dark which is a TV series not an anime (because it also involves time travel). I told him I had watched the first season, but I did not like it. He was really astounded, and so I explained. Dark is a really good TV series actually from all aspects but one. It’s cinematography, acting, music, direction, all of the things are top-class. When they do depiction of old timeline from 60s or 80s, that too has been done excellently. Most people do not consciously think about these things, but it takes consideration of multitudes of factors to make a movie or TV series give that certain effect that it has, and Dark had that effect. But the single thing that didn’t click to me was the core story. SPOILER AHEAD. The core story, at-least of the first season, was revolving around a town of people constantly cheating over one another. I’m sure they would have developed the story further in the next seasons, but the one for first season wasn’t interesting enough for me to continue on. Now, the core story makes one element of the multiple of elements, and if let’s say I intended to learn cinematography or film-direction, I maybe wouldn’t have bothered about it. But in general, it seems I have something that I would henceforth call first filter which outright eliminates some options out of the table regarding things I might be spending time on. I will explain more about what it means later. So, the core story of a piece of creative work sort of acts as a first filter for content I would want to consume. I probably wouldn’t have coined a new term for this if it was just about this, but as I was having my dinner few minutes ago, a pattern popped up in my mind, because I had applied a similar rule on a different thing as well. A little while ago, maybe one or two months, someone had asked me about potentially working with a specific FinTech company and I just started analyzing that company to understand what it actually does. So, their core product was basically a mobile app for saving committee but when I looked into it, it was just a credit app disguised as a savings committee app. It had much better UX and credit terms than most of the other credit apps, but this idea just couldn’t settle with me, that they are a credit app but they disguise themselves as a savings committee app. It might not seem that much of a problematic thing to most, but to me, it certainly is. Their targeted userbase belongs to a culture where borrowing on interest is disallowed by their religion. What the company is essentially doing by this branding, is extending credit to those people who do not wish to borrow money because of their religious ideology or whatever, by tricking them into thinking that it’s not credit. I probably wouldn’t have a problem if it was just a credit app as my problem here is not any specific religious ideology, but the fact that the company does not respect its customers’ religious ideology — it’s like a restaurant that serves alcohol in name of non-alcoholic beverage to a Muslim or serves beef in name of chicken to a Hindu. Anyways, I was just casually asked about this company and it was not like a job offer or something, so it was just something that popped up while I was trying to figure out the business model of that company. But after this thinking, I was certain, that this was not a company where I would like to work, essentially because it failed the first filter. Probably, more examples might up come up in my mind, but based on this, this is the basic idea of first filter. There are a lot of criterion and variables based on which one decides and prioritizes between several options, but there are some things, the presence of which just outright eliminates an option out of consideration; that specific thing is the first filter. Now, since first filter is what eliminates an option regardless of how much it desirability it has in other aspects, it means that first filter is and should be only applied on a problem regarding some core idea. For instance, with the first example, the core plot is the core point of the whole film or series (unless you are watching for specific reasons like learning cinematography) and if that feels sickening to me, I just don’t bother with it, and with the second example, the core idea of a product company is what their product is, and if that product is sold around a deception, it doesn’t make sense for me to work at such company. As I mentioned one could be watching a series to learn cinematography, one might also work at a company for some very specific reasons, and in that case he might not bother about the core business of the company. For things like work, these specific reasons do not exist for long-term, so I think it is a good idea to decide not to work at a place where you feel problem with the core idea of their whole business.
-
Playing the Devil’s Advocate
I noticed on Saturday while talking with a good teacher, that I play something like Devil’s Advocate pretty often. This happens specifically when discussing about things I have given a good enough thought but I have still been unable to form confident conclusion about any particular side.
I think this practice is helpful in the sense that it allows one to explore various points in the explanation-space of a specific problem or phenomenon in order to ultimately find out which point in that complex space is closer to the truth.
-
RIP SBP Data Authenticity ft. Aaj ke hisaab se
Edit: I later found out the mistake was my own. Details in end.
————-
Today was the first time, the intertemporal currency value converter I had made a while ago came to my use, when during a phone call with my father, I instantaneously converted a past amount he mentioned to its current value, and I told him about this, and he liked the idea. When I told him, that for present value it’s using 2024’s last quarter gold prices to compare against historic gold prices, he asked me to get present gold price updated and share it with him. This time, I figured out extracting data from Business Recorder is pretty straightforward using an AJAX call that the webpage was making under the hood.
Last time, I wasn’t able to find out a good source for recent data. Since, BR had this data since 2011, I thought about comparing it with the data from SBP that I had used in conversion in my converter, and voila, the two data series are not validating each other.
The price growth rates for the two sources are not even remotely close.
And then they say, I am too paranoid about data sources.Now, what am I supposed to do plug in my converter? Does authentic data even exist?——-Edit 14/07/25: So, I found out the data from both sources is actually consistent. The issue was how I was grouping it. The SBP Handbook explicitly mentioned the years were fiscal years. But when grouping BR data to get annual average, I had grouped by annual year instead of fiscal year. When I grouped BR data by fiscal year, it was pretty much the same.PS. None of this matters because I think my decision to use gold prices as deflator was pretty stupid one, because gold prices have increased much more sharply then overall prices, probably because demand for gold was not much high pre-2000 but it increased sharply in the next 2 decades; that’s my hypothesis. But anyways, I have found old CPI data for Pakistan, and will plug it when I find time.
-
Aaj Ke Hisaab Se v2.0
I had had a period in which I got obsessed learning about financial infrastructure and different investment options in Pakistan and practicalities of it. One weird feature I observed was that literally no one talks or considers about real or inflation-adjusted return. In a country where year-on-year inflation goes swinging like this: 9%, 23%, 31%, 7%, 6% 1, the nominal returns showed by your brokerage firm or mutual fund app give you no idea about how your investments are performing.
So, I brushed up my old PKR inflation adjustment calculator Aaj Ke Hisaab Se and just finished with its v2. The primary feature now is calculating real/ inflation-adjusted returns2. The historic currency conversion feature is also retained, but it is a secondary feature now. And the cool thing is I have automated the data fetching, so it will get updated with new CPI value released by PBS, by itself on 5th of every month.
- Sep values for last 5 years ↩︎
- In the very first version, it was using gold prices as deflator, but that was partly because I was unable to find older CPI data. Using gold for this purpose was not suitable as gold prices have been very volatile, and they haven’t been a good reflection of an average consumer’s purchasing power. But later I was able to hunt historic CPI data, but hadn’t actually updated the calculator. ↩︎
-
Move
I keep forgetting again and again, that when my mind is not working as well as it could, more often than not, it is not because my mind is lazy and not exercising well, it’s because my body is lazy and not exercising well.
-
I’ve been fooled
My websites are being served from a server in Mumbai, India. But when a user in Pakistan requests a web-resource hosted in India, traffic is first routed to Singapore and then to India (and same path backwards) despite that there are submarine cables directly connecting Mumbai and Karachi. Apparently, there’s an undefined security policy restricting Pakistani ASNs to directly connect to Indian ASNs.
So, had I deployed my server in Singapore instead of Mumbai, it would load (slightly) faster even though Mumbai is geographically closer because it wouldn’t have to cover the extra journey to Mumbai. But the actual fooling thing is that the server location with lowest latency from Pakistan is actually Dubai, and it probably would have been even if we had direct submarine connection with Mumbai (though things would be different if the terrestrial connection with India across Lahore is established).
I guess I’ll have to set up a server in Dubai now1 😭
Quoting this legendary reply:

- Also, I heard Caddy is even faster than NGINX. Maybe, I should experiment with that. ↩︎
-
Logging Movies
Yesterday evening I set out to log all the movies I had watched since 2022. Sometime earlier this year I had added all such movies on an online service for this purpose, but it didn’t had dates, so I set out to log the dates for them as well.
Mainly, I was counting on my laptop activity data collected by ActivityWatch. I thought that maybe I had set it up a very long time ago. But it turned out, I had only set it up on 9 Oct 2024. So, for movies I had watched after that date, I was able to find out the watch dates from there (after a lot of trouble trying to get python running in wsl to connect with ActivityWatch running on main windows. What worked was to quit ActivityWatch and open it again at 0.0.0.0 so that WSL could also reach it). Then, for movies watched before that, my second source was my google browsing history exported from Google Takeout to an excel file. Now, I usually downloaded videos through Brave browser (meaning nothing in google history), but still it worked out for many movies, because in many cases, I used to google something about the video either before or after watching it, specially wikipedia page or related history if any (and sometime explainers) on my main chrome browser. Sadly, however, I had created that export in Apr 2025 and had found it having only data for past 12 months. So the last entry in my excel file is from 8 Apr, 2024. So, for movies watched before that, I had no data. But, I recalled another source. Now, I used to download movies and delete them after watching (because my laptop didn’t had much storage) but for movies that were good enough that I thought I would watch them again some time, I did not delete them. But in somewhere around june this year, I had bought an hdd with case to keep backup of my laptop data and also to offload unnecessary data from laptop. On that, I had also moved those movies. I was worried that when moving the files there, the file created date would have been changed to the date, I had moved it to the hdd because I had copied it through normal windows gui and not through commands that preserve original properties. But I thought to give it a chance, and I connected the hdd. Interestingly, the date created property had modified as I had thought, but the date modified property still showed the same date on which the file was created originally, or you can say the download date. I was able to verify it for the movies I had logged already. So, I got a bunch of more movies from there. I did that till yesternight.
It’s morning now, and just gotten on my laptop, and 37 out of 106 are still remaining to be logged, that are mostly those that I watched before Apr 2024. Now, a few might be actually after Apr, so I might be able to find data for them. As for the rest, I’ll have to extrapolate the dates, by thinking of the conditions and the place where I watched them and the time in which I was in that place. For instance, I remember a movie someone had recommended me when a certain event was happening at out university department. And I can find out the dates for that event, and from there I can get a close estimate of the dates. The idea is you can always get hard bounds for possibility of a certain event to occur, and then you further narrow the bounds as much as you can to get closer to the actual date. Well, let’s see what happens. I’ll add progress here.
So here’s the update. I was able to figure out a few more from the excel and then finally 30 were still remaining. So, I recalled that when I had created Google Takeout export, the history was not actually set to auto delete. So, I checked it again. And lo, the google search history before Apr 2024 still exists. Finding it out made me so happy. But irritating thing is I can’t export. Google Takeout only exports data of last 12 months, though technically it should export all data. So, after very tedious searching I was able to find dates for most of them. Around 10 were those for which I had to conjecture the date based on hard bounds and around which movies I had seen them. But I have a pretty close log now. Last year, I had done a similar dig to log dates of books read (though I had to use different methodology like linking books with reference and place bought and the place read and cues like that to find out the date I had read it).
Well, the final takeaway is that this movie era needs to end soon.
-
Change of environment (alt title: a cool graph)
Change of environment sometimes does wonders.
The last time I spent more than a week in Lahore was when I was working on my thesis. And those were very bad days. I was getting nothing done, and was enjoying myself neither. Getting back at home did improve things a lot.
I knew I would have to come here again for a few days (i.e., in these days — the time of writing this), but when I changed my plan to stay here for a week and a few days, I was getting anxious that I might return to the same state as I was in those thesis days.
I arrived Lahore yester-evening, and I turned out to write two essayish blog posts in two successive days (only a night’s sleep apart). A funnier way to frame this is this:
Few days back I had shared this graph with a friend:

I think my life is this graph on loop, super-imposed on a slightly positively sloped straight line.
So, at the time I had shared it with my friend, I felt like I was at the purple point:

Now, I think that, I was at orange point then1 and now am at the green point.

So yeah, I feel like in the I’m so back phase and the peak has yet to come soon. Also, I realize this graph is a handy tool to share updates with friends. So, sharing this graph here, so that if you wanna share updates with me, you can do so by marking this graph. Thank me later 😂

- And tbh, it was literally so over (details are TMI and hence can’t be shared, but I am not referring to the thesis phase.) ↩︎