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"."
If you're doing something I don't approve off (ie; developing software for a closed system) you're dumb and I'll use a whole page on this here interweb to tell everyone.
Okay. so he has one or two points, the first is that the corp that owns the OS can develop their own software and give it away to push you out of business. Funny, I can't say I see that MS Paint or even Adobe PhotoShop (btw, by his logic, Adobe are sharecroppers) have prevented PaintShopPro from becoming successfull... I don't see how the inclussion of CD-burner functionality in the latest OS from the softwaregiant we love to hate has slowed down the sale of for instance Nero... and despite the fact that a certain company bundles a browser with their OS, Opera and other alternative browsers seems to be gathering followers by the minute.
His second point is more strained; that the one controlling the OS is the one in controll of all sotware that runs on it. This is, as even I can see, stupid at best and FUD at worst. If this held even remoptly true, each and every firm that makes any sort of software, be it wordprossessors, MP3-rippers or graphicsmanipulators, would provide their own underlying OS to stop others from using it to something else... No one can controll what people run on their computers, no matter what OS.
There will always be a marked for second- and thirdparty developers on all operatingsystems, both closed and open source. The difference is, if you develop for closed source, it's more accepted to actually ask for some money to compensate for the time you too to write the code.
So in the end, I'll say he is plain wrong. There are a number of good reasons to develop for OSS, but this is not one of them.
Everything in the world is controlled by a small, evil group to which, unfortunately, no one you know belongs.
I just had a conversation about this topic with one of my co-workers: Seems Microsoft just lets new software markets run until a clear victor is decided by the end users, then they completely redo it and destroy the competition taking the valuable ideas from the previous victor.
One way to go is to cross-platform develop. Most of the development I do is for games and as such I use allegro:
http://www.allegro.cc/
If you go to the site you'll see plenty of mediocre games, but once you realize the power and dev-friendliness behind the allegro library you'll be hooked.
One could create an OpenGL accelerated game (using AllegGL) without changing a line of code! Realistically, you would want to change some code anyway, but everyone interested in game development should check it out.
The only thing it's missing is a bonified network library. It has some out there, just none that I would consider complete or complete & useful.
Can't wait to finish the game and then release it for DOS, Windows 98, ME, 2K, XP, Linux -- possibly Mac and even BeOS! (stability issues with the last two, I believe.)
Bray jumps from the Watson/Sherlock experience to branding everyone who uses proprietary tools as a sharecropper. His argument would be more convincing if he cited more than this single case of a big company pulling the rug out from a little company. (Yes, they exist, but they are few compared with the number of working developers.)
In any case, what Bray is really saying is that if you develop for open source and/or the web, then no one is going to come along with a new product that mimics or competes with yours.
Of course, that's wrong. Competition exists. In fact, a case could be made that opportunities for competition in the open source arena is greater than in the proprietary arena because the cost of entry, development and distribution are much lower. (E.g., see Gnome vs KDE)
-- Slashdot: When Public Access TV Says "No"
Shifts in the IT industry don't happen overnight. Even "the Internet" took years to become widely adopted. That is, years after it managed to hit the mainstream. And this is a sector of technology whose association with radical and fast adoption coined its own "Internet time" phrase. Open Source, and its poster child Linux, are very similar.
This sort of article isn't a call to arms and demand for radical change. It doesn't expect you to mass in to your work's datacenter and reformat everything to *BSD, Linux, or whatever is your favorite OS platform. It doesn't expect you to stomp in to your boss' office and demand "give me OS projects, or give me a pink slip."
But it is a call for change.
If you code on your own, look at OS alternatives. If you have any chance to comment on choices of technology or new trends, mention OS alternatives. If a new project comes up and you have a chance to work with OS technology, jump at the chance.
The environment I'm working now used to be a very conservative Windows shop. Sure there was Unix and Open Source architecture hiding out in the wings. But whenever management's gaze hit on some aspect of the IT infrastructure, it was inevitable that a Windows solution was to follow. Not anymore.
We are currently replacing key pieces of architecture with a mix of OS infrastructure and proprietary applications that run on that infrastructure. We are critical of solutions that are based on Windows. And even in situations where Windows is the safer bet, we are also deploying Linux systems to compare and provide perspective.
Our infrastructure is still involves a lot of Windows. It probably will for years. And there are still a good number of Windows bigots and zealots around pushing for that status quo. But over the years, our environment has changed. Management's outlook has changed. And the scope of available projects have changed.
But it took years to happen.