Open Source for SETI Software? 27
CommonModeNoise asks: "The SETI Institute is thinking about going to an open source model for some of our software. We have little experience with Open Source so we would like to ask the following: To what degree can an open-source project be self-managing -- how many of our staff will be needed to keep such an activity running productively? How can we deal with the lunatic fringe that will be attracted to something as provocative as SETI? Can open source development proceed at the same speed as traditional in-house development, or will it be slower? Some of our software controls hardware, for example the Allen Telescope Array; can such control software be developed using open source methods or are we better off focussing on the software-only systems, such as the next generation of our signal detectors? Finally, could we please get some suggestions as to what to read to get a better grasp of the varieties of open source development models and their respective good and bad points."
Well, control access to your CVS sources (Score:5, Funny)
Specifically, don't let the Grays from Cygnus Prime access the source code.
They are deceivers!
They have put a chip in my head and they tell to do bad things. Like to post to Slashdot.
Good Reading Material (Score:4, Insightful)
Eric S. Raymond has written a few papers on open source design methodologies and the benefits thereof. Check them out at his website [catb.org]. In particular, The Cathedral and the Bazaar is a very enlightening read.
development speed (Score:5, Insightful)
I don't think that many people would be willing to get up to speed on your development to help you out. There isn't much they will get out of it; developers usually code to scratch an itch. You might get somebody that does a better visual representation or somebody that tries to do some optimization to get better results for themselves, but you will be very lucky to get that.
On the other hand, why wouldn't you go open source? For the most part it can't hurt. You are not trying to sell your software. What if some other observatory realized that they could control their telescopes with your code? They might just do so and find that they could make improvements to your code. Other than the cheating issues with Seti, I can't think of much of anything. And then again, it is well known how to cheat anyway.
"Self Managing"? (Score:5, Insightful)
Number 2 will happen only if you are lucky. It will leave you with an even bigger management burden because you have no control over the outside developers, and much less coordination unless you do a really good job of managing and communicating with the community. If you want to make sure that your organization's needs are still met, you need to encourage contributions in the right areas without discouraging people from joining your project. You have to deal with the possibility of the community forking the code and drawing effort away from your goals. You have to keep everyone working together even though you and they have never met face-to-face.
Book Suggestions (Score:3, Insightful)
The two books I can recommend are: Open Sources [oreilly.com] and Cathedral and the Bazaar [oreilly.com]. Both are published by O'Reilly. They are quick, invaluable in your quest to understand the open source movement, and in paperback.
It's true in that just making your application open source doesn't mean the world suddenly does all your work. To steal a common ad slogan, "Open source developers don't make the software, they make it better". In otherwords, there is always a core development group that steers the project and do the majority of the work. But once you open source, I think you'll find patches slowly come in plus developers taking the code and doing original things with it.
Of course, the better the code is to begin with, the easier it is for developers to get started with it. I believe this is one of the main reasons the mozilla project took so long to really get rolling. Their original code base was a mess, and the average developer could not just "jump right in". If your code is clean and workable, then you'll see a normal pace of outside work.
Good luck, and congrats! Going open source will definitely help you and the project out.
As a seti@home user..... (Score:4, Insightful)
Those of you who don't think people would cheat, seti@home participants take it very seriously. VERY. Many people WOULD cheat if they could. To many, your 'score' is bragging rights. I'm just glad that I don't need to prove anything to anyone with my seti contributions.
Oh, and I'm in the top 99.601% percent with 6335 results, 9.069 years cpu time, and currently ranked 16957th place out of 4252029 and have been a participant for 3.682 years.
Re:As a seti@home user..... (Score:2, Interesting)
Re:As a seti@home troll..... (Score:2, Troll)
So you don't use Windows then? Ever? You ever install RPMs or any binaries without reading the source? You compile your own kernel and read ALL the source code of a Linux distro before you install? If you DID read all the source, how many hours would it take? Are you qualified to find any security problems with it? I am guessing not since you say you don't know nothing.
No matter who you are, you are running binaries on your system that you don't have the source
for, or have not read and analysed the source for.
To imply you don't want to run it soley because you can't see the source that you admit you wouldn't understand, qualifies you as a bonified troll.
Re:As a seti@home troll..... (Score:3, Interesting)
Perhaps I am not nearly as concerned that Berkeley is actually a front organization for Ashcroft and the rest of the "right wing conspiracy".
But seriously, I consider the source. It is sponsored by a university known for protesting [berkeley.edu] against every military action [berkeley.ca.us], located in a town that was one of the first to pass a resolution against the current war [washingtonpost.com].
Also, SETI@home major users of the client include Sun, Ohio University, Intel [berkeley.edu] and others, who have surely looked inside. If you go to SETI@home [berkeley.edu] they explain in great detail what the program is doing.
Because Berkeley is so liberal and what I consider "anti-USA" I had considered NOT participating in SETI. In the end, I decided the science was more important than the politics.
Basically, I am saying that there is so much info out there, you would have to be paranoid to be worried that Berkeley is actually a front to have us decrypt stuff for the govt. I have done my homework (more than the moderator who modded this as a troll). I know what server it connects to, its not a mysterious source. (I have a firewall that only lets it connect on port 80 to one FQDN)
We may disagree on principal, which is fine. But don't be under any illusion that I have not done my homework. I trust seti because I feel I have good reason to trust them. More so than other distributed computing programs.
Oh, and Adobe Photoshop ALSO is for editing pictures. It tries to connect to mysterious servers all the time. Ask anyone who has it behind a firewall.
redundant? (Score:1)
BOINC is a framework on which to build distributed computing projects with ease. The overview [berkeley.edu] is rather complete, in my humble opinion.
Anyone familar with BOINC or have any comments?
Re:As a seti@home troll..... (Score:2)
Correct. I use no closed-source software on my computers (except the BIOS, which will get replaced with a LinuxBIOS ASAP).
> You ever install RPMs or any binaries without
> reading the source?
I regularly install Debian binary packages. However, I do so in the knowledge that someone else almost certainly _has_ read the source and that I could do so if I wished.
> Are you qualified to find any security problems
> with it?
I am qualified to find some security problems, yes. More importantly, however, I benefit from the efforts of others to do so.
> To imply you don't want to run it soley because
> you can't see the source that you admit you
> wouldn't understand, qualifies you as a bonified
> troll.
No. It implies that he realizes that a major benefit of Free Software is that it allows those who do not have the skills to read the source to benefit from the efforts of those who do.
Re:As a seti@home user..... (Score:1)
Re:As a seti@home user..... (Score:2)
Whether the client is open source or not, do you intend to use distributed computing to search for signals? Will this be totally seperate from seti@home, or will they be helping with the client side.
From what I can tell, seti@home has more computer power than they can use. Most samples are sent out and completed 3 times. While this is nice to confirm the results, the reason (I believe) they did this is simply because they have more people willing to compute than they can collect and split tapes for.
Your approach is a nice compliment to the seti@home program. I would be very interested in running client side programs if you did distributed computing on the few dozen boxes I control now.
Here's my take (Score:2)
Some specifics answers?
<i>
The SETI Institute is thinking about going to an open source model for some of our software. We have little experience with Open Source so we would like to ask the following: To what degree can an open-source project be self-managing -- how many of our staff will be needed to keep such an activity running productively?
</i>
If you have a direction you want the project to specifically go, or preset milestones, then most likely you'll need to manage it.
<i>Some of our software controls hardware, for example the Allen Telescope Array; can such control software be developed using open source methods or are we better off focussing on the software-only systems, such as the next generation of our signal detectors? </i>
It sounds like your needs are very specific, so though your source may be open it may not draw intrest in someone else debugging your problems unless you have a shared problem. As such, you might be better into focusing your efforts on a common interface control module for your application, and writing a in-house driver to interface that software to your hardware. Other institutions with similar hardware can do the same and then you'd be sharing *part* of the costs of writing controls. (and they'll have a benefit from open development as well)
Even for the software only stuff, you'd do better if your code was useful for more applications, for example, genericized signal analyzer you can plug any sort of data in and then runs the selected analyses.
Good luck. Your best bet might be to use an OSS license, (lgpl most likely) but specifically contact other programs with similar needs to co-develop the software you need. (for your interface stuff) That's your best bet for finding other collaborators, but who knows, your software might find other collaborators in an unexpected direction, folks who have the similar needs as you and wouldn't mind adapting your software to interface theirs and contributing material back.
Target platforms (Score:3, Insightful)
I used to run SETI@home on my OpenBSD/SPARCstation until that target was dropped. If the project was open source I could try to re-introduce this platform and participate again.
Those of you discussing SETI@Home... (Score:2)
Re:Those of you discussing SETI@Home... (Score:2)
"can such control software be developed using open source methods or are we better off focussing on the software-only systems, such as the next generation of our signal detectors?"
I thought SETI@Home WAS detecting signals...??
Apples and....... (Score:2)
You can provide opensource software without any changes in your current development model (except providing the source to the software), some people may send patches or report bug in the code.
The project will run faster because, you still have the current in-house, managed development, and some people will submit bug reports and patches..
But, I don't think this is the question you wanted answered.
To answer your question, there is no way to manage a bunch of volunteers, if the people find the project fun and interesting then they will help, if it's boring or they don't think it's important they won't. maybe give them some finincial assistance with food and coffee and the other things people need to live.
Open Source doesn't mean free development, it means open source.