Firefox Containers & Linux vs. UNIX
[Mon Aug 30 14:06:59 CDT 2021]

A couple of interesting articles I read today. First of all, a short tutorial on how to configure and use Firefox Containers. This feature allows users to contain cookies and other relevant data within an isolated container to provide better privacy control. Second, an article titled I'm not sure that UNIX won authored by Ruben Schade. Although I know fully well that some people may consider Schade a bit elitist for suggesting that perhaps Linux is not as directly related to UNIX anymore, he does have a point, I think. Yes, sure, it's obvious to anyone that Linux is, at the very least, a UNIX-like operating system. It is clearly derived from UNIX. Inspired by it. Yet, as Schade argues, as it became more and more popular spreading to millions of devices from supercomputers to wearables, it has also been moving away from the old KISS principle and UNIX philosophy. {link to this entry}

Rule makers and rule breakers in an organization
[Fri Aug 27 10:54:06 CDT 2021]

Today, I came across this interesting article about rule makers and rule breakers in an organization that should be a great help to any aspiring (or existing) manager. More important, though, it is good information for a regular employee with no managerial powers, like me. Based on Michele J. Gelfland's book Rule Makers, Rule Breakers, the author of the article goes on to explain the ways social norms impact organizational cultures. Gelfland's approach distinguishes between two general types of cultures, one "tight" and one "loose". As one could imagine, the former value social order and conventional thinking, while the latter value flexibility and adaptation. However, the most important thing to remember here is that these are just two archetypes. Truly, most organizations out there are a combination of both extremes. Or, perhaps more accurately, all organizations will adopt different mixtures of bot approaches in different areas. In any case, the approach provides, I think, a good overall view of how to navigate organizations. Also, as with so many other things in life, it emphasizes how the key is to find the right balance between the two archetypes. It's a good read. {link to this entry}

Fixing a corrupted zsh history file
[Mon Aug 23 11:42:43 CDT 2021]

The same I switch to a different window manager from time to time just to dislodge old habits, I recently decided to switch from good old bash to the newfangled zsh. So far, so good. However, today I ran into my first issue: for whatever reason, the history file got corrupted. Running any command would show the following erro:

zsh: corrupt history file /home/username/.zsh_history

To be clear, the shell would still work. But it would show that error every single time I ran a command, which was annoying enough. In any case, the solution came via this page:

$ cd ~

# mv .zsh_history .zsh_history_bad

# strings -eS .zsh_history_bad > .zsh_history

$ fc -R .zsh_history
That did the trick. {link to this entry}

Importing digital certificates into Firefox and Chrome
[Tue Aug 17 09:34:11 CDT 2021]

I recently had to import a digital certificate into my browser, so I decided this was a good place to document the procedure. First, since the only way to obtain the certificate in the first place was from a Windows machine running the old Microsoft Internet Explorer browser, here are the instructions to export the certificate from that browser. Then, you can follow these steps to import it into Firefox, and these other ones to import it into Chrome. The process is quite easy and straightforward, actually. {link to this entry}

Review of technology news: what domain name to use for home network, ls unable to list directories with large amount of files, and software and productivity
[Mon Aug 16 09:49:57 CDT 2021]

A few interesting technology articles I ran into today. First of all, some info on what domain name to use for your home network. The answer? According to RFC 8375, you should use home.arpa. Second, how come you cannot list a directory containing a large amount (as in the millions) files with the command ls? The answer lies in the use of the readdir() system call, which only reads 32K of directory entries at a time. The author explains how to write a quick and dirty program that will use getdents() instead. And, finally, why doesn't software show up in productivity? The article includes an intgeresting chart showing the total factor productivity in the US since 1947 and, it seems, productivity gains have been flat since 2000 or so. The author muses on what could be causing this and, along the way, discusses a few interesting issues about general purpose technology, business practices, management, large organizations and, of course, software. Highly recommended. {link to this entry}

Experimental web-based FreeBSD installer
[Thu Aug 12 14:00:10 CDT 2021]

Anyone who has been around installing operating systems for a while will tell you that OS installers are pretty much the same regardless of the product. Sure, they can look more or less "finished". More or less "polished". But, overall, they are all about the same. Also, for the most part, the field is quite stagnant. As far as I can see, allowing remote access via SSH or VNC was the last big step forward more than a decade ago. Well, it looks as if the FreeBSD folks may now be working on an interesting web-based new experimental installer that should allow anyone to install the OS remotely simply by pointing the browser to the IP address of the system that booted the software. Mind you, it doesn't even support any sort of authentication yet, but it sounds promising. {link to this entry}

Building the i3 window manager from source
[Tue Aug 10 09:08:04 CDT 2021]

I recently had to build the i3 window manager from source. Although it wasn't easy to find the instructions on the i3 website, I ended up following the directions to build i3-gaps (with some minor changes, obviously), and it worked fine. Basically, after expanding the tarball with the source code, navigate to the actual directory, and run the following commands:

$ mkdir -p build && cd build

$ meson --prefix /usr/local

$ ninja

$ sudo ninja install
The same document that explains how to build i3-gaps also shows the complete list of library and tool dependencies you will need to perform the build. {link to this entry}

Adding a warning about Caps-Lock to i3status
[Tue Aug 3 11:36:11 CDT 2021]

Recently, I switched back to i3 after running bspwm for a few months (no big reason, truly; it just looks as if i3 adapts better to my workflow, that's all), and struggled with the fact that, by default, the i3status bar did not show any clue when the Caps-Lock key was enabled. So, I searched around for an answer, and found this exchange on a forum that worked fine for me. Since my small size keyboard doesn't have a Num-Lock, I just needed the part for the Caps-Lock key. So, I only had to add the following to my i3 configuration file and restart the window manager:

# Enable/disable caps mode
mode "CAPS" {
        bindsym Caps_Lock mode "default"
}

bindsym Caps_Lock mode "CAPS"
{link to this entry}