Archive for March, 2016

This is awesome, and github is not.

Friday, March 25th, 2016


There should be more fix-it-yourself tools like this.

Although if nothing else, it speaks to how overly (and seemingly unnecessarily) complicated git is.


Did I rant about this facet of github? I finally hit upon the single most poignant problem with github. This is really a git problem, but the problem is forced on you more strongly with github.

By being a distributed repository, there’s bits and copies of it all over the place, and the defining bit of information that is missing is Which One Is Important.

You can figure out that this fork came from that repo and that repo came from that fork, but that doesn’t mean the most recent fork is the correct one.

One I make a repo somewhere it’s stuck there forever, because if I try and move it, by forking and using the new one… now I have two and there’s no obvious way that I can tell to mark one repository as being the “right” one. Maybe I forked something and made some changes, but the whole thing was a bad idea and I just want to use the original. But I go away and come back a month later and I have no idea which is the one I should do builds off of.

With a central repository, there is really no question where you go to do a build.

You can kind solve the problem a little with git by making a bare repository and just having one, and then it’s a little more obvious that THAT’S the one. The bare-ness of it, is a flag saying that this one is more important than all the others, this is the one where I put the live stuff.

But github doesn’t have that. Everything is a repo exactly like every other repo, forked or not.

They just need a flag saying “important” and you can’t flag more than one that way. Something like that.



root, not root and back again.

Friday, March 25th, 2016

I used to be of the mind that it’s my machine, and I’m going to log in as root because I don’t need to be hindered from doing what I want on my machine.

Over the years I gradually saw the wisdom of doing most things as a non root user, because it protects me from making dangerous mistakes, and it enables me to set up my system so I can share it with other people, and also there’s more and more software that complains that it doesn’t want to run as root.

But now I work at a job where I do a lot of things that involve being root a lot of the time. What you ask? Reading raw data from block devices mostly, updating system configuration that needs to change a lot. And I find typing sudo su plus my password all the time to be real annoying. The computer is supposed to be a tool for the human, not a tool to the human.
Also with the advent of virtual machines and containers there’s almost no need to ever share a machine with another person, you can always make them their own vm or container.

So I’m starting to lean back towards the logging-in-as-root side, because again, it really is my machine and I can do what I want with it, and having it stop me all the time so I can type “sudo su +password”, is annoying, since I’m just going to run the same command again anyway, and if it was a mistake, it’s just that much longer to make it happen before I can go fix my mistake.