…and it’s very likely to offend virtually everyone, but there you have it. I’ve been thinking a lot about this lately because of some very in-depth (and heated at times) discussions with a friend, which is why I’m writing about it now.
OK, I’m going to go ahead and just say it, and let the chips fall where they may. Two trends that I fear are going to destroy the profession of software development are offshoring (companies moving their IT or programming divisions overseas for cheaper labor) and… open-source software licensing.At least, the most common types of licenses that the open-source developers put on their products.
When I say "destroy the profession," I don’t mean that it will cease to exist, or that eventually no one will write software anymore (or that no one in countries with decent labor standards will). I mean that the profession will cease to be a viable way of making a living. It will go the way of most types of craftsmanship, with very few people able to make their livings that way. It will be reduced to a hobby.
The trend of offshoring has obvious long-term effects on the profession. Contrary to what the big-business lobby would have people believe — and we must remember not to trust any articles on this topic that come from the mainstream media, since these news companies are all owned by companies that do it — offshoring isn’t good in the long term for anyone except for the executives.
- It’s bad for the developers that lose their jobs, of course. Again, contrary to the claims of the business lobby, it makes absolutely no sense that in some given time period (usually 20-30 years), the workforce in countries with good labor protections will come into superb jobs as a direct result of these somehow "inferior" jobs being moved overseas. The world of IT just doesn’t work that way. It needs constant development and improvement in order for these "better" jobs to even exist, and that just won’t happen with the developers in the private sector out of work. Tech advances won’t come in intervals of 30 years (or whatever) with no one much in private business working on them. Not to mention that the lack of widespread offshoring in the time period of 1975 to the present — 30 years — certainly didn’t prevent enormous advances being made. This argument is utter hogwash.
- It’s bad for the programmers that are actually hired to do the work. These companies do it to save money, so that automatically means that they won’t pay them as well as they would pay developers in countries with better protections. They won’t have the salaries or the benefits that the original employees had.
- It’s bad for the global market. By hiring programmers in other countries, a company like, as an example, Microsoft is just cementing its hold on all markets. These programmers aren’t forming their own companies within their own countries. They’re not producing products that companies like Microsoft would be forced to make their own stuff compatible with. The net effect for a competitive market, with actual choices, is very negative.
- It’s bad — or at least, not net good — for the consumers. Honestly — have YOU seen the price of software go down? Are you saving money as a result of offshore outsourcing? I don’t bloody think so. One can say "oh, the price remained steady for X software package, whereas before it would’ve gone up because the cost of living is going up and the original developers would’ve been paid more for the same work." OK, but what’s good for the goose is good for the gander. The cost of living doesn’t go up JUST for the software developers. It goes up for everyone. Not to mention that it’s been proven, repeatedly, that the average salary in the United States has not gone up at a rate even comparable to the increase in the cost of living. That, in plainer terms, means that the same — or close to the same — money is not going as far. But the cost of that software package stays the same or even increases. The net effect of this is negative for the consumer.
Now here’s the controversial part of this rant. In addition to the offshoring, I think that the most common forms of licensing for free open-source software are equally bad, if not worse, for the IT community.
For the uninitiated, open-source software is software for which the original source code is made available. Much of it is free, but not all. No thanks to a law called the Digital Millennium Copyright Act, companies can make it illegal for people to look at the raw code for their programs just by slapping encryption on it. This is equivalent to the publishing industry producing titles that only gave away the ending, making it illegal for anyone to read the book and find out how that ending came about. Note: The computer code — like the book in my comparison — is automatically copyrighted. If a competitor took the same code and produced its own product with no changes or only minor ones, they could be sued anyway. This provision of the DMCA is nothing short of a slap in the face to people who are inquisitive and want to learn about the code, and perhaps customize it for their own private use.
Open-source software actually began before the DMCA became law. The first version of the Linux kernel, the operating system around which a lot of open-source code is built, was written in 1991. But the DMCA accelerated the trend. Open-source code was about intellectual property.
Now, it’s not really about that. Officially it is — the mission statements on websites that have it will speak in those terms — but the only people who take advantage of that are software developers themselves. Most users download it because the majority of it is free. They never look at the code; they get it because they are not inclined to pay $500 for a software package when a compatible open-source one is available for $0. There’s nothing wrong with that, either. That piece of software very rarely costs $500 per box to make, even when the large costs of development enter the picture. (Not to mention that this initial cost drops tremendously when they can pay $0.50 an hour for a programmer in an offshoring operation rather than $75.) The cost of software is hard on consumers, and open-source software gives them the opportunity to save some money.
The problem occurs when large entities like corporations and governments start downloading free open-source software en masse. Right now, commercial software still runs on a majority of corporate and government computers, but free software is making some significant inroads. At a lab where I worked, jointly operated by the U.S. government and a private corporation, my division used nothing but free distributions of Linux. The software was licensed such that anyone, private consumer, small business, or big entity, could download as many copies as they wanted, for as many computers as they wanted, without paying a cent for it.
In the past, a lot of these big companies would not get free open-source software because it either was not that compatible with commercial software or they had the notion that it was inferior in quality. Now, open-source software is usually built specifically to be compatible with its commercial equivalent, and many packages are getting better stability and security ratings than the commercial versions. (Hmm, a possible additional effect of outsourcing? I don’t know, but it could be.) So big companies are starting to go to it. And here’s the key: Whereas with commercial software they’d have to buy expensive site licenses to install it on multiple computers, most free open-source software is simply given the "General Public License" and there IS no site-license requirement. They can put it on as many machines as they want.
It makes me deeply angry that some open-source programmers don’t mind that their work is being utterly raped by the very people that the founders of the movement would have thumbed their noses at. These kids (and yes, it’s mostly kids who have this attitude) are quite open about the fact that they simply like the idea of having *their stuff* on thousands or millions of computers. They don’t care that the companies are having a huge laugh at their expense because they are getting unlimited copies of their high-quality work without having to pay a cent for it. By not making corporate entities have to buy site licenses based on the number of machines they will install it on (while preserving the "free" aspect for private households), these programmers are undermining their very profession. Maybe they don’t have an eye for the future, but they won’t be able to make a living off posting their hard work online for XYZ Corporate Conglomerate to download for free and install on 5000 computers. And as long as there are people who are willing to do that with their work, those developers who do want to make a living can’t compete.
Of course, there are some people who are aware of this, and don’t mind Joe Q. Public getting a free copy of their software but don’t want XYZ Conglomerate to have it. There are special licenses available for this, too, and one important point is that the creator of a work can put any license on it that he or she wants. So it’s not "all free or none." It could also be licensed such that this licensing was not a financial burden for small businesses. There could be graduated fees based on the number of computers that it would be running on. That way, the largest entities, those with the most financial resources (and the most machines), would have to pay the most. None of this would affect the open-source aspect of the code, either; it would just be either part of that site license or a separate license to look at the code and make modifications to it for one’s own needs.
No one will ever be able to legislate this. Open-source software, or free software, can’t be made illegal, and it certainly shouldn’t be. If someone is willing to give away the right to use their work, then that is their right to do so. This is just a plea to the open-source community to not exacerbate the destruction of computer programming as a means of making a living, and to put more sensible licenses on software. There are things more important than having your moment of "fame."