Is Open Source too Complex?
Jason Pillai writes to tell us ZDNet is reporting that at last month's Microsoft Worldwide Parter Conference in Boston Ryan Gavin, director of platform strategy, claimed that one of the big downsides to open source is complexity. From the article: "Gavin noted that the flexibility of open-source software in meeting specific business needs also means systems integrators and ISVs have to grapple with complexity costs. 'It's challenging for partners to build competencies to support Linux, because you never quite know what you're going to be supporting,' he added. 'Customers who run Linux could be operating in Red Hat, [Novell's] Suse, or even customized Debian environments,' he explained. 'You don't get that repeatable [development] process to build your business over time.'" More than once I have had complaints that my setup is more difficult than necessary. Is open source really that much harder, or just different than what most are used to?
Because, lets face it - what Gavin is saying here is that proprietary software vendors find it hard to develop for linux. *shrugs* Maybe, that is not the same as saying that developing for Open Source is complex.
MS - time to face it, almost noone apart from you is making alot of money selling proprietary sofware (alone). The real cash is in services, services, services.
There are shills on slashdot. Apparently, I'm one of them.
Delivering mono based software is straightforward. If the machines have a configured connection to repositories (like with Ubuntu's synaptic package manager), then install mono, and the new software just runs. In short, the virtual machine architecture simplifies portablity.
Solution: standardize. Where I work, IT supports either XP/Novell or Debian. If you divert, you're on your own.
8 of 13 people found this answer helpful. Did you?
Quite right. Microsoft has a huge advantage in terms of consistency and lack of complexity, provided of course that you just want to run Office on the desktop. Oh yes, which version of Office?
Pining for the fjords
At first glance it seems to me that Open Source is indeed more difficult, because it is guided by different principles than Microsoft. Also, with less centralized money, individual variants have their own quirks.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
Generally UNIX systems have much steeper learning curve - it takes longer to learn how to use them but then the user/admin/developers "performance" is much higher. So on the 1st or 2nd look it can look complex but once you start thinking how would YOU design these systems to "fit", then most of the time you'll come to the same solution as already exists - think PAM, X11 (protocol is crap but design is good), pipes, all-config-in-text-files etc.
Sorry, but I read this as "Choice is confusing - stick with what you are comfortable with. Hey look, that's us!"
This sort of gibberish is what you would expect from the most popular product in the market who are being challenged for the first time in a while.
To add insult to injury, when the stuff is in trouble, I cannot go to the source code and find out what's up or fix that stupid error message that says "Cannot open file" but nothing about WHICH freakin' file.
In sum: I find open source much, much easier to support. When there's a problem, I can talk to other people that have had the same problem *and have had the resources to fix it*, unlike e.g. Microsoft support. (Microsoft support have actually called me to find out how to fix a problem in a Microsoft product - a problem that should have been trivial for them to debug if they had code access.)
Eivind.
Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
Complexity is the downside of diversity, but diversity has important benefits.
Supporting -Linux- from a cold-start is a pain, not OpenSource.
With Solaris and FreeBSD (as examples) you know what you're in for when you get there. With linux you never quite know for sure. Sure, you can gear yourself up with most of the more common setups (Debian, RH, etc) but beyond that things fracture into thousands of variants. From starting scripts to configuration files, it's a mess.
And its nowhere near to completion and cannot beat Zimbra or other. It's looks apauling and cost the earth.
And we bought this because Lotus domino was EASY to develop. Sure with the notes client on everyones PC, but this is web development.
So now which top 100 website uses domino for its backend heh?
Simple, have standards that people/distributions can *choose* to follow.
Projects such as Linux Standard
Base (and others, list / talk about them if you know of them) allows
distributions to have a common point and common environment.
I think GNU/Linux will learn from the fragmentation of Unix. Part of the
reason why Unix didn't develop a standard was that each closed version was
competing against eachother for customers. With Linux there is no to-the-death
competition since the work is shared and co-operative.
Ryan Gavin's statement about Free/Open Source Software being to complex is a complete no-brainer and doesn't even remotely reflect reality.
The truth is, complexity in computers and computer software is a tricky thing to tackle. As computer systems become more complex, complexity itself becomes a problem as integrating all the different components of high-complexity software into a working system as a whole is getting more difficult.
The perfect example is ms's own windows vista. That piece of software is so complex ms just can't get it to work properly. Delays are the logical consequence. Otoh, Free Software profits from having the source code available, not necessarily reducing complexity but making it easier to get along with it.
Summary: Complexity is a problem for software, but it doesn't matter if that software is free or non-free. Ryan Gavins statement is just what you would expect it to be, a stupid piece of FUD that might sound somewhat sophisticated to a non-guru but every proper software engineer would be rofl about.
Software is complex. Incredibly complex. Horrendously complex. All software. No exceptions. It's a fact of life.
I'm finding most software I'm running today is far more complex than it needs to be. With open source you can look at the source code and maybe understand why its too complex but most of the time its just a developer taking a short cut.
We all have examples of complex software gone bad. I'm guessing the 1st open source example of this is sendmail 5. Its complexity was required for what it used to do and that ended up leaving lots of holes in lots of systems over the decades. For a while people learned from that mistake. IDA Sendmail cleaned up the config. Bind's config files were redesigned. CERNS web server was excessively complex and the developers of NCSA http learned lots of lessons from that. The Apache team learned from there mistakes. Today Apache 2 is much simpler in most cases that CERN's server was even though it does far more.
The major issue with complexity today is the confusion between an Operating System and an Operating Environment. Linux is an OS but Ubuntu is an OE. OS X has Mach as an OS but several OEs including FreeBSD.
I like the KISS (Keep it Simple Stupid) for daemons and opening systems. That means every step of starting the system should be clear and easy to understand. That means being able to read the config files (no binaries or unreadable XML please). It means that programs should use a limited set of shared libraries (Solaris init needs a buggy XML? why?) The OE can be as complex as needed but the OS should be simple and clean. If you forget that, your system is going to be owned by some script kiddie.
It can't be compared to Windows which is mostly a unified platform. This does not count service packs, which many big users reluctantly adopt because they can lead to incompatibilities (even if slightly).
Hopefully with the advent of LSB and Portland binary and desktop standardisation will be a non-issue.
Administration is a completely different set of problems, though. For now Windows administering easier to learn and documentation availability is better. In linux old style messing through myriads of config files and non consistent behavior accross distributions (example: LDAP+automounter, SSH authentication over Kerberos) still result in more expertise and more time needed to to set things up.
The complexity involved in writing open source is equal to that of writing closed source - the poster confuses open source vs. closed source with single-platform vs. multi-platform. Observation: A lot of closed-source software runs only on windows. A lot of open-source software *also* runs on windows. In this context, it is true that open source is more complex than closed source, because it is more flexible.
There aren't a lot of differences to expect in compiling a package under Redhat, or Suse, or Debian. The real trouble lays in hardware- and platform differences. I've written a cross-platform application that compiles and runs on Linux, Windows and MacOS. I'm quite confident that it will compile without changes on different Linux distros, but there was some trouble involved in getting it to work on Windows and MacOS. The added complexity is a small price to pay for having the flexibility of running your software *everywhere*.
To me, the benefit is that I've gotten used to common pitfalls, and I've picked up some best practices that *always* work rather than only under certain circumstances. It'd be a safe bet that on average open source programmers are more standards-aware than their closed-source colleagues.
Visit http://ringbreak.dnd.utwente.nl/~mrjb/growingbettersoftware to download your free copy of the book
You can run Debian with a few different kernels and, apart from differing levels of hardware support, there is no difference from a system administrators perspective. Code written for one POSIX-compliant will usually work on another if the same shared libraries are the same.
Saying you support 'Linux' is silly. It's like saying you support 'UNIX.' Saying you support RHEL makes sense. RHEL[2] is a complete operating system with a set of defined library versions, a documented filesystem layout, a minimum specified set of supported system calls, etc.
[1] Modulo a few hundred vendor-specific patches.
[2] Substitute your distro of choice here.
I am TheRaven on Soylent News
The problem that Microsoft faces, is that their own software does speak for itself, and is provides a convincing argument that Microsoft's proprietary closed-source model is failing.
1. Is open source more complex? Answer: No, consider SAP.
2. Is it hard to develop for Linux deployment? Absolutely. There's too much worry about what libraries are going to be available on a particular distribution. At the company I work for, we have pretty much given up development for distribution to arbitrary linux systems. Now we put our software onto a LiveCD using Knoppix, so that we know the platform will have the right utilities, libraries, etc.
Writing software is complex; maintaining an operating environment, too. Paying other people to do work you don't want to is outsourcing. I'm not yet been convinced that outsourcing does anything other than provide short-term gain and is often at long-term expense. And buying a software platform outsources the required development work. I'm not surprised that MS, as a software company, need to reiterate that software is complicated (because it makes people realise the value of their products), but for companies to expect that software development would be easy is daft.
I thought it was, "Developers developers developers developers"
This is the same argument MS used for Java for years. It isn't true for Java either but it amazing how many people ended up believing it even here on slashdot. The fact is most large systems are pretty complex. The art of writing software is giving the person who uses it the impression that it is very, very simple. Take Goggle for instance. The search engine does some truly staggering stuff to return results to you when you type them in that box. You don't generally think about this because it works.
Now think about how often when using an MS product you suddenly realise that it is doing some really clever stuff because it doesn't actually work. An example:
Excel used to have a limit on the number of characters in a cell. That limit was 255.
The limit was lifted, in, I think Excel 95.
However if you have a worksheet that contains text greater than 255 characters you can't copy the sheet to a new book. If you use the copy paste commands from the window bits of formatting get lost. If you use the "copy sheet" function Excel will truncate any bit of text longer than 255 characters. If you use the same function but perform a move instead of a copy it works just fine. Now that is complex.
Having managed both Windows and Linux systems in an environment with 500-1000 machines, I can say that the workload ends up being about the same. If someone were to tell me that managing Linux is "too complex", I would respond by saying that you just haven't yet learned Linux, but perhaps have learned a specific distribution. In essence, Windows is a single distribution and learning only one is easy enough. However, once you understand the fundamental concepts of Linux (or any unix-like OS), adapting to a new distribution is relatively easy. There is a learning curve with Linux, but there is with Windows too. Just ask anyone who has switched from a Mac to Windows. If you're not willing to learn, then you're just lazy.
Ouch! The truth hurts!
Open source communities, including users, foster somewhat different attitudes and habits about software complexity. In a way, I expect an OSS package to show me its complexity up front. I want to know more about what my software is doing, how to configure it, etc. I don't "buy" OSS based on how shiny it is or whether or not the salesperson was attractive. And I try not to buy out of sheer ignorance either. So complexity - or someone's idea of it - is a definite plus. Much better than half-assed "simple".
;)
For a Microsoft product, I fully expect that its going to balance stupid with too-simple. Thus its usefulness to me is significantly diminished. But I know people who are exactly the opposite, and look at a Microsoft product as keeping them from having to know things about their computer. Me, I'm more worried that I don't know enough
At some level of computing, it's going to be complex.
I personally think that the "certification boom" really insulated many people from the reality that computing systems are, in general, complex. Many IT/IS people became so pigeon-holed that they came to believe that their little corner of the IT/IS world was all there was. Now, it seems that diversity of knowledge is again becoming the desired hiring trait over uber-specialization.
Besides, flexibility typically comes at the cost of complexity.
My mom always said, "Jim, you're 1 in a million." Given the current population, there are 7000 of me. God help us all!
If they can't handle transparency ("complexity") they should go for alternative OS' like Windows or MacOS.
Linux is great for giving choices in every aspect covered by modern operating systems. You can configure Linux to do EXACTLY what you want, not more or less. If you don't care if the OS does EXACTLY what you want you migt stick to what suits your needs best. The market offers the right OS for everyone.
Is open source difficult? Yes, if you are just an average user. No, if you are a system administrator-type of user and that you manage information system for a living.
If you are just an end-user, someone who uses computer to do something else (creative work, accounting, marketing, sales, whatever) and you don't know anything about computer, then yes, I guess Open Source is still too difficult for you... unless you have a sysadmin close at hand to (a) install your machine and (b) make sure it's updated regularly. Then, Open Source can be -- should be -- just as easy (if not easier) than Microsoft products. Open Source GUIs, such as XFCE, KDE or Gnome, once installed and configured properly, are just as easy and friendly as Windows. Of course, the ultimate in user-friendliness is Mac OS X, but that's another story.
Please note that the term "user" -- as used above -- is not negative at all in my mind: I can perfectly understand that your job has nothing to do with computers, and that you don't have the time, or the inclination, to learn more about computers. And no, I don't think there is such as thing as a "Power User". Either you know enough to manage your own machines, or you don't. People who know just enough to be dangerous, but not enough to clean up the mess they have made, are users in my mind. Dangerous ones, but users nonetheless.
On the other hand, when it comes to system administrators, Open Source wins hands down. Things like Apache, vsftpd, NFS, CUPS, perl/python/shell scripting and, especially, OpenSSH make my life (and the lives of countless other people) so much easier than their Microsoft counterparts. Plus, they are a lot cheaper than all the Microsoft products, they are more reliable, easier to manage, upgrade, patch and install. Seriously, consider the following examples to upgrade a machine or an application:
Sure, to get to the stage that you actually can type these commands under OpenSSH and know what they do, you need to put in a lot of work. But the result is worth it. And, if you are a sysadmin worth his/her salary, you'll probably have a passion to learn that kind of things. Once learned, these commands result in less downtime, less cost, more customer satisfaction and a more efficient company. All in all, Windows, with its lack of security, Registry Database, its rather ugly GUI and its general flakiness is not good enough or "simple" enough when it comes to systems that must run 24/7 and support dozens, or even hundreds of users.
Linux, on the other hand, may not ready just yet for the desktop. But it will one day. Which is probably why there is an un-ending stream of FUD coming out of Redmond these days...
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
I saw "opensource" and then "microsoft" and giggled.
:(
I am, however, a tea-giggler. So now there's spillage every where
OS can be too complex, granted, but thats because where the light is focused, in development, there is a harsh learning curve. OS tends to be for OS programmers. Companies like RH, Mandriva et al, are the beautifiers.
Mind you, I wish autoconf never existed.
..a notoriously anti-competitive monopoly is saying that options are bad?
That is funny on at least 17 different levels. LOL
I know everyone's trying to draw an equivalency, but for the portion that people* actually use. Is there really that much of a difference?
..."
*Keeping in mind the audiance that's being used in the story.
"Customers who run Windows could be operating in 2000, XP, 2003 Small Business,
According to slashdot, the uptake of new windows is slow.* Very contrary to your "you could run into ANYTHING premise". In fact it's going to be mostly homogenious because businesses buy windows in bulk, be it from one hardware vendor, or the advantage program.
*So slow that some are running the 98' series, instead of the NT series.
Pretty much all implementations of Linux follow the same layout, /bin, /etc, ... Yes it's different from windows and yes there are some slight variations, but once you learn the concepts and discover that ascii configuration files are vastly superior to binary registries you will find that it is much easier to deal with. Most distributions also provide a set of simple and easy to use gui interfaces for configuration that make everything accessible to those who do not like to deal with ascii files. windows on the otherhand is a nasty complex beast that tries to hide any advanced configuration in layers of of ui and non-intutitive organization.
The bottom line is that it boils down to what you know, and whether you can be bothered to learn a different system.
The difference between Canada and the USA is that in Canada healthcare is a right and gun ownership is a privilege.
..Microsoft says exaggerated nasty things about their competition in order to sway people their way.
In other news, there will be weather today.
Slashdot Burying Stories About Slashdot Media Owned
That sounds like a comment aimed at end users, because by definition server admins have the training to make their own choice.
To a point, for desktop End-Users, let's presume a simplified version of the Windows world where the company gave all the Win98 boxes to charity and all that's left is Win2000 and Win XP2.
With a very few exceptions, these two OS's are close cousins. "No, the media keyboard doesn't work as well with Win2000." But to a degree, once all the silliness goes away, there are relatively few OS level problems, and more user "I lost my file" problems.
From this viewpoint, having someone take away your Sloppy-But-Useable XP2 box and replace it with some brand of an OpenSource OS *WILL* cause pain. The terrified enduser will flee far, away, back to that comfy monopoly.
However, I am disturbed by the general reports of Vista. I think it will require significant work and adjustment for endusers. Suddenly, if the enduser *has* to struggle with something anyway, the choice changes.
"I'm going to be in for a storm anyway. Would I rather struggle with Vista, or take my best shot at a friendly development OS?" I'll freely admit I'll have a parallel XP box running as long as I can hold it together, while I slowly watch the market and see who solidifies as the Must-Have distro.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
OS error.
I agree, controlling the foobar deamon by editing the plain text /etc/foobard.conf is much too complex. Oh for the simplicity
file
of the registry!
Seriously. One of my favorites really thinks 192.169.1.0/24 is a valid private ip address.
Since the "Suits" perception of "IT Expert" is a Windows Monkey who is better than they are, needing to actually UNDERSTAND how it all works together isn't a requirement.
Technology -- No Place For Wimps! Grateful Dead and Jerry Garcia Chatroom -- http://www.wemissjerry.org
How about some examples? MSSQL is perhaps one of the easiest RDBMS to install/use of them all (yes, I've used Oracle, MSSQL, MySQL, and PostgreSQL) even if it doesn't scale as high. Put in the install CD and hit the various Next/OK buttons and you are done with a system that, by default, is pretty good. MS documentation is typically leaps/bounds ahead of what's available my man pages. MySQL actually has decent documentation for many things, but for others it falls on its face.
If administrators have to resort to the reading the source when something fails, there is a problem. This is at least as bad as having to put in a support call. Digging through the source of a project that you aren't familiar with (potentially written in a language that you aren't familiar with) is a big timesink. Figuring out and debugging why the failure happened in source that you aren't familiar can also be a huge effort. While it does give the specious feeling of accomplishment because you actually 'fixed it' yourself through your own effort when, in fact, you spent a whole week dorking around with something when you should have been able to ask someone or looked up the problem and have moved on to other projects after 15 minutes.
I'm not saying Microsoft is always the best but your examples frankly suck at trying to prove your point. You pick perhaps one of the easiest to install/use RDBMS and say it's hard and then you say that digging through foreign code in potentially strange computer languages to find some bug is the best thing since sliced bread.
The one point I *will* give you is that with OSS, you *can* do those things, but I'd only consider doing them in extreme situations or if I'm tasked by my boss to do so. With most software, OSS or not, if I'm not specifically tasked to get it working, if it doesn't work after 15 minutes, it's deleted and I find something else that'll do what I'm looking for. Life is too short to spend days trying to get someone else's piece of software going that coredumps or has some other wierd behaviour, especially given the amount of software out there these days.
Especially because it's funny that you pay so many X dollars for proprietary support, and open source support is just so much easier to deal with. That's just sad on Microsoft's (and other software vendors - Oracle, I'm looking at you) part.
The guy on the street corner shouldn't have a better watch repair system than the guy in the jewelry store.
True, doesn't work for everything (e.g. 3D acceleration), but otherwise does wonders with respect to compatibility.
The Raven
If Microsoft says open source software is too complex, it must be so. Gosh, I'd have to say Microsoft nails it on the head every time they open their mouths about open source. This proves yet again that a Slashdot post has a intelligent headline and insightful blurb. Oh, and by they way, monkeys might flight out my ass.
"You'll get nothing, and you'll like it!"
Is Windows not too complex?
-K
...This is marketing bluff. I'm doing administation for both Linux and Windows (NT/2000/XP). At some point I really prefer to have a Linux system. Sometimes difficult to understand. But a Distribution from SuSE or Redhat is coming with nearly all features included and working. You know where the stuff is! When it comes to Windows administration, it is not only DLL Hell, it is also tools hell! Want to do something special, it always comes to a special tool you need to pay for...
One pet peeve of mine is this: Red Hat uses their own scheme for version numbering standard libraries, so commercial software will frequently only run on Red Hat. The situation is approaching Microsoft DLL hell. I wish they would use the version numbers from the original authors, like every other distribution.
How to export messages from outlook or migrate them to other accounts? M$ answer, get exchange or some shareware to do it (with free shareware screens and reminders, cool). Linux answer: backup one or two in evolution (WTF, evo guys?) and have them in an open and parseable format. Who's complex?
---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
"Sorry, but I read this as "Choice is confusing - stick with what you are comfortable with. Hey look, that's us!""
Sounds like the KDE vs. Gnome argument.
"This sort of gibberish is what you would expect from the most popular product in the market who are being challenged for the first time in a while."
KDE.
and build linux from scratch, all of it is amazingly complex and quite a hurdle.
...
But i won't understand your argument while looking at distros like ubuntu
it is an issue of your workflow and design of it if you get hurdles of "complexity" in linux - you may review your process if you may be doing some wrong assumptions about your setup
Why is this a problem or even a downside to MS ?
People who make Open Source never ask such question, so perhaps MS should make their engineers think of why this is so, instead of asking others. They are the company with lots of great minds, aren't they ?
Is this question even relevant at all ?
Open Source gives you freedom to innovate. Closed Source gives you lower maintenance cost. (But not many people have contractual maintenance either for Windows or Linux. They plan to piggy-back on the efforts of others, or give it their best shot themselves)
Eventually the closed source does not conform with the requirements, and you throw it away and start again.
With increasing supplies of Internet bandwidth, we find that Windows catches worms and viruses, Office documents drop keyloggers, old Office documents are no longer accessible, and people assemble POSIX-compliant OSes (Linux) and ISO-compliant office suites (OpenOffice.org) becuase they want them for their own purposes. The past is dead, long live the future.
Microsoft just need to lose interest in Windows and Office, and pick up interest in XBox, and the cycle completes.
Microsoft is notorious for horribly misleading and vague error messages. Anyone whose dealt with Sharepoint's "Catastrophic error." message (and that's all it tells you, might I add, with no event log details or anything) can attest to that.
.Net programmer I tend to find open source pretty intuitive and straight forward. I could make the argument that lower level languages like C++/C and things like Php/Perl scripts are more complicated and granular than would be convenient for me, but then .Net's Linux version (Mono) and Java/JSP satisfy that dilemna.
That being said, despite being a
Its more of a matter of a misconception due to people having limited experience in a non-Windows environment. Support is the big issue people have with open source software, typically, and accountability. I don't think complexity is a huge problem, though I will say its probably slightly harder to find experienced Red Hat admins compared to NT/2k admins. Marginally at least.
Open source is ready and IS used in business today. Many are even 100% open source because thay made that decision when they were small enough to not have the mess of an IT infrastructure that makes it near impossible to change over.
Where I am now we are 100% Open source except for vendor specific tools that are given to us by the vendor. The IT team here works hard to make them work under Wine so that we are 100% functional. New Sales people get over no windows and no Office2006 within 4 days and are as productive in open office and ubuntu as they were in windows.
Upper management and unskilled IT that cant handle standing outside their box are the #1 reason that open source is ignored and they buy yet another "solution" from a vendor.
REality - closed source vendors DO NOT give better support than Open source. Been there done that hearing the "that will be fixed in the next major release in 2 years" so many time I want to strangle them on the other end. MSFT tech support is 100% worthless from the OS level to the enterprise level apps (sql2003 enterprise)
I get better support from the people that write the Open source stuff. IF you PAY THEM the developers will bend over backwards for you.
The article is 100% fud.
Do not look at laser with remaining good eye.
working with windows clients since 3.x ..
..
quirks is what windows is most famous for, with every new windows version I had to learn another hundredplus or so ways to go around entirely new awkward behaviour..
And no way ofcourse to look into the source! and no chance somebody smart would find and fix that troublesome thing for ya
In that case, why does slashdot spend so much time basing MS? why not just let OS software speak for itself?
...no two people are not on fire.
Jason Pillai writes to tell us ZDNet is reporting that at last month's Microsoft Worldwide Parter Conference in Boston Ryan Gavin, director of platform strategy, claimed that one of the big downsides to open source is complexity
Worldwide Parter (sic!) Conference? A conference for those who want to part from Microsoft? Why doesn't Slashdot announce this earlier...
The comparison is not Windows vs. Linux. It is Windows vs. Redhat Linux vs. Solaris vs. Novell Linux vs. Debian Linux vs. AIX ...
...
"Windows" is not comparable to "Linux" !!! One does not run "Linux" (generally), one runs "Redhat Linux", or "SuSE Linux", or "Debian Linux".
Therefore, it is necessary to compare the complexity of Windows with the complexity of a single Linux distro. If your Microsoft-friendly organization would be willing to consolidate on Windows, then your analogous Linux-friendly organization would be willing to consolidate on a single Linux distro, avoiding the multi-distro complexity.
If your organization is heterogeneous, and that is your "complexity" concern, then Windows is actually your problem! If you run or write software for multiple Linux distros, AIX, Solaris, HP-UX, and Windows, which one is the odd-ball? Admin'ing *nix systems is all similar, while Windows is *much* different. Porting from one *nix to another is easy, compared to porting *nix to Windows or Windows to nix.
I will grant that MS Windows provides a tighter integration for MS SQL, Exchange, and AD, than (for example) Novel or Redhat Linux provides for the database, groupware, and authN/authZ software included in their repositories. That is the cost of flexibility, which is oft balanced by the savings of flexibility. But this article attempts to pin the cost on the variation of distros, which is not correct.
The comparison is not Windows vs. Linux. It is Windows vs. Redhat Linux vs. Solaris vs. Novell Linux vs. Debian Linux vs. AIX
10b||~10b -- aah, what a question!
Interesting, I've never had need to talk to a MS-SQL or any database developer to use any of the database products I've used. I've worked on some pretty complex databases and queries as well.
My experience with PostgreSQL some time back was much worse than any experience I had with SQL Server. The online documentation failed to match anything resembling the actually installation that existed. After having expending a fair amount of time figuring out my Linux install and how to build the kernel hitting this with Postgre SQL put me over the edge. This was a side project I was working on and I just didn't have the time to go searching across the Net to figure the mess out. This was sometime back, hopefully things have changed.
Having contributed to open source, what I found is a lack of coherent design. Often, it seems, the way things get done is for some "smart" person to come along and take on something and complete it. Unfortunatley usually these "smart" people don't enjoy creating designs and documentation so after they move on to the next fun project, the lesser people poke and prod what they have created trying to add features and fix issues but never really understanding it. Eventually it gets to the point where another "smart" person comes along and rewrites it because it's become a mess and no one really understands it.
The fit and finish often seems lacking in open source. I tried to convert my wife to Open Office. It just didn't work. The spreadsheet just had too many issues for what we were doing. I ended up reinstalling MS Office. I think some of this may be due to the lack of coherent design of the system as a whole, but I'm not familiar enough with Open Office to make a call on it.
--
Q
Contrast that with open source. Sure, there are a great number of projects out there that have great documentation, and some do have tutorials. Wonderful. Those are the projects that succeed (ie. Apache, MySQL, PHP, etc). But, let's face it, those are in the minority. How many projects consist of only source code? That's not to knock the developers; but, honestly, documentation is boring work and by the time it's done, it's already out of date. It takes a great deal of time to keep the implementation in sync with the documentation. If the developer is in it for the glory (how world reknown would Torvalds be if he would have wrote great documentation about Minix back in '91 and released it as open source?), the code is what matters, not informing the user on how to get started with the software.
As for the IIRC comment, sure that works when the project is large enough that there is a (and I hate using this word) community built up around it where there are users knowledgable enough to answer your questions that make themselves available and take the time to answer questions. Of course, the other side of the coin is the poor newbie who gets flamed to shit the first time they ask a question. The common response is RTFM, dumbass! Which I can not disagree with if there is an FM to begin with. I have learned over the years that no matter how unpalatable documentation is, it perfectly serves its purpose when the user of your software does not contact you when they are installing it, learning it or pushing it to an extreme, making it do shit you hadn't thought of; rather, they contact you to show off what they did or to inform you of a bug that they have found and they are forwarding their idea for the fix.
Again, really, it comes down to the percieved start up cost (as in time and effort, not money). Microsoft has always been very good at that part of the game. There are a huge number of open source efforts that could be more relevant if they learned this lesson.
- orbitor
It's NOT complex to develop software to run on an Open Source platform. It only becomes complex when you try to conceal the source code from users. The configure - make - install process generally works well, unless the packager ballsed up and forgot a dependency that didn't get autodetected.
This method worked really well for Microsoft Windows -- absolutely nobody can ever copy it because they can't see the source code. Wheras all the high-end proprietary Unix programs that came in a source tarball without permission to redistribute, well, the world and his cat have copies of all of them.
We need either a law mandating user access to source code, or a decompiler good enough almost to guarantee this anyway. Then, the only thing that makes it hard to develop on Open Source platforms will not be there. And, as a side effect, we'd all be in more in control of our computers.
Je fume. Tu fumes. Nous fûmes!
I keep going over this with people all the time: Complexity is a by-product of design decisons, including features. The more connections you make, the more complex the system.
I believe that attributing complexity to "Open Source" is a mis-applied cause. A cause is defined as something both necessary and sufficient to explain the effect. The article does not describe the problem domain in enough detail to support the argument. The complexity is a result of arithmetic, not "Open Source".
In the old days, doing assembly language, I would build my systems using Decision Tables. The complexity is directly related to the number of decisions (5 rules = 2^5 = 32 potential tests, 10 rules = 2^10 = 1024 potential tests.) Athough all the tests are mathematically possible, a large number of test don't make logical sense. But the amount of complexity still increases rapidly with the number of decisions traversed by the system.
UNIX (and LINUX) have simplified the state of the system at the OS level by accessing everything as if it were a file. Complexity is added after that by the number of states and messages that an app has to keep track of in order to traverse the decision points correctly. Complex applications sometimes require additional state computation in order to work with other applications. So, as you work your way up from a simple text terminal program to a windowed environment, the complexity multiplies a LOT. Now, consider that there are a multitude of environments to run in, a multitude of desires and possibilities for applications, then if you want your application to run in more than one simple environment you have to make the installation choices more complex. (Therefore, I maintain that writing an application to run on both Gnome and KDE increases the complexity almost as annoying as writing it for two different operating systems.) Then add one more choice: How do you keep the app updated? (rpm? apt? source? etc.?)
Dang! This whole post is just another way of saying that the author didn't distiguish between "complexity", "ease-of-use" and "ease-of-administration" and blamed the confusion on "Open Source".
My wish, of course, is that more designers of systems and apps would put more thought into resolving the administrator's headaches instead of just adding cool new features. My standard is to "write it to a directory" and be done with it, but I usually write stand-alone apps that don't require so many complex interactions.
Having said all that, I also want to say I'm grateful to designers like the FireFox folks who spend a lot of time making the app easily installable and self-updating.
"The mind works quicker than you think!"
No.
-CF
I'm all for freedom, but I find it silly that different distros keep configuration files in different locations, use different init scripts, use different install methods, have varying level of compliance with the LSB, are focused on either Gnome or KDE predominately, etc.
It does make it more difficult for a large company to develop for a Linux crowd in general.
Only if they want to develop proprietary software for Linux.
If they provide the source, then whoever maintains the distro is the only one who has to worry about issues that you are fretting over.
That's the whole purpose of distros.
I'm all for freedom
I would argue that you are not. Otherwise, you wouldn't be rolling out this old canard...
A house divided against itself cannot stand.
FTFS: Microsoft Worldwide Parter Conference
Is it clear now that this is a conference for how MS is going to part fools and their money?
Burns: We're building a casino!
McAllister: Arrr. Give me 5 minutes.
To make tasks appear simple usually requires a very complex but well thought out plan, implemented with some elegant code.
So I submit maybe we still aren't complex enough. I like the way my brain hurts at the end of every day, makes me feel alive.
OSGGFG - Open Source Gamers Guide to Free Games
This is 100% true - life is too short. If a MS product doesn't work in 15 minutes, delete it. Whoops, there's a large disturbance in Redmond as 200 million windows systems just converted to something else.
Seriously, though, if you'd like to know a serious point of weirdness (and where MS yet again failed to support a standard) is the X.500 adaptation in Exchange up to at least 5.5. Organization (the "O" in the addressing) is supposed to be case sensitive. In Exchange up to at least 5.5, it isn't. You can connect organizations with "Org", "orG" and "ORG" together. This does, however, cause some issues with messaging that does honor the X.500 spec.
Oh, and you cannot change the organization either - because it's populated throughout the "standard" JET DB that underlies Exchange.
Long story short - 1 typo screwed up a system years after implementation, because it wasn't caught until a configuration change was to be made.
To address the MS SQL DB item - try clustering the POS. Oracle, IBM DB/2, PostgreSQL or MySQL anyone? MS SQL is a nice replacement for Access, as it actually works. For enterprise use, however, get a real DB.
The cesspool just got a check and balance.
SCO OpenServer.
Scary, old, unsupported (difficult to find anyone willing to work with it), and extremely easy to break, even by end users.
Then again, this is probably the result of bad karma for still running a serial-line network in 2006.
To draw another analogy, Token Ring is also scary, and very easy to break. On the flipside, Mac OS X is much "simpler" to an end-user than Windows is(and to a certain extent, to the developer as well) -- it is also much more difficult to break. I've never seen an OS X installation trashed in such a way that it couldn't be fixed by creating a new user profile. Granted, this is due to OSX's UNIX underpinnings, but the fact remains that it's pretty undeniable that it's a simpler system to use for the user.
-- If you try to fail and succeed, which have you done? - Uli's moose
I friend of mine once asked me what I liked about Linux...
:)
I told him "I can make it do just about anything, with a bit of work"
Then he asked me what I didn't like about Linux, and I told him...
"To make it do anything, I need to do a bit of work"
Which I think is a pretty fair and honest account
Help! help!, the termites are eating my DRAM!!!
http://www.ubergeek.tv/article.php?pid=54
but then .Net's Linux version (Mono) and Java/JSP satisfy that dilemna.
Yeah, cause Mono is based on ECMA standard (generated by Microsoft) and Java isn't open source. And since C++ and PHP/Perl are "more complicated and granular than would be convenient for you" I guess your arguments are null and void. In your case, closed source is greater than open.
I understand and recognize the point of the statement. There are lots and lots of flavors of open-source available and I would hazard a guess that a couple posters have created some of their own already. If your response is anything like "well I can reaarange the operating system code in open source" then of course you're biased, because the majority of people can't recode an OS.
Microsoft has a fairly straight-forward model: major release + patches. I suppose thats the same thing with OSS, but when OSS has a 5.3.2.7.4.8 release, I'll be damned if they didn't tag on the last couple of numbers just for kicks sometimes.
So I'll be the one to say it then, yes having 50 different versions of an OS (i.e. Linux) with a myriad of user created/customized apps is a lot more confusing than to just buy the most recent box on the shelf and then patch it to the latest level by clicking on a button.
An earlier poster described it best, that we should think in terms of Microsoft being a single distro. if all I every looked at was a single distro of Linux (say Suse) then things would be a lot easier from an OS standpoint to follow.
Evolve or die.
I am an OSS consumer, not a contributor, but it seems to me that the first priority is getting the functionality right, and the ease of use features are tacked on afterwards. I know that's true for me when I create internal apps.
Right now there are tons of businesses thriving on just this fact. They use the open source tools, integrate them, and use a propietary binding layer to tie them together and make them easy to configure and use. Security appliances are the best example: Get an easy to use configuration of Postfix with some AV engines and Spamassassin, and you've got yourself a $5K box for the $500 hardware and your skull sweat, which can be endlessly replicated. Load balancers are another example.
Once these markets are established, then the OSS community moves in again, and commoditizes the new frameworks. Perl and Python fit very well in this niche, I might add.
Well, some parts really are more complex. That's usually because there's more things to tweak. Setting up Samba, for example, is a bit harder than enabling file sharing on Windows, but then you can excercise more control over how Samba does things while Windows gives you the choice of doing it it's way or not doing it. More control = more controls.
On the other hand, a common lament about the "complexity" of Linux from the Windows side is "But on RedHat startup scripts go in /etc/rc.d/init.d but on Debian they're in /etc/init.d! How am I going to figure out which it is?!" (to which I usually respond "Well, if you can't check which one exists and just use that, you really need to go back to Shell Scripting 101.").
As for what these document management systems DO, mostly it is organise the "marketing collateral". Which could probably be better done using the old IBM buzzword sentence generator rather than Sharepoint.
Pining for the fjords
It's not that open source is too complex. The problem is that most IT and SW dev people are as dumb as rocks. And even smart IT people and SW devs are too chickenshit and/or lazy to take any initiative to self-teach themselves anything that's not right in front of them. It's all a part of the "Software Engineering Industry Going Down the Drain" zeitgeist.
In the course of every project, it will become necessary to shoot the scientists and begin production.
1) User -- For the average user, due to great advances in user-friendliness, learning how to use Linux is just about as difficult as learning how to use Windows. The names of the programs are different, however they all do similar things.
/lib, /usr/lib, or /usr/local/lib, whether a particular distro changes library version numbers and doesn't contain a recent enough library, whether or not the distro has an autoupdate tool that can be used to update a single library without breaking anything else, etc. So, large-scale software manufacturers choose to restrict what distros they provide support for, due to the fact that they do not want to be responsible for supporting some random distro that they have not heard of or done any testing on.
2) Admin -- This is harder in Linux. In windows, there are only a few differences between configuration locations between Win2K, XP, Win2K3, etc., and of course the registry is a common feature among all versions of Windows. In Linux, differing software package formats (rpm, deb, tgz, emerge, ports, etc.), differing configuration file locations and formats, differing startup scripts, differing authentication systems, and various other minor differences make managing one distro almost a completely different experience than managing another distro. Some distros have decided to use similar tools, however there is still enough variety to make things way more interesting than necessary.
3) Developer -- It is fairly difficult to release binary packages of your software when you don't know whether or not a particular library will be present on the target system. A package compiled for RedHat Enterprise may or may not work on a Fedora system, and will almost be guaranteed to not work on a Debian/Ubuntu system without a lot of library mangling. You can't just say "let the end-user compile the software on their system", because certain large-scale software products (i.e., ones that are very expensive and include commercial support) are not released with source code (for obvious reasons). Also, even if they did support multiple distros, they would have to deal with annoying miscellaneous issues such as whether a particular library file is present in
--guru
You are concerned about MS customers being confused. MS is concerned about people who are not their customer being confused. They don't give a shit about the former. They are already hooked. Same reason roughly you don't court your wive. She lost that privilege when she said yes, she is now yours and you expand your energy on the cute girl in the office.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
MS - time to face it, almost noone apart from you is making alot of money selling proprietary sofware (alone). The real cash is in services, services, services.
Isn't this bad news for the brilliant developers who can write excellent products which can solve real problems and that are so good (or small) that they don't need paid support?
btw, I think there are still enough software vendors making enough money with proprietary software too. Open source and proprietary software can co-exist, they don't have to fight each other out.
We sell commercial software. We have customers running our software on many versions of Linux (Red Hat 8, 9, Fedora Core 1 through 5, Red Hat Enterprise Linux 3 and 4, Debian, Gentoo, Slackware), Solaris and FreeBSD.
If you make yourself aware of portability issues at the outset, it's not a big deal to write portable software. Note that we only build binary packages for a subset of our supported platforms; source packages take care of the rest. (Yes, we distribute source, though not open-source.)
I don't think our support burden is any higher than it would be if we supported Windoze.
>The real cash is in services, services, services.
:)
And to that end, it is most beneficial to insure that the software is as complex as possible, so as to make anyone who wants to use it dependant on those services, services, services.
Steve
A work that expires before its copyright never enters the public domain and thus enjoys eternal copyright protection.
"Our stuff is better than the competion because mix(fear,uncertainty,doubt,buzzwords,technobabble, lies,brainfarts)."
News at eleven...
Sheesh, evil *and* a jerk. -- Jade
I'll explain this very simply so the guys at Microsoft can understand.
... oh and Server 2003 too. And now Vista is coming down the pipe. All with different levels of OS functionality which you must emulate if it didn't exist in your baselevel platform.
;)
The reason no-one develops proprietory software for Linux is that Linux users don't want to buy proprietory software.
The Linux OS is the pinnacle creation of a subculture that values a certain model of software "freedom" above all else. Proprietory software comes from a model and culture which is diametrically opposed to that. (Not from the vendor's POV, but from the Linux community's POV - only the Linux community has this "if you're not with us, you're against us" attitude, because only the Linux community has Stallman, but I digress.)
To say it's "hard" to develop a major end-user app for Linux is true, but not really any truer than for Windows, where you must support two fundamentally different operating systems - DOS-based 98 and ME, and NT-based 2000 and XP
I really don't see that developing for various versions of the Linux platform is that much more difficult in principle - but it is certainly different in degree, since there are an almost infinite number of flavours of Linux (everyone can have their own - that's the bloody point - so no guarantee can ever be made that a given shrinkwrap package will work on your system).
That's why it's stupid to "choose" Linux or say it's "ready for the desktop" and other such nonsense. Linux is not designed for the desktop and will never be ready for it. If you need to run proprietory software you need to buy a copy of Windows. But you can get a very long way without it, as millions of geeks have proven.
I really don't see what's complicated about this
The big win of open source is that many people can work on the same code, that work gets done faster as a result, that the code is more reliable overall. But for this to work outside of the usual suspects (Linux, Perl, Python, Apache), the architecture needs to be clean and dead simple.
All the time, working on proprietary code for a living, I see people making bad assumptions about how code works--even though all the original developers are right there in nearby offices--and there are often big whiteboard explanation sessions about little nuances of various libraries and low-level choices. A large percentage of the time these sessions end with the person thinking "Wow, I'm glad I didn't jump in and make that change without asking first."
This is exactly the same with almost any open source project of more than trivial size. The only way to combat it is to keep things as clean and blindingly simple as you can. Write as much in Python or Ruby as possible. Don't over-architect things (that is, don't make things pointlessly abstract). Ruthlessly trim features. Stay away from projects started by people with no engineering experience.
o/t here, but tired and groggily haivng my morning coffee I read "Is Open Office too Complex?". Quite.
If administrators have to resort to the reading the source when something fails, there is a problem.
I've often found this to be sort of a plus in a roundabout way. It seems that OS applications more commonly spit out specific errors about what is wrong into the logs. This often doesn't mean anything to you, but a search often finds someone who did have the same problem and poked through the code to figure it out. When you're an administrator of a criticle system you need it fixed. If MS just gives you "an error occured" message then when push comes to shove, you may very well wish you could just look at the code.
Although I'm pretty far removed from C/C++ now days, I've done search on error messages and come up with the actual code where the program generates it. Some times it's easy enough to tell what conditions are causing the problems without being a programming guru.
'It's challenging for partners to build competencies to support Linux, because you never quite know what you're going to be supporting,'
.. different versions .. to meet the demands of customers." Lim Han Sheng, IBS Synergy
.. relating to the display of fonts and font sizes, and the instability of the X .. IBSS could not integrate stored procedures into MySQL as it could with SQL Server 2000"
...
Like how? Since when does a customer demand SuSe or Redhat. It's a decision for the distributor what base OS to use. The customer doesn't even know or care what that is.
'You don't get that repeatable [development] process to build your business over time.'
Same flawed logic here. The developer sells the same basic system (with minor modifications) to a number of customers. The same as Windows is sold over and over again.
"One of the beauties of the open-source model is that you get a lot of flexibility and componentization. The big downside is complexity,"
Flexibility does not equate to complexity. Is Windows simpler to develop on because it is closed.
"We had to learn
Has anyone reading this ever had a customer ring up and specifically demand a particular Linux OS. I'm talking about a new installation and not upgrading an existing one. When I see someone quoted on the fastFUD web site I tend to suspect their impartiality. Lets see some more quotes from IBS:
"because Linux was keeping the company from charging for services rendered or charging less"
Has Malaysia gone communist and told no one about it?
"When a problem needed to be solved, Lim explains it was usually a case of having to ask friends or associates for advice"
Why didn't you ring up the Red Hat support desk?
"the tools available for MySQL were made by different companies, poorly integrated, and offered limited functionality"
"the difficulties IBSS encountered with Linux as a server
"IBSS is exploring the integrated innovation inherent in the Microsoft operating system"
ha haa haaa
davecb5620@gmail.com
...that OSS / Linux / [insert most hated software here] should be playing with their balls instead of computers.
Computers are complex so is advanced software, don't think you can make it simple... you can make it look simple but until we've got Star Trek like computers it will just be a illusion.
--
You may troll me... but it will not change the fact that this is the truth!
Yes there are various different ways to handle the startup of the various unix like systems out there but anyone who has already learned about TWO different ones will have learned a very important lesson. Things differ, so what.
I sometimes think it is a modern ailment because of windows click and play attitude. In the old days even if you used dos you had to learn stuff. You could just slide in a cd and play, you had to acess the A: drive then dir and find the install/startup file. You might have to edit your bootup files. In short you had to learn a fair bit about the system before you had any hope of using it.
Not handy and easy but when you landed in shit creek you at least had a paddle.
Windows has increasingly made it easy to just use the OS (or rather the desktop) without every learning about just what makes it all tick. Very good for endusers but when windows drops them in shit creek they instantly go under and often make the mistake of breathing in in suprise.
For us older folks we had to learn the hardway. The trick to learning an OS is realizing/accepting that you have to learn it.
If you drive a new car do you complain the gears work differently, are in a odd place or just don't respond like the car you are used too or do you just note the differences and adapt?
Your statement could work for a person who knows just one OS, wichever that may be, but never for a person who knows two.
OS'es are like learning languages. Once you got over the hardship off learning your fist foreign language and learned to accept that a different language is just different, just because they want to humiliate foreign devils (yes I learned japanese how did you know?), a third and fourth etc etc will be increasinly easy to learn.
How do I know? Well I am learning my fifth language and recently took up opensolaris after a dose of DOS/AIX/OS2/Windows/Linux(more distros then is healthy) and found it to be a breeze. RTFM, accept that things do not have to be the exact same way you expect them to be and adapt.
It is only a mess if you are unable to learn, to just accept that X does things in Y way. RTFM and a large brain should do the trick. In fact for me I think it is easier if things differ greatly then if they are almost 100% the same but not exactly. Like I keep using LS in DOS and DIR in unix. Never when I specify parameters, just the bare command. Exact same task, same looks, different commands. Different boot scripts. Easy peasy.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
It does make it more difficult for a large company to develop for a Linux crowd in general
ANY company 'JUST NOW' getting into the development support for linux, is a little late to dinner, don't you think?
Yes the underlying platform remains static, kernel, driver-base, API stack... however, Linux is now more spliced than ever with regard to distro's. Any company joining the game now would HAVE to push support to multiple distros for thier app. If they don't, they risk being labelled only halfass behind OSS.
It just seems that this issue is touching on the wrong points. OSS, en masse, is a developer driven machine. Yes, some company's play a part in support and development, but the professional hobby coder is the driving force for this beast.
If OSS is to complex for some company's to consider, I have to wonder what value they represent when some industry leaders have thier business built on it, and entire government entities accept it with open arms and push it forward into thier environment.
I ask, who is selling who on what here??
As for increasing complexity (losing design) and lacking finish, that depends on the project, but yes, it is typical. In one way, it's a strength - open source tends to gravitate towards simple solutions that can be robust because those that try to push finish on it just don't have time. In others, it's a great weakness.
Eivind.
Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
Is it a cardinal sin, on slashdot, to not think "more choice and more configurability is always best"?
I've used the Macintosh operating system (both pre- and post- MacOS X), Windows (95 on), and a couple Linux variants (RedHat, Ubuntu). I've used a wide range of both consumer and professional software. I consider myself an informed computer user, but I'm not a what I would call a computing professional -- I'm a physicist.
My experience is open source software _is_ more complex from a user's standpoint than commercial software(complex in the sense of difficult to understand and properly use). Though I must say that software developed in-house at universities and national research labs can be even more unpleasant to work with.
But to cut to the point -- additional configurability and flexibility is only an asset if you regularly use or anticipate using those features. Otherwise, the consequences are steeper learning curves, more challenging troubleshooting, and often a less reliable product. I think a lot of open source software packages suffer in this way. (I say software packages in recognition of the 'many small programs' philosophy I see in linux.)
Now, the same complaint can be made of mega-programs like Office or Windows XP. But in these cases, there is at least some sort of market pressure to either get features (including UI) mostly right or not to do them at all. That market pressure doesn't exist in open source software. In fact, arguably, a business model based on providing services _supports_ software complexity.
As for "RTFM, idiot" - I hear people tell of this reaction all the time, yet I've never seen it. Maybe it's to do with what projects I choose to deal with - I use FreeBSD instead of Linux, and do work with PostgreSQL/Perl/Ruby (and, due to costs of migrating away from it, MySQL), and I've never seen that reaction in those communities. I've seen the reaction "man XYZ" or similar (pointing at the appropriate documentation) regularly, but that's generally of help to the person being told what to read. And if the person has a problem understanding the documentation, we try to help and update the documentation as appropriate.
Eivind.
Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
I was not aware that slashdot was an OS vendor.
Once you understand how something works it isn't particularly complex. What he's saying basically is Linux... Doh!
Linux is Linux whichever distribution. There may be things in different places now and again or may be missing here or there but lets face it, not remotely difficult to fix.
Deleted
Open source products are much more complex to integrate.
But then, with closed-source COTS products, you often run into vendor-lock-in scenarios that bring even worse headaches. Some of those headaches result in Security pain, as you jump through hoops with forced upgrades and hacks to keep things working at the application/environment level without any hope of capability to fix problems (like LUA bugs on the Windows side).
I'll take the Open Source configuration complexity any day.
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
Not have a central configuration database is one of the reasons I much prefer Linux. A series of PLAIN TEXT config files in /etc is fine, per user config storage is excellent. A central database has to be protected from inadvertent changes, reducing my ability to configure things how I chose. Second, the more the components of an application are spread throughout the filesystem the more difficult system admin and recovery becomes. Why shouldn't I be able to copy an application from one machine to another, just the binary file and have it come up at least in some default state? I think this should be a goal for all applications and a central configuration database makes this just that much more difficult. I won't even talk about the cruft and corruption issues a central database brings with it.
If your operating system is capable of solving many problems (i.e. proving many theorems since after all, computer programs are proof systems), that is, if you system has a large deductive closure, then by Algorithmic Information Theory we know that it must be complex. Therefore, calling a system complex in a perjorative way is ignorant. Correct me if I'm wrong.
I am a network Engineer and I think Whiney made 1 good point in the first post - the money is in services - if I have to choose a technology to become proficient in supporting, or a OS to write apps for, I'm going with the market leader. It's about the money. I support MS because I have worked on their products since DOS and I know it. I support Cisco because that's what interests me the most and I have become highly certified in networking/security/voip. Complex - yes, worth the money - yes.(again, a market leader) I use open source for the little things here and there and I agree that in most cases, open source is more confusing and takes longer to setup than the equivilant market leaders option.
So Open Source is bad because it gives customers too many choices? That's a hard sell. I mean, if you or your company buy Linux from many different distros, you will have a headache on your hands, sure. But most businesses (and people, for that matter) will use a particular distro across the board, and then the situation is no worse than if you chose Microsoft as your platform. Single vendor, single platform, consistency. Multiple vendors, multiple platforms, inconsitency. Open Source or not has nothing to do with it.
Nothing to see here. Move along.
As enduser i can take a windows-program and run it everywhere. In Linux i need a platform-specific build.
Thinking i am a user: that means distro-supported programs are simple to install, but other stuff is prohibited. "make install", some path wrong, fails. I have no idea where it wrote in all this system-locations. All the root-owned areas i know nothing about, and better dont touch.
Thinking i am a shrinkwrap-developer: that means, i better make packages for each distro, and get that in the official repositories. Which means a lot more expertise than just clicking "compile". At least it looks like that when starting. Some days learning for somebody. And even different defaultfonts can break an app. And the social issues of getting it in the official repo.
What to do about it?
- Use some vm, like java or wine, which already encapsulate the differences.
- Let "closed source" apps be supported by the distro-communities and let them do the compiling. Would need some kind of job-market, where a developer could quickly find assistance. Still effort, but fixing a makefile is much faster for a distro-insider.
Saying you support 'Linux' is silly. It's like saying you support 'UNIX.'
Can't agree enough.
I had a consulting gig where I had to support Solaris, HPUX, AIX, and an ancient SCO Unix box. Those 4 Unixes were FAR more different than say, Red Hat, Debian, Suse, and Gentoo. Even the basic command structure often differed.
Different locations for config files? Different desktop environments? Child's play.
Try switching between machines where the most basic things are entirely different. Ifconfig is a notable favourite. The command switches, and the output, are more different between commercial Unixes than they are between say Linux's ifconfig and Windows' ipconfig. Hell, IBM has an entire set of system management tools all wrapped up in good ol' smitty - which no other Unix has.
I won't even get into library support, boot process, or development environments. Knowing the 5 or 6 major Linux distros, and their differences, is trivial compared to a mixed-breed Unix shop.
Endless arguments over trivial contradictions in books written by ignorant savages to explain thunder in the dark.
Regedit
Seriously, has this guy ever tried to fix anything involving the use of regedit. Or tried to uninstall anything more complicated than minesweaper? Complexity is no basis for avoiding OSS in favour of MS.
Wow. Software development for a particular group of OS distributions is complex. What news.
Come on, if anyone's a software developer instead of a fanboy who does copy-and-paste until something compiles then they know how to manage complexity. Software development is the management of complexity, after all. You take a big problem and break it into tiny steps a computer can perform one after another. In many cases you even figure out what things in that set of steps don't depend upon each other and break the steps into multiple threads or multiple processes, sometimes on multiple machines.
The APIs in common for Suse, RedHat, Gentoo and Ubuntu are in my experience much easier to find and stick to than those that Windows 98, Windows 2000, and Windows XP have in common. But then again, I do most of my software development on Linux. When I do it on Windows, I tend to use libraries to make it look more like Linux so I don't have to write to Windows APIs directly. I would suppose that if I was a Windows software developer, I'd find Windows more familiar and try to make Linux feel more like Windows. I'd probably write to Wine if I was coming from Windows and wanted stuff to run both places, just like I write to tk, SDL, or OpenGL now to get stuff to run on both. Where's the news?
No.
;)
I suspect that in most cases the real issue is a lack of understanding of the fundamentals underlying the technology people are trying to use. While a nice UI and preconfiguration may make it possible for someone with limited knowlege to be capable of installing and configuring a complex software package it is a poor solution to the lack of knowlege.
Having said that I will also go so far as to say that open source has a better solution to the complexity issue than Microsoft's wizardized software packages, LiveCDs. You can download a live linux CD for just about every solution you need, Desktop, Router, Webserver, Media Player, etc., etc. No need to go through Microsoft's complex software package installation and registration process, just pop in the CD for your application and boot, done.
burnin
Yes, X11 is a chatty little bunny. it was written for the lan, not the long-haul link, and one of its design goals was to support diskless client workstations, at a time when HDDs were expensive. Nor is it good for gaming, which is why linux 3D gaming bypasses X.
But funnily enough, one little benefit of X11 is that a Unix GUI application can run on a different back end from the front. Which lets you run a legacy solaris app on a legacy solaris server, with your ubunto laptop getting the front end, with much better integration with the desktop than you get with VNC.
Free software creates choices, some are afraid they might make the wrong choice.
"If ye love wealth better than liberty, the tranquility of servitude than the animated contest of freedom, go from us in peace. We ask not your counsels or arms. Crouch down and lick the hands which feed you. May your chains sit lightly upon you, and may posterity forget that you were our countrymen!" Samuel Adams
You're right and you're wrong. Having every program use its own format is stupid, but so is creating a Registry.
The good solution is the one Mac OS X uses: have text config files for everything, but put them all in a standard format (plist).
By the way, your assertion that UNIX apps all put stuff in different directories is wrong -- well-behaved UNIX apps should follow the Filesystem Hierarchy Standard.
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
I use Open Source everything on my computers, and I migrated from Windows98. I have to say, even when my Linux apps do have a problem, the need for the fix is almost always not the OS's or the program's fault, and it's easy to fix. Usually it's just a file download, and it was my fault that file wasn't there in the first place, because the OS told me that I needed the files when I installed the program. And if there is a problem in code and I don't want to wait for the dev team to fix it, I can try to fix it myself. Not an option with closed source, at least not legally.
So, for me at least, Open Source is simpler and works better than closed source programs.
I can't imagine that process and situation being complex for anyone.
"In a world that exists without walls and fences, who needs Windows and Gates?"
The gentleman said, "Gavin noted that the flexibility of open-source software in meeting specific business needs also means systems integrators and ISVs have to grapple with complexity costs. 'It's challenging for partners to build competencies to support Linux, because you never quite know what you're going to be supporting,' he added. 'Customers who run Linux could be operating in Red Hat, [Novell's] Suse, or even customized Debian environments,' he explained. 'You don't get that repeatable [development] process to build your business over time." Over the last 10 years, if you developed for the MSFT environment, you've your code obsoleted three times, you've had to change out your client platform four times, and you've had to redevelop your server competency three times. You have to test for at least three client environments, and you have to justify to your clients and users a significant investment in OS upgrades. How is this different? As a tech middle management type who has tried to remain technically current, I have found it easier to get current and stay current in the Linux world than Windows. Sorry, Gavin, that dog won't hunt.
I was taught to respect my elders. The trouble is, it's getting harder and harder to find some.
Exactly how many flavours was Vista coming out with? Six? Seven??
say it ain't so!! Microsoft has unkind words about linux?
stop the damn presses, we have a font page scoop!
Where you could be working with the EXACT SAME SOFTWARE and yet find the "rules" to configure it change because you have the "professional" vs the "home" version, or because you have 10.3.9 instead of 10.4 (0.0.1 away in version, 10,000 light years away in reality.)
This is one of the fundamental things that Linux advocates rarely get.
We can take it that you are not one? That's too bad.
From a user perspective, there are about as many differences between Red Hat Enterprise Linux and SuSE as there are between FreeBSD and OpenBSD, or Solaris and some other SysV variant.
That sounds right, but it's dead wrong. Most people like having a choice up front and then many choices after install. The differences between the free and non free worlds are, as usual, huge and mostly in favor of the free world. People in the free software world get to try out and chose the interface they like. Once they have chosen they are only forced to upgrade by compelling new features and the overall experience is much more consistent.
Free software, once a distro choice has been made, is much more consistent than Windoze from a user stand point, and I'll even say that there's as much or more consistency between distros than elsewhere. The differences between RHE and SuSE are not all that awful because both pull from the same upstream sources. Konqueror on RHE does about the same thing as Konqueror under Debian and so on and so forth. The main difference is in administration styles, which the average corporate user could care less about. It's much less annoying than the pointless differences between Win2k and XP or XP and Vista, ad nausea. One "version" of Suse is much like the one before it, which is something the user appreciates much more than having transparency or some other useless toy. I don't even want to talk about the differences between non free GUIs like Apple, Solaris and Windows. Each has it's own version of window manager and users of one are clueless on the others. With free software you can at least have the same window manager and the window managers can share tricks. Non free GUI makers get smashed for "photocopy" when they try that.
Saying you support 'Linux' is silly. It's like saying you support 'UNIX.' Saying you support RHEL makes sense.
Well, that makes sense. Everyone has their specialty, except that poor guy at the help desk who's supposed to know every version of every free and non free thing ever written. I'm not going to tell people I can help them out with their Windows box. I'm most comfortable with Debian desktops and a few of their derivatives. Between Google and that, I can operate and stumble through other distros.
Friends don't help friends install M$ junk.
Friends don't help friends install M$ junk.
One of the big issues is versions of platform. He said it right up front RedHat, Suse, Ubuntu. Which one are we developing for? If that isn't bad enough very few have a stable version which they will support for 5 years. Yes there are server versions for each one of these which are supported for 5 years plus, but most of the linux community is using the latest and greatest flavor of Fedora, Suse, Ubuntu, not the 5 year stable version.
Who wants to develope for a constantly moving target? Especially when the total market is less than 5% of users.
Now let's go back to RedHat, Suse. They have stable products, but look at the cost. The last time I looked a basic server version from RH or Suse, cost $349 per year over 5 years thats $1745. Of course both of these come with a lot of capability. But more than an equivalent cost of a MS server? Yes there are a lot of hidden costs in a MS server, but you have to really struggle most of the time to get the bean and pointy heads, beyond that initial cost. The concept of CAL's usually totally befuddles them.
So for the most part you have a small percentage of the market share using linux with a version that is going to be stable for 5 years. The remaining desktop users are changing their version of Linux every 6 months.
So who the hell in there right mind is going to spend a shit load of development cost on a product that runs on a platform that nobody is probably going to be using 1 year from now.
Currently I see it as linux is currently suffering from chicken and egg syndrom from about every direction. A large number of people won't use linux because they don't have the apps they need. No one will develope the apps they need on linux because not enough people are using it.
No companies develope drivers for devices, because not enough people are using it.
There are not enough people out there to support linux, because there aren't enough people out there using linux.
But, could you imagine what the newsgroups would look like if 15% of the desktop market were linux, how about 7%. 7% would probably double the traffic. 15% would probably triple it and I hate to think about the flame wars started between know it all's and newbie's. That's another hump we have to get over. Not everyone has thick enough skin to get their information from newgroups.
We still have quite a few hurdles to make it into the main stream. I just wonder how many of us are going to tough it out for the next 5 or 10 years for that to happen.
He who said 1,000,000 monkeys on 1,000,000 typewriters would eventually type the great novel, never saw an AOL chat room
Is Open Source too Complex?
Is this from the company that already admits it can't document its own products because they're too complicated? (see EU case)
Assorted stuff I do sometimes: Lemuria.org
Because on linux you never end up in rpm dependency hell. You never have to compile a kernel to use, for example, more than 4GB of RAM. You never have /dev identifiers moving around.
I agree that windows can be a pain, but the modern windows 2003 server environment is actually fairly easy to use, in part because of the low complexity. Microsoft will never have apt-get/emerge/package manager of choice and all the power that provides, and it will never let me compile a kernel for some custom purpose. But then I generally don't have a need to that on windows because they provide a flexible enough kernel built in that a few config changes make it adapt.
Remember guys, just because Windows isn't the One True Operating System doesn't mean that linux, in any of its forms, is.
Or with several different versions of its own operating systems, each with its own quirks and incompatibilities?
/etc).
Complex software systems are, well, complex. Rolling out an Active Directory infrastructure is a pain in the ass. It's just part of the business.
Suse isn't that different from Red Hat which isn't that different from Ubuntu. The concepts are all the same, and the web is there for anything that might be different (layout of init scripts, location of default configuration scripts,
It's all just the same old FUD, wrapped up in new banana leaves and presented as haute cuisine. What else should we expect from an employee of Microsoft? Refreshing honesty? Yeah, I can see that: "Hey, everybody! Computers are fantastic! Yes, Microsoft has fucked up the industry and set us back a few years, but they are still great, and we're much, much better than we were. So, go out an use computers, and make them all work together to do the job you need. Free software is great, because you can customize it and it gives you the freedom you need, but hey, Microsoft products are great, too, because they are flashy and pretty, and the admin GUIs really work, and they don't crash like they used to.
"Oh, and Bill totally rulez. Jobs completely droolz."
Microsoft is to software what Budweiser is to beer.
...isn't so much that "open source software is complex" (e.g., any individual Linux system is more complex than any individual Windows system), but that, for instance, the range of things covered by the label "Linux" is far more diverse than the range of things covered by the label "Windows", so its harder for someone to develope the knowledge to say with credibility that they can support "Linux" than it is to develope the same knowledge with respect to "Windows".
Which is pretty clearly true; but its just as true, if not moreso, if you want to say you support "Unix" compared to "Windows"; it has nothing to do with "open source", per se, or complexity of software. It has to do with supporting more different things, and "Linux", without further specification, is more different things than "Windows".
Quoting from the Xlib Programming Manual by Adrian Nye
The designers of the X protocol were aware that round-tripping would make the protocol perform poorly in the presence of network delays and only put in the replies that are logically necessary.I think there are two weak spots.
First, there is no provision for local echoing. You press a key, the event goes to the client, the client says:draw a character. Now the events and the requests are all queued, so several key presses can be in flight at the same time, but it is undesirable to have a round trip delay before a character appears in response to a key press.
Second, it is tempting to knock together a crude client that responds to every event by redrawing its entire window. This is easy to code, just update the clients internal state, clear the window, and call the GreatBigDisplayRoutine. Much easier than working out what changes need to be made to the window and just doing that. It works OK locally, but generates lots of network traffic. There is a case to be made that X11 is not at fault at all here. X servers are designed to support oodles of sub-windows, nested as deep as you want. If you take advantage of this much of the client code is simple, an event goes to a little sub-window that can quite reasonably be re-drawn in its entirety.
I've actually been studying (and writing about) CLX, which is the native Common Lisp binding to the X protocol. The native C binding to the X protocol is called Xlib.
Notice that X11 is an old protocol, from the bad old days when computers were small and slow, and Ethernet ran at 10 Megabits per second. It is reasonable efficient because it had to be.
Actually, it should be relatively easy for a software vendor to provide statically linked binaries that install in /usr/local on just about any Linux system using a standard makefile or shell script (or pretty installation routine if they like).
That would remove most library dependencies as well as most of the filesystem idiosyncracies that one finds from distro to distro.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
That's why Microsoft has such humungous testing labs -- because the software they have to test is designed as a large monolithic entity, not a highly-modular entity, so testing that software is a humungous undertaking.
If their software were written in a more modular manner, such large testing facilities would be far less important to them (and would perhaps be completely unnecessary).
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
You can only hold 7+-2 things in your short term memory at once. This limits your ability to learn and problem solve. Complex environments increase the number of concepts you have to juggle in your brain at once -- the cognitive load -- and make errors go up and productivity go down.
This isn't a problem that is unique to open source, of course, but it isn't one that is focused on a great deal, with the exception of frameworks like Ruby on Rails.
If you read TFA, you see that Gavin's talking about developing open-source software applications as a business, not using said software. It's too complicated to sell software targeting Linux et. al. because there are so many version. I read his thesis statement as:
Since open source software is not a monoculture, it'll be difficult for an ISV to crush all competition and establish decades-long monopoly rents
This is a "drawback" that I, needless to say, can live with.
In short, the first post on this article pretty much could've been the last.
My turnips listen for the soft cry of your love
Isn't this this similar to what the LSB distribution certification http://www.freestandards.org/docs/FSG_Imperative_W P_Public.pdf is trying to ensure? That If someone is using LSB-certified distributions, that it is guaranteed to have certain components that are needed for developers trying to reach a broad linux demographic? And as distributions adopt futher revisions of LSB, things can only get better? The biggest hurdle I see is the continuing battle over gui-toolkits. But even then, there are projects trying to make a way for developers to make gui's that will use the toolkit of the user's desktop environment, the Portland Project, I believe.
Can you name it? If not, is it a client-server app with rich client or a web app?
We think it's funny too!-)
That's weird. Every PostgreSQL point release I've seen, the PG team updated the documentation at release time. Whoever did the install for you fscked up, as the docu for the installed version should be available. If it's a source install, someone forgot to download the current docs, and if it's a distro package, someone forgot to install the documentation package.
Mart"I know I will be modded down for this": where's the option '-1, Asking for it'?
But is it easy for a home user of Fedora Core 5 to add a software publisher's repository? And is it easy for a publisher to charge for access to that repository?
It seems to me painfully obvious that Mandriva 2006's installer is light-years better than Windows, and entirely graphical. I've heard good things about SLED10 as well. Sure these distros may not have the market dominance of RH/Fedora or the coolness of Ubuntu, but they've been around for a long time and polished things to a high sheen. Try them out.
U.S. War Crimes blog. Email for free Mandriva support.
Open Source software isn't nearly complex enough. We used to be assured that computers were functioning at full capacity. Then along came Microsoft cripple-ware, and all of a sudden computers were nothing but gaming consoles with WebTV functionality grafted on. We had to wait until a free Unix to run on our home machines before we could actually COMPUTE again. For the people to whom compiling your own kernel is just too much to handle, then COMPUTERS are too much for you to handle - go get yourself a dandy little cell phone to surf the web and a swift little XBox to play games on. With my blessings.
Computers are powerful. I mean HOLY-SHIT-I-DIDN'T-KNOW-THAT-WAS-POSSIBLE powerful. They haven't come near potential yet. They will evolve in leaps and bounds. Now there is the box that I need to program in six languages, produce 3D ray-traced scenes, optimize work-related tasks with an ever-growing library of scripts that approach closer to artificial intelligence with each new patch, catalog all useful human knowledge, and generally use office apps and accounting apps and earn my living on. And there is the box for Joe Sixpack to play games on, or for gramma to email her bridge friends on. At some point, as our needs evolve further and further apart, doesn't it seem just plain illogical to call them both a computer? One of us needs a new name.
But of course, Joe Sixpack is in the majority, so he will have the floor. And Leet Egghead will use his wits to circumvent the system in the background like always and keep using his "complex" software to do "complex" things. What a pointless question. Hey, is rocket science too complex? Is organic chemistry too complex? Is brain surgury too complex?
Open source environments may or may not be more complex than a pure microsoft shop that upgrades in lockstep of Microsofts product schedule, but they will never, ever, reach the licensing complexity of Microsoft's products, which microsoft has intentionally obfuscated because they know that a confused customer will often pay more to be on the safe side, rather than risk a BSA audit.
In 2000-2001 I worked for a company that made telecommunications equipment that's used in phone switches and the servers that tell you "Push 1 to..." Their equipment, (and bundled software,) had to support 99.999% uptime. (It translated to roughly 5 minutes of downtime, per server, per year.) The company had a history of supporting Windows NT, Solaris (both x86 and Sun machines,) and Unixware. (They also supported OS/2 in the past.) The QA lab that I worked in tested both the hardware and software for each operating system.
In 2001 they decided to support Linux, because customers were asking for it. When they asked, "What distro do you want us to support?" the answer was "Linux". The company decided to only support Red Hat, because they couldn't afford to test their products with a zillion distros. (Today they'd probably drop Unixware and support two Linux distros.)
The reality is that, due to the complexity of testing hardware/software that "has to work", each distro needs to be treated as its own operating system. The company that I worked for would probably gladly support the distro of choice from large customers, but a small company wouldn't be able to get much support for "Joe's uberk00l Linux d1str0". Even if the company were to provide source code, there's too much testing (and development) involved.
No, I will not work for your startup
For the Venders I have one word.
Configure
Yes Apache Perl and so many others are portable accross,
so many if not, all of the Linux distros.
Yes just require the right librarys and off you go.
If so many OSS projects can do it for free,
why can't your vender?
I smell FUD!
I shoot my crooked arrow...
Installing a server using SuSE, Redhat, or Ubuntu is much simpler than using Windows; with the Linux systems, after you select what you want to run, it installs and just runs, and it comes with excellent GUIs for configuring it.
In contrast, getting a real-world server set up on Windows requires hours of third party software installation and configuration until it all fits together, if it ever does.
I do know but your average user does not. For me in both cases the alternatives were cheaper than open source. My time is valuable and a few hours of milling around news groups, googling, and IRC chat sessions costs me more than the commercial alternatives.
And documentation that is incorrect (and I'm not talking just typos and wrong names), which was the case with my Linux distro, is worse than no documentation at all. It lead me to believe I wouldn't need to go searching news groups, and hanging out in IRC and such. What was rather commical is that I had 4 sources of information and none of them agreed. I ended up piecing information together from all of them and a fair bit of trial and error. While I did get my kernel recompiled, hitting this same scenario with Postgre SQL caused me to abandon the project. Again this was many years ago and I would expect things have improved somewhat.
I hope to revist and play with some of the current distro and see how they fair. I've found the VM image distrobutions and interesting way to get ones feat wet without having to go through all the pains of setting up a full system.
--
Q
That's quite possible. This was a few years ago, as I said I hope such things have been fixed since then. Especially since this distro wasn't free. I will say the Apache web server was one of the few things this distro had working correctly. But that was the only thing that I didn't have problems with. I need to get a recent version and take Linux for another test drive.
--
Q
Well, no, in Linux we don't constantly get a stream of security invasions and layer upon layer of code dedicated to the prevention of this.
For example, it's technically impossible to secure display-function invokations in 'Doze, but it works safely in Linux. Is this absence of risk supposed to be a dis-advantage, somehow?
Well... only if one is looking for control over one's customers as the big aim, rather than indepoendence and safety. So... MS's grand aims still haven't materially changed all that much over the years, have they?
Got time? Spend some of it coding or testing
One of my customers has a mixed environment with Novel and Red Hat Linux systems. Today one of their employees asked me a question about Ubuntu (which, I am ashamed to say, I haven't played around with much). I was able to answer the question because I understood the system and conventions.
I would submit that it is nearly impossible to understand Windows to the same degree because of the added complexity. What was it Linus said? "Nobody understands NT?"
This being said, I have run into situations regarding open source solutions where attempts to reduce complexity seriously backfired. Try installing SQL-Ledger on Spikesource's stack, for example... And to make matter worse, imagine your Linux distro (SLES 10.0) doesn't come with a TeX distro and you have to install TeTeX from source (because you don't want to download the entire TeXLive CD). This combination is particularly difficult.
LedgerSMB: Open source Accounting/ERP
In the vast majority of cases, you are just a compile away from supporting another Linux distro. Sure you might need to compile a few of the more obscure libraries, but the number of those that are not distributed on most distros is dwindling.
The recompile is necessary usually due to versioning problems.
The problems occur when you try to find ways around this, such as using a standard stack that replaces many core aspects of the system. This usually adds far more complexity than it removes.
LedgerSMB: Open source Accounting/ERP
I tried to get SqLite to work with 2 different version of PHP on two different machines and still haven't succeeded after long nights with php.ini re-editing and downloading and moving different versions of DLL's up, down, and all around. Perhaps some of the problem is with the Windows OS, but either way, it sometimes makes pre-packaged boxes of vendor software look inviting. Sometimes it appears that the OSS software coders coded for performance instead of ease of installation and integration.
I think OSS needs something like ODBC (but not just for DB's) where a service is registered and listable. Different products only have to be able to be registered as a service to communicate. This reduces the need to make connectors for say 10 different databases to 10 different languages, with 10 different versions each, etc. OSS seems to have a combinatorial explosion of component combinations.
Table-ized A.I.
Interesting, I've never had need to talk to a MS-SQL or any database developer to use any of the database products I've used. I've worked on some pretty complex databases and queries as well.
I have needed this, and it usuall happens when you really don't expect it.
Here is an example: I developed a custom POS solution for one customer based on SQL-Ledger. It handled a much larger number of transactions than most SQL-Ledger installations and after about six months a very odd performance problem surfaced. Suddenly pages were taking upwards of 30 seconds to load. I isolated the query that was causing the problem did an explain analyze and wrote to the email list.
Tom Lane, one of the main developers of PostgreSQL, provided me with a very clear and detailed description of what was wrong. I was able to resolve the issue in part based on his ability to tell me exactly how the planner was going about designing a query plan.
LedgerSMB: Open source Accounting/ERP
I have worked with PostgreSQL since 6.5
Yes, in the beginning, it was a bit of a beast to work with though it was better from a data protection viewpoint than MySQL. Today, it is far and a way better than anything else I have worked with.
LedgerSMB: Open source Accounting/ERP
And my experience with open source vs commercial is that it's usually cheaper to set up something commercial, at least as long as things go without problems - yet it's hell to debug, so if there's trouble, I'd much rather be on an open source solution. I tend to say it as "open source costs a trifle more for everyday things, and that's insurance against things suddenly going horribly wrong".
With what I do, it's usually cheaper to spend a little more at predictable times instead of taking the risk of suddenly spending lots of time when things have gone wrong and something's not working. I don't know if that's true in your situation or not.
Eivind.
Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
Double clicking in a file with a caption "prog_name installer" which action is to launch your emerge command is much more user friendly (because it appeals to our visual instincts as a primate).
Or at lease the user should be met half way by providing a script alias names "install_software" or something of the sort.
emerge may have geek appeal but is completely meaningless to a newbie.
IANAL but write like a drunk one.
Poor documentation? Have you got a web browser and an Internet connection? Do you know Google's url? There is your documentation. Now, show me your manuals for your latest and greatest Windows OS. What? You did not get one? Pray, do not tell me. I am shocked, shocked, I am telling you. OK, show me your manual of Office? No manual neither? Gee, you can trust nobody nowadays.
I don't know in which planet you are buddy, down here on planet Earth most software companies stopped providing proper documentation ages ago, and very often when hey do they are written in Engrish. Or they refer you to their website.
As in poor support do not joke with us in jest buddy, unless you are paying you get squat. And that is as true for your WIndows, OS X or commerical Linux distribution.
If you are wise enough to use Linux for your bussiness then you will pay support, like you do when you use any other software infrastructure. The advantage is that you have choice of who procvides that support.
With commercial options there is only one game in town, and you drink it or spill it.
IANAL but write like a drunk one.
How about some examples? MSSQL is perhaps one of the easiest RDBMS to install/use of them all (yes, I've used Oracle, MSSQL, MySQL, and PostgreSQL) even if it doesn't scale as high. Put in the install CD and hit the various Next/OK buttons and you are done with a system that, by default, is pretty good.
And this is easier than:
yum install postgresql*
because....?
IBS Synergy's website runs Linux. So I suppose it's not so complex after all....
twitter, please post your answer to the two replies you received. Let's see if your "Windoze" and "stuff on Linux just works" blabber holds up as well as you think it does. C'mon, let's see it. Or is this the extent of your "evangelization" effort? To spew flamebait and then just slither away when someone calls you on your bullshit?