Friday 25 November 2016

make ARCH=ACHE (The build pain)

Building a whole operating system from source is no joke. I can tell because when attempting it (several times), I didn't crack a laugh ones. In fact there were multiple occasion when I genuinely wanted to cry.
The problem is not in the availability of source. Source code for almost everything is out and almost always just a "git clone" away.
The problem is not in the clarity of the procedure. There are tons of tutorial that go over the steps in building an OS setup from the absolute scratch.
The problem is not in any presumptuous gap in the continuity of the process simply because there isn't any. Everything is decently documented in this regard. There are commands provided for even the most simplest of tasks that are required in the whole amalgam of steps.

The problem is in sheer size of the process. I am not talking about the time it takes to compile stuff. Time is actually on your side if you believe me. The more time it takes for things to compile, the more you can rest your brain with the excuse of being helpless. I mean that since there are so many things that need to be done and since everything is to be done from the terminal, there are literally hundreds of ways in which one can screw up without any warranty. They tell you to run a command. You happily oblige. The commands spits so much at you via the terminal, you almost start to enjoy the messiness of it. And in that huge heap of messages resulted by the running command, there would be one small indication of something going slightly wrong. And trust me, some of the things on those outputs aren't even English. The message would say that something is missing and you wouldn't know whether that's a good thing or a bad thing. Quite frankly you're left out to just guess whether a command ran successfully or not.
And then there would be a surprise question asked by the command itself (my god for the unwanted interaction), asking if you want to do something [y/N]. You tell me, how in god's good name would anyone know whether they want to do this thing or not? You would understand if the yes option was defaulted, then it's still easy to make a positive guess and just blindly enter blank accepting the default behaviour. But when the default suggestion is no, then it really gets to you.
There are so many ways to screw you up and how do you expect to find the solution to a problem you don't know. You just know that something went wrong. You don't know what, where or when. Just that something is off and is keeping your beautiful BeagleBone Black from booting. Trust me, things get really ugly from here in out.
All of this has made me realise that installation software with a Polite User Interface (PUI), are called wizards for a reason.

No comments:

Post a Comment