one hundred eight tiny posts on miscellaneous topics tagged .
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. #bangalore
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. #bangalore
The tea was okayish and very overpriced. ~fin~
I hate how the hum of the cab engine hides the bassline of the #music 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.
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.
A random Netflix show about a guy going around the world on a #bicycle 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 #bangalore 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. 😭
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.
Now my website's search indexes my Mastodon posts as well, along with my blog posts and notes. Another step towards #indieweb.
Switched from LocalStorage to IndexDB for caching the search index on the browser. Apparently, that's the recommended thing now. 🤷
When in #Japan, take a bullet train and make a video.
I need to be more patient with phone charging.
Turns out it was because of adaptive charging in #Android 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.
Set up a mesh router in my house. Finally I can read Reddit in each of my washrooms.
I have feed reader apps on my phone, my iPad, my laptop, and my Kindle. Now to actually read all these blog posts ...
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. #bangalore
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.
I must say, I have an unreasonable amount of excitement for being able to simulate logic gates in a #programming language of my own invention.
Some days I wake up inexplicably #tired even after a full night's sleep. Today is one of those days.
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. #programming
I'm so glad I deleted my #Lastpass account years ago when they had their first breaches.
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 #Kindle book for them.
Is it me or this year's #AdventOfCode seems too heavy on automata, game plays and simulations? I was hoping for more parser and interpreter related problems.
I wrote a note about patching #Mastodon on #NixOS for removing old user avatars and headers https://notes.abhinavsarkar.net/2022/patching-mastodon
So tempted to drink 5 cups of #coffee today.
I wrote a new #blog post: Writing a Static Site Generator Using Shake https://abhinavsarkar.net/posts/static-site-generator-using-shake/
@pratul शुभ जन्मदिवस ब्रो
I use the bookmarking feature on #Mastodon 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?
Nobody told me that subscribing to relays will make my server's disk usage rate 10x. Sigh. #mastoadmin
It's finally under getting under control after I reduced the caching time to one day. #mastoadmin
Thinking of doing my next personal project in #Clojure. It's been a while.
I'm not doing all of #AdventOfCode 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.
Throwback to when I visited the graveyard of chairs. #photography
Moved to @email@example.com.
I've been using https://github.com/pwm/nixkell for managing my #Haskell projects with #Nix, but it doesn't support Nix flakes. So I decided to try out a new template for my new project. I tried https://github.com/input-output-hk/haskell.nix but it started to compile GHC from source, so I ditched it. Now, I'm using https://github.com/srid/haskell-template and it works flawlessly. Well, at least till now. #programming
Time to catch up with #AdventOfCode problems of this week.
Finally a challenge that requires writing an interpreter. Solving #AdventOfCode day 7 will be fun.
Looks like I'll also need to write a parser and use a tree zipper. Great!
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. #Music
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.
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.
Also hooked up IFTTT to hit a webhook to deploy my website when I post a toot here.
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))
. find ((== n) . length . snd)
. zip [1 .. ]
. map nub
. map (flip drop input)
$ [0 .. (n - 1)]
Turns out, ChatGPT cannot write quines, at least in Haskell. Quite a serious limitation.
Took my 3am server admin sleep break to drink a cup of water and to ban those DDOSsing domains. #mastoadmin
Finally found time to catch up with my feed reader.
I solved today's #AdventOfCode challenge in type-level #Haskell https://notes.abhinavsarkar.net/2022/type-level-rps. #programming
Construction site #photography
Is this why people hate using Haskell?
TBH, this is how it looked before I golfed it down:
Going to try to upgrade my VPS to #NixOS 22.11.
The upgrade to #NixOS 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.
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"
@deobald Have you?
TFW you finally delete garbage on a #NixOS machine:
I'm a bit disappointed that the #Matrix hashtag is not about the 90's movie about a speeding bus that could travel in time.
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.
#TIL: 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.
I hate waking up and finding spam comment on my blog 😠
Today I learned how to replace #NixOS modules: https://gist.github.com/LnL7/bd05394218033cff17ec20eb93a44a4a
Just found out about https://fedi.directory. Followed a bunch of interesting people and accounts from there.
@arun Welcome to this earth.
@Preethi Welcome to the fantastic earth!
rewrite ^/.well-known/webfinger.* https://<your-mastodon-host>/.well-known/webfinger?resource=acct:<your-username>@<your-mastodon-host>? permanent;
For example, my server at abhinavsarkar.net has this config:
rewrite ^/.well-known/webfinger.* https:// fantastic.earth/.well-known/webfinger?resource=acct:firstname.lastname@example.org? permanent;
(Minus the space after https://. Mastodon converts it to a link so I had to put the space.)
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.)
Hardest part of #selfhosting 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.
Watching Mastodon Sidekiq logs is a very unhealthy obsession.
Code to run Mastodon was only 20 lines. Rest was for system setup and security.
I live on a ball of dirt going really fast around a ball of fire.
So this is what happens behind the scene when you post a toot. All of #fediverse sends requests to your server within seconds. I can imagine why Mastodon instances are so overloaded these days.
I wrote a note: "Self-hosting GoToSocial on NixOS" https://notes.abhinavsarkar.net/2022/gotosocial-on-nixos
I've been running Debirdify every day and it's nice to see my following numbers climbing with each day. #mastodonmigration
Holding off moving completely to self-hosted #gotosocial instance till it reaches better feature parity with Mastodon. One thing I'll definitely miss is the Glitch-soc UI.
hear read that Mastodon supports
I wonder if it can show highlighted code?
main = putStrLn "Hello world"
Well, no code highlighting but at least we got:
I wrote a note: "Monitoring VPS Network Usage with vnStat and NixOS" https://notes.abhinavsarkar.net/2022/vnstat-dashboard
This Tweag article on staged programming with typeclasses in #Haskell is pretty cool https://tweag.io/blog/2022-11-15-unrolling-with-typeclasses/
My website has been my biggest personal project so far, ongoing for more than five years. It has accumulated so many features by now that I had to make a list today (for mostly myself): https://abhinavsarkar.net/about#features
I knew about #Mastodon 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.
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.
I uninstalled Reddit, Hacker news and Twitter apps from my phone so Mastodon is my only friend now.
@deobald say something Steven
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.
So I got on Mastodon. Next, find people to follow.