Feed Link to Atom feed of posts

Micro Blog

two hundred one tiny posts on miscellaneous topics.

1 ↩️ 0 🔁 1 ♥️

I love @ivory, it is probably the best client there is, but I really miss threaded posts in my timeline, which @phanpy and @elk do really well. Another feature I wish Ivory had is Boost carousels from Phanpy. If Ivory adds these two features, I'd use it all the time, on all my devices.

1 ↩️ 0 🔁 7 ♥️

Today I ran my first 5k in the Couch-to-10k training. It was hard but I feel really good about it. It took 6 minutes more than what it used to take pre-pandemic, but I'll get back there with time.

4 ↩️ 1 🔁 3 ♥️

Today I had to write code that looked like this:

```
blah.overrideAttrs (oldAttrs: {
x = oldAttrs.x.overrideAttrs (oldAttrs: {
y = oldAttrs.y.overrideAttrs (oldAttrs: {
outputHash = "xxxxx";
});
});
});
```

folks, is there a better way to do this kind of nested overriding of attributes?

1 ↩️ 0 🔁 0 ♥️

I have a suspicion that @ivory on iOS supports multiple column layout but I am not able to figure out how to enable it.

1 ↩️ 0 🔁 0 ♥️

Trying out the client @phanpy for the first time:

— Rounded corners everywhere, which is a little too much for my taste.
— I love the Boost carousels, and clean post threading, and post detail popups.
— The light mode somehow looks better than the dark mode, which is very unexpected because I use almost everything in dark mode.
— Really missing having keyboard shortcuts for navigation and actions.

I'm going to try it for a couple of days to see how it compares to my current client @elk.

1 ↩️ 0 🔁 0 ♥️

Also, I don't like how @phanpy hides the multi-column view under Shortcuts settings, and how changing the timeline from home to something else reverts the view to single column.

1 ↩️ 0 🔁 1 ♥️

Update after two weeks of trying @phanpy: I love it and now I am using it full time in the browser (I use @ivory elsewhere). I still miss the keyboard navigation and shortcuts though, but Phanpy is so much better for quickly going over hundreds of posts when I wake up. I'm guessing that's because of the way it groups boosts.

0 ↩️ 0 🔁 0 ♥️

Drove a car for 84 kms today, the longest I've ever. Can't say that I'm a fan of cars yet, but it wasn't as bad as I had imagined it would be.

0 ↩️ 2 🔁 3 ♥️

Tired: using to write formal emails.
Wired: using AI to turn emails in pop songs:

(Verse 1)
Hey Josh,
I've got a question for you.
Can you tell me when the slides will be available?
I've got a meeting that might conflict,
So I need to know the schedule.

(Chorus)
Hey Josh,
I need to know the timing.
Can you please let me know?
I'm counting on you,
So don't let me down.

(Verse 2)
I know you're busy,
But this is important to me.
I need to know the schedule,
So I can plan accordingly.

(Chorus)
Hey Josh,
I need to know the timing.
Can you please let me know?
I'm counting on you,
So don't let me down.

(Bridge)
I know you'll come through for me,
Josh.
You're always there for me,
And I appreciate it.

(Chorus)
Hey Josh,
I need to know the timing.
Can you please let me know?
I'm counting on you,
So don't let me down.

(Outro)
Thanks, Josh!
I knew I could count on you.

0 ↩️ 0 🔁 0 ♥️

The downside is the I have to face outside. I forgot to wear a pollution mask today, and now I'm fighting my allergies. When running, I can't even wear a mask, so I need to wake up crazy early like 5am to avoid all the dust and smoke.

0 ↩️ 0 🔁 0 ♥️

I generated these by taking screenshots using headless Chrome, like this:

`chrome --headless --disable-gpu --screenshot --window-size=500,255 <url>`

That's why they look so unrefined.

0 ↩️ 0 🔁 0 ♥️

I'm really starting to like this shortcut. Now I can post more of my random thoughts in much quicker way!

0 ↩️ 0 🔁 1 ♥️

Spent some time fixing small bugs in my website. Sometimes it's nice to write code for oneself.

1 ↩️ 0 🔁 0 ♥️

How do I find which revision of nixpkgs-unstable is available in cache for darwin-x86_64? Every time I update to latest unstable revision, I have to rebuild a lot of packages and it takes hours.

1 ↩️ 0 🔁 0 ♥️

Left the air purifier running at home for three weeks of vacation, came back to clean air and the unexpected electricity bill.

0 ↩️ 0 🔁 0 ♥️

And the kid forget how to walk because we left the walker at home. Though it came back to them in 5 minutes.

1 ↩️ 0 🔁 1 ♥️

Pulled some visit numbers for my website abhinavsarkar.net. It seems it is slightly more popular in months I don't publish new posts, as compared to four years ago. But on the other hand, my recent posts don't get as much traffic as the ones before.

0 ↩️ 0 🔁 0 ♥️

I love that on you can turn a public thread into a private thread and the thread still continues with the same context.

3 ↩️ 1 🔁 2 ♥️

One downside of purely chronological timeline in is that my home feed is mostly silent during my day time, and most active during my night time. So I read all the interesting stuff hours later, and I have to scroll my entire feed for that.

I'd love it if one of the third party clients can surface most interesting
posts by locally running some algorithms based on boost and favourite counts.

1 ↩️ 0 🔁 0 ♥️

Installed MonaApp for on MacBook. I can’t say I like its old-school Mac sliding panes UI. But it does have scores of settings and seems pretty configurable. Maybe I’ll give it a shot later.

1 ↩️ 0 🔁 0 ♥️

Ran into a bug in @MonaApp almost immediately. It assumes that posts have character limit of 160, which is not true on my server.

1 ↩️ 0 🔁 1 ♥️

I wish readers supported dark mode. I have dark mode turned on everywhere, but I still have to road PDFs like cavemen staring into blindingly bright fires.

2 ↩️ 1 🔁 0 ♥️

Spent hours trying to package moaparty.com for . After failing to use mach-nix, poetry2nix and pip2nix, I'm finally trying the fixed-output derivation hack. It shouldn't be this difficult to package applications for nixos.

1 ↩️ 1 🔁 1 ♥️

OK great! The output of `pipenv install` is actually not fixed and fixed-output derivation does not work either. If someone with more experience in packaging applications for can help me out, I'd be very grateful.

3 ↩️ 1 🔁 2 ♥️

Our small instance has 99.91% uptime according to DO uptime check. That is 39 minutes of downtime in 30 days. I wonder how other small instances are doing.

I haven't personally experienced the downtimes though. They must be happening while I'm asleep.

2 ↩️ 0 🔁 0 ♥️

I wonder if I should write a rebooster script that will boost my (or your) certain posts periodically, for a week or a month. Would people be interested in that?

1 ↩️ 0 🔁 1 ♥️

Witnessing a sand storm for the first time after decades. It's making me cry.

1 ↩️ 0 🔁 0 ♥️

I've been feeling unusually sleepy today morning, and I just realized that I forgot to drink today. I wonder if I can still drink a cup without wrecking my early sleep plan.

0 ↩️ 0 🔁 0 ♥️

@abnv drank a cup and that definitely fixed the sleepiness. Let's see if i can wake up for the morning run tomorrow.

1 ↩️ 0 🔁 3 ♥️

Should have set it to 1337 characters. What a missed opportunity.

0 ↩️ 0 🔁 0 ♥️

Using the iPad Air as an extended screen for my MacBook makes me wish I bought an iPad pro instead. :(

0 ↩️ 0 🔁 4 ♥️

One downside of using dark mode everywhere on my laptop is that I rarely notice the dirt slowly accumulating on the screen. So I guess that's a ... win-win?

2 ↩️ 0 🔁 3 ♥️

This maybe a specific thing, I wonder why nobody turns off their vehicles at traffic signals. Even if you don't care about the environment, why not save some money, fuel being so expensive now.

3 ↩️ 0 🔁 0 ♥️

One think no one tells you about having children is how difficult it is to get the forever looping baby rhymes our of your head.

0 ↩️ 1 🔁 0 ♥️

I've got to invent more filters to block US politics news from my Mastodon feed.

3 ↩️ 0 🔁 1 ♥️

Updated to the latest version and had to input my password three times. Sometimes I rue the day I chose the super long password for extra security.

1 ↩️ 0 🔁 0 ♥️

Yep, I have the . In retrospect, I should have guessed this when I drank 2l of water in the morning itself.

1 ↩️ 0 🔁 1 ♥️

About 15 days later, I finally felt recovered enough to pre-sickness level. Is it me or the recovery time increases with age?

0 ↩️ 2 🔁 4 ♥️

I really wish for more to support per tag RSS/Atom so that I can subscribe to content that interests me and not clutter my feed reader.

1 ↩️ 0 🔁 1 ♥️

Spent hours trying to debug this memory leak, just to fail again and again. Finally, decided to read the docs of all libraries used and the first one itself says:

0 ↩️ 0 🔁 2 ♥️

Lesson learned: thoroughly read the docs and source of your dependencies. Or at least skim them once.

0 ↩️ 1 🔁 0 ♥️
An apt metaphor for most of the corporate jobs is painted right on my office building's wall.
0 ↩️ 0 🔁 1 ♥️

Wrote the script in and found myself mixing `filter`, `itertools`, `yield`, generator expression and list comprehensions, and `for` loops. It offends me to use so many different control flow mechanisms at the same time. I feel like there must be a better way to do this, but I'm no Python expert.

1 ↩️ 0 🔁 0 ♥️

is very dry this year because it hasn't rained in over four months. I don't remember when was the last time it didn't rain in winter here. Thinking of getting a humidifier, but then it may start raining this month.

0 ↩️ 0 🔁 1 ♥️

Walked 400 kms in last one year but I need to do much better.

1 ↩️ 0 🔁 0 ♥️

Changed the commenting service on my website from Staticman to a self-hosted Isso instance. Looks good so far.

0 ↩️ 0 🔁 0 ♥️

Now, only if someone would comment on one of my posts ...

1 ↩️ 1 🔁 3 ♥️

After a break of about one and half years, I have started reading Crafting Interpreters again, and I am still amazed by the lucidity of the writing. The only other I recall to be this much fun reading is Learning Perl.

1 ↩️ 0 🔁 0 ♥️

Someone commented just “Roll credits!” on my post and I think l am either too old or too non-american to understand what it means. Anyone's got any clues?

2 ↩️ 1 🔁 5 ♥️

Upgraded my website generator to use 9.4 and it took two hours to build. Well, that's the cost I pay for using bleeding edge software.

0 ↩️ 0 🔁 0 ♥️

To clarify, it wasn't GHC that took two hours to build. It was my website builder which uses and Shake.

0 ↩️ 0 🔁 2 ♥️

My cab is taking an unusual route today and as a result I am back in parts of that I have not been in many years. Things have changed but at the same time, they seem very much the same.

I've lived in so many different parts of Bangalore over the last decades that travelling within the city sometimes triggers waves of nostalgia.

1 ↩️ 0 🔁 0 ♥️

Running a massive update on my VPS today. I wonder what changed to cause this.

1 ↩️ 0 🔁 0 ♥️

I should integrate nvd in my deploy script to be able to see diffs.

1 ↩️ 0 🔁 2 ♥️

Went to a chafé today for some tea. Some people were sitting with their laptops as usual. But there was this woman sitting next to me with an entire server computer with her. I didn't disturb her.

3 ↩️ 0 🔁 3 ♥️

On the other side of my table was sitting a guy with a small laptop, wearing a black hoodie, with the hoodie on in this heat. I overheard him say, “The deployment is broken because some new guys checked in some code in our repo. I think the right way to solve this is to break our repo into smaller repos and create more microservices from them.” I didn't disturb him either.

0 ↩️ 0 🔁 2 ♥️

I hate how the hum of the cab engine hides the bassline of the I listen to while commuting. But I'm too cheap to buy good headphones with noise cancellation. So I guess this is my life now.

1 ↩️ 1 🔁 0 ♥️

What's a reasonably priced and good RSS feed to email service that I can use to send my posts to my twelve subscribers?

0 ↩️ 1 🔁 2 ♥️

Went for a morning walk after a long time. It's strange how expending energy makes us feel better compared to conserving energy as a couch potato.

2 ↩️ 1 🔁 4 ♥️

A random Netflix show about a guy going around the world on a inspired me to dust off my bike and go out for a ride.

Almost immediately I was reminded of why I don't cycle in anymore: Dust and smoke everywhere. Even with mask and goggles on, it was in my nose and eyes. Not to mention, the broken roads with pot holes and the terrible traffic.

5 years ago, I used to commute to work daily on my bicycle. Now it is hard for me to even imagine doing that. 😭

1 ↩️ 0 🔁 2 ♥️

Now my website's search indexes my Mastodon posts as well, along with my blog posts and notes. Another step towards .

0 ↩️ 0 🔁 0 ♥️

Switched from LocalStorage to IndexDB for caching the search index on the browser. Apparently, that's the recommended thing now. 🤷

0 ↩️ 0 🔁 2 ♥️

I've started downloading files to the temp directory now. That way, I don't have to go back and delete all the junk later on. And if something is important enough to be kept around, I move it the proper location fearing the automatic deletion.

1 ↩️ 0 🔁 1 ♥️

Turns out it was because of adaptive charging in which reduces the charging rate when you charge the phone at night. It expects me to charge the phone for the whole night, but I kept unplugging it in the middle of the night. Turned off adaptive charging and my phone is fully charged now.

1 ↩️ 0 🔁 1 ♥️

Set up a mesh router in my house. Finally I can read Reddit in each of my washrooms.

0 ↩️ 0 🔁 0 ♥️

I have feed reader apps on my phone, my iPad, my laptop, and my Kindle. Now to actually read all these blog posts ...

1 ↩️ 2 🔁 5 ♥️

The Man-running-to work-with-a-briefcase metal statue at the Sarjapur junction makes me feel understood when I pass it by on my way to work.

0 ↩️ 0 🔁 0 ♥️

I tried out @elk and I've decided that I'll switch to be as soon as they add support for hashtag and account lists.

0 ↩️ 0 🔁 1 ♥️

Some days I wake up inexplicably even after a full night's sleep. Today is one of those days.

0 ↩️ 0 🔁 0 ♥️

Spent the day thinking about how to compile my small language with coroutines to Javascript, without actually doing a CPS transform of the AST. I think I may have a solution involving yield* and setImmediate. Proof of concept yet to be done.

1 ↩️ 0 🔁 1 ♥️

Last week I spend almost three days to figure out a bug in my code. And the final fix was a single line change. It was both infuriating and exhilarating at the same time.

3 ↩️ 0 🔁 2 ♥️

I really like reading things on my Kindle. I wish there was an easy way to read all these interesting blog posts on it. Maybe a service to which I can send URLs, or points them to an RSS feed and it sends me a book for them.

0 ↩️ 0 🔁 1 ♥️

Is it me or this year's seems too heavy on automata, game plays and simulations? I was hoping for more parser and interpreter related problems.

1 ↩️ 0 🔁 1 ♥️

It worked! Couldn't figure out how to patch the service, so I copied the file, made the change in it, and replaced the service module with the copied one.

1 ↩️ 0 🔁 0 ♥️

The new Arctic Monkeys album is even more mellow than the previous one. Maybe I'll grow to like the new AM, but for now I miss the old one.

0 ↩️ 0 🔁 0 ♥️

TBH, I like the albums in the middle the most, around early 2010s. When they started out to mellow out, but were still Rock like.

0 ↩️ 0 🔁 1 ♥️

I use the bookmarking feature on as a read-later list to mark interesting posts that I want to read in depth, but I can't at the moment while scrolling the timeline. After reading them later, I remove the bookmark. Am I doing it right?

0 ↩️ 0 🔁 2 ♥️

I'm not doing all of this year after doing it for past couple of years. Most of the problems seem very similar to those in previous years. So this time, I'm going to pick only the ones that truly interest me.

1 ↩️ 0 🔁 1 ♥️

My plan this year was to solve them in . Unfortunately, Zig 0.10 is not available on and I was too lazy to install it manually. So I defaulted to .

0 ↩️ 0 🔁 0 ♥️

Also hooked up IFTTT to hit a webhook to deploy my website when I post a toot here.

0 ↩️ 0 🔁 0 ♥️

Looks like I'll also need to write a parser and use a tree zipper. Great!

1 ↩️ 0 🔁 0 ♥️

Saw someone's toot about trying to learn how to drive a geared car (or drive stick, as they say in USA). And here I am driving a geared car, and hating it, being anxious all the time about missing gear changes and driving in wrong gear. I'd love to not drive stick, but I can't buy a new car right now.

1 ↩️ 1 🔁 3 ♥️

I like solving #AdventOfCode problems with one liners, and I cannot lie (split into multiple lines below for your convenience):

solve n input =
(+ (n - 1))
. fst
. fromJust
. find ((== n) . length . snd)
. zip [1 .. ]
. map nub
. transpose
. map (flip drop input)
$ [0 .. (n - 1)]

1 ↩️ 0 🔁 0 ♥️

Turns out, ChatGPT cannot write quines, at least in Haskell. Quite a serious limitation.

0 ↩️ 0 🔁 1 ♥️

Took my 3am server admin sleep break to drink a cup of water and to ban those DDOSsing domains.

0 ↩️ 0 🔁 1 ♥️

If you are running a instance, be sure to ban the bad bots using Fail2Ban. Otherwise they'll soak up all your bandwidth by crawling the public assets and media.

1 ↩️ 1 🔁 1 ♥️

The upgrade to 22.11 worked almost smoothly! I had to
— disable a python service because of "infinite recursion encountered" error (I wanted to disable it anyway),
— change config of one service, and
— fix dependencies of two services.

0 ↩️ 0 🔁 1 ♥️

Advent Of Code '22 Day 1 was easy

Solved in GHCI REPL:

λ> import Data.List.Split (splitWhen)
λ> maximum . map (sum . map read) . splitWhen (== "") . lines <$> readFile "input1"
λ> import Data.List (sortOn)
λ> import Data.Ord (Down(..))
λ> sum . take 3 . sortOn Down . map (sum . map read) . splitWhen (== "") . lines <$> readFile "input1"

0 ↩️ 0 🔁 0 ♥️

I'm a bit disappointed that the hashtag is not about the 90's movie about a speeding bus that could travel in time.

1 ↩️ 0 🔁 0 ♥️

I've found and followed so many interesting people from different walks of life on Mastodon in the last one week. I don't think this would be possible on the Twitter of now.

1 ↩️ 0 🔁 1 ♥️

: Mastodon creates and exposes a public key for each user at <instance-url>/users/<username>.json.

I wonder if that can used for signing things we put on internet.

0 ↩️ 0 🔁 0 ♥️

I hate waking up and finding spam comment on my blog 😠

0 ↩️ 1 🔁 0 ♥️

Trying to figure out how to write health checks for on . Can't find anything on Google. Netdata docs are not straightforward.

2 ↩️ 1 🔁 0 ♥️

/ protip for people an Nginx server: add the following line to your Nginx virtual host config so that you can be found by a search like @me@yourdomain.com:

rewrite ^/.well-known/webfinger.* https://<your-mastodon-host>/.well-known/webfinger?resource=acct:<your-username>@<your-mastodon-host>? permanent;

1 ↩️ 1 🔁 1 ♥️

For example, my server at abhinavsarkar.net has this config:

rewrite ^/.well-known/webfinger.* https:// fantastic.earth/.well-known/webfinger?resource=acct:abnv@fantastic.earth? permanent;

(Minus the space after https://. Mastodon converts it to a link so I had to put the space.)

1 ↩️ 0 🔁 0 ♥️

So you can find me in Mastodon search by @me @abhinavsarkar.net

(Minus the space between. Mastodon automatically convert it to the resolved account so I had to put a space between.)

0 ↩️ 0 🔁 0 ♥️

Hardest part of is fixing the damned fail2ban that is too eager to ban everyone, including myself. But I wrote those ban rules so I'm the one to blame.

0 ↩️ 1 🔁 0 ♥️

Watching Mastodon Sidekiq logs is a very unhealthy obsession.

1 ↩️ 0 🔁 0 ♥️

Code to run Mastodon was only 20 lines. Rest was for system setup and security.

0 ↩️ 0 🔁 0 ♥️

I live on a ball of dirt going really fast around a ball of fire.

2 ↩️ 0 🔁 1 ♥️

So this is what happens behind the scene when you post a toot. All of sends requests to your server within seconds. I can imagine why Mastodon instances are so overloaded these days.

0 ↩️ 0 🔁 0 ♥️

Holding off moving completely to self-hosted instance till it reaches better feature parity with Mastodon. One thing I'll definitely miss is the Glitch-soc UI.

1 ↩️ 0 🔁 0 ♥️

I wonder if it can show highlighted code?

main = putStrLn "Hello world"
0 ↩️ 0 🔁 0 ♥️

Well, no code highlighting but at least we got:

  1. numbered
  2. lists
  • Bullet
  • lists
2 ↩️ 0 🔁 0 ♥️

I knew about for at least a few years but I was afraid that the clients would be unpolished. Now that I'm here, I must say I am pleasantly surprised by how good all Mastodon apps are. Both Android and iOS apps are easy to use and reasonably smooth. Though I don't use the web UI much, it's pretty good as well.

0 ↩️ 0 🔁 0 ♥️

Still trying to get Bridgy Fed working on my website. I can see my website on Mastodon but I don't see any posts, neither am I able to follow it. I guess it's time to look at the Nginx logs.

1 ↩️ 0 🔁 0 ♥️

I uninstalled Reddit, Hacker news and Twitter apps from my phone so Mastodon is my only friend now.

0 ↩️ 0 🔁 0 ♥️

My levels of yak shaving:

1. Get on Mastodon.
2. Enable Activity Pub for my website using Bridgy Fed.
3. Embed h-card on my website's home page.
4. Add support for transclusion in Markdown files.
5. Modify Mustache templating code to add support for chasing dependencies using Shake build system.

Fortunately, the stack has unwound now, for I am posting this on Mastodon, and my website is Activity Pub enabled.