Following the general overview this third article of my series regarding the software installation on Linux analyzes what is really needed in real live. To accomplish that task user stereotypes are defined in reference of their software usage and needs. The results will be compared with the current situation.
Before I start digging into the subject some background where I take my information from. They are out of experience. I worked and currently work again as a voluntary help desk for students. I help them with their private computers (attached to the university network) when they have problems and also serve as a interface between the university technicians and the students. I also work (as in: paid student job) as a help desk/administrator in a small network, managing a set of non-private computers (roughly a dozen) provided to PhD students and similar.
And, as you can imagine, I am also *the* person everyone asks when they have computer problems. Members of my family, friends, friends of my friends, members of the families of my friends, … You get the picture. So I come around pretty much and see almost every use case you can imagine – except the users in larger corporations where they have their own help desks.
Starting from there I create three different stereotypes of computer users:
- The grandma class – computer users who will never install additional software by their own. Users who only use typical software which is already provided (e-mail word processor, browser, etc.). This is true for most users in corporate environments as well.
- The students class – computer users who want to try new software once in a while, who are active to search the web and experiment by their own without the skills to handle problems by their own. Most often people of younger ages, like students, belong to this group
- The power user class – computer users who are able to deal with such topics by themselves. They are able to install new software even from source and now roughly what dependencies and devel packages are. And of course everyone who knows even more belongs to that group.
The first group is easy: since these people do not have the possibilities to install new software, the current Linux way suits them very well. And in case the grandma wants to experiment a bit the repositories provide enough software usually for daily, normal work. No problem there.
The last group, the power user class, is also quite easy: these users know their way around. They are not really stopped by a missing binary, they can create one by themselves or can at least compile the given software. Although the situation might be improved for these people it is generally working for them. No (urging) problem there.
The second group, however, is different. Members of the student class do have different needs but not so high skills. They want to play around with their computer, trying new things. But, even more important, they have innumerable types of software for various niches of areas of application.
And they are not able or willing to compile stuff by themselves.
And now the typical Linux way of providing binaries faces huge problems:
First of all, “trying new things” means installing new software just released in a new milestone release or just released first time at all. Repositories need quite some time to react to such changes due to rules about new release or due to the time the package maintainer needs to get familiar with the new release. Therefore in such a case the user is lost with Linux.
This leads sometimes to absurd behaviours, where for example a FLOSS fan keeps a Windows partition around to be able to quickly test new software releases.
It is even worse for the second type of needs: niche software. Software which is programmed by one or two developers for a certain, comparable small group of people. Since the amount of people dealing with a niche topic is always small, the chance that some repository maintainer picks up the piece of software is highly unlikely – although the piece of software might even be of a high quality and very useful. The other way around is also true: it is highly unlikely that you will find enough people to manage packages for all important repositories (at least 3, F,S,U) among these niche-people. Therefore if you depend on niche software you are lost as well.
This leads to the very absurd situation that Linux, the “open” system, is hostile to users who need more than the average mainstream software. You can only use Linux systems if you only need main stream software. Openness or flexibility in software usage are foreign words in the Linux world.
So far about the different user needs and wants. You can of course debate which group of users is the biggest. For me the second one is at least large enough when not even the biggest anyway. In any case it is too large than not to care about that problem.