Rust: Doubly Linked List

No, this is not a post about how to implement doubly linked list in rust. Or ir could be a very short post, since doubly linked list in built-in the std::collection as LinkedList Following functions are available: new : Creates new/empty linked list push_back : Adds an element to the list push_front : Since this is doubly linked list, element can be added at the beginning as well. Nice! pop_back and pop_front : Remove an element from the list clear : empty the entire list append : Append one list to another to make bigger list.

Continue Reading »

Waydroid

I wanted to use Openvibe - an app that allows having a single timeline across multiple social media networks like mastodon and bluesky. It also supports cross posting (and more) But currently it only has mobile apps (for both iOS and Android) While the Desktop app is “in the works” - no specifics are provided. I do not use mobile apps if at all possible. (Except for podcast and messeging apps to keep in touch with Family - on the go.

Continue Reading »

No One is (really) Evil

NSQ episode about evil led me to thinking about this. Takeaways from the episode Evil is attributed only to humans. If an animal attacks and kills human(s) we do not label the animal as Evil. Intentionality matters. Accidental killing/death does not mean Evil People do bad things because their brain is not “well” Amigdala is the part of the brain that is responsible for fear and morality. Should bad people be locked away longer (cause they may be threat to the society) Phil zimbardo prison experiment Bad barrel (Vs Bad Apple) People become evil due to surrounding 1 Stanley Milgram Experiment People are OK doing bad things if They are in position of power and Are told by their superiors to “punish” others 2 out of 3 volunteers shocked the (the actors playing) students upon giving wrong answers, because they were “instructed” to do so 2 My thoughts Only movies/TV has pure evil person In good movie/TV, they have some explanation about why the person become “evil” When people do bad things to you, do not hate them Consider some of the points above.

Continue Reading »

How to run multiple postgres docker instances on local machine

When working on multiple projects, I run separate postgres instance for each of them. Since these are docker instances, this is not a problem as long as they are not running at the same time If I’m actively working working on multiple projects parallelly, then there are two problems : Resources : My laptop becomes slow. There is no solution for this 1 Assuming you have LOTs of memory, second problem still remains.

Continue Reading »

How to Turn Off Inlay Hints in VS Code

I initially tried to turn off the type hints via rust-analyzer extension setting, but that did not work 😞 Turns out it is very complicated (at least for me) documentation did not help 😞 Here is what worked for me. Thanks to SO 1 Open Command Palette Cmd+Shift+P Select Preferences: Open User Settings (JSON) from the drop down Add the following to existing settings Or create new one, if empty. You may need to enclose it within { } though.

Continue Reading »

Kinto : Mac Keyboard layout on Linux

After using Apple laptop for nearly 10 years, I have gotten used to Apple’s shortcuts where most places use Cmd instead of Ctrl After switching to Linux, initially I fumbled. Then I had to be alert, which I did most of the times, but when in the zone, I would still do Cmd+c to copy, and when pasted would be disappaointed that it did not work 😄 Then I came across kinto

Continue Reading »

Better History Search

No, I’m not talking about Atuin. 1 I improved my search experience with just one tool - fzf As you might know, fzf is a general purpose fuzzy finder. 2 But adding just source <(fzf --zsh) at the end of ~/.zshrc (and/or running it in your existing session) improves your Ctrl+r experience. See the demo yourself. I must confess that I’m tempted multiple times. But I think their USP is history sync, which is not my use case right now.

Continue Reading »

How to define task dependencies in justfile

It has been more than 20+ years since I used Makefiles seriously. I did use them later, but they were very simple. Then I found and moved just task runner, which is supposed to be replacement for make My justfiles were also simple. and today, I needed to define a task that we dependent on another. Turns out, it is same as Makefile task1: @echo "Task1" task2: task1 @echo "Task2" In the above example, task2 depends on task1, and thus when we say just task2, task1 will get executed, as it is a dependency for task1

Installing Espanso on openSUSE

After the basic setup was done (I made a list of tools to be installed on line before I installed Linux itself), I wanted Espanso While Espanso is well supported on X11, for wayland, it needs to be compiled from the source I ran into this issue but solution was found in the same issue. While install went through, I ran into issues related to capability grant. Following worked: sudo zypper install libcap-progs sudo setcap "cap_dac_override+p" $(which espanso) espanso start --unmanaged I also needed to add the following to config/default.

Continue Reading »

Installed openSUSE on Macbook Pro (Intel)

My Macbook Pro (early 2015) isn’t getting any OS updates for some time. Only version it supports is Monterey (which is already couple major versions behind the latest) brew has also started complaining as This version is not supported So I’ve been considering installing linux on it for some time anyway. I finally pulled the trigger and installed openSUSE Tumbleweed I had tried the live version, and knew and it generally works.

Continue Reading »