Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

At most of my corporate clients they have very complex systems with multiple entities to be deployed and tested. (e.g. client software, user database, system, database, identity manager application, etc). They usually don't have an easy way to deploy all this. Neither in production nor for development.

I wonder how open source projects/applications deal with this? Do open source projects tend to be smaller in scope therefore less complex to setup? Do they manage to avoid complexity as no-one pays for their time wasted in setup? I wonder what complex open source projects are there in terms of complexity.

I thought about a couple of examples. Neither of them perfect for my purpose.

Wordpress - The .com site is probably quite complex in terms of deployment but AFAIK the version that can be downloaded from .org is quite simple. It cannot be distributed to multiple servers.

Wikipedia ? Most of the software it is using is open source but it is not itself a downloadable open source project so it does not really fit. Details of their system can be found on Wikipedia

Diaspora - the Facebook replacement is not working yet but it might become such project.

Dreamwidth is originally a LiveJournal fork. Dreamwidth is mostly open source. Its wiki page has information with some production notes. I got some input from them in IRC that I posted on their forum to get further clarifications.

So I am interested in further examples of open source applications/system that are complex in terms of deployment and testing.

share|improve this question

migrated from stackoverflow.com May 18 '11 at 12:14

This question came from our site for professional and enthusiast programmers.

3 Answers 3

If you want one supreme example of how a mass of open-source complexity/chaos/anarchy is tamed into something useful and stable, look no further than the Debian project.

IMHO the Advanced Packaging Tool (APT) is pretty key to the success of the whole affair, but of course it also needs the small army of developers to somehow agree on stable versions of libs, synchronize upgrade efforts, and do whatever hacking/patching is necessary to get the diverse upstream sources to actually work with each other etc.

Interestingly, a while ago there was talk of bringing some package management goodness to the Windows world, but I haven't heard much about it since.

share|improve this answer
    
Debian is huge and complex but in a different way than what I am looking for. Still I agree that using the native packaging system would help the organizations. Regardless if it is .deb or .rpm. –  szabgab May 17 '11 at 5:17

In my limited experience consulting software firms have very little incentive to make installation easy since complex installation equals billable days for on-site consultants.

On open source projects there is a big incentive to get good installation software as people do the installation themselves and the simpler it is the more people use it.

share|improve this answer
1  
That is basically what I think as well though I'd add that even employees of the same company don't have the incentive to make installation simple. Maybe less extreme than consulting firms. –  szabgab May 17 '11 at 5:15
    
On the other hand, open source projects generally do not have the benefit of the end user as their no 1 goal, most of them concentrate on the fun part (coding) and neglect the boring part (documentation, ease of setup). Case in point: samba.conf (multiple names for the same options, totally confusing). –  quant_dev May 18 '11 at 12:27

Zimbra simplifies deployment by packaging, partially modifying and configuring all software it needs and forcing a hierarchy. Similar approaches (including an OS even) are PfSense and FreeNAS.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.