Skip to main content

Overview

For awhile now, but not always, I've been getting chan_shutdown_read: channel 1: shutdown() failed for fd 7 [i0 o0]: Not a socket on my terminal whenever I do something with SSH. This include ssh, scp, and git commands. It'll often obscure the password prompt at the bottom of the terminal screen.

Overview

Been using neovim more in recent months. I think its a great replacement for vim, but it suffers greatly because all its modern bells and whistles also require an internet connection. I'm not a fan of this. To make matters worse, it has a great many external dependencies.

Overview

Code snippet of 3 python files:

  • EnhancedConsole - a simple extension of InteractiveConsole for hosting REPL in server and client code.
  • Server - A simple example of using multiprocessing.managers over Unix sockets and running with a REPL.
  • Client - A simple exmaple of using multiprocessing.managers (as a client) over Unix sockers and running with a REPL.

Overview

In one particular network, I went through a long adventure of troubleshooting random reboots. I still haven't solved the problem, but I have gotten things to a stable state and I wanted to share everything I can recall from this nonsense situation. Gist: It involves power management and getting rid of all desktop managers without effecting usability or workflow.

Overview

I had a need to parse only the beginning preview of a set of large JSON files (e.g. safetensors). I wanted the ability to parse this JSON, to:

  1. Know that everything up to the cut off was valid JSON.
  2. Be able to process the JSON for beautification or header processing.

Alas, most json libraries do want the whole JSON. After a bit of work, I was able to get it going with ijson.

Overview

As of late, I've been attempting to catch up with the flurry of new developer tools that now exists. Many of the TUI tools are golang or rust and therefore have nice portable static versions. This means one single binary that has all the things I need to use the tool. It goes in my ~/.local/bin and that is that (presuming you aren't ricing in catppuccin).

Now tmux and nvim are central to all of this portability and yet they remain relatively non-portable and are themselves written in C and C++ respectively. I'd like to fix this.

Overview

Lots of network applications stopped working in my developer virtual machine but would work within containers on the same VM. The network stack was working, the firewall didn't look weird ... what the heck?

Overview

Recently I decided to revisit some of my staple habits and tools for development. This included the question, "What is the new generation using for console text editing?". I was under the naive perception that most are using nano because most are likely using a GUI IDE like VSCode or XCode as their work horse and there is little reason to bother with the likes of emacs and vim anymore. Apparently, this was grossly wrong ...

Overview

My home network is now no less than 22 network nodes. Because of this, I've long since passed the feasibility of using only DHCP. When things go wrong, I want to troubleshoot from an IP, not a hostname. Therefore I've set static IP addresses for all of the long running network nodes. (Things like the xbox and cell phones are still DHCP).

Trouble is, this isn't as straight forward as I'd like it to be in Debian (specifically Bookworm).

Overview

Ever have a list of files in the side bar of VSCode that was unearthly long? It can get really annoying having to scroll up and down through that list to trace through some control flow of a program or multi-micro-service application. One possible solution for that is the IPC mechanism built into VSCode from the CLI. At any point in your VSCode terminals, you can run code <path> to open a file in the running VSCode.

But it doesn't work in Tmux! ... well I found a fix.