Is Linux a virus?

A while ago, Google has speculated about possible backdoors in the UEFI BIOS. The aim was to push a new kind of hardware out there, for example RISC-V which is open and on top of this hardware can run the Linux kernel which is an operating system. But what if, the situation is the opposite? Not the UEFI BIOS is the backdoor but Linux.

Let us go into the details. A normal IBM PC has a integrated Memory management unit which allows to run many programs at the same time, and protecting the memory. Also the BIOS has a built in graphics subsystem and a network stack. But all these feature are also integrated into the Linux kernel, why? One of both components is redundant and a possible backdoor for malware. If the CPU provides a hardware MMU and also the Linux kernel is protecting programs from each other then the Linux kernel is adding without any need new features, why? The only explanation is, that Linux is a backdoor, which is some kind of software used by an attacker to get access to a system. There are no hidden backdoors inside the Linux kernel, the whole operating system is a trojan horse. What would happen if we uninstall the Linux operating system, will the PC no longer work? That is an interesting question, in theory it is possible to run a PC without an operating system.

The work hypothesis is, that Linux is security issue and the answer to the problem is avoid the software and instead only use lowlevel hardware routines.

Let us describing the narrative around Linux. The story which is told by Linux kernel hackers is, that existing BIOS routines are outdated or full of backdoor, and only a software defined operating system is able to schedule tasks at the cpu, get access to the network card and can send TCP/IP packets. In short, the operating system is everything and while the hardware has to be bypassed. Why is Linux arguing in a such a way? Does Linux think, that the BIOS isn’t able to talk to external USB drivers or that the CPU isn’t able to do multitasking? Modern x86 hardware was designed exactly for this purpose, there is no need for a software defined second operating system called Linux. Not more Linux will solve security issues, but less of the Open Source medicine.

Why are installing all the users Linux as an operating system? Because they believe, that the narrative around Minix, Unix and Free software is right. They believe that without Linux they get no access to the ext4 harddrive and they will not be able to run their binary files. They believe so, because what? Right, because they have absolute no idea what computing is, and Linux is the most advanced approach to say that we have no idea about PC standards.

From the perspective of computer history, the programming language C was invented together with UNIX as a high-level language. The idea was to give programmers UNIX plus a c compiler so that they can write their own software. But do they need an operating system and a c compiler if they have Forth plus hardware which can run Forth? The basic idea behind Forth is to bypass existing programming languages and bypass existing operating systems. Forth is not used in the mainstream because the assumption is, that the resulting complexity is much higher, but what is if this is wrong? Programming in Forth is not harder then programming in C. That means, there are variables, subroutines and for loops. And putting out text to the commandline or plotting pixel to the screen isn’t very complicated with Forth, so the question is: why do we need a c compiler and UNIX? Without any doubt the programmer need computing hardware, but on top of hardware, he can write his code directly.

On example are DRAM drivers; it is obvious that the Linux OS produces major security holes. Usually the firmware of the DRAM chips in the PC works great. The software is stable, was programmed in with microcode and is well documented. But on top of existing code, Linux is putting his own kernel driver which has also access to the main memory. This is a source for confusion and a potential security problem. The best way to solve the problem is to avoid the Linux malware and trust the DRAM manufacturer. He knows without an external operating system what is inside his memory and the DRAM chips are protected by it’s own.

Advertisements

Linux for the desktop is a bad decision

From a technical point of view, a Linux desktop distribution like Fedora works better than 20 years ago. The current Gnome environment is able to multitask many windows, and preinstalled programs like Gimp, LIbreoffice and Firefox are providing a great user experience. That means, from the look and feel, Linux has made a huge progress and can be compered with Windows. Even games are running under Steam OS client, also Video editing software is available.

In contrast to this progress many governments and companies have decided against Linux. They are migrating existing Linux ecosystem into Windows 10 desktop. And they are right. Because Windows is the better operating system. Mainly because of it’s compatibility to existing software, but also because the mainstream is familiar with Windows. The question is now: what is the target group for a modern Linux desktop? I would suggest, that the Linux desktop was made for programmers, that are people who are developing C++ software, creating games and write backend-web-applications. If we are asking real Linux users it is not suprising that this group love Linux on the desktop. And they are the only community who is using Linux right now. Linux is a hacker operating system, it was made for programmers, not for normal users.

From the usage itself, there is not difference between Linux and Windows. Both operating system are booting quite fast, and a simple click on the icon will start the webbrowser. The difference is the daily usage. That means, if somebody is writing software he is motivated to learn more about LInux and free software. He will love the bash command line and he will love the dnf package manager. In contrast, a non-programmer is not able to understand the system. He see no advantage over Windows, but he only see that the menus are different and that his old software doesn’t work.

Predicting the success rate of a migration to Linux is easy. If a gamer, normal user and computer beginner is trying out Linux he will fail. That means, he will switch back to WIndows very soon. If in contrast the user is a programmer, want’s to learn new programming language and writes his own software, then he will stay on Linux because it gives him so much advantage over Windows. The most problem with Linux migration in the past was, that they started with the aim to change the behavior of the users. The idea was not only to install a new operating system, but explain to the user, that he must start to learn coding in Python and that LaTeX is superior to MS-Word. In all cases, the user isn’t interested in flipping their behavior. Non-programmers want to stay on the side of computer grouchs and vice versa.

The best advice which works for any existing desktop is to switch the operating system to Windows 10, because this is without any doubt the number one Desktop OS in the world. It is supported by all games, and all the users are familiar with it. It makes no sense to push forward Open Source and Ubuntu against the mainstream. They are simply not interested.

On the other hand, the few programmers worldwide who are interested to do more with his computer then only starting existing software will decide for Linux by it’s own. The iso-files can be downloaded for free, the documentation is available in English. There is no need to make promotion for Open Source. As a summary we can say, that Linux is at the same time a very good alternative to Windows, but also a poor choice over Windows. That means, Linux is both, a great piece of software and some kind of anti-pattern. According to the numbers, Linux is a bad choice. From today’s 2000 million PC users, 99.9% are preferring Windows. But according to the technical situation, Linux is superior to Windows because it helps to reduce the costs in programming software. I would guess, it is not a question between Linux vs. Windows, the divide is among Programmers vs. non-programmers. In the group of programmers, Linux is well accepted. According to stackoverflow, 23% of the programmers are using Linux, if we are asking back-end programmers for servers the rate will become much higher up to 100%. From a technical point of view, it is nearly impossible to run a server without Linux.

Here a short decision matrix:

• Linux+programmer = works quite well,

• Linux+mainstream user = is a no no

• Windows + programmer = works good, but it can be improved with Linux

• Windows + mainstream user = works perfect

Links2 works great

I’ve tested out some alternatives to Google chrome and the best one I’ve found is “links2 -g google.com”. Links2 is a textbrowser which can be started in a graphical mode. His cpu consumption is nearly zero, but at the same time it can show images. Sure, compared to Google Chrome there are some features missing: a pdf viewer isn’t included, youtube videos doesn’t play and the playback of webm files is only possible with external programs. But from all textbrowsers (lynx, dillo, Opera) links2 is the best one. It can be used with keyboard only and has a textonly fallback mode which makes it usable for command-line only usage. The question now is: why takes links2 less then 0.2% cpu while Chrome eats all the ressources? It has to do with the videoplayback feature. It seems, that videostreams are some kind of voodoo magic, and in contrast to the announcement, youtube and other webportals have not switchted to HTML5 but invented his own technology which is integrated into webkit. All browsers who are using this library produce the same amount of fan-noise so it must be called bloatware.

If links2 would have a little more functions (for example an integrated pdf viewer) i would call the software the ideal webbrowser. But also in the current configuration it is a useful tool. The interesting thing is, that even videoplayback doesn’t need huge amount of cpu time. A desktop only playback of a webm stream needs nearly no cpu ressources. The only problem is the combination between video and websites. This seems to be very cpu hungry. What exactly is webkit doing? Right, it is a secret. Nobody knows. What webkit isn’t doing is to playback a H.264 video, that is clear. Instead some kind of proprietary flash streaming playback is started which has nothing to do with open standards, HTML5 or a free internet. I would guess, that is main reason why links2 will never become a success. The software can’t playback videos, so the mainstream user doesn’t use it.

Again some facts about the LInux market share

Instead of asking how to bring Linux to the desktop, the first is to research how many users have already installed Linux on their desktops. The stackoverflow survey is a good starting point. In a yearly poll of 2018, 2017, 2016 and so on, they have asked the same question: which operating system do you prefer? The answers are remarkable stable. Windows with its different flavors Windows 10, 8, 7 and XP has 50% of the users, Mac OS X has 25% and Linux only 23%. And now comes the interesting fact, the number of programmers worldwide is known and it is 20 Million users. We can calculate the total number of Linux desktop users with 4.6 million.

But perhaps I was to fast? Isn’t it possible that non-programmers have installed Linux also on their desktop machine, for example as a thin client for surfing in the internet or as arcade machine to play with the Steam client? The answer is simple no, it isn’t possible. If somebody is not interested in writing software, at least with Python he will never install ArchLInux, Ubuntu or Fedora on his desktop machine. Instead he stays on the pre-installed Windows 10 or on the well working Mac OS X. So we can assume, that in the group of non-programmers Linux hasn’t a single fan.

Let us go deeper into the statistics. The worldwide number of Desktop PC is around 2 billion. And now we can calculate the Linux market penetration over all PCs: 4.6 million / 2000 Million = 0.23% That is the sad but realistic amount of Linux users worldwide. It is not 3%, it is not 1%, it is below 0.3% of all computer users. Even in the group of programmers, Linux is a minority. Most programmers prefer Mac OS X or Windows but are not happy with Linux. And for all PC users including non-programmers the total amount is a disaster. That means, according to the numbers, Linux can be called dead. I would guess, that more Amiga 500 PC are alive, then Fedora and Ubuntu machines combined. Yes, the situation is not very optimistic and the trend is negative.

As far we know from the mainstream news, the Canonical Ubuntu project has failed. The idea to bring Ubuntu to smartphones was not a success, and Ubuntu for desktop pc is also not that great. Fedora, which is the core operating system in the Linux community has so few users, that on Amazon the last book about Fedora was published 10 years ago. Even “book on demand” publishers have no introduction into Fedora in English, because no one is interested in become a user.

So what is wrong with Open Source? If the aim is to program an operating system for a minority, nothing is wrong. The number of Linux users is becoming smaller over the years. A market share of 0.23% can’t be called a mainstream operating system with a great future, it is more a project like OS/2 which started great, but has lost the motivation. For the future, we’re pessimistic. If we are asking the average Microsoft or Apple fanboy they are highly satisfied with the product. No matter if programmer or non-programmer, both are loving the system. In contrast, Linux is some kind of anti-pattern. How bad can an operating become, that even it is delivered for free, nobody want’s to install it?

The problem in today’s computer market is, that the customers are not technology oriented but focused on social groups. What they want is not Open Source, they want to play a game, which was published last week. And they not want to code a program for Fedora, but they want to code for the same operating system all the people they know. But the main problem with Linux is, that even programmers don’t like the system. That means, Linus Torvalds isn’t speaking for computer experts, C programmers or github users, Linus Torvalds is speaking for himself. He has no community behind him, he is isolated by the normal programmers and he is aware of it.

From a technical perspective the Linux Kernel isn’t that bad. It will boot up the ordinary PC quite well and even the Chrome webbrowser runs smoothly. But, the competitors of Linux have made their homework too. Also a Mac and a Windows PC are booting fast, and they have so much more to offer then only a boring command prompt and an empty software-repository. Let us describe, what Windows is. If somebody is programming software for the Windows operating system, his software will run on nearly any PC worldwide. And if he needs help in developing his software he can choose between 1000 books from “Microsoft Press” alone, and more books from other publishers in which every detail is explained. In contrast, if somebody is planning to write software for Linux, he can search for some kind of mailing list, which contains the postings from 10 years ago, and most of the postings are rants against Microsoft with no valuable information.

It is a small wonder, that in the Stackoverflow survey, 23% of the developers have admitted, that they have Linux installed on the workstation. Perhaps their decision was the result of pity with a sad looking penguin who has lost all his friends?

Linux market share of 3%?

Some online news websites have reported, that the market share of Linux on the desktop is growing and now has reached 3% of all PCs. Let us investigate this estimation in detail. 3% from 2000 million PC worldwide is equal to 60 million Linux installations. We know, that the number of programmers worldwide is only 20 million. To reach 60 million, all the programmers need to be Linux users and additionally 40 million of non-programmers. Again the question: if somebody isn’t familiar with a c compiler and with PHP, which advantage he can get if he installs a programmer friendly operating system on his PC? He would give up his ability to play the latest games and to use MS-Word, and gets the advantage of running the GNU C++ compiler out of the box and is able to fix kernel parameters from the command line? Which non-programmer is doing so? Right, nobody and the estimated market share of 3% for Linux is not realistic. It is some kind of whishful thinking, that the world is interesting in Open Source software and has recognized the power of non-Windows and non-Mac OS X systems.

Let us describe, why the amount of 3% LInux users is so often cited, even it is wrong. Suppose we have not 20 million programmers worldwide but 100 million and suppose, that not only 23% of the programmers are using Linux but 80%. In this scenario, we see a huge amount of people who are interested in writing sourcecode and most them are doing so under the Linux operating system. It is a very nice look scenario about a wonderful world in which programming in general and Open Source in special is widely adopted by society. But the reality is different. In reality, the amount of programmers is very small, and most of them are not using Linux ever, because they are not interested in making the world a better place, but they want to sell their software. The 3% market share of Linux sounds good and if it is much higher it would be great. But the only problem is, that this amount is pure fiction. It is not based on facts, but it is only a story, told by people who want to make Linux a success.

The reality is, that Linux never was a success. It is the most hated operating system, with the lowest market share, and even programmers are against Linux. The story, which i have to tell is about the facts. It is a world, in which the programming community have conspired against Open Source software, in which Linux is nearly dead and about a world, in which less then 1% of all users are able to write sourcecode. It is a world in which no the programming courses in which Linux is teached have failed and the students give up after the first week because they are not interested in learning programming.

Is Linux for programmers death?

Linux started as a promising operating system with the aim to replace Microsoft Windows with a UNIX compatible programming environment. The idea was first to convince the hard-core programmers and then the mainstream user to switch to a Open Source ecosystem. According to the numbers the project failed. Only a minority of all programmers (less then 25%) have decided to give Linux a trial and from mainstream users no one has installed the Linux operating system. This sounds a bit crazy because Linux is for free and works fine with today’s hardware. It can be installed on any PC even Macs from Apple. But it seems that the user didn’t have understand the potential and decided against the GNU movement.

It is not the first time a superior technology wasn’t understand by the mass market. A prominent example from the past was the Forth programming language, which started in the 1980s to conquer the homecomputer market but then Forth was replaced by other programming languages notable BASIC and Javascript. I don’t think that Forth or Linux has made major mistakes. Both are a wonderful programming environment, the problem is entirely on the user-side. They haven’t understand the system and they don’t see the potential.

The example of Forth showed what will happen next. The number of users is shrinking but the community will resist. Today the worldwide number of Forth programmers is less then 1000 and Linux is driving into the same direction. The majority of programmers isn’t interested in the GNU Compiler or in the Gnome environment, they are prefering market standards like Windows .net and Xcode from Apple. Sure, this decision is wrong and the result of a bad informed mainstream audience but the past told us, that nobody cares. Not the best technology but the average technology will make the game. Most programmers are feeling comfortable to be only the Windows guy. They know the Microsoft libraries and can create GUI apps for the mass market and that is enough. They have no need to fight against Microsoft or to change the software industry at all. They are happy, if they can program for a given infrastructure which is accepted as a mainstream standard.

That is the reason why the market share of Linux for developers is shrinking the last years. The power user have recognized that Open Source isn’t the future and noone is better then Microsoft. If somebody doesn’t support Microsoft he is out of the game.

The real market share of Linux Desktop

Usually the market share is measured by all internet users who are surfing in the internet. Less than 1% of the users have the Linux operating system installed. But the real market share is much lower. If we are observing only non-developers then the market share of the Linux desktop is 0%, which means zero point zero percent. Or to speak more direct: nobody is using Linux. Instead the people have installed Windows XP, Windows 7, Windows 10 and sometimes Mac OS X. Mac OS X and Windows are the preferred operating systems for non-developers. And absolutely nobody is thinking about Ubuntu, Fedora or ArchLinux.

But there is also a second group, called programmers. In absolute numbers they are around 20 million worldwide. And here is the market share a bit different. According to the last survey of Stackoverflow (which is in my opinion realistic), 50% of the programmers are using WIndows, 25% Mac OS X and 25% have installed Linux on their machine.

These raw numbers seems to be surprising because 75% of all developers have decided against open source software. But that is the reality. The average programmer isn’t familiar with Fedora but he uses Visual C# under Windows 10. Or he is programming PHP extensions under Mac OS X. Even in the group of developers Linux is some kind of esoteric operating system. In absolute numbers we can say exactly how many users have installed Linux on their desktop: 25% of 20 million programmers are 5 million people. The reason why the number is low has many reasons. The first question is why are so few developers worldwide there? 20 Million is very few compared to the world population. The second question is why the market share among programmers is only 25% for Linux. I would guess the problems are non technical nature. A current Linux distributions runs very well on a Windows PC and on modern Mac computers. All the hardware is recognized by the kernel, and the WLAN device works out of the box. The more important question is, what the learning situation of the programmer is. In most cases he isn’t familiar with computers at all. He have started programming 6 months before and the only written code so far is a hello world application programmed in Visual Basic and in Visual C#. Some of the advanced programmers are also familiar with Delphi and that’s it. All the threads on stackoverflow are about these topics, or at least most of them. That means, the average programmer is fully occupied with learning Visual C# that he has no time to watch for something which is better, cheaper and more powerful. So he stays on Windows and everything is fine. There is no need for change and Linus Torvalds speaks only for a minority. Linux has no support from the developer community, most of them are not interested in Opensource software and the GPL license. The community of programmers had conspired against the Linux operating system and they hope that the remaining 25% of the users will switch also to Xcode and Visual Studio. Torvalds doesn’t recognized that the game is over, no one likes Linux except the mainstream media. They have produced lots of documentary about how great free software is, and that Richard Stallman has started a revolution with inventing the GNU compiler. The reality is, that Linux doesn’t fit to the needs of programmers. They are feeling not lucky with the bash command line, and they don’t like the C/C++ ecosystem. Today’s programmers are more comfortable with visual programming environment and managed languages like Swift and .net And if somebody doesn’t work, they simply buy an upgrade from the supplier.

Microsoft isn’t the enemy

An often told myth is that Microsoft would boycott the Linux operating system but all the endusers and developers are fans of Linux. So it would make sense to win against Microsoft and unlock the full potential of a free society … The reality is a bit different. Microsoft was never a topdown company managed by somebody else. Microsoft was from the beginning user driven. That means, the end user decided which products they want. If the end-user didn’t like the new version of Windows 10 or Visual Studio he wouldn’t buy it in the store. It is a free decision, which forces Microsoft to do what their customers needs. Most energy invested by Microsoft is to talk with the customers and they doing a great job. Today’s products are better suited to the user needs then ever before.

In contrast, Linux is a system which ignores the need of the enduser. And that is the reason why his market share is so low. Linux isn’t able to fullfill the needs of the programmers and that is the reason why 75% of them decided against Open Source software. LInux is simply not what today’s developers need. In contrast to Microsoft Linux is fighting against his own user base and it misinterprets their wishes. This ideology of ignoring the customer is called by Opensource advocates freedom. Linux makes everything the wrong way. If the user wants a gui, he becomes a textinterface. If the user want’s running games, he becomes Tuxcart, if the users wants plattform indevepend apps he becomes glibc and so forth. Microsoft will win, if all the users are happy, Linux will win if he lost all his users. The secret goal of Linus Torvalds is to loose as much programmers as possible to Microsoft and Apple and reduce the Market share of Linux on the desktop.

Why Linux isn’t for everyone …

Linux was promoted in the past as the perfect operating system for beginners and experts at the same time who are resist against the Microsoft monopol. The idea was to bring Open Source on every computer and on every device. This plan worked in some conditions for example on supercomputers, servers and android phones but failed under other situations namely notebooks and Desktop PCs. According to the last webbrowser statistics less then 1% of all users have a Linux operating system installed on their Desktop PC. Long time it was unclear why Linux was a fail on the desktop, but the answer is so easy.

At first we must separate between two user groups: normal users and developers. A developer is somebody who writes at least Python sourcecode but is also familiar with the C/C++ compiler. That means, once time a month he compiles sourcecode to binary code for testing out prime number generators or similar problems. A normal user is somebody who isn’t doing so, and he opens up only normal applications like the webbrowser, Fotoediting and games. The separation between users is important because it helps to understand the market share of Linux. The surprising information is, that 0% of normal users have installed Linux on their desktop machine, because LInux doesn’t provide any advantage to them. They simply don’t need a program like g++ or the python interpreter. The only user group who is interested in Linux and give Open Source a trial are developers. Their advantage is, that LInux provides powerful programming environments for free. They don’t need to buy a Visual C++ license and a MySQL license to setup a webserver and run self-written code on it. They simple install the software with the package manager and that’s it. It is not a minor improvement but a revolution. While former developers have to pay at least 2000 US$ only for a C++ compiler today’s programmers don’t pay anything and they get the latest C++17 standard.

Let us define a situation in which a Linux makes sense and is the only choice which makes sense. A programming course at a university. The idea of a programming course is to teach the student software development at practical examples. Sure, it is also possible to develop software with Windows 10 or Mac OS X, but Linux provides the cleaner environment. The market share of Linux under such conditions is very high and nobody would argue that learning C programming with Linux makes no sense and other operating system are the better choice.

But what is the situation for non-programming environments, for example at home or with the aim to use existing software but not writing new one? Under such constraints Linux has no advantage. The non-programmer has no advantage of preinstalled compilers and powerful libraries but he misses his Windows games and doesn’t understand the bash-command line. There is worldwide not a single case visible in which a normal non-programmer has installed Linux on his desktop machine and is happy with it, even he never wrote sourcecode but uses Linux only as a enduser. Such a vision is unrealistic and that is the reason why Linux failed on the desktop.

10 years ago, some kind of reduced Linux distribution was discussed. The idea was to provide a Linux distribution which looks like the Android operating system which was develped only for end-user in mind. This system was called Ubuntu and was a stripdown version of Linux which was shipped without a C compiler and without a SQL Database. The idea was, that the target group should use Linux like Windows, but gets all the software for free. Or to make the point clear: Ubuntu Linux was shipped to non-programmers who are interested in Open Source. This idea failed. The only people who have installed Ubuntu were programmers. They used Ubuntu as an introduction and installed the missing C compiler for doing advanced stuff with the machine. Instead non-developers were not interested in Ubuntu and they won’t in future, because Ubuntu is compared to Windows 10 in a weaker position. It has the same problem like any other Windows competitors before: at first, the well known software doesn’t run on the machine for example Games, Graphic application, GUI tools. Secondly the handling of the operating system is different and even the price for the consumer is lower the market share of Microsoft is too high to replace it.

From today’s perspective, Microsoft Windows is the preferred operating system for the non-programmer mass market who are running games written by other, while Linux is the optimal operating system for programmers and servers. A hard learned fact is, that it makes no sense to promote Linux to non-programmers. They have simple no need for leaving the Windows ecosystem, they love Microsoft and they love to pay for software.

Programmers

Let us focus on the domain in which Linux is superior: for learning programming. From the beginning Linux was the number #1 hacker operating system. From day one in which LInus Torvalds has posted his announcement to the Internet all system administrators and programmers worldwide were fascinated by a Unix operating system written for desktop PC. The strength of Linux is, that the C-Compiler is shipped with most distributions, that the system kernel is available as open source and that powerful developer tools like linker and BNF parser for building own programming languages are provided under the GNU license. In contrast the programming under Mac OS X and Windows is so much worse. Apple has promoted a complicated language called Objective C together with the Xcode environment, while Microsoft has also invented his own programming language called C#. In both cases, the user don’t learn to program but to buy add on products for huge amount of money. While simple C compilers or the sourcecode of the operating system isn’t available to the user.

From a programmer perspective Linux is the best operating system ever created. The GNU license makes sense, the information available in the internet have a high quality and there is no better developer platform available. The latest iteration in bringing programming forward is called “git version control system” which was developed also by Linux Torvalds. git is some kind of personal organizer, agile development toolkit which makes programming so much easier, especially the programming in large teams. In contrast, the latest innovations from Apple and Microsoft in relationship to software development can be ignored. Closed source is some kind of anti pattern if the aim is to learn programming.

So, how can we bridge the gap between programmers who love Linux and non-programmers who don’t? The funny answer is: there is no bridge. The users are divided into two groups which have nothing to do with each other. Linux fans will never switch back to Windows, while non-programmer are not interesting in giving Linux a trial. A migration from Windows to Linux can’t be done with installing Ubuntu on somebodies PC but only by migrating a non-programmer to a programmer. That means, if somebody has written sourcecode before and want’s to learn what git is, it is very easy to convince him, that Linux is a great operating system. The arguments for Linux are overwhelming good and the transition will be successful.

The question is not, who to install a Ubuntu DVD on a Desktop PC, the question is how to convince a non-programmer that he must learn Python and git. That is indeed a bit difficult, but there is somebody out there who is able in doing so. No it is not the Linux community but Microsoft. They have many millions of non-programmers as their customers. Nobody than Microsoft knows better what they want and how they think. If somebody can convince his customers to start programming then only Microsoft. The surprising information is, that the strategy in the last years was exactly this. Microsoft has made a lot of campaigns to convince non-programmers to start writing code. For example, they have provided Visual studio express edition which are for free and made it easier for beginners to start. Microsoft also provided the Linux on Windows subsystem initiative which is some kind of Linux testing environment to teach simple bash-commands for non-programmers and Microsoft has published lots of books about programming. All these projects have in common that they are addressed to non-programmers. If somebody is already familiar with the C compilers he doesn’t need the Microsoft initiative, but if somebody is only a gamer or an enduser he can profit from it.

I think the future is easy: Microsoft will convince some of their customers, that they need to learn programming. If they have made their first steps under the Windows operating system and want to program advanced software they can switch to Linux. In total numbers these users are a small group. Worldwide only 20 millions programmers are out there. It is not possible to increase this number drastically. A realistic goal is, to bring Linux on the desktop of one of these 20 million desktops. The larger group of non-programmers which is around 2000 million people can be ignored by the Linux community. They are in the hand of MIcrosoft which is the number 1 seller for a non-programmers market.