Don't Be a Sharecropper
An anonymous reader writes "Tim Bray, best known as an XML Heavy, has an
entertaining rant about why you should be developing for *n*x, OSS, or (especially) the Web. Because if you're on a proprietary platform, you're a "sharecropper"."
A farmer who works a farm owned by someone else. The owner provides the land, seed, and tools exchange for part of the crops and goods produced on the farm.
Unfortunately there is little land left to start you rown business (read: software company). Perhaps you'll get a garden sooner or later, but in the end the chances are against becoming the next Microsoft plantation.
Damn, need to find some better metaphors here!
--------
Free your mind.
No. You're an indentured servant.
Then what does developing the cygwin libraries make you? A serf? A blockbuster?
Also, an inaccuracy in the article:
"Are You a Sharecropper? If you're developing software for the Windows platform, yes. Or for the Apple platform, or the Oracle platform, or the SAP platform, or, well, any platform that is owned and operated by a company. They own the ground you're building on, and if they decide they don't like you, or they can do something better with the ground, you're toast."
This doesn't even make sense to me. The analogy doesn't work. If I code a game made to work in windows 98, Microsoft can not (at this point) block your game from being run at the OS level (aka "taking away land") but really only through suing you to stop the game from being distributed.
Do I have this wrong? This doesn't sound like being a sharecropper, but living next door to a cranky neighbour who might sue you for keeping your lawn unkempt and lowering neighbouring property values.
sharecroppers.
He gives the story of Watson vs Sherlock. But what if sherlock was someone's open source/free project. What is the difference from the viewpoint of the "sharecropper" between having the rug pulled out from under you by a new piece of software that gets added to windows and a free version that someone develops. To the end user, they both look free (as in beer of course.)
All computer applications fall into one of three baskets: information retrieval, database interaction, and content creation...
Huh. So, when I'm fragging bad guys in Quake, is that "database interaction" or "content creation?"
Browsers are more usable because they're less flexible.
"Gosh, this ball and chain is great! I don't have to run anywhere near as fast as I used to in order to get the same amount of exercise!"
Any sufficiently advanced technology is insufficiently documented.
Like many high profile OSS ranters, he's ignoring the fact that if most workers try to challenge their company's existing model (the sharecropping model) they are likely to be firebranded in their jobs or worse. Fine if you work for yourself or whatever, not fine if you have bills to pay and a status quo to keep.
We'd all love to get paid to do interesting stuff on exciting platforms (I'm an RHCE, but in my current job we don't even have a Linux box in the building). Unfortunately, boring stuff on Windows keeps the rest of us (and our numbers are dwindling) in jobs.
I might be modded a troll, but then some mods have more time and more idealism, others are pragmatic.
"It's not your information. It's information about you" - John Ford, Vice President, Equifax
How about a small pulpit icon, to represent that the following story contains religious views regarding open source software?
While there are many of us who enjoy contributing to open source (myself included), the fact remains that the majority of people who program for a living are constrained to do so on proprietary platforms of one form or another, even if they are working on proprietary applications built on top of open source software.
Articles (and topics) such as these, while nice trollbait and conversation fodder, nonetheless constitute a view that is basically a religious viewpoint - the position that giving up your evil proprietary platforms and converting to one of the true open source ways will save you, while somehow not causing you and your family (and bandwidth hungry habits) to starve to death, is as much a position based on blind faith as any other I've ever heard.
Until the people put Microsoft back into it's place (OS Development only) and also break the DirectX sharecropping the whole point is moot.
But look at who's gotten sharecropped.
Winzip
Realplayer/MusicMatch
Netscape
I can go on..
It's true anytime someone comes up with a good idea MS goes ahead and builds it into their OS. Look at what they did to Java when it came out you had Sun Java and MS said nope.. lets make MS Java and make it work better with windows than Sun Java..
They took HTML and did the same thing.. Now many people have to program for IE and then the Other browsers as time permits.
Basically the inability of the US courts to stop Microsoft from doing what they continue to do is the same as the south winning the civil war.
It's an idealistic rant, and as with most idealistic rants you should listen, remember a few points, and then go back to what you were doing. If you get all nutty and won't touch anything but Linux, for example, then you're just hurting yourself. Look at it this way, over 50% of homes in the United States (don't know about other countries) now have PCs, and 95+ percent of them are running Windows. That's a big, big, big market. Getting all high and mighty doesn't make that go away.
It was so wonderful when the browser interfaces came on; the vendors had to discard all those stupid sliders and cascaded menus and eight-way toggles, and only leave the stuff that mattered.
There are badly designed GUI apps, but there are also badly designed web pages, and badly designed web interfaces. I teach at a school that uses a browser-based system for entering grades, scheduling classes, etc. The interface sucks, because it's slow and unresponsive, and you have to click through many web pages in a row in order to get where you want.
There's also a problem with saying web==open. A lot of web applications use proprietary extensions, like Flash. Actually, one of the coolest web apps I've seen recently is a Flash video game on a Harry Potter web site.
Find free books.
This article has the fundamental flaw of completely ignoring the market place. While it's great that there are folks out there who can make a living creating applications for *nix platforms the bottom line is that that just isn't true for all of us. Look, for example, at the games industry: despite how much we want people to make games for, say, Linux there just isn't the market to support Linux only (or even *nix only) game development right now. If studios want to make their money back on big budget titles (which is what the consuers want to play) then they need to sell a _lot_. That's just not going to happen, as I think Loki amply demonstrated - they did a great job, but even without the costs of initial development (they only did ports) they couldn't keep it together long enough to avoid going out of business. The market just isn't there.
The article ignores this idea completely, to it's detriment.
Behold the Power of Cheese!
How many times has MS given something away????
Let's see... should we start at the beginning?
Imbedded Tiny Basic into MS DOS - removing all language competitors
Included primitive Games with windows
Included Disk Compression, virtually putting Stacker out of business.
Included Lan management software into the operating system, causing pain to 3com, Novell, and others.
Gave away the browser, causing serious financial strain to Netscape
Bought Hotmail (free email), and gave away browser-based email.
Included a bazillion features into the office suite, eliminating lots of specialized software applications.
Gave away SQL for small apps, in the form of MSDE.
Microsoft has made a practice of eliminating competition by giving away software! Where have you been?
As much as I would enjoy not building MS-centric apps, tools, etc, it pays a lot more than building free stuff. Building only free stuff would be okay if you're independently wealthy and have no life.
Here's an analogy. Say you live on an island of vegetarians. You do happen to have your own land, and decide to raise pigs. That's fine and dandy, until you need to sell your pigs to pay the bills.
Redundant, perhaps, but hey, I get tired of this you-suck-if-you-support-MS ranting. Really, we all do what it takes to pay the bills. Maybe rather than sitting around ranting anti-MS, people could try doing something like making actually useful, easy-to-use-and-configure-for-the-bonehead-masses stuff.
Hmph.
"Would it kill you to put down the toilet seat?" -- Maya Angelou
No, but sticking to one's principles does. Imagine all the things down through history (including OSS) that would have never happened, if they had all said: "The majority is too powerful, let's give up"?
But we're essentially talking about _operating systems_, something that geeks get all hot about but no one else cares. And it isn't even all that easy to explain to someone--even a technical someone--why Linux is "superior" to Windows. Many, many intelligent programmers use Windows for software development, not because they have to, but because they prefer it. So what it all comes down to is that "principles" in this case are pretty thin, like "Which is better, Buffy or X-Files?"
Most people don't care what operating system they're using. They care that they can edit photos or play games or write books or whatever.
I have been in a similar situation.
I do a lot of computer-technician stuff on the side, like fixing servers, installing software, repairing computers.
What I really like to do is work on server programming and linux system configuration, but I generally do not get too much call for that. Most of the money I make on the side is usually gained from fixing whatever crappy software incompatiblity problem introduced in the latest version of Internet Explorer or windows.
In specialized industries (read Apartment Management as one) companies tend to have VERY expensive software that only runs well on one version of windows or on one version of Internet Explorer. When the companies who wrote this software went web based they tried to use ActiveX controls to give them the exact same power over user interfaces that they had when they were developing their stuff in Visual Basic or C.
99% of the support calls I get is to go out and return IE to version 5.5 after it breaks compatibility with some overengineered web based application (that depends heavily on ActiveX for cute menus and the like).
To add insult to injury, software companies in these specialized markets tend to like to keep their customer's data close so they cant switch providers. Usually this means that the web based software is hosted on some machine far far away, that no one but them will ever have a chance at debugging.
People try to use their existing models far after they are outdated, and it only hurts the customer. Just ask anyone in the Appartment Management industry how many times they have been burned by vendors.
-Jonathan
The Ro Factor - Jeep/Linux Weblog
Try:
* Browser
* Disk Defragmenting
* Disk Diagnostics
* Media Player
* Remote Desktop Access
* TCP Stack
* Terminal Emulator
* Accessibility Extensions
* Zip file utility
* I'm sure there are more, that's just from the top of my head...
Each of these *was* a viable community of third party software. Now they are just assumed into the OS. Some still have product out there, because of entrenchment. Microsoft says this is good for the consumer, and frankly I have to agree in most cases. But don't say "how many times", because the OS encloses more space on every revision.
Sig under construction since 1998.
He kind of misses the fact that there is a market out there, and that, well, growing carrots on your own farm doesn't really help if there is NO MARKET for carrots.
Saying "Do not develop for proprietary platforms" is absurd, that's where the money is, that's what everyone uses at the moment.
In a good software product, the core elements will be portable, and moving to a new platform, if need be, will not be a problem...
it's analogous to a sharecropper using his own techniques to grow food, which are only known to him, and also having his own, smaller farm on the side, as well as having a few leads on new land where people are encouraging him to come over and develop. His big sharecrop might not be great, but he has options.
Saying it is about OSS is rediculous.. if Linux for some reason ceases to be a desirable platform for people, your software business is in the same boat... your farm up and left.
There are many rasons to develop for OSS.. but this isn't one of them. Developing for Apple, or Microsoft, or anyone, yes, you have to worrk if that one vendor stops supporting development.. but to stop supporting developers on your OS is suicide.
Now musicians, on the other hand... Up until the Internet, the only way for a band to get national coverage was to buy into the RIAA's sharecropping scheme. Now you can put your band's MP3s on your web site, but chances are that (among other things) the RIAA will see that you're hosting a bunch of MP3s and have your ISP shut you down. Music is a much closer analogy to sharecropping than programming is.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?