Open Source Worse than Flying
george writes "In an article published on TheRegister, Otto Z. Stern makes the bold statement that "The only thing as goat-rendering awful as flying has to be the progression of open source code." Accusing Open Source of being buggy and its devolopers of preoccupation with mudane details."I'm sitting here...wondering when the Linux freaks are going to solve their Ubuntu versus Mandriva color scheme debate or maybe even write a printer driver so that something I buy actually works with my open sores PC.""
Who exactly is Otto Z. Stern? What is his background, credentials, past software development involvement, and so on?
Cyric Zndovzny at your service.
Is someone just trying to provoke Slashdotters into an absolute frenzy lately? I've been seeing a flamebait, as-offensive-as-possible anti-F/OSS story every couple of days, and not the same one over and over again.
I'm all for showing both sides of the fence, but damn, choose people closer to the center instead of moonbat extremists.
Well, in that case, comparing Firefox with IE6 is like comparing the intelligence of a 30 year old to that of a 13 year old. "I'm way smarter than you because I've had more time to acquire knowledge!"
When it comes to open source altenatives of programs that actually, you know, have regular update cycles (Photoshop vs Gimp, OpenOffice vs MS Office, etc), the open source version is always trying to play catch-up and rarely actually matches the quality of the original before that original suddenly gets it's next big update and surges further ahead. What is the reason for this? One reason is focused/centralized design, a concept that (from my understanding, at least) is in conflict with open source development.
As the original article pointed out, open source development is usually obsessed with things that, frankly, don't usually require that level of obsession, while ignoring things that actually do need to be looked at. Yes, it ends up GREATELY excelling at the things it obsesses with (security is usually the big example being touted), and that is an important positive aspect of open source development. However, there's a price that's paid for this, in the area where in-house development picks up the slack.
UNIX: A computer user is defined as a programmer. WINDOWS: A computer user is defined as a consumer.
Wow. I kinda think that this post proves the previous guy's point exactly. Specifically, where you say that you can configure KDE to basically look like OSX. If you think that a KDE theme is all you need to get the user experience of OSX you're just being silly. If it's "good enough" for you, then you are exactly the person too close to things to see how bad they suck. Further backing up the original guys post is the fact that you are modded so high. I am not sure there is an easy way to cure what appears to be an epidemic of "bad taste" among *nix users. I don't think there is a pill or anything :)
There already are such standards: printer = postscript, camera = FAT (filesystem for flash memory), video card = VESA, joystick = USB HID, modem = Hayes, etc. The problem is that these either cost way too much (postscript printers, real hardware modems) to be viable in the current consumer market (different from the business market, which is why you should have no problem using multi-thousand dollar "enterprise" printers but can't use your $50 inkjet), or they don't let you use the advanced functionality of the device (video card, joystick). In the first case, consumers aren't going to go back to paying $500 for a printer or $100 for a modem when they can get a $50 printer and $10 modem that work with the 90%+ majority OS. In the second case, while you may get your hardware working, you're going to bitch that you can't use higher resolutions at proper refresh rates or take advantage of all of that hardware acceleration in your $200 video card, or that you can only use two of the ten buttons on your joystick. There's simply no way to design a standard driver that will allow designers to continue to advance their product and still remain competitive (even "standards" like OpenGL allow for extensions, because if it didn't it would've been dead years ago).
We'd also be stuck in the early 90s, technology-wise, because nobody could or would advance the state of the art. Standards are all well and good, but you have to be able to extend them for them to remain viable. Look at HTML for example -- the deliberate snubbing of standards by Microsoft and Netscape forced the standard to move forward. Yes, it resulted in crap like <blink> and <marquee>, and it caused a lot of compatibility pain (do you use iframes or layers? IE events or Netscape events?), but if that hadn't happened we'd still be stuck in the days of HTML 3.x, using tables for layout and not having anything close to CSS (or worse, we'd have Netscape's javascript-based style sheet language instead).
Standards are defined by committee, which the absolute worst way to innovate.
Yes, I will concede that this is a big advantage for open source developers. They, in fact, have many advantages. I do not dispute these things. However, they have many major disadvantages as well (someone elsewhere replied that they do not have the money or research and focus groups that a corporation has).
These "advantages" combine to produce open source software that is regularly updated and patched, and stays on the bleeding edge of fundamental technological innovation. The "disadvantages" combine to produce software that is often and, in quite a few ways, inferior to commercial software equivalents that share a similar update cycle (IE is obviously a poor comparison then because it hasn't been updated in years, so consider a comparison between Firefox and Opera).
UNIX: A computer user is defined as a programmer. WINDOWS: A computer user is defined as a consumer.
Let me see, gnome-terminal: No emacs: No Ctrl+C never work in terminal applications, and I don't think emacs have ever cared about any kind of UI standards.
You cannot expect emacs to adopt Ctrl+C for copying (or any of the other 'UI standards') when it runs on many, many different platforms and has a large user base that likes the bindings just the way they are. Of course, you could re-assign the bindings, or use an emacs that has bindings you like (Aquamacs allows 'normal' Mac bindings). Of course, in terminal Ctrl+C has a predefined meaning (to kill the currently running process). I would feel quite lost of I tried to kill a running console app and got no response.
Your point is probably that we should change from the way that feels natural to us to something that seems natural to other people. Honestly though, the kind of person who likes using Mac shortcuts is not very likely to fire up Emacs or gnome-terminal. If they want to learn these things, surely a natural thing to learn are the keybindings? I guess this just goes back to the point that Linux developers are largely in this to make life better for themselves. It is ok to make things better for other people in the process, but it becomes really difficult to motivate when people want you to do things that are good for them but bad for you.
Languages aren't inherently fast -- implementations are efficient
I code best of all when I'm seeing my company's stock rising every week.
BTW, my experience in dealing with open source developers is that they're generally somewhat better-than-average coders, and very poorly led. Particularly when they're self-employed.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
it seems to me that he is mostly upset because software he does not have to pay for is not being developed in exactly the way he would prefer. i for one do not expect people to whom i am not contributing money or help to give a damn what i personally want from the software they are developing. but i prefer to not have to pay $300 for software developed by people who exhibit the same ammount of apathy towards myself as those who give their product away for free.
I love OSS. At least half the applications on my computer are OSS, I'm writing this from FireFox, in the background I have Eclipse and OpenOffice open too. But I still have some issues with OSS.
It's not the quality of what OSS projects produce, it's the difficulty of getting involved. It's like a rite of passage. You can't just open up a compiler, read the source, and start typing code. Getting started is a complicated process. There are numerous OSS projects I'd love to get involved in, but actually setting up my computer to have a functional environment is frequently more work than I can stomach. In comparison, designing and writing code is far easier than configuring my system to prepare to join an OSS project. Some people have said that it's no more difficult than understanding the system at a commercial project, but I disagree. Any commercial projects I've been involved in usually have their computers already configured so you can just start working, no break in stride.
For the most part, the thought of how much work it's going to be to get started keeps me from even taking the first step to get involved. I spent many hours just trying to configure my system to get involved with the Mozilla project, and didn't even get to the point I could review the code because of build problems. And of course real life intervenes so the amount of time I can spend at once trying to configure my system is limited.
Maybe this is a necessary hazing ritual, but in my opinion, the day that software developers don't also need to be System Configuration Experts, the progress of OSS will skyrocket. If there were simply an executable file that you run and it setup a complete environment where you can just start typing code and contribute, OSS would progress at light speed because much less capable developers could still contribute with small bug fixes, or even clarifying comments, adding comments, or just restructuring code modules.
Some people might think that's a bad idea because complete idiots could try to participate, but there's numerous ways around that like ranking/priority systems attached to code reviews (i.e. Positively ranked developers would have their code reviews take precedence over unknown developers, and trolls who not only didn't produce anything valuable, but even wasted reviewers time with complete nonsense pseudo code could have rankings knocked down so they wouldn't even be visible to review)
Postscript isn't a good standard for printers. It offers flexibility that printers just don't honestly need 99% of the time. It's a fine standard for the 1% that do need it but really shouldn't there be a standard for the other 99% of printers? No fancy communications are needed to print. All you really need to do is select a few printing options and transfer raw image data. Heck, get fancy and make it transfer compressed raw image data to speed up printing. Not at all hard - they just don't want such a standard. This would not make printing any worse or more expensive.
FAT isn't a camera standard. It's the filesystem that is used on most memory cards. It's a default standard because it's simple enough to fit within that small space and work in that price of hardware and it works well with Windows. It tells the camera nothing about how to communicate with the computer. Actually a lot of newer cameras are becoming standardized in how they communicate (showing up as a removable drive) which is good. There is no reason for any camera not to follow this standard for still photos. Streaming cameras could use some work on a standardized interface though.
VESA is a loose standard. It's more of a video API than a real driver. It doesn't support required modern features. Video cards need basically the same information to do what they do. Most software already uses standard API's such as DirectX or OpenGL to access these cards. There is no reason that the drivers can't be as standardized as these API's. Doing so might raise the price slightly by moving processing that goes on on the CPU to the card but I doubt it'd be much because the processors of modern video cards are already extremely powerful and flexible.
USB has nothing to with joysticks other than being the generic method by which they connect. It doesn't tell the computer how to understand the joysticks input. Joysticks are fairly standardized but they are growing less standardized and that is bad for stability. Do you want your game to crash in the middle of a firefight because it has a non-standard driver that doesn't work with your video card? Do joysticks even need to be recognized as different from a mouse? Standard mouse drivers understand multiple axis at a high precision and many buttons. What else does a joystick need?
Modems were mostly standardized until some moron invented the concept of a winmodem. Winmodems NEVER work well. They offload hardware processing to the CPU which has the mixed effect of slowing the computer and making the modem less reliable. Brilliant. The difference in price between a real hardware modem and a winmodem? About $10 back in the day - probably less now.
All in all I see no argument for not standardizing. You can allow standards that allow extensions. As you say OpenGL and many others allow that. The difference between that and no standards is that with extensible standards there are fewer places for problems to develop and as standards grow to support new concepts products can be adapted to follow those standards in new versions.
Without standard interfaces the PC probably wouldn't have made the huge impact on our society it did. By following standard interfaces the consumer has choices and can expect things to work together even when made by different manufacturers. The trend towards no standardization is hurting choice and reliability. Would you buy a harddrive that instead of following a SCSI standard decided to implement their own LUCI (Less Universal Connection Interface) interface that wouldn't work with your PC or only if you jumped through a lot of hoops? Probably not.
We are stuck in the 90's technology wise because of lack of standards. Has IE improved since the 90's? Not much. We should have rich interactive websites that degrade cleanly but Microsoft doesn't see supporting these as worth their effort so they've pretty much killed the market. They knew they couldn't compete with the web so they killed the web's development. Yeh, great! IE still doesn't support decent CSS or
At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
Point by point (skipping some that I don't have an argument with):
FAT is a de facto standard now, which is how standards should be created IMHO. Even my 4.5 year old digital camera hooks up just fine as a USB storage device. There's nothing more that a camera needs to do in terms of PC interaction, and almost every decent camera can do this. And even if your camera doesn't, you should buy a camera that uses removable media so you can always pull the card out and use it in a standard reader instead.
The problem is that drivers are the abstraction layer for the hardware. By moving to a standard like this, you're essentially saying that your abstraction layer needs to be built into the hardware itself (like nVidia already does to support their unified driver model, where a single driver binary will work for everything from an ancient TNT to the latest GeForce 78xx). Depending on the complexity, you're talking about a lot of added cost for an already expensive product (if you buy bleeding edge, anyway), and don't think for a second that the manufacturers won't pass that cost on to the consumer. At least for video cards, I think the model we already have (standard APIs like DirectX, SDL, and OpenGL to abstract away the hardware) is the right way to go. It may not be 100% perfect, but it's a damn sight better than the old DOS days where every video card had its own special interface.
You missed three important letters -- HID, or Human Interface Device. Theoretically, all input devices (keyboards, mice, joysticks, even webcams) should adhere to the HID spec and at least provide basic functionality with a proper generic USB HID implementation. That they don't is a problem, but the standard already exists. Perhaps this is a case where the standard is "bad" (too strict, too vague, not extensible, etc).
This paragraph sums up everything that you have to say nicely. Do you really believe that this isn't the case already?
Seriously, the scenario that you describe of not knowing the internals is the reality for the overwhelming majority of computer users already (including quite a few Linux users).
Having said that, the power of Linux for those that know more is a serious advantage as well. There will always be a market for mechanics and engineers.
Throw the bums out!
They've lost touch with the fact that people don't care about any of that anymore.
Yes, most people never cared about "any of that", now or ever. But, luckily for all of us, some people happily lose touch, and make interesting things.
If people are screaming at you, and you don't like what they are saying, you should probably hang out with some different people. Or at least walk away.
So shut the fuck up already
There ya go: All the openness of the open source world right there in your post. Good job.
Write boring code, not shiny code!
Wow, that's a stunning statement to read mod'd so high on slashdot (nevermind, upon preview it's knocked to a 2). My comments never clear '1's, but all the same: When I read things like that, I think whatever part of humanity arguing against 'capability for better control over their systems' can keep their fsck'd up propi. OS's and closed softs, and pay for every new capability, and use only software with a tard-GUI slapped on it, buried in EULAs and restrictions and all your programs locked up and drm'd to hell.
'Tinkering' with your system in the way that you misdirect doesn't seem as common. You get drivers you set high level settings in your kernel to pick what you want, etc. Many people aren't attempting mods to drivers or modifying kernel routines or tweaking protocol stacks ever so slightly. (OTOH many are since they can and it is of interest to them).
But the freedom comes both there and much higher levels of control. You can configure the hell out of many software packages, most provide sensible defaults as well. The difference is you have the freedom to alter these. AND if you don't like how it works fundamentally, if you need something more and have the capability or wish to pay somebody who does have the capability, then you/they can change it! It is not illegal to do this w/ OSS. How is seeking this manner of operation everywhere out of touch? It's what should've been done all along. It just takes a while to fix all the mistakes where this isn't done yet.
It is illegal to do w/ proprietary and closed source softs that infest common user's environments. It is this software that will ultimately sink into obscurity hopefully with a kick in its collective ass for all the trouble it's caused as it goes down.
It IS better over here. If scientists have discovered something that 99.99999% of the population do not initially care about and have possibly never heard of but it's achingly better in so many respects, shouldn't they be vocal about it? And when you have defenders of the old crappy ways to do it, who resist this fundamental change in society, shouldn't they be told again and again how this thing that many people do not use is better?
For me I'll stick with the 'lost touch' crowd that hasn't given up to that sad of a state. It's where the stuff with the highest future potential I've seen anywhere is at.
Linux users are already using Linux, so they don't want anything.
'The corporate space' is already using Linux, so they don't want anything either.
Me? I want another beer.
I installed Windows a while ago. After the installation was finished, I noticed that the resolution was something like 640x480 with 256 colors! Drivers for the vid-card weren't installed at all, so there was ZERO hope for 3D-acceleration. Sound-card wasn't installed either. I had drivers for the NIC on CD (luckily), so I could install it offline so I could afterwards hunt for drivers online. I also had to sloinstall AGP-drivers, chipset-drivers and the like. All that was handled automatically in Linux.
Well, I can have fully-functioning (with drivers and apps installed) Linux-installation in about 30 minutes, whereas with Windows I need to hunt for drivers and apps, because the post-install system is 100% un-usable. The system also ships with lots of great software, whereas Windows does not (so Linux can be used for actual work right after the installation, whereas Windows cannot). latest hardware is supported out-of-the-box, whereas W2K does not (I need to feed it driver-FLOPPIES during installation so it will work with my SATA-drive. Since I don't have floppy-drive anymore, that might cause me problems in the future).
I also have great network-integration in my Linux-desktop, something Windows sorely lacks. Remote-admin-capabilites are great on Linux, less so on Windows.
I happen to use the Apple Keyboard as my keyboard. In Linux, I plugged it in while the system was running, and it worked right away. In Windows, I plugged it in, and it didn't work. It wanted to install drivers for it. fair enough, I asked it to get the drivers from the net, and install them, which it did. It then rebooted the machine. But I then noticed that the keyboard didn't work yet, so I had to fetch my old PS/2-keyboard so I could log on. It then installed more drivers, and rebooted the machine. But it still wouldn't work, and it installed some more drivers. After three reboots, it finally started to work.
In Linux, the installation took about 5 seconds. On Windows, closer to 10 minutes.
But the story doesn't stop there! Few weeks later I moved the computer to different location, and I had to unplug everything. AS I plugged things back in, I noticed that the keyboard didn't work in W2K. So I had to fetch my old keyboard from the storage (a separate building), so I could log in to the machine. W2K then proceeded to reinstall the drivers (with reboots and all), even though the keyboard was already installed once! Apparently Windows got confused because the keyboard was on different USB-port! Needless to say, Linux "just worked".
Lesbian Nazi Hookers Abducted by UFOs and Forced Into Weight Loss Programs - -all next week on Town Talk.
Ok. How much better was Office 2000 compared to (the proprietary) StarOffice 5.2? How much better is Office 2003 compared to OpenOffice.org 2.0? What is the trend here?
That's not even the important question. The important question is how much better are the office suites compared to the market's needs? I mean if MS Office goes from 50% to 90% of what the users need, or 90% to 99% or 99% to 99,9%, good for them. Even if they claim OpenOffice isn't catching up to MS Office, it is certainly catching up to the market. Same with GIMP. It might not be catching up to Photoshop any time soon, but for most people it's becoming a very powerful photo editor (though on a personal note, I prefer Paint Shop Pro over either, YMMV). Because ultimately the content is the key, and there's only so much the tool can influence the end result.
The same goes for the desktop, which is really the join of all the applications as well as some system utilities. The free desktop is never going to compare to a "best of breed" desktop where you've put together the most expensive and powerful commercial software available. Does it need to? No. It just needs to fill my needs, which to an ever decreasing degree it does. I don't know where the "cutting edge" is, and I really don't care. And I bet I'm a lot closer to it than 95% of all computer users...
Live today, because you never know what tomorrow brings
OK first off, I am a pilot, I support and use many common Open Source projects (Fedora, Mozilla Firefox/Thunderbird, OpenOffice.org) and I read the full article.
Now on to the rant!
This guy doesn't even attempt to understand the mechanics behind the scenes of an airline. There are anywhere from 20 to 550 people on a single flight. The fact that there are so many people alone is reason enough for so much security on an airline. As soon as you step onto the aircraft your safety is that airline's reasonability. The long wait is also caused by the number of people that are all on one flight. You if you can only process 5 people a minute, with the larger flights that means that it will take nearly an hour to process them all at peak efficency. Unfortuantly people show up late and not everything is going to happen at peak efficency, so you have to show up early if you want to make it to the aircraft still feeling safe. As far as making you wait in the terminal with stupid people, well he must just get bad flights. I have made a few good friends in my travels.
Now to the open source issue. The problems that he described aren't so much with the acutal process of open source but rather with people arguing over insignifigant things which leads to delays in parts of the programs that really matter. This unfortunatly is a problem that cannot be helped in a large democratic like environment. With any majority rules system of decision there will be conflicts of interests between the participants. I have not had any real problems with drivers on my own linux box, granted I do have some pretty old hardware. But the Linux environment is still under heavy development so I would let that slide. Mozilla Firefox has already become far better than their Microsoft IE and with Sunbird well on the way the Tunderbird/Sunbird combo will be much better than Outlook.
I think 90% of the Linux/FreeBSD/Other complaints I hear, is about hardware not working properly. People seem to blame the operating system for the lack of drivers for their hardware. Last I looked, hardware manufacturers are responsible fro writing the drivers. Hardware is NOT submitted to Microsoft for drivers to be made. We are fortunate enough that we have some very talented developers who DO make drivers for hardware, not because they have to, but because they can. Someday maybe people will call manufacturers and complain there is not a driver for other operating systems, but until then, I hope they at least realize, its not the fault of the operating system.