The world of computers has changed. Sub-notebooks are becoming immensely popular, mobile phones based on Google's Android software are about to come out (T-Mobile have just announced their G1 will launch on October 22), and computers are looking increasingly like small devices that fit in our pockets. The end of 2008 might see the dawn of a new revolution in the computer industry and in people's lives. Maybe 2009 will be remembered as the year when the "world went mobile". What does this mean for the (free and non-free) software industry? Where will we be, technologically and (more importantly) culturally? Where will the market (and the money) be?
Android-based phones will soon be a lot more than artists' impressions
The direction taken by the software industry is influenced heavily by the events and revolutions that shaped it--the same (unannounced) revolutions that changed all the rules, and shaped the market and disrupted considerably the existing business models and decided the fate of once-invincible corporations. This is especially true for the branch of the computer and software industry that targets the masses, which is what I will focus on in this article.
An eye on the past
The ever-present mantra about the computer industry is that things are "constantly changing". However, this mantra might not be all that accurate: computers are evolving, yes, but evolution is not happening as gradually as the mantra would have us to believe. Instead, the computer industry (and the software industry as a consequence) seems to change suddenly, drastically, and unexpectedly. And it has been since its very beginning.
From 1975 to 1980, the world saw what can be considered to be the beginning of a new era, where computer components were finally affordable. During those years, technology enthusiasts were for the first time able to participate actively in the creation of "proper" computers (with a screen and a keyboard, that is). Before then, the costs were prohibitive. Those individuals were called hobbyists and enthusiasts--they were the real computer hackers. They had meetings where they exchanged their discoveries, ideas and knowledge. They loved computers, built them, and inspired the changes that would snowball in the next few years. At that time, there was no real separation between hardware (the actual components) and software (the programs which ran on those components). Those hackers needed to know a bit of everything--and they needed to know everything rather well. People like Steve Jobs and Bill Gates learned a lot during those years. Bill Gates really wanted to give everybody the ability to program computers with his version of BASIC (before then, the only real option was to write code that was spoke directly to the CPU...). Steve Jobs had some definite ideas on how much easier to use computers needed to be, and how important a GUI was. You can say that they both went pretty far.
The IMSAI 8080 and early home computer
The thing to remember, is that "computers" represented a pretty specialised, niche market. Computers weren't widely available. You either had to build one for yourself, or had to be a big company which needed a very serious accounting system (or some specialised machinery, which wasn't properly a computer). CPUs had existed only for a few years! Several companies were releasing or about to release pre-built "computers", and they needed software. So, for some, writing software was indeed a lucrative venture. Geeks felt (or maybe hoped) that computers were about to invade the world; some of them wanted to be the ones who would build "the" system of the future--and make amazing amounts of money in the process. (And yes, a couple of them managed!) Also, magazines that sold "kits" and instructions on how to build computers made their crust.
Computers weren't widely available. You either had to build one for yourself, or had to be a big company
From 1980 to 1988, home computers dominated the stage. At this point, names like ZX Spectrum and Commodore 64 (and later Amiga 500) were immensely common. Thanks to them, people didn't have to build their own computers: they could finally buy one already assembled and ready to go! Home computers were also immensely popular because they pleased both the hackers and the "common" users. Interestingly enough, at that point both PCs and Apple computers belonged, though oddly, to the world of home computers. Since the market had made things a little too easy for everybody, and since users didn't have to build a computer in order to have one, there were fewer "hardware hobbyists" (or "hackers") around.
There was yet another type of software which started in those years. In 1984 a somehow legendary man called Richard Stallman quit his job at MIT and started developing a clone of Unix (an operating system) which he would release for free. Richard Stallman invented a license, the GPL, which guaranteed that a piece of software would stay free and the source code (the building blocks for the software) would be available, and could be changed by anybody, forever (See textbox). In the computer industry, Stallman's action went basically unnoticed. Little did we know, that what he did would change the computer industry dramatically a few years later.
A Commodore 64 and Atari ST popular 80s home computers
The emergence of software
The end-user software market exploded. Back then most software came in "packages" -- that is, cardboard boxes with thick paper manuals and installation disks. People had computers, wanted to use them, and were willing to spend money on software that turned their expensive toys into something that was actually useful. At that point, there was no market leader -- or, more precisely, market leaders kept on changing. Microsoft Office didn't exist yet: Microsoft's word processing software was called "Multi-Tool Word" and it was originally released for Xenix, a clone of Unix. The market leader in word processing was actually Wordstar (which I used to use and love). There was also software aimed at teaching maths to kids, and -- obviously -- countless video games. Many of them were sold in computer shops. They looked and feel like tangible products. They often required large investments, because distribution was expensive.
However, this wasn't the only way that software was developed and sold. To overcome the distribution expenses, Bob Wallace invented the concept and the term of "shareware". Shareware is software that anybody can copy and use. However, to "unlock" some of the software's features (sometimes critical, like printing documents for a word processing program), they would require an activation key that users had to purchase. Since it was easy to write and distribute shareware programs, an amazing number of them was created and exchanged by common computer users. Bob Wallace's own shareware program, PC-Write, was extremely popular and was a commercial success.
Where would the money come from?
From roughly 1988 to 1995, the PC (regardless of its humble beginning) slowly took over everything. At first nobody believed that it would: PCs had both the most archaic architecture and the least friendly operating system (MSDOS, sold by Microsoft). PCs were created in 1981 as office computers, not multimedia systems. Their graphic abilities were very limited. However, IBM had done something that nobody else had dared to do: they allowed other hardware makers to manufacture "IBM compatible" machines. So, hardware makers could sell computers, and know that a wide range of software would just run on them. In 1990, I remember people arguing that Commodore Amiga would win the war and that the PC would be extinct within a few years. If you saw an Amiga 500 next to a PC, and compared the quality of the software that ran on both, that's exactly what you'd have thought but the PC eventually won. This was mostly because by the early 1990s there were countless vendors making "IBM Compatible" PCs, and nothing was going to stop them from building and selling and building and--eventually--winning. And they did. When Windows 95 came out, it marked the definitive victory of the PC--and of Microsoft Windows as opposed as IBM's own OS/2. By 1995, whoever bought a computer immediately bought a PC with Windows 95. Nobody seemed to doubt that Microsoft's monopoly was basically invincible.
As an interesting (and eventually market-shaping) event, in 1991, a Finnish student called Linus Torvalds started developing a clone of the Unix kernel which ran on PCs releasing it under the GPL. Combining Linus Torvald's kernel and Richard Stallman's software, people could have a fully functional computer with a graphical interface and associated software. By 1995, the year where Microsoft's domination of the operating system's market became reality, people could actually download (from Bulletin Board Systems--BBS--with a modem) and install GNU/Linux on their computers. Some of them did, although it wasn't very simple: hardware compatibility was patchy, and the installation process was rarely easy going.
Around this period, the market of packaged software and shareware flourished. The shareware world was helped by the availability of CDs (you could buy a CD with a collection of endless software) and BBS. Some important shareware games were released. In the packaged software world, some clear leaders started to appear (Microsoft Office, for example).
GNU/Linux, on the other hand, was completely free but it was definitely limited. Plus nobody could figure out, if everything was released under the GPL, where the money would come from.
The Internet era
During those years, OpenOffice.org (a Microsoft Office competitor) became a reality and ODF (OpenOffice.org's file format) was accepted as an ISO standard in 2005. People started using computers mainly for tasks such as email, web browsing, basic office-like tasks, and very little more. (And yes, everybody started wondering what people used to do with computers before the Internet came along) For the first time, computers became more like a household appliance which needed an Internet connection to do anything useful. Mobile phones also started to have the ability to connect to the Internet, first with WAP (which failed) and then with full Internet browsers optimised to work in small screens. Multimedia CDs became a thing of the past: the Internet--and its standards--became the new multimedia platform. And it was necessarily multi-platform (which meant you didn't necessarily have to use Windows to use it).
Thanks to the Internet, GNU/Linux evolved immensely. Linux creator Linus Torvalds co-ordinated (and in fact co-ordinates today) with all of Linux's contributors via email. The GNU project gained traction thanks to Linux, and much of the GNU software advanced immensely thanks to the Internet and Linux (as well as their contributors, who would often work on those projects for free).
By 1997, the shareware market had basically collapsed. A few companies went out of business, while others went on limping along. Packaged software was also hit severely. They slowly but surely disappeared from the shelves of computer shops and bookshops. Commercial software still existed; however, the Internet became the main distribution channel. While in 1997 you would still receive a physical package when buying a piece of software from the Internet, by 2006 you would just get the download key. Interestingly enough, when large Internet downloads became possible around 2002-2005, established commercial software used some techniques which were typical of smaller shareware companies: they would allow people to download their software for free to try it, and then forced the users to pay for an activation key to continue using the software. GPL software, during this time, evolved immensely and started to affect the market quite heavily. From 1997, GNU/Linux started stealing substantial market share from Windows NT (the server version of Microsoft Windows). Although numbers are very hard to come by, in countless cases people picked GNU/Linux over Windows NT since it was cheaper and more reliable. Red Hat, a tiny company that started selling server support for GNU/Linux (as well as their GNU/Linux distribution), became very profitable.
While successful in the server market GNU/Linux hadn't managed to erode the client market
While successful in the server market, in 2006, GNU/Linux hadn't managed to erode the client market. GPL or otherwise free equivalents of important applications started to appear: Firefox for browsing, OpenOffice.org for documents, Red Hat Linux and Ubuntu as GNU/Linux distributions. By 2006, a person could install GNU/Linux on his or her computer, knowing that he or she would have the ability to write letters, organise a spreadsheet or a presentation, browse the Internet and answer emails using exclusively GPL software. Although this put the established "packaged" software market at risk, not many people used GNU/Linux on their desktop and there was no real leader in the GNU/Linux desktop scene. The client market was largely unaffected by GNU/Linux. GPL software did manage, however, to remind people that software was becoming a commodity and that the Internet was the real target. At that point, the most important thing was to get online. You could do it with GNU/Linux, with Windows, an Apple computer: it didn't matter. With packaged software looking more like (the now disappeared) shareware, the collapse of the shareware market, and the appearance of GPL software which was completely free, things didn't look good for the mass-oriented software market.
So, where was the money? The answer is obvious: it was online. Companies started developing web applications, and discovered that needed to be creative about getting an income. There were (and are) several models here. You might have heard of Google, for example: they started as a search engine, and created ADsense, an advertising network which basically made Google rich. Others have created web applications to organise tasks and teams working together (for example Basecamp). Others again developed web sites mainly with contents, and based their income on advertising (even in this case, they often need to use and personalise an existing CMS, or Content Management System). Others developed dating platform, and made money out by asking a fee to their users when they make contact with another member. In some cases, people developed web applications so that the users themselves would create the contents for free--think of Youtube, where the users create a wealth of information and the publisher makes money out of displaying ads.
One particular class of web application was (and is) immensely successful: social networking. Sites like Linkedin, Myspace and Facebook were immensely popular, and immensely valuable. Google even tried to challenge the "office" suites (OpenOffice and Microsoft Office) with Google Documents -- online applications to manage your calendar, spreadsheets and documents.
The Internet changed everything. A computer without an Internet connection was already considered mostly useless
So, between 1996 and 2006 software (and data) moved away from people's computers, and ended up in the "cloud" -- that is, online. Software running locally on a computer became more and more a commodity, and less and less like something that was worth paying for. The Internet changed everything. A computer without an Internet connection was already considered mostly useless.
Welcome to the non-computer and non-software era
Over the last two years, people realised that they didn't need a big powerful computer to do what they always did: a phone (maybe one on virtual steroids) could do the job nicely. Amazingly enough, the main barrier was (and probably still is) in the input and output devices: the keyboard and the monitor. Technology is taking care of these issues with large screens (think about HTC's personal assistants/mobile phones) and with innovative input methods (think of the iPhone's keyboard, and Android's interface). Right now, while it's very easy to use an external keyboard on these devices, I suspect there will soon be an emerging standard which will allow users to connect their PDAs to external monitors in an easy, convenient way.
In this scenario, computer users don't exist anymore, strictly speaking. Everybody will have enough power and storage space to do whatever they like using their mobile devices (or PDAs, although it sounds too much like yet another IT acronym...). Desktop computers might end up collecting dust on the users' desks, while an intensely interconnected world will focus on communication, multimedia, social networking and online information.
This is already happening as we speak: users are spending more and more time on their mobile phones and PDAs for email and messaging applications, while laptop and netbook sales are overtaking the ones of desktop computers. As of lately (in fact, this very year), a new class of devices has been created by near-accident by Asus: the netbooks, with the Asus EeePC as the industry's king. The EeePc is an extremely low-cost computer with a small screen anda solid flash drive in place of the traditional hard drive. Netbooks are the second-last step in this convergence between mobile devices and stand alone computers. They are also the evidence that computers have evolved to tiny, portable appliances that will manage the user's communication and data. (If you are wondering, the last step is when there is no difference between your phone and your computer).
The online future -- today
The software market is shifting completely towards online applications aimed at managing and sharing information. The business model may vary (revenues are generated by online advertising or by paying users), but the main concept is always the same: it needs to be online, it needs to be accessible, it needs to give something to the user, and it needs to look good. Since last year, companies can write small third-party Facebook applications which are then picked and installed by Facebook users; the applications actually reside on the third-party server, and can display anything -- including third-party ads (the revenues will go to the software maker, rather than Facebook). Only antivirus software seems to be resisting this trend, mainly because they are a tool that is so tightly related to the computer itself.
Google's Android is about to come out. With it, a whole lot of "big phones" or "small computers" will invade the market (Android or not). This is already happening as we speak with the iPhone. These devices will be constantly connected to the Internet, and people will browse. Software companies today need to focus on which online applications this small army of users will want. Web applications that need a wide 19" screen in order to be usable will miss out on all those mobile users -- and that's simply not an option.
The business model (and therefore the revenue source) will depend on the application, but one thing is sure: there is money to be made.
The GPL is a software license created by Richard Stallman for the GNU project, which aimed at creating a complete, free operating system.
In simple (and maybe oversimplifying) terms, a program released under the GPL can be modified, resold, redistributed by anybody, freely. But, if you write a program and wants to use some GPL code, you need to release the whole thing under the GPL. So, suppose that you are writing an image manipulation program (like Photoshop). Your program needs to be able to read and understand GIF files. To do that, there is a nice component ready to use, but it's released under the GPL. Now, you have three choices: you can write the functionality yourself (which is very expensive in terms of work and maintenance). You can pay somebody for a license to use their code (but you are basically in their hands: they might raise the prices later, etc.). Or you can use a GPL library (but, if you do that, you would need to release your whole program under the GPL!). This is why the GPL is sometimes called a "viral" license. Some argue that it is too restrictive, in that it forces you to release your own software under the GPL if you use any GPL component. Other people even tried to invalidate the GPL in the court system, with the goal of incorporating GPL code (written by volunteers) in their commercial software. In the end, the truth is that software developers can pick whichever license they like, and everybody needs obey what the license says.