While I was in class, a professor tried to hammer Ubuntu and Open Source with comments that I have added below. Anyone want to help me with some ammo to put a foot in his proprietary mouth?
The disadvantages of open source are:
- Restricted choice - In virtually every area of software there are dozens if not hundreds choices for different commercial packages, but rarely are there more than one or two, if any, open source options.
I've actually found the opposite to be true! How many current forks of Windows are there? I don't mean only releases, I mean current systems. What about Mac OSX? Okay ... how many active Linux distributions are there? Open source tends to give you MANY different choices for tools, and Linux distributions are a great example. Not just Linux, ofcourse, but we should include the open source BSDs, as well ... lots of choice.
OK, how about Work processors? How many do you know for Windows? now look at Linux ... OpenOffice, KWord, Abiword, ... just look at all of the different applications that support OpenDocument, as an example.
- Poor integration with Microsoft - Open source products tend to be created by people who do not want to work with other platforms like dot net, so as a result their products are poorly integrated with Microsoft products such as Windows, do not use Microsoft features well, and fail to take maximum advantage of the Windows environment.
Wow. I can't *believe* he mentioned .NET. Guess what ... I'm a .NET developer!! Also, guess when I switched to Linux? While working as a full-time .NET developer! In this case, your professor is simply wrong, as there's great .NET support on Linux. This is simply wrong.
Also, as a general rule, I've found the opposite to be true, yet again. Because a relatively small percentage of people use Linux, I find that Linux application developers nearly always create cross-platform applications, so our buddies on Mac and Windows and use the applications. I think Linux actually gives you great tools for creating cross-platform applications. I enjoyed doing .NET development on Linux, because I knew it would work on Linux, Windows, and Mac. Look at things like the popularity of wxPython for easy cross-platform desktop application development, on Linux.
- Poor vertical integration - Open source products tend to be written by people who buy into the "software tools" idea of UNIX whereby one puts together an ultimate application by stringing together smaller applications like pearls on a string.
I buy into the "software tools" idea of UNIX ... what's his argument against it? I like to integrate pre-existing tools, each of which is good at doing 1 thing. It works really, really well. The key is having environments that make the integration seamless between all of the different tools. I'll take BASH + UNIX tools over PowerShell (+ CLR), any day of the week, thank you very much!
- Poor interactive capabilities – there aren’t any or few open source packages with an interactive user interface as good as "average good" interactive packages in Windows. Packages like Adobe PhotoShop, Visual Studio, Microsoft Word and others have GUIs of extraordinary breadth and depth, all accomplished with care and attention to hundreds of thousands of details of the user interaction.
As an IT manager / sysadmin who sees users working with Word/VisualStudio/Photoshop on a daily basic, I'm not sure that I entirely agree. Office 2007 is so confusing that my boss, a pretty technical savvy guy, can't for the life of him figure out howto complete simple tasks like ... sort an Excel worksheet by a column. It's a very unintuitive interface. That said, we have Office 2003 users and OpenOffice users and no one seems to have problems with either. They're both fine and people can easily find the options they need.
As for VisualStudio, I don't even get into that because of personal bias. I've seen teams of developers waste entire days trying to get their VisualStudio to open our project, that was opening fine until it, randomly decided to crap out. I don't have experience with the current versions, but VS2003 and VS2005 were both very buggy releases, especially 2005. I have so many problems with VS that I stopped using it and started programming .NET in vi and ended up having far less problems, as compared to the people who continues to use VS.
^ btw, Eclipse is a GREAT equivalent to Visual Studio, just as OpenOffice is a great equivalent to Office
As for Photoshop, it's the primo app of it's kind. Isn't it kindof unfair to take an app that's 1 of its kind and say "Linux sucks because this very unique application doesn't run on it"? I have no trouble with 'the GIMP' on Linux but, to be honest, I can't wait for a stable port of Paint.NET ... Paint.NET is an open source clone of Photoshop that has 99% of the features that 99% of Photoshop users need (might not be ideal for full time professional designers). Again, this is an open source application ... on Windows! (believe it or not) Open source has a GREAT selection for most types of applications.
- Difficult to use - Open source packages tend to be written by engineers for other engineers and for many of them it is accepted that ordinary function will involve creation of configuration files, writing scripts, or actually editing the source code and recompiling.
It's obvious that your professor hasn't used Linux in 4-10 years or so. Not only do you never have to use a terminal to install things in Ubuntu (as there are great graphical tools), but the system doesn't have to compile anything either (except in a few unique situations). You do NOT have to know anything about scripting/etc to install things in Linux ... there are great GUI tools.
That said, however, for people who *are* engineers or who simple care about being more productive, Linux has WAY BETTER tools than Windows does for making things like installing software absurdly simple for advanced users. You can use GUI tools in Linux and be fine, but for those we're curious who want to become more productive, Linux is very, VERY rewarding. There aren't many Linux tasks that can't be easily scripted to be automated. This is my #1 favorite thing about Linux and it's why I can never go back to Windows. I can install all of my favorite software on a FRESH ubuntu machine in ONE LINE, without any human interaction required whatsoever. Compare that to the 12-24 hours that it can easily take to fully reinstall all of your favorite software on Windows (especially if you use big applications like Visual Studio) and to tweak everything to get your settings that you like, etc. You can script _everything_ in Linux. This is a HUGE advantage ... it's SO much more productive.
- Higher cost of installation - Commercial vendors are forced by intense competition to configure their products for easy installation. Open source tends to have much higher installation costs because a much greater degree of expertise usually is required for installation.
Lame and untrue, for the most part. If we're talking about simple workstations ... you can install Ubuntu from a LiveCD in ~ 15 minutes and it comes with 99% of the software that most people need (Web Browser and Work Processor). It's very easy to script the installation of custom software, if needed. Windows is obnoxious to install, takes longer, doesn't come with hardly anything out of the box, and installing Windows applications is an intensive process that requires man hours for no good reason. I've found the TCO argument against Linux to be totally bogus over the years. Compare the cost of ownership to the cost of licenses, to the stress of dealing with licenses, and to the stress of simply dealing with Windows, and Linux works out quite nicely.
- Higher cost of operation - Open source products tend to require a much higher degree of technical expertise to operate and maintain, so they end up costing more.
See my mention of the TCO argument above ^
I've found this to be bogus. Guess what? Businesses use technically savvy people to administrate their Windows machines just like they use them to administrate Linux ones. Can you find a Windows admin for cheaper than a Linux? Typically, yes. In my experience, however, you get more for your money with Linux administrators because they're move experienced and have better technical skills and, because Linux is so geared towards automation and the scriptability of things, Linux sysadmins *NOT ONLY* administrate your systems, but they're often very good business efficiency experts. They can spot inefficient workflow / business processes and use tools to automate redundant work.
YES, you can get your neighbor's kid, who knows something about Windows, cheaper than you can get a qualified Linux sysadmin ... but is that really a decent argument? Well qualified Windows sysadmins won't cost much less than well qualified Linux ones.
In the end, I'm of the opinion that Linux saves you lots and lots of money on things like integration and automation. Not to mention how customizable Linux machines are ... you can easily customize workstations to integrate with your business applications or ... whatever you want. It's open source and customizable.
- Higher cost of technical support - Open source costs more to support because the software is typically self-supporting.
This is the same argument as the past 2 bullet points ... it's the Total Cost of Ownership argument _again_ ... open source support is *different* than commercial software support, not necessarily any better or worse. With commercial products, I usually have to email their support people and wait to hear something like "we're sorry but our application doesn't support that, thanks and have a nice day." With open source software, there are real people that you can talk to and get support from, whether it be on forums or IRC or google groups / usenet / mailing lists ... however. Not to mention the fact that you can purchase support for many open source applications, making this a non-issue!
- Lack of capabilities / features - Open software packages tend to have far fewer features and capabilities than commercial equivalents.
This is too open ended ... no examples are given. Once again I have to say that my experience has been the opposite. Because open source applications are *open,* I find that they tend to have the features that I need because real people download/use the products and, when X feature they need isn't available, someone will often program X feature and contribute it back to the project.
"Far fewer features" ... what are some examples? The Linux desktop environments are more featureful than the Windows equivalent ... there's Compiz/Beryl and the 3D effects ... Nautilus/Konquerer are better, IMHO, than Explorer (I can easily connect to SSH/FTP/SMB/etc using Linux file managers, but not with Windows). The Windows terminal (CMD) is pathetic. Just pathetic. Linux terminals destroy Windows/Mac terminals (even if you include PowerShell, imho). Let's see here ... OpenOffice handles many file formats and exports to PDF (I have to install PDF printers on Windows machines). The default Gnome/KDE text editors are FAR more featureful than Notepad (with features like Syntax highlighting and tabs). I mean, we could go back and forth forever, but there are no specific examples here to reply to.
- Poor customer response - A well-run commercial software company will immediately turn around customer requests for enhancements. With open source, if you don't do it yourself you are at the mercy of a disjoint community of developers.
"immediately turn around customer requests" ... ? With all due respec to your professor, what has he been smoking? Ever tried making a feature request to Microsoft? Yeah RIGHT. As if. Many commercial vendors couldn't care less about your feature requests. The same is sometimes true of open source projects but, you know what? Atleast with most open source projects, if you wanna see the bugs/features that the developers are currently working on ... it's PUBLICLY AVAILABLE! You can just goto their public bugtracker. Hell, you can sign up and add your own feature request! If the developers don't want to implement that feature, you know what else? YOU CAN DO IT! Try that with proprietary software!
- Lack of innovation / codification of obsolete architectures - The glacially slow pace of development within open source movements and the design by committee, consensus process tends to assure that obsolete architectures get implemented within open source.
One word: compiz. Currently, Linux 3D desktop effects CRUSH the competition ... let's hear your professor tell us how that's not innovative. He's got this 100% backwards. Big monopolies like Microsoft lead to a lack of innovation. Open source is innovating like crazy ... what's Microsoft given us lately? A multi-touch "surface" table that no one can afford to use? A slow, buggy operating system that no one's systems are powerful enough to run? I fail to see where the innovation is lacking in open source. Github/Gitosis, anyone? Open source collaboration tools are getting better and better by the day, making open source even more active, making it easier for people to contribute to open source projects to improve them ... or fork them for their own uses or ... whatever. Where is this "glacially slow pace of development" ... that is SO BACKWARDS. That's Windows Vista. Ubuntu comes out with fresh new releases EVERY SIX MONTHS, like clockwork. Linux distros are constantly coming out with new versions and new distros are popping up all the time. Your professor has _no_ idea what he's talking about with regards to this particular item. 100% backwards. Open source projects can get things done in a fraction of the time that centrally managed old-school "waterfall" commercial projects can.
- Exposure to Intellectual Property theft issues - If you buy an open source product you have no assurance whatsoever that you are not buying intellectual property that has been stolen from its rightful owners, or has been created illegally by people who are violating a nondisclosure contract.
... ? First of all, how do you BUY an open source product? Second, this is why licenses exist. I don't get it ... I thought common knowledge was that lots of proprietary projects steal open source code, not vice versa. What does your professor think? That people reverse engineer Windows to steal its code? It's windows that has some open source code in it (maybe lots).
- Greater exposure to security problems - If your adversary knows your source code and your mechanism they have a big leg up on compromising your system.
LOL. wow. your professor is NOT a security expert, that's for sure. This has not proven to be true. Generally, open source *nix systems are considered to be far more secure than proprietary systems because of the number of developers / the number of users working with the code or analyzing it who can find such exploits and fix them.
That said, this issue has always been very controversial. Which is better for security? Open source or closed? In my opinion, open source is better, but folks like Cisco might disagree. The common knowledge, howver, is that *nix systems are more secure than Windows ones and NOT just because of the different market share percentages.
- No warranty - If you use open source you are on your own. There is no single company backing the product.
Okay ... so you're expecting your product to fail now? If you really want a "warranty," buy product support for your open source application(s)
- Fraudulent status as 'open' source - If one actually looks at where some of the 'free' open source was developed, one finds that it is not really open source but is the result of an enormous investment of funds, quite often by a poorly-managed public agency. The GIS example would be GRASS, which was developed at immense cost by the Army Corps of Engineers.
This is not only wrong, but it's offensive. BULL ****. I'm glad to see a valid example here, but 1 example doesn't mean that this is widespread, WHATSOEVER. This is backwards, yet again. Most code "stealing" that I've seen has been when proprietary software developers have used opensource code without respecting the licenses of that code, specifically GPL code. It just doesn't make any sense. Why would anyone steal code and then open source it to the world, as if to say "LOOK EVERYONE! I STOLE THIS!" It's the proprietary vendors who can get away with stealing because they compile GPL code into their binaries and nobody's the wiser.
Reference:
Open-source business, (March 2006), retrieved April 20, 2008 from
http://www.economist.com/business/di...ory_id=5624944
Rotow, Dimitri. Disadvantages of open source: A letter to the editor, retrieved April 20, 2008 from
http://www.gismonitor.com/articles/c...903_Dmitri.php
Bookmarks