Slashdot Mirror


SETI@Home Says Client 'Upgrades' Are a Bad Idea

bgp4 writes "New Scientist has an article on how 'upgrades' to SETI@Home clients are causing some trouble. Even though the upgrades speed the client up, SETI reps don't want people using them because they may induce bad data. If SETI@home just open-sourced [the SETI@home client], they'd have better PR and a better client." Amen! SETI@home, are you listening?

250 comments

  1. so much for innovation by BadERA · · Score: 0

    so much for innovation and advancement of technology ... you'll never get where you're going if you're not moving forward.

    --
    I am, therefore you think.
  2. Real motivation? by rmull · · Score: 1

    The article seems to think that people modified the client in order to help out the SETI movement. I think it's pretty apparent that the only reason to do this is to be able to bust through data faster, increasing your score. duh! :)

    --
    See you, space cowboy...
    1. Re:Real motivation? by ChrisKnight · · Score: 2

      Not true. There have been several groups making requests to the SETI@Home folks to add processor optimizations. The 3DNOW camp of AMD zealots even rewrote the transformation routine used by S@H and submitted it for inclusion, and the S@H dolts refused the help.

      There are some who would cheat, and there are others who want to show how 'their' processor excels. You can't drop someone in either group without reviewing their code.

      -ck

      --
      -- This sig is only a test. If this were a real sig it would say something witty. --
  3. Let's not do this again by extra88 · · Score: 2
    The Truth about SETI@Home

    This is a scientific experiment. It's not a race, it's not a demonstration of the power of computers or computer communities.

    1. Re:Let's not do this again by arivanov · · Score: 2

      Unfortunately most people participating in it at the moment think differently. And the client for some platforms really stinks...

      For example they have not done anything to optimize the non-DGUX alpha clients despite the release of CPML and dec CCC.

      1. Seti can hardly be convinced to open-source the client until they have means of verifying the blocks they receive.

      2. They hardly have resource to develop a good verification scheme and they are afraid to bring openly people from the outside to do this because they can jeopardize the entire experiment.

      Overall, unless someone sponsors a closed variant of No 2 disallowing SETI to use the money on anything else we shall not see any open source seti clients and the performance on some really nice number-crunching machines will continue to suck...

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    2. Re:Let's not do this again by Forty-two · · Score: 1
      OH PLEASE. In all the articles I have ever read that were trying to bring up a good point that article is way down on my list. The author of it is basicly pissed because they gave the client to Intel to optimise for SSE and not to them to optimise for 3Dnow! I don't blame them. Intel would have agreed to not let their source out and didn't, they would have more reason to trust them since its a major company that can inforce something like that and would never want to let it leek out and get all the bad press. That is not the same as some small time group that wants the source just given to them and at most can give their promise that they won't send it out.



      The author also doesn't want to just stick to the points. He has many many statments that are just pushing the point. Complaining about lost CPU cycles and its effect on the enviroment and such.



      "They make their dedicated volunteers use massive amount of
      electricity to run their machines at full throttle while this goes on - it
      is not unjustified to say that SETI@Home may make a measurable
      impact on the CO2 buildup in the atmosphere that way. Charming."



      All in all this is a article by a guy who didn't get the source he shouldn't have and flamed SETI without even doing so much as reading the FAQ where they explain most of his arguments.





    3. Re:Let's not do this again by Anonymous Coward · · Score: 0

      This is a scientific experiment. It's not a race, it's not a demonstration of the power of computers or computer communities. Bullshit! If there's one thing S@H is not, it's science.

    4. Re:Let's not do this again by dciman · · Score: 1

      So, you think that AMD is not a "major company" worth trusting? That is interesting considering their current position in the cpu industry......

    5. Re:Let's not do this again by Forty-two · · Score: 1

      You didn't read the article. Its NOT AMD its a small group that optimizes things for 3Dnow!

    6. Re:Let's not do this again by phil+reed · · Score: 2
      If there's one thing S@H is not, it's science.

      How so? Please explain. Seriously.


      ...phil

      --

      ...phil
      "For a list of the ways which technology has failed to improve our quality of life, press 3."
    7. Re:Let's not do this again by Jonathan · · Score: 1

      Consider: the outcome of a true scientific experiment either supports or rejects a hypothesis. Granted, the hypothesis that intelligent alien life exists would be supported if a signal believed to be of alien origin is found by S@H, but what does it mean if no such signal is detected? That the existence of intelligent alien life has been rejected? Surely not.

    8. Re:Let's not do this again by copito · · Score: 2

      No a false result means that we have x% confidence that a civilization broadcasting in these particular frequencies does not exist in a well defined volume and time period in space.

      It is similar to the task of identifying the top quark. Before the top quark was observed, there were a large number of negative experiments which proved that it must have a mass greater than the mass observed in the experiments.

      These kinds of experiments are invaluable, since they tell you where not to look in the future. They can also help disprove a theory that predicts a greater frequency of observations than those actually observed.
      --

      --
      "L'IT c'est moi!"
  4. Think realistically... by Ageless · · Score: 3

    Comon people, think about this before you flame. Someone submitting invalid data can ruin this entire project for everyone. Open source software doesn't get tested until it's too late, and by time a calculation bug is found in the code, thousands and thousands of entries could be invalid. At least think about the project some before you randomly spew out "Free The Source!!"

    1. Re:Think realistically... by DanaL · · Score: 1

      But, locking up the source won't stop bugs from creeping in. The argument is, which model get the bugs fixed faster, my guess is open source, if only because Seti's audience is hugely skewed towards geeks. You'd have plenty of competent programmers reviewing the code, and they could set up a system where the 'unstable' versions of Seti client only handle old data where in the results are known (which is what they probably have to do for testing purposes anyway).

      The only two arguments I can see for closed source are

      1) The plan to get a patent for the code at some point, or otherwise make money off it.

      or

      2) They are worried that someone will maliciously re-write there client to return junk data. But if someone wanted to do that, they could probably do it without the Seti source.

      Dana

    2. Re:Think realistically... by InsomniacsDream · · Score: 1

      What are you talking about? The SETI programmers already screwed up. Don't you remember that soon after their initial release to the public, they announced that there was a bug in the program that was causing every computer to process the SAME packet of data. Therefore, your conclusion that open source programs are somehow inferior products is flawed. If there were hundreds of open source programmers looking at the code, this bug would probably been fixed before it was released. That IS reality.

    3. Re:Think realistically... by extra88 · · Score: 1

      How about this: someone who tries to "improve" the algorithms gets them wrong but it finishes blocks faster and has a cool display that syncs with MP3s. The client becomes popular and SETI@Home is left with gigs of data which needs to be re-processed. Worse, the bad data may not be distinguishable from the good data so it's all ruined.

    4. Re:Think realistically... by WNight · · Score: 1

      So, if they released their source, bugs would magically appear?

      Open source doesn't cause bugs. Fast development cycles cause bugs. End of story.

      If they open sourced the project they'd speed it up enough (proof: AMD and other organizations have offered both general speedups and processor-specific speedups of over 100%) to add redundancy, both to check the method by processing some packets with an alternate algorithm, and to guard against false packet returns.

      They aren't obligated to open-source the project, but I for one quit running SETI@Home when I heard about them refusing optimization help because they didn't want to process the packets too quickly. I don't care what their reasons are, I simply refuse to run something that's woefully unoptimized, especially when they were presented with alternatives. Now I'm running other distributed projects with my spare cycles. And I suspect I'm not the only convert.

    5. Re:Think realistically... by Bearpaw · · Score: 1
      Yeah. I'm not following bgp4's rationale.

      1) People tinkering with Seti@Home's code may be screwing it up.

      2) Therefore, we should let more people tinker with it.

      Huh?

      There are, no doubt, at least a few situations were open-source is not The Answer. Maybe this is one of them, eh?

    6. Re:Think realistically... by Anonymous Coward · · Score: 0

      pay attention.

      The bug you mention was in the server code, not in the client code

    7. Re:Think realistically... by Myddrin · · Score: 2

      So, if they released their source, bugs would magically appear?

      No, but some dishonest programmer may try to either 1) hose the program because they think Seti is stupid or 2) try to fake data so s/he becomes "the person who discovered ET."

      Let's not get all idealogical here folks, instead let's try and think of some way to identify suspect blocks and cope with them.

      Then we can go to the Seti@Home folks with an entire plan, not just chanting the open source mantra.

      --
      Myddrin
    8. Re:Think realistically... by (void*) · · Score: 1

      This assumes too much of too many programmers.

      Just becuase one is a good programmer, that does
      not immediately imply that one is good with
      signal processing, or algorithm design.

      The worry is less about malicious data, then
      well meaning people who change the source
      without realizing that they have modified the fundamental algorithm in some manner.

      I remember doing a school lab which required me
      to write code a solving some partial differential
      equations. Unfortunately, the correct algorithm
      was not stable, and the stable algorithm introduces errors. Getting the stable algorithm
      to produce "correct enough" results required
      a great deal of tweaking, and slowing down of the
      code.

      None of this is as straightfoward as I have made
      it out to be. So let's just let the SETI@Home
      guys do the correct, rigorous thing. Sure they
      are not perfect. But in that case, THEY get the
      blame, NOT YOU! :)


    9. Re:Think realistically... by bbarrett · · Score: 1

      Just look at what happened with distributed.net's RC5 client. People would modify the source so that keys weren't actually being tested, thereby increasing their keyrate. I completely agree with the SETI group's choice. Open sourcing clearly would not solve the problems with the SETI@Home.

    10. Re:Think realistically... by rwh · · Score: 1

      The third reason is that it is a research project, not a software development project. If you're doing research and you don't have complete control over the environment, you're just producing junk. These guys are doing exactly what they should be doing.

    11. Re:Think realistically... by WNight · · Score: 1

      They should be checking a random sampling of returned blocks to make sure the processing is correct.

      This could catch both malicious forgery and accidents, like perhaps there's a bug in the code so that a k6-2 of 450Mhz returns false answers... How would they know?

      And the idea of an open client means, at least to me, that we'd submit changes to SETI@Home, and they'd release the next approved client.

    12. Re:Think realistically... by InsomniacsDream · · Score: 1

      I was paying attention, but my point was that they already made mistakes. Whether it's in the server or client, it doesn't matter. The more programmers you have looking over the code, the less likely such mistakes would happen.

    13. Re:Think realistically... by WNight · · Score: 3

      Ok, I'm done. Don't know what took you so long.

      Process the data packets, hash the results, with MD5 or SHA, then return the hash along with whatever other results are needed.

      SETI@Home picks some random number of packets and sends them out to a second user, checking to see if both users return the same hash value.

      And this doesn't just stop malicious forgery, but it also stops bugs which may cause incorrect packets to be returned some of the time.

      This does require keeping a list of the packets a user processes, but this shouln't be that hard. Especially because they start fresh every week (month?) with the new data.


      Where this gets really hard is with Bovine, and the code breaking.

      The message is known to the users, so the cracker (bad guy) knows what result to watch for. And he knows what result to return (yes, or no). Easy to forge.

      Bovine is also more likely to get a user hiding hits, instead of faking misses. For misses, they simply use a hash of the first bytes of the 'plaintext' after each decryption and compare these. For a hit, they need to hope that the packet with the hit is one sent out for inependent verification.

      What they need is a cryptographic way of hiding the true results from the user.

      As in, in you have C, a cyphertext, and P, a plaintext, and want to find K, the key that turns C into P, is there some transformation you can make to C and P that allows the same key to function, but masks the cypher and plaintext?

      This isn't as impossible as it sounds... Imagine a rotation cypher with a numeric key.

      Let's imagine the key is 3.

      Plaintext 'CAT' becomes 'FDW'

      Add the transformation -1 to both

      'CAT' becomes 'BZS', 'FDW' becomes 'ECV'

      Now, imagine the Bovine group wanting to test their users. They think people will hide a success, making the project continue.

      If the user knows that the random-looking cypher text decrypts into 'CAT' they simply watch for 'CAT' to be decrypted and they've found the key.

      So, Bovine sends T(C1) and T(P), the transformed (T layer) cyphertext (C1) and plaintext (P1). The user knows that T(P1) is the desired result, 'FDW' in this case. But they don't know if that plaintext is the contest winner, or a loyalty check. So they decrypt T(C1) and low and behold, it matches T(P1) ('BZS' becomes 'ECV') and the software says 'We did it!'.

      If they report this set of keys as a failure, Bovine *could* have planted this key, and shut them down when it isn't reported. Or, it could be the real key. They'd never know.

      So they're compelled to be correct, because if their answers don't match the ones Bovine expects, Bovine doesn't trust their other answers and their stats are thrown out.

      So, we need to find the transformation (T) that allows T(C)+K to equal T(P) for all cyphertexts and all plaintexts.

      There may not be such a transformation that does this, but if there is, this is the ultimate answer for Bovine, and other projects like this.

    14. Re:Think realistically... by slashdot-me · · Score: 1

      Easy. Send the client a sata packet with known characteristics every now and then and check the results. This technique should work fine for seti.

      The situation is a bit different with distributed.net. If you cannot make fake positive packets, you cannot have security. However, if you can generate fake positive packets, then you can trap all evil clients.

    15. Re:Think realistically... by WNight · · Score: 1

      You'd rather that there be a false sense of security.

      The clients have been reverse engineered, and unscrupulous people have already done that.

    16. Re:Think realistically... by Myddrin · · Score: 2

      Wow, ok I followed about 1/2 of that. I'm not a crypto guy (at all, my idea of an interesting book on crypto is Focault's Pendulum. Could someone else comment on this???

      --
      Myddrin
    17. Re:Think realistically... by bbarrett · · Score: 1

      No. I don't think there is a false sense of security with the closed source versions. People have reverse-engineered the code, which has caused problems. But, it is a hell of a lot harder to reverse-engineer a piece of software than to read the code, find a quick way to by-pass the checking algorithm, and mark the block as checked. I think the goal is to make it as hard as possible to ruin the projects (seti or distributed.net) because of someone returning bad data. If that means closed-source development, then we should accept that. Don't get me wrong, I'm all for open-sourcing as much as practical.

    18. Re:Think realistically... by Beede · · Score: 1
      Someone submitting invalid data can ruin this entire project for everyone.

      I'm feeling simple-minded today. Suppose I claim that I detected some spectacular message in the data I downloaded. How does the "ruin the entire project for everyone?" Does my message just get forwarded direct to a headline in the New York Times? If so, I think their protocol could use a little work....

    19. Re:Think realistically... by hellbunnie · · Score: 1
      And the idea of an open client means, at least to me, that we'd submit changes to SETI@Home, and they'd release the next approved client

      Yes, and that would be fine, except that in order to do this they have to release the code which allows the possiblility of people writing their own versions which interface perfectly with the seti server but don't necessarily give the correct results.


      This is a scientific experiment so they simply can't take that risk.


      Even if they periodically check results they may not catch all incorrect data, and the one they miss could turn out to be the one that would have revealed something interesting had it been analysed correctly.


    20. Re:Think realistically... by GnrcMan · · Score: 1

      False positives don't matter...it's false negatives that are the real issue. That, and the fact that this is a scientific experement. The fact that there are hacked clients already jeopardizes the validity of the results. Open sourcing the software would unequivocally destroy the scientific validity.

      --GnrcMan--

    21. Re:Think realistically... by phil+reed · · Score: 2
      Send the client a sata packet with known characteristics every now and then and check the results.

      In fact, they do that. If you look at the 'signals' graph on the web site, you will see that they inject test signals at known frequencies into the outbound data and look for them on the returned results.


      ...phil

      --

      ...phil
      "For a list of the ways which technology has failed to improve our quality of life, press 3."
    22. Re:Think realistically... by Robert+S+Gormley · · Score: 2
      No. It would have been released, caused a problem. And fixed reasonably quickly. Hopefully.

      An argument for open source? Yes. But I think the arguments against far outweigh.

      --

      Open Source. Closed Minds. We are Slashdot.

    23. Re:Think realistically... by Anonymous Coward · · Score: 0

      i believe it was that they had more processing power than input data, so the same data was being processed multiple times.

    24. Re:Think realistically... by WNight · · Score: 1

      Well, you can rely on the closed sourceness of it. Assume that the malicious types are too lazy to crack the client just for a ranking number. I know I'd have to have more incentive to stare at a debugger for a while.

      Or, you could open it, get people with degrees in crypto to work on securing it, and they'd probably donate their time if they felt the project was for a good reason. And then instead of any bored programmer being able to crack it, only a bored PhD with a supercomputer (or distributed project) would be able to crack it.

      And if it was secured, you'd have guarantees that it couldn't be forged with N hours of computer time, etc etc. Instead you just have to assume it's hard. It could take one NOP to tell it not to call the 'Success' routine, or it could take hours of work. Nobody knows.

    25. Re:Think realistically... by WNight · · Score: 1

      Sorry for the snarky tone I took.

      Basically the idea is to use crypto to help us crack crypto.

      Sometimes this involves using hashes to show that you've checked the data you return.

      This is appropriate for 'No' results in RC5/DES/CSC type contests, where there are so many 'No' answers that if you get caught when you lie about one, you're easily turfed from the project.

      This would also work in SETI@Home because there shouldn't be a certain point at which you say 'Alien here'. You'll simply returned the processed data to SETI@Home and they'll look at the results to see which look promising. Thus you don't have the option of lying just about 'Yes' answers because all answers are varying degrees of 'Maybe'.

      The problem is in key-finding, where there's exactly one needle in the whole haystack, and it's really obvious if you've found it. And by the nature of the thing, the key one away is dead wrong. So it's hard to do watch for this sort of thing.

      In my description, I used a simply cypher, a straight alphabetic rotation that is trivially simple. But the premise might hold.

      Some forms of encryption stack in different ways. For example, if you add 6 to every letter in an alphabetic rotation, and then reencrypt it by adding 3, you haven't made it more secure because the same thing could be achieved in one pass by adding 9.

      DES Encryption on the other hand isn't this trivial. If you encrypt data once, and then again with a different key, it's more secure.

      This doesn't mean that this won't ever work with complex encryptions, or even that it won't work with DES, but it does seem likely it's going to be hard.

      It's not like we can add a constant to the cyphertext, and the plaintext, and have the same key work. For starters, DES (and most current cyphers) aren't mathematical. They don't multiply the character, then subtract something, etc. They rotate the bits and apply various logic operations to it.

      A little more detail on why we need this.

      You want to ensure that a key will be returned when found. This means you need to test the loyalty of the participants, see if they return news of their sucessful decryptions.

      The problem is that the cypher text remains the same each time, as does the plaintext. So if you send them a different set, they'll know something is up and can behave temporarily, until the test is over.

      So it's not enough to simply encrypt the plaintext with your own key and pass that keyblock to the participant, because they'll see the cyphertext has changed and they'll know you're testing them.

      Any time you change one of the hardcoded parameters you'll have this problem. There isn't any simple way around it.

      What needs to be done is send a different cyphertext each time, so the participant can't just watch for the odd different one.

      But, a smart participant has looked at the contest themselves, and they know what the first part of the plaintext is, as well as the cyphertext. So any time it's different from the real one, they know to watch out. And, if you did send enough different ones to mask which was the real one for someone who couldn't find out, you'd waste so much time on fake cyphertexts that you might as well not bother.

      So, we need a way to change the cyphertext so that it doesn't appear to be the same as the original. We also need to be able to predict what effect our change will have on the decrypted cyphertext and on the key.

      In out alphabetic rotation cypher making a change to the cyphertext and the plaintext meant the same key would work. We could also make a different change to each, -3 (D becomes A) to the cyphertext and 4 (A becomes E) to the plaintext. This means the key would be seven off by 7. Still predicatable.

      We need to be able to make a change that lets us predict what effect we'll have on the key. It wouldn't do us any good to send shrouded cyphertexts and plaintexts if the work cracking them didn't help the project.

      Even if the same key wouldn't work, as long as it's relationship to the real key, for the real plaintext and cyphertext was determinable, that would be enough.

      For instance, if we know that by changing the cyphertext in form X, an the plaintext in form Y, changed the key in form (XY-X), we could assign the same keyblock we were going to, shifted by XY-X, so that we were doing real, useful work, even while ensuring participants couldn't cheat.

      So, someone gets a the keyblock, and a new cyphertext and plaintext, and they check the keys and lo and hehold, one works. They don't know if we sent them shrouded versions of the real information, or a pair that we made up. But it's much more likely that we're testing them, so to avoid being kicked out, they are again forced to behave.

      The shrouding we use doesn't even have to be that strong. All we need to do is slow them down enough that they waste more time cheat than by doing it properly, which eliminates the main reason for dishonesty, the desire to see themselves crack more blocks.

      The only problem is that I don't know if it's possible for all cyphers, let alone the specifics of the method you'd use.

      Hope I was more clear this time.

  5. forced updates by Anonymous Coward · · Score: 0

    Well, they forced you to update (otherwise the client wouldn't process any new units)

    1. Re:forced updates by JohnnyCannuk · · Score: 2

      No they don't. I'm still using the first client on my Win 98 machine and have 29 units complete and counting...they're being proicessed this very minute.

      --
      Never by hatred has hatred been appeased, only by kindness - the Buddha
  6. It's *not* open source by rde · · Score: 3

    Yeah, I run seti@home. Yeah, I'd like it to be open source. But it's not.
    If you agree to help out, you do so on seti@home's terms. They say they want you to use this software, so you use this software.
    This is not about having the most units completed, or about being the one to find the signal, or about improving the software. It's about helping the project, and contributing to the body of scientific knowledge. If you want to help, use the sanctioned software. If you use anything else, then you're hindering. Go crack cyphers or calculate weather patterns or something.

  7. Echelon by InsomniacsDream · · Score: 0

    But if they open source it, then we'll all find out that it's actually been a clever surveillance device used by the government to give them access to critical files on our computer and monitor our every move on the internet ;)

  8. Alright, that's it. by Enoch+Root · · Score: 2
    Listen, I'm an Open Source advocate in my own time, but I get fed up with people picking at Seti@Home for not being Open Source. What's the big deal? Yes, it would be a better world, maybe, if Seti@Home went Open Source. Yes, it makes sense for a project like Seti@Home to aim at a collaborative construction.

    But give me a break. Stop antagonising Seti@Home because they're doing it in a traditional way. Who cares? They've come up with a great concept to advance their research, and a lot of people bought into it. It's not like they're making money out of it. It's not like the publicity they get fills the bank account of a rich CEO.

    So stop picking at Seti@Home all the time until they become Open Source. Change is gradual, and we have to count or blessings and support Open Source initiatives when we see them, not declare a Jihad against everything non-OSS. Yes, most people including me would like to take a peek at the code. But let it be, for just a moment... Seti@Home remains a great project, whether it's Open Source or not.

    You know, there *are* great software that don't need to be Open Source... And I think they're not hurt that much because of it. I don't think Seti@Home would get a whole lotta good from Open Sourcing their code, because everyone could figure out how to send false data claiming they not only got an E.T. signal, but it was singing Singing in the Rain in slow-motion.

    /me calms down.

    "The wages of sin is death but so is the salary of virtue, and at least the evil get to go home early on Fridays."

    1. Re:Alright, that's it. by Anonymous Coward · · Score: 0

      Seti is NOT is great project in its closed source format. Your have no idea what data the software is returning, or what is is actually analyzing for that matter. Finding aliens sounds like a great idea, but these guys could be attempting to decipher encryption, locate offshore oil wells, or have any other self profiting motives. What are they trying to hide by not opening the source.

    2. Re:Alright, that's it. by Enoch+Root · · Score: 1
      Oh, please. That reminds me of a quote that's just as ludicrous:
      Man: "I'm innocent!"

      Cop: Innocent of what?"



      "The wages of sin is death but so is the salary of virtue, and at least the evil get to go home early on Fridays."
  9. Yes, SETI is listening by Jerf · · Score: 5

    SETI is listening, and your arguments are rejected.

    This may sound odd to people participating in distributed.net, but SETI is not about processing data as quickly as possible. It's science. In science, you want to hold as many of the variables as similar as possible, so that you can be sure they didn't create a false result (false positive OR false negative). All else being equal, speed is nice, but it is not the goal.

    Open source is not the answer for everything. Sure, if it was open source, some good patches might come out, but how many people would download the code, apply the patches that speed it up, and never have a clue that they just fatally broke the FFT result testing algorithm? Or for that matter, if they broke the FFT algorithm? Or would simply use it to easily learn how to send result blocks without processing them?

    The fact of the matter is, even if you can improve the code, you cannot improve the code. (That's not a typo.) If you can improve the code, instead of helping SETI by processing keys faster, you bring yourself out of alignment with everybody else, create potential bugs in the experiment, and render all of your results suspect. SETI is science... distributed.net is engineering. There is a big difference, and science does things the way it does it for a reason. SETI needs the results to be as solid as possible. (If one of the hacked clients detects a signal, rest assured that even if SETI doesn't subject it to extra scrutiny as a result, some other scientist will.)

    SETI can't stop people from modifying the executable on their own systems, but I think the people calling for SETI to make it even easier for people to modify the system (not just your code, SETI is part of a system and subject to the interactions thereof) have a fundamental misunderstanding of what SETI is about.

    1. Re:Yes, SETI is listening by InsomniacsDream · · Score: 1

      Alright, I can kind of agree with some of the reasons why open source might not be the best idea for this project, but I don't think one should be so hasty as to reject the possibility so quickly. We have all seen the benefits of open source for Linux. Why are so many people so quick to say that even though it worked for linux, it can't work here. The very fact that so many people here at slashdot have an opinion on the matter shows that there are many potential developers out there who are already helping SETI by discussing the problem.

      One of the complaints for not releasing the source was that false data packets could be sent. By this, I assume you would mean a 'false positive' since what would be the point of doctoring the code to produce the same negative result that most other people are already getting. So some hacker modifies his code to detect an alien signal. Well, considering that this should be a rare event, all the SETI people have to do is to recheck the data themselves using trusted methods. Since the number of false positives are small, this would not tax their resources much. So then what motivation would a hacker have for doing this if they only know that they will be shown to be a fraud in the end. I think that most people who would spend their time working on the code would actually be more inclined to find a real signal than waste their time with such childish behavior. Yes, there will always be exceptions, but don't tell me that they can't already reverse engineer the code to do the same thing now.

      Second, why not introduce some redundancy into their method. If it is true that their speed is limited by some other factor such as the rate at which they are receiving data from their telescope, then why not send out identical packets to more that one computer. That way, even if one person does decide to mess with the data, the chance that both computers (or three or four) would screw up the data in exactly the same way would be very unlikely.

      Some people have objected to open sourcing the code because that "is not how science works", but I disagree completely, and being a NASA scientist myself I think I have room to talk. Science, in fact, works by redundancy. The fact that more than one group of people can analyze the same set of data and come up with the same results is one of the cornerstones of the scientific principle. Has anyone ever heard of cold fusion? reproducible?

      So my point is that already in this discussion, several people have come up with some good ideas for improving their existing code. Open source is already working and we haven't even got a hold of the source yet!

    2. Re:Yes, SETI is listening by kevin+lyda · · Score: 1

      "it's science."

      no, really?!

      thanks for the explaination, but i think people are aware of that fact. the question is, how much science can you do?

      when you have a paper and pencil, and you're looking for patterns in signals, not that much. when you have a single computer, you can do more, but can't go into a lot of depth. deeper with a supercomputer, and even deeper with a distributed setup.

      but with a distributed setup small increases in speed on the client can have dramatic increases in the processing power. if there are 1,000,000 keys processed a day, a 1% speedup = 10,000 more keys.

      or better yet, more time free for more analysis. in other words they can speed up the current analysis and then add an extra loop to do another type of analysis.

      and better still if they open the code, people who love making tight code tighter can focus on speed, and seti researchers can focus on science!

      as far as keeping control of variables, the seti team already has control of the variables: the data from the telescope. if a segment proves interesting they'll look at it. and if you read their docs they send each segment multiple times.

      free software isn't the answer to everything, but it *is* an answer here; it will lead to more detailed analysis and more science.

      i suggest the seti team should try listening a bit more.

      --
      US Citizen living abroad? Register to vote!
    3. Re:Yes, SETI is listening by GnrcMan · · Score: 2

      In science, you want to hold as many of the variables as similar as possible, so that you can be sure they didn't create a false result

      Thank you, I couldn't have said it better myself. I don't think most people realize what a disaster it would be to have everyone mucking with the seti@home client.

      To everyone who thinks the client should be open sourced, I'll be blunt: Open sourcing the client would do no less than destroy the seti@home project. I'm not joking. The scientific validity would be gone. When you add those patches? You are hurting seti@home.

      --GnrcMan--

    4. Re:Yes, SETI is listening by bgarcia · · Score: 3
      ...but SETI is not about processing data as quickly as possible...
      Absolutely, positively false.

      If that were the case, then SETI@home would simply do all the computations on their own machines, and not ask for help from thousands of systems distributed all over the world.

      but how many people would download the code, apply the patches that speed it up, and never have a clue that they just fatally broke the FFT result testing algorithm?
      This isn't rocket science. You have a central repository that takes in good patches. Clueless people know to just download good code from the repository. You have regression tests to test these patches.
      If you can improve the code, instead of helping SETI by processing keys faster, you bring yourself out of alignment with everybody else...
      What in the world do you mean by "alignment"? And why is it a bad thing?

      Code that does the same thing, only faster, is known as better code.

      What SETI@home needs to do is add some security and checking to their system. Double-check results every now and then. If a particular client is found to have given a bad result, then remove all results obtained from that client.

      Telling people to not upgrade their clients just isn't good enough. It's quite easy for someone to maliciously hack a client to produce bad output. You need a system that can protect against this anyway. And once you have this system in place, then you'll also have protection against buggy clients. Then there should be no reason not to open-source the damn thing.

      --
      I'm a leaf on the wind. Watch how I soar.
    5. Re:Yes, SETI is listening by slashdot-me · · Score: 1

      > but with a distributed setup small increases in speed on the client can have dramatic increases in the processing power. if there are 1,000,000 keys processed a day, a 1% speedup = 10,000 more keys.

      No. A 1% speedup isn't "dramatic." Things start getting dramatic when speed triples. Think of it this way. A data warehouse with a one terabyte array can save 10 gigs with 1% compression. Holy cow! That's like 3000 mp3s. But people with 1TB arrays don't care about 10 gigs.

      You time is better spent recruiting cycles than developers.

    6. Re:Yes, SETI is listening by Brent+R. · · Score: 1

      He's right. Science needs to control all the variables.

    7. Re:Yes, SETI is listening by WNight · · Score: 1

      Wow, it's a good thing that binaries can never be cracked. Otherwise someone unscrupulous could be faking results even now. [/SARCASM]

    8. Re:Yes, SETI is listening by ucblockhead · · Score: 1

      ...since what would be the point of doctoring the code to produce the same negative result that most other people are already getting.

      You are assuming that any mistakes will be intentional. I think what Seti is worried about is having someone who doesn't quite understand the fast fourier transform making a "minor" modification to speed up the algorithm. This could cause a false negative, which would pretty much impossible to discover without rerunning all results.

      Now, "Open-Source" is suppose to catch bugs, but it only catches bugs if the source is made public. Normally, if I download the kernel, and make some changes, well, any bugs are my problem. Obviously no one else is going to use those modifications without scrutinizing them closely. That is why open source works. But that is not the case, here. If I modify the source to Seti, I could potentially screw up the whole damn thing without anyone seeing my source code modifications. There is no "power of open-source" there.

      You have to look at this system not as a bunch of clients running everywhere but as a single, huge multiprocessor computer running a single program. You don't want to go around changing your software while the program is running unless you have a damn good reason.

      The other mistake people make is in thinking that the Seti client needs improving. The trouble is that they don't necessarily have the same goals as the Seti project itself. Too many people are worried about their "score" and how well they, or their group, does in the rankings. Hence, most modifications people want to make involve speeding up the clients. But that is not necessarily the goal of Seti. Seti is, first and formost, about getting good results, not about having really bitchin' fast clients. From what I've seen, there are more than enough clients to get Seti the results it needs. From their perspective, there is simply no need to improve the client. As long as the FFT algorithm is working and they are getting enough results back, any change is simply not worth the risk.

      Sending results to multiple PCs is an interesting idea, but it seems to me to be asking the Seti people to a) halve their throughput and b) put extra time and effort in, all just to satisfy people who want to muck with things. It seems to me that if we are saying that there is so much extra computing power that we can afford to halve our throughput, then any improvements that might speed results on the client end simply are not needed.

      This is a two year project, but presumably, given the success, there will be a Mark II. My feelings is, save the suggested improvements for Mark II.

      --
      The cake is a pie
    9. Re:Yes, SETI is listening by Forty-two · · Score: 1
      "...but SETI is not about processing data as quickly as possible...

      Absolutely, positively false.

      If that were the case, then SETI@home would simply do all the computations on their own machines, and not ask
      for help from thousands of systems distributed all over the world. "



      Ehh.. no. The only thing that matters in SETI is getting the packets processed with the highest probability that all the packets are secure as possible. Why don't they process them all on their machines? Because if they did it that way it would take the next 10 of so years, That is the POINT of a distributed computing project.

      No matter what having the client open source makes it more likely to get faked positive or negaitve results. If they open sourced the client everyone could process 2x 3x more packets but the project would be useless as a whole.



    10. Re:Yes, SETI is listening by kevin+lyda · · Score: 1

      "You time is better spent recruiting cycles than developers."

      definitely.

      now let's compare: linux kernel development requires how many hr people compared to sun's kernel development team?

      if you free the code, developers will just show up. heck, they might even recruit people to run clients. wow, two for none!

      --
      US Citizen living abroad? Register to vote!
    11. Re:Yes, SETI is listening by no-s · · Score: 1

      Someone moderate up the reply by insomniacs dream. Most of the defenses of not open-sourcing (including the so-far top moderated reply) are pretty naive - e.g. aserting because there exist some folks not as smart as the Seti@Home scientists, therefore no one is smarter? C'mon! Or to say "it's SETI, therefore it's for the good", i.e. the ends justify the means?

      In march-april I had an extended email discussion with the seti@home project managers about open sourcing the client in order to improve client security. Fundamentally, they felt providing the source was bad because:

      • Someone would spoof the client and ruin the project;
      • Some well-meaning idiot would "extend" the client and ruin the project (yeah, like not having the source prevents this);
      • Someone would steal their science (the data);
      • There is no way to open the source and maintain security for the server;
      • Someone would fork the client and they would have no way of knowing what client was used;
      • The saucer nuts would run their own seti project and claim the seti@home project was a cover-up (like this hadn't already happened?)
      • They didn't have any more time to review the issues (which was my main point for open-sourcing!)

        Since the open source community had already addressed many of these issues at the time, I felt their responses were spurious. My gut feeling was they had other issues which they did not want to expose.

        I had initially pointed out the security issues with a closed source client and asked if open source was possible to address the issue. On the basis of the responses I received, I recommended a ban on the Seti@Home software to my customers. Some agreed and banned Seti@Home.

        Personally I feel Seti@Home and other closed-source distributed clients are a bad idea because they are not subject to review and they treat the user with contempt. It's not a collaboration if the participants have no voice.

    12. Re:Yes, SETI is listening by javatips · · Score: 1

      Seti@home is NOT listening!

      The seti@home people don't seem to understand the "distribution" principle.

      They could easily open the source of the client (and the server) without comprisising the science.

      The seti@home people understand nothing about security and authentification. It been proven by the fact that people with unauthorized client can upload stuff back to seti@home without them knowing that the result come from an unauthorized client. They have authentification!

      seti@home could open the source and accept contribution from real programmer. Those contribution could be tested against theire test signals to be sure that the results they produce is valid. Afterward, they can merge the contribution into an OFFICIAL package.

      By the mean of integrating authentification protocols into the client and the server, they could accept result only from official clients.

      This would solve the problem of bad results.


      Also, opening the source will ensure peer-revision of the way THEY implemented the algorithm. It seem that we must trust them for the correctness of the implementation.

      Science is about peer review, opening the source code of the client AND the server will enable peer review. Peer review should not be only for science data, but also for the tools scientists use.



      IMHO, The seti@home people DO NOT listen. They have hundreds of thousand active users and they do not listen or even respect them.

      We give our computing power to them, they should at least give us some respect and listen to us!

    13. Re:Yes, SETI is listening by Myddrin · · Score: 2

      If you object to their policies so much, then don't
      run their client.

      There are a million or so screen savers out there.

      These people know what they are doing from a scientific standpoint, until we can approach them with a _ROCK_SOLID_ plan for how open sourcing would work, and a plan to prevent any contamination of data, they _aren't_ going to listen
      to us. And they _shouldn't_!

      In other words approach them with a working transmission protocol that immediately notifies the server if the code has been tampered with, or makes trapping such occurances trival. Someone above posted a method that I think might be a good start. However, I doubt if they would accept a random sampling of verifies, ideally every packet should be verified somehow.

      This isn't a democracy folks, this is an attempt at a scientific study of one of the most important question in the world. One with implications for religion, philosophy, biology, physics, astronomy and almost every other field of human endevor.

      If they choose to be a little conservative with _their_ code, it's _their_ proffesional ass on the line. OTHO if our screensaver or distributed client runs 10% faster, gee isn't that nice...

      Out of a job, and a laughing stock compared to ooohhh look at the purty colors.
      Sheesh, cut them a break.

      --
      Myddrin
    14. Re:Yes, SETI is listening by Don+Sample · · Score: 1

      ...but SETI is not about processing data as quickly as possible...


      Absolutely, positively false.



      If that were the case, then SETI@home would simply do all the computations on their own machines, and not ask for help from thousands of systems distributed all over the world.


      There is a big difference between "fast enough" and "as fast as possible." Using just their own machines isn't fast enough. What they are doing now is. Last time I checked the SETI@Home project was already processing the data as quickly as it is coming off the telescope. Faster client software doesn't gain them anything. It just helps people running the client app inflate their egos by boosting their block counts.
    15. Re:Yes, SETI is listening by Holger · · Score: 1

      There ARE already different implementations of the algorithm. seti@home does _not_ rely on a single type of machine under a single type of OS. So the variable is already there, and it doesn't get anything less variable by not optimizing for specific processors in a family. SETI should accept the help offered and concentrate on reliability testing of the implementations.

      After all it is nothing but math. You can do it any style you want as long as it is equivalent.

      Holger

    16. Re:Yes, SETI is listening by rwh · · Score: 1
      All it takes is one person who doesn't understand the math or statistics to produce a client that hoses the experiment. They want to spend their time doing science rather than doing code reviews, system tests and preparing benchmarks - it doesn't seem like an unreasonable desire given that it is their project.

      I'm curious, how many people on the planet do you thing are qualified to review the methodology and code behind the SETI client?

      --rick

    17. Re:Yes, SETI is listening by Anonymous Coward · · Score: 0

      Try this scenario on for size.

      The client gets opensourced & someone makes a patch that does the differential calculations 10% faster, BUT introduces a slight rounding error about one time in a hundred, resulting in a negative result even if it should be positive. The same code is sitting there at the end of the run packaging up the results and saying it's a good result.

      This guy is running this modified client on every computer in a college network, so he's blasting out about 10,000 blocks a day (random number, I have no idea how long it takes to actually process a block).

      If he checks his changes in, the problem gets discovered *eventually*, but the damage is already done, because 10 blocks a day are invalid, they either have to recheck the whole 10,000 per day that were run through this 'optimized' algorithm, or they have to scrap the whole project.

      If anybody and his dog have access to the code, then the jokers who want to run faster just to boost their score, can look through the code and ELIMINATE those expensive operations and fix the checks so the result blocks still look valid. Then you've got a 100 of jokers running 100,000 blocks a day each, submitting 100,000 invalid blocks which have to be re-checked.

      Since at this point, all the result blocks look valid to the authentication system you've got no way to tell that a spooffed block has been submitted, and the entire project has to be scrapped and restarted. Except it won't be restarted, because their funding will be pulled.

      ----

      Or a less drastic scenario with no-less drastic consiquences.

      100 bad blocks make it through the authenticator because of a client, optimized by not checking for the Pentium fdiv bug, running on a P60 with the fdiv bug. During the peer review process, a spot check of 5000 randomly chosen blocks happens to include 40 of those bad blocks. The entire data set is now suspect to the point of being worthless. And once again, project can't be re-run because funding gets dropped.

      -----

      Are either of these scenarios really worth slamming through the blocks 5% faster? No matter how fast broken code runs it's always faster to use code that works.

    18. Re:Yes, SETI is listening by bgarcia · · Score: 2
      Faster client software doesn't gain them anything. It just helps people running the client app inflate their egos by boosting their block counts.
      It also steals more CPU cycles from a volunteer's machine that what is necessary. His machine could be used for other things besides SETI@home, you know.

      This "fast enough" argument is ridiculous. There's always a good reason to make it faster.

      --
      I'm a leaf on the wind. Watch how I soar.
    19. Re:Yes, SETI is listening by Robert+S+Gormley · · Score: 2
      it's science."

      no, really?!

      thanks for the explaination, but i think people are aware of that fact. the question is, how much science can you do?

      Ironic that not two posts above, we have someone stating "that if there is one thing S@H is *not*, it's science".

      --

      Open Source. Closed Minds. We are Slashdot.

    20. Re:Yes, SETI is listening by Robert+S+Gormley · · Score: 2
      I couldn't help but laugh at some of these points:

      By the mean of integrating authentification protocols into the client and the server, they could accept result only from official clients.

      This would solve the problem of bad results.

      No it wouldn't. Because I'd have the source and I'd know how to 'fake' an official client.

      Also, opening the source will ensure peer-revision of the way THEY implemented the algorithm. It seem that we must trust them for the correctness of the implementation.

      It has been reviewed. By countless PhD'ed astrophysicists over YEARS. SETI isn't new. It's had BILLIONS of dollars of funding and some of the greatest minds in their field. I'm sorry. If it came to it, I'd trust their implmentation.

      Science is about peer review, opening the source code of the client AND the server will enable peer review. Peer review should not be only for science data, but also for the tools scientists use.

      The data has been peer reviewed, and they didn't develop a new algorithm. IMHO, The seti@home people DO NOT listen. They have hundreds of thousand active users and they do not listen or even respect them.

      How many of these hundreds of thousands of users are *QUALIFIED* to review the product? See above point.

      --

      Open Source. Closed Minds. We are Slashdot.

    21. Re:Yes, SETI is listening by Anonymous Coward · · Score: 0

      opening the source is not just about making faster/better code. it's about seeing what these are really asking to run on my computer. i wonder if could design a virus-generator and call it an alien locater, if i could get you guys to run it. pardon my pessimistic views, but today's society has lost my trust.

    22. Re:Yes, SETI is listening by Holger · · Score: 1

      distributed.net has no problems with a nearly
      open sourced client. The public source can't fetch or flush blocks, but it can do the computations, so anybody who wants to can optimize the routines that do the actual work.

      I just don't see why a similar approach wouldn't work with S@H. They could still do coordinated releases, but could also include optimizations not done by them if independent verifications show the code to be working alright.

      And regarding the Pentium FPU bug - I doubt that the actual client checks for it. It would severely decrease performance on processors without the bug. _If_ the client checks for it, it should do so in its self test and refuse running if the self test fails.

      Holger

      (still running d.net clients exclusively because SETI is so obviously desinterested in people who donate their computing times)

    23. Re:Yes, SETI is listening by phil+reed · · Score: 2
      It also steals more CPU cycles from a volunteer's machine that what is necessary. His machine could be used for other things besides SETI@home, you know.

      Which is why the client runs at low priority - so the cycles are available for other work as necessary. If the volunteer needs all his cycles for something else, he always has the option of shutting the S@H client off.


      ...phil

      --

      ...phil
      "For a list of the ways which technology has failed to improve our quality of life, press 3."
    24. Re:Yes, SETI is listening by WNight · · Score: 1

      Actually, most anyone who has taken university math or comp-sci courses.

      They're using text-book methods for finding a signal in background noise.

      Pretty well the only special thing about SETI@Home is that they're doing it as a distributed project instead of bumming mainframe cycles from someone.

      And, as far as doing code review... This is a fairly simple, if time consuming job.

      Don't forget, when you open source a project you don't ask people to send you the full source with all their modification. You ask them to send you the specific modifications and a reason why each should be implemented. This means you don't have to audit a different 50 thousand line application each time it's returned, you audit 5-50 lines of patch code usually.

  10. Open source is not the solution to everthing. by Forty-two · · Score: 1
    If people would read the FAQ on SETI@HOME it tells why they are NOT open sourcing it. If the client is open source then the data that is sent back to the servers can be faked, and even if it can be faked that calls the whole study into question since anyone could send back a bad packet to get points (and it would probably happen) and they would have no way of knowing.



    For another thing there is no advantage to
    open sourcing the client since last I heard they had more people then they need to process the data and the bottleneck is from them receiving data from the telescope and not data back from the users.

    1. Re:Open source is not the solution to everthing. by Otto · · Score: 2

      If people would read the FAQ on SETI@HOME it tells why they are NOT open sourcing it. If the client is open source then the data that is sent back to the servers can be faked, and even if it can be faked that calls the whole study into question since anyone could send back a bad packet to get points (and it would probably happen) and they would have no way of knowing.

      You're missing the point. People are faking data NOW. It's done already. The client has been hacked.

      Open source is not a lack of security, it's a big plus. If they want a way to make it much more difficult to fake packets back, why don't they talk to d.net? I know d.net had to deal with that problem in the past. So come on already.

      I agree that you mainly want to be sure that the data is valid, but that does not preclude optimizing the client for speedups. They gave the source to Intel to optimize for P2 and P3's already. They won't give it to AMD (or haven't yet). They're deliberately withholding it from people who can make the improvements, and do it securely.

      All it's really doing is FFT's anyway, which really lends itself well to optimization on various CPUs. Just a load of floating point, although 3dNow! instructions probably won't help much, since those are single precision only, I think. You'd want double for something where you have that many significant bits.


      ---

      --
      - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
    2. Re:Open source is not the solution to everthing. by seebs · · Score: 1

      And what happens if the 3DNow!-accelerated version turns out to get different results in, oh, say, one case in a hundred million?

      That's harmless in a video game, where no one cares about the bottom N bits. It's not so harmless in science.

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    3. Re:Open source is not the solution to everthing. by Anonymous Coward · · Score: 0

      seti@home's explanation of why not to open source is pretty pathetic really. I'm not an open source zealot by any means, and I don't know if that's the right solution in this case or not. What I do know, is that the distributed computing issues involved with trusting data from clients are fundamental, and completely ignored by seti@home. Obviously not open sourcing the client is "security through obscurity." How long would it take a malicious user to reverse engineer their protocol based on a wire dump and send bad data. Perhaps they are dealing with these issues in some way, but their website makes very little mention of any of this. I feel seti@home could be a very interesting expirement not only to search for signal, but into the future of distributed computing. But it is marred because of lack of attention to the fundamental matter: how do they trust the clients, and how do the people running clients trust them?

  11. Control is far too necessary. by AugstWest · · Score: 1

    If you open source the seti@home client you're going to have people hacking the code to boost their numbers, induce fake "sightings" and generally muck up the data.

    In a scientific experiment like this you need more control -- open source is great, but it's not right for all projects.

    These people have enough work to do with little resources, they don't need to have to try to kep out all the little hax0rs who want to hack with the code and look cool.

    1. Re:Control is far too necessary. by Anonymous Coward · · Score: 0

      Opposed to whats happening now... oh wait it is happening now :)

  12. Re:It's *not* open source - But it *should* be. by WNight · · Score: 2

    But, it *is* about finding the signal. It may not be about *you* finding the signal, but the *whole point* is to track down a signal.

    To track down the signal, units must be processed. If we process signals faster it'll either let them eventually process more signals (larger spectrum, etc) or use less computers. Either is a worthy goal. One helps science, the other simply saves power and lets people run other distributed projects.

    SETI@Home is hindering their own project by insisting on slow (They refused AMD's offer of help to speed the client up, doing more work, as carefully as before, in less time.) clients just to keep a large number of users helping is a bad PR move. You could help a project that wants to process data, or you could help SETI who wants a large number of users, who incidentally process some data.

  13. Open sourced willy-waving tools: BAD idea by Entrope · · Score: 4

    The insistence with which some people clamor for open sourcing everything really annoys me (and a lot of other people). There are very good reasons not everything is open sourced, and sometimes they're not even due to stupid licensing restrictions imposed by third-party code.

    For something like SETI@home (or distributed.net or whatever else you like), there's a very good reason to keep the clients binary-only. Namely, there is no oracle for verifying that a block of search space was actually searched by the client that claims to have searched it. Abuse of this was seen by the DES challenge and distributed.net before; open-sourcing SETI@home would lead to even worse abuses. Unethical people would modify the code to claim they had searched oodles of key blocks, ruining the results of the search -- and only so they could show off how "studly" their computer system is.

    Of course, maybe this concept is too hard for bgp4 to grasp. But for goodness's sake, it's in the SETI@home FAQ. Whining about their policies on Slashdot isn't likely to change their minds.

    (Beyond the malicious introduction of false reports, it's very easy to "optimize" something like this and introduce numerical or algorithmic errors. Unless you are familiar with advanced theories of signal processing -- the sort of thing you'd find in graduate classes at a good university -- you would be well over your head in looking at how the algorithms work. And there are enough bright grad students working on the average project to know how to optimize for all sorts of cases without the help of a bunch of open source zealots who think that the GPL is some magic potion that can be applied to anything to make it better.)

    1. Re:Open sourced willy-waving tools: BAD idea by Otto · · Score: 3

      For something like SETI@home (or distributed.net or whatever else you like), there's a very good reason to keep the clients binary-only. Namely, there is no oracle for verifying that a block of search space was actually searched by the client that claims to have searched it. Abuse of this was seen by the DES challenge and distributed.net before; open-sourcing SETI@home would lead to even worse abuses.

      You're right. Distributed.net had that exact problem. They found a way to fix it. The client is STILL open-source. See? Simple, huh?

      Check out http://www.distributed.net/source/...

      Not entirely open source, they left out the part you would need to report results back. But that's the part we really don't care about. Everyone wants the algorithms optimized. I just think the SETI@home people should get a clue.

      ---

      --
      - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
    2. Re:Open sourced willy-waving tools: BAD idea by Anonymous Coward · · Score: 0

      you said
      >>Unless you are familiar with advanced theories of signal processing...you would be well over your head...

      It is always a good idea (as you have done) to assume that people lack the intelligence neccessary to do anything new, useful, or difficult.

      In fact why don't we just assume that everyone is like this and not release the data but to the very smartest people in the world, for they are the only ones who can properly analyze it and releasing it to anyone else will simply ruin the analysis.

      This is clearly a good attitude to have if you want to bolster the confidence of up and coming Einstiens.


      Sorry I just had to comment

    3. Re:Open sourced willy-waving tools: BAD idea by SimonK · · Score: 2

      The SETI people, like the distributed.net people, want to make it hard to report that you have searched a particular block without really doing so. That is why they haven't released the source.

      Unlike the distributed.net people, the client is running on real data of which there is a limited supply. They don't want it to be any faster, because they'd start to run out of data blocks. They don't care how many points your team gets - they want to do science, and from that perspective they want everyone using the same algorithms - they don't want them "optimised" by individuals *at all*. The risk of false negatives or bugs introduced by stupid programming is too great.

      Possibly you should work out what people are trying to acheive before being rude about their cluefulness.

    4. Re:Open sourced willy-waving tools: BAD idea by mOdQuArK! · · Score: 2
      Unlike the distributed.net people, the client is running on real data of which there is a limited supply. They don't want it to be any faster, because they'd start to run out of data blocks.

      Now THIS brings up the possibility of issuing the same data blocks to multiple clients & cross-checking the results to improve the confidence of the results!

    5. Re:Open sourced willy-waving tools: BAD idea by SimonK · · Score: 2

      I think in fact they already do this as a check for hacked clients - or maybe its distributed.net that do it.

      Nonetheless it does raise an interesting option , which would be to open source the client, and make sure that every user's client had, say, every tenth result duplicated to another based on a differently patched source tree. This would act as some kind of assurance, I suppose. However, it might be hard to tell which source tree the client was built from in a way not open to hacking.

  14. Open source for this != "Good Thing" by lib · · Score: 1

    If this were a typical user program then id say open source it. The fact is this is a scientific experiment. The validity of the data collected is all that matters. If you open source the code then you will have a number of people who screwed up their version of the client because they didnt know how to do it right or because they just want higher stats and dont care about the data.

    The benifit of an open source client is lost in a case such as this.

    1. Re:Open source for this != "Good Thing" by WNight · · Score: 1

      So you look at the source and submit changes to the SETI@Home people. They take the best patches and optimizations. Test them like crazy, and release the next official client.

      Sure, some people could run unauthorized clients, with unchecked code, but people have already started cracking the client, sending back fake blocks.

      The worst case scenario is the same. The average case is much better with open source.

      (More speed allows more redundancy to catch idiots who mess with the results.)

  15. Bugs by pslam · · Score: 1

    The only way they can be absolutely certain that clients aren't doing bad calculations is if they know that every client that goes out is from their own thoroughly checked source code. Open sourcing the client and letting anyone submit data with unchecked clients would defeat the entire point of the project. Seeing as a message from space is rare enough as it is, I wouldn't risk a buggy client destroying data that might never come again.

  16. SETI@Home... by jd · · Score: 2
    It's a good idea, but I'm increasingly skeptical. The clients WERE originally Open Source. They were actually GPL! But, through total mis-management on the part of the people running the project, patches were never included and response times were very poor.

    No CVS was ever set up (though it was repeatedly promised, those times any response could be elicted at all!), and the frustration of those volunteer developers taking part was very evident on the mailing lists.

    There were a grand total of SIX snapshots ever made. SIX! At the very least they should have been daily!

    I'm not the least bit surprised that the frustration with a slothful and (frankly) incompetent development team has burst out with "home improvements". That was only a matter of time.

    As for SETI@Home's "reason" for not releasing the source - the need for a secure, validated connection - well, I think that's been blown out the water. If their connection was so secure and validated, rigged clients wouldn't be possible. The fact that SETI@Home are complaining at all shows that they're no better equipt to secure a connection than the movie industry with it's DVD encryption.

    Let's all cut the pretense, and stop this nonsense. I want the very best SETI@Home clients that modern computer skills can create, looking for real data, using real analysis, not cheap junk that goes faster because half the tests are skipped. (Notice the gaussian stats vanished with the first official "faster client"?)

    Now, SETI@Home obviously also wants genuine security. So put your source where your mouth is, SETI folks, and RELEASE THE CODE! Your attempts have failed, miserably, so let those who know what they're doing take over!

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    1. Re:SETI@Home... by Anonymous Coward · · Score: 0

      Whoever moderated you up, I hope to find him and meta-moderate his ass down to hell.

      First of all, don't you see that opening the source of the SETI@home client will disrupt the whole project for weeks, if not longer?

      Second off, how can you be so dumb? Or just pretend to be so dumb?


    2. Re:SETI@Home... by Anonymous Coward · · Score: 0
      "Let those who know what they're doing take over?"

      Unless you have a graduate degree in physics, astronomy, or mathematics, coupled with a thorough knowledge of the ins and outs of numerical computation and range arithmetic as they apply to signal processing, you are NOT one of "those who know". Sorry.

      Don't misunderstand me: I am an ardent advocate of open source in general. But this particular case forms an exception. It is a scientific experiment, some of the goals of which (namely, precise control of experimental conditions) are completely at odds with open source ideology. That's not anyone's fault, it's not even a bad thing really; that's just the way it is.

      Regards.

    3. Re:SETI@Home... by jd · · Score: 2
      1. If you can't tell the difference between moderation and default levels, I wouldn't trust you to be competent to meta-moderate The Onion, let alone Slashdot. Moderation requires intelligence.
      2. Metamoderation is NOT a way to get your voice heard, according to the metamoderation guidelines. If you aren't willing to even read the rules, I hope CmdrTaco bans you from moderation & metamoderation for good. Those weren't written because the admins here enjoy scrawling long documents.
      3. Opening the source won't disrupt anything. It is a matter of placing a tarball in a directory. That's IT. Total. Nothing more. If they want to ensure experimental clients don't disrupt any work, simply take out the encoding routines. The standard server'll reject anything those clients send. Only an idiot would imagine that a 30 second task would "disrupt the project for weeks".
      4. Technically, opening the source is not only beneficial, but also a legal requirement. Any code from the original client that is present is GPLed, and the GPL -must- be honored.
      5. If your only contribution to this thread is to be purile and abusive, go away and play on some other board. And take your "First Post" friends with you.
      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    4. Re:SETI@Home... by FigWig · · Score: 1

      Your original post was moderated as "Insightful." I wouldn't listen to the opinion of someone who is too dim to tell the difference between a 2 and a 3.

      --
      Scuttlemonkey is a troll
    5. Re:SETI@Home... by jd · · Score: 2
      Funny you should ask... :)

      My degree was a BSc in Mathematics and Computing, with honors. (English degrees come from certified Universities only, not American Football stadia.)

      Going back to A-Levels, I studied physics (with one of my special fields being astronomy). Prior to that, I've built my own radio telescope, and even had the opportunity to control the main dish at Jodrel Bank.

      Back to more recent times, I've been playing with AIPS and AIPS++, and various other astronomical software. It's fun stuff, though astronomers don't necessarily make for the best coders.

      Scientific experiments require controlled conditions, that is true. However, it needs to be borne in mind that the experiment is in SETI observations, NOT in distributed computing. The software is therefore not a variable in consideration. (Nor could it be. You could never devise a control.) Releasing the source would therefore not invalidate the experiment.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    6. Re:SETI@Home... by jd · · Score: 2
      It doesn't show the time of the moderation. You presume that it was marked "insightful" before my post, but as my post makes it crystal clear that the post was still at a 2 at the time I replied, your presumption is very clearly false.

      Anyone who makes a presumption for the sole purpose of provoking a flame-fest deserves to get burned in the process. Don't play with matches.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    7. Re:SETI@Home... by Anonymous Coward · · Score: 0
      Impressive credentials to be sure. (My own coming from one of the aforementioned stadia...) Perhaps then you would be one of the people who could in fact make a useful contribution to the tool without breaking it. I am skeptical about the frequency of such knowledge, especially among those who would put "work per unit time" seemingly above all else.

      And very well, it may very well be that the software is not a variable under consideration. I'll rephrase my argument by analogy: you would't use 37 different micrometers to take measurements over the course of a single experiment. (Unless you happened to be measuring micrometers, of course) Similarly, it would seem enough to deal with the software running on multiple platforms with different numerical characteristics. Allowing multiple, unchecked versions can only exacerbate this problem.

    8. Re:SETI@Home... by jd · · Score: 2
      Ok, I understand what you're saying now. Yes, I agree entirely that the frequency of such knowledge isn't going to be particularly high. I also agree entirely that there will be a tendancy for certain coders to take short-cuts, to boost apparent ratings.

      IMHO, the first could be dealt with by having a core team of coder volunteers who were definitely skilled in astronomy, maths, physics and computing who could isolate segments of the code, such as the maths routines, etc.

      If these -segments- were released, the only people likely to be interested in working on them would be those who would find them useful. There would be no "glorious high scores" to aim for.

      It would also solve the problem of multiple versions. Not only would a rival version need to re-assemble the fragments, they'd need to fill in the gaps for any unreleased code, plus the code for validating the client to the server. IMHO, this can be made sufficiently difficult to ensure only "blessed" clients exist, but still benefit from the combined eyes of the Open Source community.

      How does this sound?

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    9. Re:SETI@Home... by dumbunny · · Score: 2

      I have a graduate degree in mathematics, a background in numerical analysis, and I've worked as a programmer and scientist for years in a quantitative science department. Let me pose a random scientific-programming example so that non-scientists can have something to chew on.

      Suppose you want to maximize a function of n variables, where the function is too difficult to differentiate (usually much too difficult). You have transformed these variables to be as nice as possible. Basically, to find the maximum, you will begin a search at some predefined point in n-space (or k predefined points, doing k separate runs). You iteratively attempt to increase the function's value at these points. In each iteration, you might take small pertubations in each direction to try to estimate a gradient. After determining the local topography, you then move your point in that direction, taking a small step, a large step, or maybe a random jump, depending on previous movements or the state of your algorithm. In the end, you will arrive at a local maximum, an inflection, or a boundary. You hope that this is the true maximum for your domain, but the best you can hope for is a heuristic solution.

      This sort of problem, depending on the function topography, tends to be very ... fragile. If you modify your methodology, changing the step sizes or the state criteria, for instance, you will probably change the final local maximum, and then your results will be unreproducible, and much of your statistic analysis goes out the window. Worse, you don't even have to touch the methodology. Change the order of seemingly commutative arithmetic operations and your LHS differs slightly due to different roundoff errors, which (in 64-bits, but probably in 80-bits, too) all too often results in a different local maximum, even for problems that aren't particularly ill-conditioned.

      While many tweakers will be careful to leave mathematical algorithms intact, many others just won't think about this sort of thing, and will poison any data pools their results are aggregated into.

      This said, let me say that there are a _lot_ of scientists who are truly bad programmers, and all too often these people think they are hot stuff. They write brittle, monolithic, error-ridden pieces of garbage that are just painful to apprehend, with plenty of hidden bugs just sitting there. Ugh. An acid test to weed these people out might be, "What do you think of _Numerical Recipes in C_?" If you come from a scientific background and want a good programming job, I think you have to prove yourself, since industry is well-aware of the Numerical Recipes scientist archetype.

      Chances are, the SETI code is at least somewhat ugly, and can really be improved for future releases by open source. NO modifications should be made on an ongoing experiment, but that doesn't rule out an open source next version, with the active communtity serving as alpha/beta testers. There is a lot of interest and a lot of talent out here. All it takes is some openness and sme good management on SETI's part, right?

    10. Re:SETI@Home... by Anonymous Coward · · Score: 0
      Reasonable enough.

      Of course, one then might raise objection on cost/benefit grounds. After all, such a process raises significantly the administrative costs of the experiment. Some members of the S@h team would have to participate in reviewing code and assembling "blessed versions". One might argue their time would be better spent on physics, math, and astronomy, after all.

      Basically, I have to concede that it probably could be done in a manner that didn't harm the experiment, but the diminshing return makes me question why anyone would want to. It's their show after all, and if they are content with the rate of return, why should we really care?

      Still, if the S@h folks will be convinced that the payoff is high enough, best of luck to you!

      Regards

  17. Re:It's *not* open source - But it *should* be. by rde · · Score: 1

    SETI@Home is hindering their own project
    There's no argument that it could be handled better. But my point remains: if you're not happy with what they're doing, don't help. There are plenty of other distributed projects out there that are worthy of your cycles.
    I want to help seti@home. I realise there are faster clients that are probably as accurate, but seti@home don't want me to use them. So I won't.

  18. Some things don't need Open Source. by Kenneth · · Score: 1

    While you will never get an argument from me that open source software is generally better, there are some things however for which Open Source is not appropiate. Even Eric Raymond would agree, after all, one of his presentations convinced me of this fact.

    SETI@home is such software. It isn't some kind of disk system that just needs to run more quickly. It is a scientific endeavor. Unless it can be assured that the new algorithm being used in the patch produces EXACTLY the same results given the same input for ANY possible input, use of such altered packages could invalidate the experiment.

    While it is nice to have such things open, in this case it just doesn't seem prudent given that the software is performing complex computations on the data. It is possible that some of the shortcuts used in the patch eliminate some calculation which almost never seems to produce any results, but could given certian inputs.

    In a case such as SETI@home, such things would be a serious problem.

    There is another reason the SETI@home team wants to keep things a little secret. There are groups who (for whatever reason) may want to either mask a possible signal, or create a false one. There are fanatics on both sides. If you read the FAQ on the home page, it states as much, and that steps have been taken to assure that such things are not possible. This may require some secrecy.

    --
    There is a civil war coming in the United States. Remember which side has most of the guns
    1. Re:Some things don't need Open Source. by WNight · · Score: 1

      The basic FFT algorithm is easily checkable. All SETI@Home has to do with a new version to test it is run a few blocks through. If the routine is truly just an optimized version that returns the same results, then they should be able to easily verify this.

      And I don't know where you get the idea that everyone will run their own client. That's like assuming everyone runs a cracked client now.

      Security by obscurity isn't. If they want believable results at the end of this, they have to let people audit their methods. If the code is a black box, and nobody knows what it does, nobody can trust it to return the right answer.

  19. This is what gives /. a bad name... by Anonymous Coward · · Score: 1

    Typical "official" Slashdot sentiment: ~(Open Source) == Bad. There are quite a few legitimate reasons to not open-source everything, most of which will likely be entered as comments while I'm typing this, so I'll spare the discussion but for one: security.

    If people went through the considerable trouble of reverse-engineering and patching the client for speedups, wouldn't it make sense that they'd do even worse things to open code? And since most of these erstwhile hackers don't have any knowledge of astrophysics or the algorithms involved, they'd more than likely screw something up.

    Do you just randomly comment out offending lines of code when compiling unfamiliar software, or do you try to fix the bug?

    If you have the necessary knowledge to do something like this properly: then volunteer! And to Slashdot: get your head out of the sand! (Oh, and Hemos is a hamster.)

    1. Re:This is what gives /. a bad name... by InsomniacsDream · · Score: 2

      First of all, where exactly do you find this "official" slashdot sentiment. I looked everywhere and I couldn't find it. I'm sorry, but the very fact that you posted this article shows that there is no 'official' slashdot sentiment since you are a slashdot reader and you have a different opinion.

      You mention that people have already reverse engineered the code. Well then, this already shows that even if they don't release the code, the security is bad. Open source could actualy strengthen the security as I mention below. You conclude that releasing the code would only decrease the security, but how do you know that? What if for every one hacker that is out to screw up the code, there are ten programmers that can improve the code. I don't see an obvious outcome of this being that the security is lessened.

      I suggest that some method of redundancy be introduced so that more than one computer be used to analyze the same packet of data. This way, even if one guy does fsck the data up, there are a number of backup computers to double check it. This is one of the fundamental principles of science, redundancy and reproducibility.

  20. Commercial paranoia from a scientist by athmanb · · Score: 3

    What we see here is just one more guy who simply cannot believe that open-sourced software is more secure then proprietary one (Just like the old argument of some people - mainly the less mathematically knowledgeable suits - who can't believe in the security of OS encryption software, after all the algorithm is readable by everyone and therefore unsecure).

    In reality, the original patch from Olli was a good chance for moving in the bazaar scheme not only to processing power but also to client development, since it was a simple wrapper which didn't do anything special itself, but enabled other programmers to write their own Fat Fourier Transformation algorithms for special chips.

    If S@h would have allowed patching the software (or had even made the client OS) we could now have dozens of different clients tuned for every imaginable Streaming Extension, DSP or multiprocessor enviroment. And the SETI@home project could have also been a starter for future similar projects which could have used all the power of the specialized out there.

    Now for the defense of the project heads: There have been multiple malicious tries by individuals in the past who tried to get their rating up by cracking the protocol and sending bogus data to the server. This perhaps explains why they're this paranoid.

  21. Re:It's *not* open source - But it *should* be. by lib · · Score: 1

    >To track down the signal, units must
    >be processed. If we process signals
    >faster it'll either let them eventually
    >process more signals

    They are already processing the signals at nearly twice the speed they can collect them.

    By speeding up the client a small percent you hope for what? processing at 3 times the speed its collected? The client is good enough and nothing is gained by spending countless hours gaining a small speed increase, the time could be better spent somewhere else.

    (this is like spending months of your spare time speeding up lilo or some other command. might learn something doing it but it is just a waste of time)

  22. The real reason, of course,... by handorf · · Score: 1

    Is that they're going to patent intelligent alien life when they find it! This way they'll hold an exclusive patent on all intelligence in the galaxy and anyone who tries to think will be charged a license fee.

    You know, I think it may be time to turn off the RC5 clients and let power savings mode kick in for the first time in months. It all seems so... silly somehow. :-)

    Science that isn't open source? What's next?
    -- I'm omnipotent, I just don't care.

    --
    -- IANAEG - I am not an elder god.
  23. Where are these patches? by Otto · · Score: 2

    I wanted to take a look to see exactly what the heck these patches do, but I'll be damned if I can find any. The best of search engines (several), and I can't find them anywhere. First time I've found myself unable to find something like this.

    Any tips, anyone?

    ---

    --
    - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
  24. What is wrong with you people? by Kostya · · Score: 2

    I'm seeing comments saying that SETI@home wants accurate results, not speed. Someone actually posted that "improving the code won't improve the code." That if you try to make it faster, you are out of line with the SETI@home's goals.

    How can I say this? Well let's try this: what the HELL are you talking about?

    Please, let's *think* here. Why are the goals of accuracy and speed mutual exclusive? Perhaps there are some methods that would reduce accuracy for speed. Fine. Let SETI@Home set there tolerance levels (i.e. how much significance to use on calculations, precicion, etc.). Then let people who are very, very good at making C programs run really fast and making programs run reliably and accurately take a crack at it.

    Come on people. There is no reason that SETI@Home could not be improved by an open source approach. I agree that accuracy should not be sacrificed. But pardon me if I think the resources of the entire program world might not be able to produce a faster and more reliable/accurate client. It's just a matter of raw resources. More programmers, more peer review==better, more reliable code. And it just might happen that it comes out faster in the process

    ranting ends ...

    --
    "Doubt your doubts and believe your beliefs." -- Switchfoot, Ode to Chin
    1. Re:What is wrong with you people? by Anonymous Coward · · Score: 0
      The problem, dear friend, is that people who are "very, very good at making C programs run really fast" aren't necessarily the people who know anything about detailed numerical analysis and the subtleties of precise numerical computations. While I was getting my CS degree, I could count on my fingers the number of people in numerical methods classes. This was just the introductory undergrad course too. It's *not* prevalent knowledge.

      Furthermore, what makes you think that, constrained to the required experimental limits, the clients aren't *already* as fast as they can be? I work in a research lab, and I see simulations run every day that take hours on big Enterprise Suns. The calculations involved in signal processing are not trivial by any means. Accuracy and speed might not be exclusive, but when they do collide, accuracy must ALWAYS win, if you want to do any science.

      I think Open Source is a great model for almost any project. Almost. S@h is an experiment. Experiments are improved by better, more precise control. That is exactly what open source does NOT offer. That's not an indictment against Open Source (so unwad your panties) it just means it's not universally applicable.

      Regards

    2. Re:What is wrong with you people? by Anonymous Coward · · Score: 0

      The system has to be the way it is, totally controlled that is.

      In case something IS found, if we have tons of open source clients from who knows where, the whole finding would just be rebunked. Science means factual hardcore paranoia, the variables need to be controlled and documented, or else there is little point in doing any of this for "scientific reasons". Maybe some sort of cryptographic authentication scheme would be in order should the clients' source be opened.

    3. Re:What is wrong with you people? by ucblockhead · · Score: 1

      Why are the goals of accuracy and speed mutual exclusive?

      One thing that a good software engineer should know is that when optimizing, it is important to only spend time optimizing the critical parts of the system. You don't want to waste time (and potentially introduce bugs) attempting to optimize something that is only running 1% of the time.

      People forget that there are two parts to this system. One part creates packets. The other part (the client we are all concerned about) processes them.

      If you look at Seti's stats, you will quickly see that the second part is processing packets twice as fast as the first part can produce them. Given that, there is absolutely no point in optimizing the second part until you have optimized the first part to the point where it can produce packets twice as fast. In other words, improving client performance by, say, 50%, gains Seti absolutely nothing. Nothing. Nada. Zip. The critical task is still packet production, not packet processing. Given that, it is simply a waste of time to try to optimize the client. Given that, the risks involved are simply not worth it.

      Seti@home gains nothing from faster clients. The only people who gain are people who want higher scores, or people who want their chosen platform to look better. Seti@home sure as hell shouldn't be concerned with either of those things.

      If you really want the code opened, my suggestion is to figure out a way for Seti@home to do so in such a way that they can gaurantee that blocks only come from specific versions they've approved.

      --
      The cake is a pie
    4. Re:What is wrong with you people? by Anonymous Coward · · Score: 0

      Actually the throughput of setiathome is currently limited by the data flow from the telescope, not by the speed of the splitters OR the clients. Secondly there are many more people willing to do setiathome than they need even given the 'slowness' of the current software . Given these two facts, there is no reason for them to allow anyone to optimise the clients. It just makes their lives more complicated.

  25. Why the seti@home client will never be open-source by haggar · · Score: 2

    The reason is, as someone has noted, that I can FORGE the packets so that they will look like normaly processed data, whle they will be bogus. And I know already some people (by their nicknames) that have tried to do this, and get a high rank. I have seen people processing thousands of packets in an hour, while, with the official client, you can process a packet in 9 - 10 hours on a P III 400 MHz (running NT or Linux, no big difference).



    --
    Sigged!
  26. Bunk by Otto · · Score: 3

    SETI is science... distributed.net is engineering. There is a big difference, and science does things the way it does it for a reason. SETI needs the results to be as solid as possible.

    The main thing with the SETI client _should_ be not to make sure it finds a signal, but to make sure it doesn't miss one. I agree with this part of it.

    However, this is data analysis. Pure and simple. Run an algorithm on a lot of signals. Easy. No one questions the algorithm. What is questioned is the implementation. If I can take an algorithm and optimize it to run faster on a particular processor, then I must still get the same results. Otherwise, the algorithm is no longer the same.

    And it's not a question of some hacked program finding a signal. ANY signal found will be subjected to the most intense scrutiny even before it's announced. Then it'll be scrutinized again afterward. And other signals from that sky area will be looked at, at various times going back years. No, a false signal will be eliminated pretty quickly. The thing to watch for is a false negative.

    I don't think open source is the cure-all answer here, but I think the people running seti@home have not given thought to the fact that people running the client are the kind of people who really, really know computers. They know algorithms. They know the internet. They are smarter than the average bear. And they don't like people telling them you cannot know this, or you cannot know that. The SETI people need to explain their position better, or count on a lot of people leaving the project.

    Just my $0.02

    ---

    --
    - Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
  27. If Fourier could have seen this...!! by haggar · · Score: 2

    but enabled other programmers to write their own Fat
    Fourier Transformation algorithms for special chips.



    I believe you meant Fast, of course, but this little typo is really cute :o)

    And who knows, maybe the good 'ol frenchman was actually fat and didn't mind it a bit!

    To stay on topic, here is a link to clues about Fourier Transforms.





    --
    Sigged!
  28. More secure for who? by ebcdic · · Score: 2
    The argument that open source is more secure is based on fact that many people will see problems by looking at the source, and will fix bugs that they encounter.

    In the case of the SETI@Home project, the security is needed by the project, who don't get to see the modified versions. So it doesn't apply.

    Of course, if people distribute their modified versions, other people will find the bugs. But how will the already-submitted results be retracted? And what about modified versions that people keep to themselves?

    I suspect that future projects of this kind are going to have to include more dummy data to verify that incorrect algorithms are not being used.

  29. Makes me wonder by EricWright · · Score: 1

    Is everyone out there spouting off without reading the article, or am I the only one who can't get the link to work? I can't even get a ping response from www.newscientist.com...

    Eric

  30. The future of distributed clients by WNight · · Score: 1

    SETI@Home is partially worried about people submitting unchecked data packets to boost their score, or not submitting a signal if found, simply to mess with the project.

    But, they're also concerned with the project working too well. If their weekly allotment of data was processed in a day, users would either sit idle for the rest of the week, or recheck data. Either is likely to make people look for another project.

    We need to have a general distributed processing client with modular cores. That way people can check for alien signals when the new SETI@Home client comes out, then evaluate various check opening moves, or try code keys, or any other project that needs users.

    The basic shell of a distributed client is fairly simple, and in most cases is very similar. The system sends you data, tells you what to do with the data, and accepts processed data for return.

    The same client could send out SETI@Home packets and DES keyspaces depending on which project had a more immediate need for help, and what the client computer was capable of.

    Cracking code keys is a lightweight process. It takes very little RAM, and can be suspended instantly. Running FFTs on radio signals (SETI@Home) is a heavyweight process. It requires a lot of RAM, and isn't generally appropriate to run in the background while using the computer.

    A multi-core client could deal with this beautifully. When you're using the computer, a lightweight process is selected based on your preferences and need, and runs in spare cycles, not being noticed. When the screensaver kicks in indicating an idle computer, the lightweight process is swapped out for a heavyweight process like SETI@Home or chess analysis, to be run when a performance deficit on the client won't be noticed.

    The user could download processing cores for the projects they'd like to participate in, and list the jobs in order of preference. For instance, SETI@Home then chess analysis for the screen-saved modules, and Bovine code cracking for the spare-cycle modules.

    Then the system would crack codes between keypresses, and switch to SETI@Home when there are data blocks available, but switch seamlessly to the less time-critical chess analysis when the SETI@Home blocks run out.

    The system has the benefit that not every author of a distributed project would have to write a whole system, plus servers, and bug test it. You'd simply write a processing module and a server module to properly serve that data, and compile the client module for as many systems as possible, or distribute it as compilable code. Thus allowing SETI@Home to run on an SGI machine for instance, without the authors having to write a communication system that would run on that computer.

    Mathematical tasks, like cracking keys, or recursively iterating chess moves, or FFT calculations are fairly easy to implement in a small program, and are fairly portable, usually not relying on the OS for much.

    Currently, there are many ideas for distributed projects which never get explored because they don't have anybody capable of coding a client as stable/easy as the bovine, or of finding a large enough audience to make it worthwhile. Having one shell with multiple cores would allow anyone who can express their problem in code to reach a large audience of people ready to work on their distributed project.

    1. Re:The future of distributed clients by no-s · · Score: 1

      hey, wnight - this is a the germ of a good idea.

      Reading back through your posts, I see also see you addressing the other issues of validating results etc.

      Since this is somewhat offtopic it probably won't get moderated up - but i'll be in touch!

      .../jmo

    2. Re:The future of distributed clients by thecap · · Score: 1

      You have to check out Adam Beberg's Cosm.
      It was going to be distributed.net's v3 client until "Cosm" split from dn in April. I still don't have a clue why that happened but would love to see Adam's project succeed and replace S@H, d.n, etc.

    3. Re:The future of distributed clients by WNight · · Score: 1

      Thanks for the comment. I've talked with d.net about this and they've asked me to wait, but said they would like to work on this eventually.

      I'll check my mail and talk to you there.

  31. Open Sourcing Seti@Home by Mr_Ust · · Score: 1

    Some people complain that open sourcing S@h would lead to more falsification of results. However, this is already occuring, and S@h will eventually be forced to do more and more redundancy checks anyway (i.e. sending the same packet to multiple people). Another interesting idea is that S@h will run out of packets to process sooner than expected and for this reason does not WANT to speed up the project. I think that overall, open sourcing the project, and then doing multiple redundancy checks will result in both faster and more accurate results.

  32. Trust & No Trust by x00 · · Score: 1

    Okay.. so the way they can be absolutly sure the client is working correctly to open source it.. but its not as if they're trusting the client completely. They will check the data that is reporting the signal (time and time again I suspect).

    But what if they open source it? People will know how to fake the return data. You know someone will do it. So do they check the occasional block of data or the (most likely) more frequent block of data...

    Its no choice to me.

    --
    May contain traces of nut.
    1. Re:Trust & No Trust by InsomniacsDream · · Score: 1

      Send the same packet of data to two (or more) computers and check to see that their results agree. This way, they don't have to check every packet themselves, it's built into the system automatically. This is why they need to increase the speed, to allow for redundancy.

    2. Re:Trust & No Trust by Anonymous Coward · · Score: 0

      So you're saying expose the experiment to both intentional and unintentional programming bugs by hundreds of people who don't understand the theories behind signal processing, but have such an ego problem that they think they can optimize the algorithm regardless of that fact. Let me get this straight. You want them to cut their signal processing rate in HALF, just so they can get unreliable results for a scientific experiment?

  33. Re:Why the seti@home client will never be open-sou by Anonymous Coward · · Score: 0

    >

    mmmm... but the Alpha EV67 does it in 58 minutes! Man, I'd love to have one of those beasts... :-)

    As has been stated several times here, the importance in the seti@home project is in the validity of the data, not in the speed. In fact, since using the people on the net they are getting faster response than any existing super-computer, they are getting quite a bit of speed. Having custom clients floating all over the place would make that speed meaningless, though, if those clients are returning garbage data.

    I'm a strong believer in the quality of open-source code... but there *are* reasons for maintaining control over the code... and this is one. Do you want results that you *know* are valid because the code is closed, or speed?

  34. Re:It's *not* open source - But it *should* be. by WNight · · Score: 1

    I don't think you really understand how to optimize code.

    You optimize the sections of the code that take the most processor time, and the programs you use the most. If lilo completes in milliseconds, don't optimize it. If your whole office app is a pig, optimize the parts that the user spends the most time in. If your shell is fairly quick, yet you spend eight hours a day working in it, it might be worth optimizing those input routines even if it's only a 10% overall speed gain.

    With SETI@Home, sure, they run out of data before they run out of time. But, they don't have to perfectly match. By your logic we should slow down the client so as not to waste any cycles on unimportant non-SETI@Home processing.

    I'd prefer to optimize SETI@Home and either require less users, or process the week's signals faster and be able to run other distributed projects.

    Because SETI@Home *is* a valid target for optimization. It sucks an incredible number of cycles. And now that we're used to running distributed projects, those aren't useless cycles anymore. You can see SETI@Home as competing directly with other projects for computer time.

    It's much the same as a slow subroutine making the whole application slow. But in this case the subroutine is SETI@Home and it's making the application of providing computing resources to as many distributed projects as possible run poorly.

  35. SECURITY THROUGH OBSCURITY DOES *NOT* WORK.PERIOD. by Nicolas+MONNET · · Score: 1
    Not releasing the source won't make a difference. People who want to send fake results badly will be able to do it, all it takes is to reverse engineer the communication protocols. TO ALL THE PEOPLE WHO DON'T UNDERSTAND THIS: GET A FSCKIN' CLUE!!!

    The only proven way to provide any kind of security to the project, is provide some kind of check as to the accuracy of the data sent. That involves checking every client's data once in a while, obviously the more often the better, of course, that will take some raw processing power off.

    A way to do it: get every client to register, assign a certified key back to the client, with which it signs its responses, and send 1/10th (for example) of the results back to some OTHER client, check that the results match, if not, investigate and shoot them down, possibly try some legal action if possible. Also add some checks WRT IP addresses, so as to check that the same key does not originate from too many different IPs, etc ...

    That can't be perfect, but it's almost impossible to defeat, at least compared to the current scheme. (Unless I missed something).

  36. Re:It's *not* open source - But it *should* be. by WNight · · Score: 1

    That's not a way to handle it. If everyone who has a problem with the specific implementation goes away you end up with SETI@Home being critically underpowered. And I like what SETI@Home is trying to do. I just wish they didn't make it an either-or choice of helping them or helping other projects. A well written client would allow people to participate in more computing projects with the same number of spare cycles.

  37. Bad idea in general.... by dciman · · Score: 1

    The Seti people do not want anyone using new clients for one reason....their servers cannot record and split the data into packets quick enough. Right now they are recieving more completed packets than they know how to process. It seems that their little idea caught on a little more than they expected, and they just can't keep up.

  38. Security or lots of results? by Mr.+Protocol · · Score: 2

    Seems to me that the Seti@Home people are caught between a rock and a hard place. In order to attract lots of cycles, they've made a contest out of it. That's what posting team rankings on number of results returned amounts to, after all. And that inflames the folks who know they could rise in the rankings if only they could optimize their clients.

    On the other hand, they prize uniformity of results over speed. Hmmmm.

    Well, if they already have too many volunteers, the answer is simple: dump the contest and make it a lottery with one winner. No more rankings, no more teams. Just tap the guy who finds the aliens.

    All the contesters will drop out and go back to cracking RC5. The hard core will remain, consisting of the ones who agree that uniformity is more important than speed, together with the ones who seriously want to mess with the project. There'll still be the need for security but at least most of the results will be consistent.

    1. Re:Security or lots of results? by InsomniacsDream · · Score: 1

      Couldn't have said it better myself! Remove the motivation for cheating and they won't cheat. This was a dumb move on the part of SETI and definitely contrary to their supposed goals of accuracy over speed. See, with more people thinking about this, we've already suggested improvements to their strategy!

  39. Re:open source by Anonymous Coward · · Score: 0

    I bet you opened your computer and attacked the SIMM sockets with a butter-knife too? Or used vi in your /proc filesystem, right?

  40. what is open source? by lounsbery · · Score: 1

    I'm not saying SETI should be open or not, but all of the arguments against open source are assuming that there will be 100 different versions of the software, or lots of different patches that will be installed in various combinations on the users machines.

    Why couldn't the project be open but follow the same versioning as it currently does. i.e. open the source, let everybody put in their 2 cents, and release a single(or at least single for a particular OS) version of the software based on the best optimizations provided. I would like to have someone argue why open source would be bad in this case.

    1. Re:what is open source? by InsomniacsDream · · Score: 1

      Exactly! So many of the complaints against using open source for this project are based on the notion that there will be too many versions, false data, lack of security, etc. But all of these arguments could be made against any open source project. If this were true, however, then Linux (and other GPL software) would not be as successful and secure as it is today. Just follow the same development model that worked for Linux (patches submitted by anyone but one central repository for maintaing and releasing updated versions) and you will get the same good results. To say that this particular 'scientific' application is somehow different is balderdash.

      Yeah, there might be some problems with the integrity of the data, but you will have those problems on any distributed system whether you release the source code or not. By making it open source, the reliability of the data would be improved by designing better algorithms!

  41. Absolutely shocking. by Brian+Knotts · · Score: 1
    The number of people posting in this thread who still think that one can achieve security through obscurity, that is.

    This is Slashdot, isn't it?

    --
    Interested in XFMail? New XFMail home page

    1. Re:Absolutely shocking. by TheAmigo · · Score: 1

      This has nothing to do with security. It has a lot to do with returning correct/incorrect results in a scientific experiment.
      Apparently S@H is already having problems with people modifying clients, and/or submitting invalid data. Giving people the client code will not help that. It will allow individuals more control over screwing with the data.
      Of course, they do need to implement better controls for their experiement.

  42. Reasons not to run the SETI client. by cruise · · Score: 1

    Most everyone I talk to who runs this product says often that it is slowing their machine down. So often I hear "Let me shut down SETI@home and see if that helps" (it usually does).

    If this program is really using idle tasks then why does it slow people machines down so much for eveything else.

    The project says they "will not release the source". I say, why bother supporting them. Here you have a whole bunch of people who are brought together by the ideals of OpenSource and you're giving up your valuable processor time to a project which refuses to open the source. They're riding the "Cool Wave" of linux to get their work done.

    Sure, finding life in outter space is cool. But not cool enough to let this program drag my machine down. By using the software, you contribute to their project, what are they contributing to the OpenSource comunity (not berkeley in general, the SETI people). OSS is a matter of give and give some more. SETI is only taking and giving very little in return.

    1. Re:Reasons not to run the SETI client. by lounsbery · · Score: 1

      There is a setting which lets you choose whether SETI runs all the time or in 'screensaver' mode(during idle time). I've never noticed it slowing my machine down at all.

    2. Re:Reasons not to run the SETI client. by Anonymous Coward · · Score: 0

      I'm running setiathome on Linux, with -nice 19. Even now, when I have other non-niced CPU intensive jobs running, setiathome still uses a couple percent of the CPU. Before, when I used a different nice (I think 15), it was even more.

      The basic problem, as I see it, is that Unix has no notion of a lowest-priority task (at least not from user space). Nice'ing just reduces the share of CPU the process gets when there's contention, but it can't reduce it all the way to 0. So as long as some non-sleeping job, like setiathome, is running, it will get some of the CPU.

      I've found, however, that with -nice 19, the performance hit is insignificant. And when you absolutely must have all the cycles possible, you can always kill (or SIGSTOP) it temporarily. (I suppose one could write a script to do this automatically whenever the load average got high... hmm.)

    3. Re:Reasons not to run the SETI client. by JohnnyCannuk · · Score: 2

      Uhm...then don't run it. Your choice. Me? My machine behaves just fine and I don't care how fast my work units get processes. I'm doing this to help out a program which lost all its funding in 1993 because some senator couldn't get a Radio Telescope in his constituancy (or some other equally stupid reason). This is for the science. If your moral code doesn't allow you to run it, don't.

      --
      Never by hatred has hatred been appeased, only by kindness - the Buddha
  43. double Bunk by darkmagus · · Score: 1

    (quote)
    I don't think open source is the cure-all answer here, but I think the people running seti@home have not given thought to the fact that people running the client are the kind of people who really, really know computers. They know algorithms. They know the internet. They are smarter than the average bear.
    (/quote)

    Unfortunately, that's not entirely correct. There are a lot of people who run SETI@home who haven't a clue what open source is, let alone the ability to code any improvements or whatever. Look at the number of people running the SETI client on Windoze boxes to see the truth of that statement ... *grin* I know quite a few people who just download and run this program for the fun screensaver, and are pretty computer illiterate otherwise (at least compared to the majority of the people on this list).

    Seriously, though -- the scientific concerns of this project are substantial -- experiments need control, and that means that you can't let people go running off changing their little pieces of the experiment. And to think that just because somebody can write code means that they are now a qualified experimental scientist is a bit naive -- apologies to the list; I'm sure there are quite a few good programmers who ARE experimental experts.

    One final point. You are quite right to point out that it's not false positives, but false negatives that we need to worry about. Unfortunately, while we can detect and discount false positives, we will never know about the false negatives -- and if it were I running SETI, I would not be willing to risk letting some random geek hack my code in such a way that he misses the real positive by inducing some error. I personally would count such an occurence as a tragedy of cosmic proportions (pardon the pun).

    --
    darkmagus
  44. Just Calm Down by dman123 · · Score: 2
    Look, S@H is trying to deal with the demand of more people than they expected using the clients. Mr_Ust knows what he's talking about in the previous post but it must be said again...

    ...S@H cannot keep up with demand for packets...

    They are only making about 1/3 as many as are sent out. In addition, they only have a limited time (2 years?) of data gathering time allocated to them. If we go any faster, we will just get more repetition in the packets sent. We can't find ET any faster by speeding up the clients. The only way to go faster is to collect more data from the telescope. Unfortunately, the S@H site tells us why this is not possible. Maybe we should all read the info available from S@H before going on and on about the "inefficiency" of the clients.

    Creepers, they are asking for our help with their project and we make it sound like they should be flogged for not being "perfect." If you don't like it, don't participate in it.

    --

    --

    --
    dman123 forever!
    Filtering out the -1s and 0s since 1999.
    1. Re:Just Calm Down by Anonymous Coward · · Score: 0

      If they dont want so many packets processed have them turn some down...

    2. Re:Just Calm Down by dman123 · · Score: 1

      Just noticed your comment. I usually have all the AC 0 scores hidden...Turn down new users? Why? What if I happen to come late to the party but can contribute more than the average Joe or Josephine? If I know that my work may be repeated anyway, but still want to do it, that's my choice. I would hope they don't turn away new people.Throw my thoughts out the window if it causes so many technically related problems that it hurts the project. If that's the case, in order to protect the future of the project go ahead and close the gates from the new users.Speed is not the issue. Scientifically accurate (or verifiable) data is the only issue.

      --

      --

      --
      dman123 forever!
      Filtering out the -1s and 0s since 1999.
  45. Security, Obscurity, other things ending in -urity by D'Archangel · · Score: 1

    I can't say that I agree at all with S@H's position on this subject. True, there are some right bastards out there who need to feed their egos so very much that they would falsify data, but that risk has already been taken. The important thing now is to find a way to minimize said risk.

    S@H seems to think that this is best accomplished by keeping the source code to themselves. Not so. For instance, analyzing the communications protocol employed by S@H clients does not require the least bit of knowledge of how the client works internally. No, the solution to the bad-data problem that immediately occurs to me is redundancy -- having multiple independent computers run through the same dataset and compare their results. A mismatch would be handled by reissuing the same dataset to a different set of independent computers -- until one iteration produces agreement.

    This would slow down traversal of the dataspace some, but that is far preferable to the introduction of rogue data -- which, I repeat, is already occuring.

    Besides, S@H is running out of dataspace anyway.

    Making the client sources available would almost certainly improve the efficiency of the client and would quiet those who object so strongly to running an unchecked program on their system. It would, it seems to me, make the entire effort more worthwhile and more interesting. Security through obscurity simply doesn't work.

    --
    Sic semper luseris.
  46. Re:SECURITY THROUGH OBSCURITY DOES *NOT* WORK.PERI by InsomniacsDream · · Score: 1

    or just send the same packet to two or more computers and check that the returned results agree with each other.

  47. security by obscurity == BAD by dermond · · Score: 1
    i think the reason not to open source the clinet is rediculus: i guess anyone who knows how to run a disassembler could hack the binary and from the comments here in the article people do. so if their security relies on obscurity it can not be called "scientific" at all.

    rather they should think about a way to do the distributed processing that could not produce false error even if open sourced. and then there would not be any reason anymore not top open source it. i do not think it is all to difficult to do:

    • people who write their own client or modify an existing client should send their source to seti@home and they would put the source on the web page for review by the comunity. the client would get a unique name/versionnumer.

    • the client would send checksums from all major processing steps back to the server. the server can choose different client or the same client running by different people and verify that the check sums do only differ in minor rounding errors (when comparing results from the same client code on the same maschine archtetcure the result would have to be totaly the same not even including rounding differences)

    • the seti server would have to remmeber which packet was sent to whom. people who where found cheating would be excluded from the server.

    • there would be some redundancy because some packte (e.g. 10%) would have to be sent to more then one client to verify. "new" clients would be verified much better and compared more often to make sure there are no siginificatn differences with known good clients..etc.. of people submiting results form the same subnet where a cheating person has already be found would also be controled a bit more..

    • as soon as people realice that there is no chance for cheating then they will not even try.

    • the results are much more reliable since the algorithems are truly tested and reviewed by many people...

    • the additional overhead of having to send package more then once in a few percent of cases would be outwighted by the more optimized speed of the clients..


    greetings from vienna, austria.

    dermond. (english is not my mother tongue and i have not spellchecked my post)
  48. Re:Bunk-NOT by Zoinks · · Score: 1

    The SETI people have explained their position as well as they need to, IMHO. The post you are replying to explains it again. And as a person who has a Ph.D. in spectral estimation and 20 years in programming (ie, ``smarter than the average bear''), I have contributed 1500 results and have no intention of leaving.

  49. Re:Bunk .. maybe not by JohnnyCannuk · · Score: 2

    While I agree with you, I think you, and a lot of the other "Open Source SETI now" zealots have missed the point. This has more to do with scientific method and the ability to convince other scientists and observers than it does technology, algorithms, open-scource and computers. Seti@home is an experiment, not a software package...it just happens to use software to do the experiment.

    If a signal is found, your right, it will be analyzed to death before it is announced. False ones will be rejected. But with any experiment, you must be sure that ALL conditions are the same everytime it is repeated, to be sure the results are as accurate as possible. If the source is opened, they have just lost that control...they cannot be sure (100%) that the analysis is repeated under the same conditions. As we have already seen, some people have tried to boost their scores by sending the same packets over and over or by sending false packets. While these will get filtered out, the project can still say their results are trustworthy because all analysis is the same - same implementation, same algorithm. Imagine if it is opened up and a signal is found. It will be processed, double checked and checked again. But when they announce it, there will be a large number of people (and scientists) who, for whatever reason, will refuse to believe it. They will then point to the lack of control over the source as a place where the data was either " messed up to give a false positive" or deliberately faked. As they say in court, they will have a "reasonable doubt". This is too important to have that kind of possible outcome.

    Put it in another context - a group is experimenting with an AIDS (or ebola or something like that)vaccine and testing it in petrie dishes (this is an example, so excuse me if this doesn't really happen). They set up a bunch of dishes they had control over (washed and prepared themselves). They get some help from people outside the experiment who can make the dishes clearer or easier to handle or what ever. They check and double check and find that in a lot of the dishes the virus is killed quickly and in some it is not. How do you interpret these results? You don't - the experiment is invalid because you cannot safely say which pertrie dishes are which and don't know wether the results are due to your drug or due to some bleach left in the dish by those who prepared it (by accident or on purpose). You can only be sure about your dishes but you can't tell which ones are yours. The solution is to only use your own dishes.

    I'm sorry for being long winded but I'm trying to stress a point. So open source can make the client more efficient and faster, who cares? Being sure of the results is what matters.

    The sad part is these patches may have already made the experiment invalid for thse same reasons...considering the size and reach of the net, who knows how many "enhanced" clients are out there. It is possible that, if a signal is found (or missed, in which case we may not realize it) that all the redundancy checks were done on clients with the same or similar patches with the same calculation flaw and all becasue the project doesn't have complete control...and because some 19 year old wanted to be #1 on the SETI@home list.

    Hey, if you don't like it, don't use it. It's their experiment we must participate on thier terms.

    --
    Never by hatred has hatred been appeased, only by kindness - the Buddha
  50. SETI@Home Wants Clients to Run Slow by InitZero · · Score: 1

    SETI has always had trouble creating enough work units to keep up with user demand. The project is more popular than anyone had ever dreamed.

    One of the patches cause the clients to run 30% faster (at least on my clients). I've heard some reports of clients running 50%-70% faster.

    SETI just can't generate that much data to munch. If they did speed up all the clients and they ran out of blocks, users would be very upset. Solution... SETI would start sending out the same blocks to be rechecked while waiting for new blocks to be created. And users would be upset because they were doing the same blocks twice.

    In either case, they lose.

    As for the open source discussion, that is meaningless in terms of SETI. Their problem isn't that the client it too slow, but that it has the potential to be too fast.

    InitZero

    1. Re:SETI@Home Wants Clients to Run Slow by iMoron · · Score: 2

      SETI has always had trouble creating enough work units to keep up with user demand. The project is more popular than anyone had ever dreamed.

      Look at the date of the data you're processing. The date of a work unit I just downloaded right now is July 20. Analyzing this data isn't supposed to be fast. It's supposed to be accurate. It's better to do something slowly and do it correctly than to hurry through it and find out you did it wrong. I'm not saying that SETI couldn't make their client faster, but the idea of it going too fast is ludicrous. They're still sending 4-month old work units. IIRC, when I first started SETI@Home, I was also getting 4-month old work units.

      SETI just can't generate that much data to munch. If they did speed up all the clients and they ran out of blocks, users would be very upset. Solution... SETI would start sending out the same blocks to be rechecked while waiting for new blocks to be created. And users would be upset because they were doing the same blocks twice.

      This is science, not a game. Scientific data needs to be checked and rechecked many times. The problem (from the article) isn't because of SETI. The problem is because of people who believe that distributed computing is a race instead of a way for organizations to effectively speed up processing of data. If results aren't accurate, the entire process is useless.

  51. Open Source the Client? by TheAmigo · · Score: 1

    Releasing the client as Open Source is not a good idea. SETI@Home is a real-time science experiment. Having an open client circulating around with some people using it, and others not, would invalidate any data being returned. The client needs to be STANDARDIZED, so that all results being returned are STANDARD. Having people modifying the client at will would really mess up the inner workings of the experiment. What if one person got the source, and somehow modified it to return data that "looked" like some intelligent transmission from ET?
    Experiments need to have standards and controls, open sourcing the client would not work.

    OPEN SOURCE IS NOT ALWAYS THE ANSWER.

    1. Re:Open Source the Client? by Anonymous Coward · · Score: 0

      They are already running heterogenous code on heterogenous machines. (also they are allowing Compaq to run optimized Alpha clients) The only important standard is that the same input should produce the same output, the rest doesnt matter one iota.

  52. speed vs. accuracy: an analogy. by drox · · Score: 5

    Why are the goals of accuracy and speed mutual exclusive?

    Well, here's a demonstration you can try at home. Find a recipe for, say, chocolate chip cookies. You want more speed? Double the heat setting on your oven, and cut the baking time by half. Watch what happens. Your output is no longer accurate, even though the input (yer ingredients, order in which you combined them, etc.) is the same as what was called for in the original "source".

    Now open-sourcing recipes is a fine idea. Go ahead and experiment in the kitchen, and if you can come up with a faster way to make cookies that taste as good as the slow-cooking ones, more power to ya. But don't expect Betty Crocker to print your recipe in her next cookbook until she gets to test it out herself.

    The folks at Seti@home might be better served if they open-sourced their code. It seems like a good way to improve it. But one programmer's improvement is another programmer's bug. And if someone's "improved" Seti@home code is fast but sloppy, and gives unacceptable results, the folks at Seti (and all of us who care about the project) lose out big-time.

    It would be nice if the code were available to be tampered with, fine-tuned, and "improved". It would also be nice if only "real" improvements - not quick'n'dirty shortcuts - were used in crunching the data. But how to tell? We don't live in a perfect world. Open the source and big improvements - as well as tiny-but-devastating bugs - may follow.

    There is supposed to be one accepted program for crunching Seti's data. Arrange it so several versions are running, and you introduce more variables into the experiment. Not good.

    1. Re:speed vs. accuracy: an analogy. by iCEBaLM · · Score: 1

      It would be nice if the code were available to be tampered with, fine-tuned, and "improved". It would also be nice if only "real" improvements - not quick'n'dirty shortcuts - were used in crunching the data. But how to tell?

      Not as hard as you might think. Some people have already suggested these, so I'm just regurgitating, here's some ways:

      1- Release most of the code except the part that sends data back to the server, this way people could optimize the rest and submit it to SETI themselves, SETI could check it, "bless" it with the rest of the code and release it.

      2- Release all of the code except one part that could contrain an encryption key which would encrypt the output to the servers so people could optimize the code and submit it, SETI could test, bless, release, etc.

      To maintain scientific integrity I think its understandable that some part(s) of the code must remain closed, so write that code into a atatic library and LGPL the client so people could submit their optimizations, SETI could therefore check ALL variants and "bless" them by linking the two and releasing the binary.

      -- iCEBaLM

  53. why open source is a bad idea here by Barbarian · · Score: 1

    In a client-server system like this, there is no way to ensure that a client is actually doing what it's supposed to be doing. If you release the source code, it becomes much easier to make a fake client that pretends to process data blocks. Some groups may do this in order to get their names near the top of the list (or to sabotage the effort).

    As it is now, it's a lot harder to make a fake client without source code. And before a few knee-jerk reactions get posted, like "Open source r00lz you Micro$oft whore!", for example (I use LINUX), just think about HOW you would verify the validity of the client results here from an open source program. Maybe there's a way. Please prove me wrong.


    1. Re:why open source is a bad idea here by lounsbery · · Score: 1

      the same way that dozens of public key encryption algorithm's source is made open, and still be secure.

  54. You still need signatures by Anonymous Coward · · Score: 0

    There's no point in arguing now about source vs. object code before appropriate authentication is adopted.

    Which raises the issue that maybe this must be implememented outside the U.S. by foreign nationals, and that they should take care of distributing the client software, too.
    [But any authentication server could still be in the U.S., of course]



  55. Are ratings necessary? by Anonymous Coward · · Score: 0

    Why must there be a scoring system of who does the most keys? I'm with the distributed.net just for the fun of it, and don't really care about my position in the top-100000.

    Okay, if there were no scoring system, but instead simply individual statistics of how much you've done (ie. "you've done 1234 units. Project total is 1.234E20. Your share 0.1E-19 %." (numbers are not authoritative!)), then there wouldn't really be point in trying to make ones rating better.
    Of course this could not prevent malicious people from simply messing the system up just for the assholity of the action, but it would stop those people who want to be famous for 15 minutes and see their name as high as impossible without cheating.

  56. Ask the DVD consortium by Nicolas+MONNET · · Score: 1

    'nuff said.

  57. The FAT Fourier Transform?!!! ;-) by Amadawn · · Score: 1

    The reason why they do not open source their project is very simple:

    There are very good coders out there that believe that FFT means FAT Fourier Transform!

    *Grin*

    Angel

  58. Re:Yes, SETI is listening, but not understanding by Logos · · Score: 2

    >SETI can't stop people from modifying the executable on their own systems,
    >but I think the people calling for SETI to make it even easier for people to modify the system

    How can closing the source prevent me from spoofing a valid signal with a client I write and distribute? Nothing! In short you can't ensure that you are getting valid results back simply by saying no one can know HOW your client works because you can't control the source of the packets. I can write a bogus client that mimics your interface.

    There is no inconsistency to having the client open, and then still ensuring that only valid clients be used-these are separate issues entirely.

    According to your statement I quoted above, SETI's experiment is already blown if they can't stop people from modifying your executables, so why do they continue? Because they (I hope) have checks to see that the data is valid.

    Point is, no one has to hack the closed client they can write their own. The only way to secure the client is to find other ways to validate the data. Thus validity has nothing to do with the openess, so open it and you gain the insight of the best programmers in the world both on performance, and probably security too.

    This isn't about speed, or accuracy in the Scientifc processes that SETI is using, if it were, then no Scientific endevor ANYWHERE could use open source software. Guess all those universities will have to get rid of Linux :)

    I don't think anyone is advocating that SETI release control of the project, just suggesting that we leave the astronomy to the astronomers, and the programming to the programmers.

    >If you can improve the code, instead of helping SETI by processing keys faster,
    >you bring yourself out of alignment with everybody else, create potential bugs in >the experiment,

    No one is saying that giving any goofball the ability to screw with your algorithims will help you, but they ARE suggesting that you could get a lot of help with the valid client that YOU distribute/endorse. If you choose to abdicate that responsibility, well than you are no better than the suits who think that Open Source is a panacea that means they don't have to work anymore either.

    Security through obscurity, you'd think the scientific community would know better.

    --
    We are agents of the free
  59. NSA by Anonymous Coward · · Score: 0

    Anyone else wonder if just maybe the NSA saw how fast the RC5 project could crack encryption, decided to write a client and fake a project (SETI@Home) to make use of all the computing power available on the very peoples systems they are monitoring?

    That would certainly explain why the client was closed source. I for one will not waste my time, or my computers time, on RC5 (as it has long since stopped being useful) or on SETI@Home (Until I get some serious proof that my clock cycles are actually being used properly). This would mean opening up the SETI client so that I can be sure it is doing what it claims.

    Sorry, but that is the way I feel.

    -sirket

    1. Re:NSA by Anonymous Coward · · Score: 0

      Thank you, you saved me from posting the exact same thoughts. I'm suprised there are so few postings with this idea. People are too trusting.

  60. Yeah right by Anonymous Coward · · Score: 0

    Yeah right. Lets open source the Space Shuttle software, MRI scanners, laser treatment machines, radiation treatment factilities. I know I want to strap my my ass in the chair and put my life on the line with code created and edited by someone who 'thought' they knew enough to make it better.

    There are just some areas where a bunch of non-experts in a field are not the way to make things better. Mission critical specialty software is one of them.

  61. Well, everyone's already said it, but... by seebs · · Score: 1

    Just adding my voice to the choir:

    It is a *FEATURE* that this is closed-source.

    It is *MUCH* more important that everyone run code which is *EXACTLY* equivalent, and has been tested to be equivalent, than that people be a few cycles faster.

    Speeding the project up at the expense of a .01% chance that a given block is analyzed wrong would be unacceptable losses. Speeding the project up 10 times at the expense of a .0001% chance of getting a given block wrong is *still* unacceptable.

    Would I run Linux? Yes. Would I bet a few million dollars on a given patch working perfectly the first time? No.

    So why is it that everyone's pressuring these guys to take that risk?

    If you don't like the terms of the project, don't play. If you want to help them out, follow their instructions.

    It may come as a shock to people, but the scientists running Seti@Home are *not* idiots; they are experienced professionals with substantial relevant training who have carefully examined their options and made rational choices.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    1. Re:Well, everyone's already said it, but... by Tom+Womack · · Score: 1
      It is *MUCH* more important that everyone run code which is *EXACTLY* equivalent, and has been tested to be equivalent, than that people be a few cycles faster.


      I don't believe that Olli is that stupid: FFT code is not that hard to get right, and there seems no point at all in wasting horrendous numbers of processor cycles running hideously sub-optimal code.

      I certainly don't believe that the people at Seti@home are capable of doing such superlatively rigorous testing that we should believe that their software is By Definition Correct, nor that the people building faster FFT modules for Seti@home are so stupid that they'll get the software wrong. FFTs don't have data dependent flow and you've got umpteen blocks on which to test your SIMD routine against the bolt-standard version that the main client's using ... it's not a hard thing to verify, and it seems ridiculous that Seti@home hasn't picked up Olli's client and said 'ooh, we've got a newer, better client - let's use this'.

      If it's enough faster, the Right Thing To Do is to restart the whole project using the new client! If you've got twenty years of processing to do and have already done one using the old client, throw that away, start at square zero, and you'll have redone all the old data within a month (to check the new fast client is good) and finish the twenty years of computation in two.
    2. Re:Well, everyone's already said it, but... by seebs · · Score: 1

      I still say I trust their judgement. I don't know how the new version is "faster", but I'd want to see a formal proof of the new code before I'd run it. (I'd also want to be sure that it avoids any known processor errata...)

      The key here is that reproducibility is more important than speed. We have plenty of time; the information isn't going away, and we don't anticipate needing to respond in real time to any of it. But we do want to be as sure as possible that all the data we think we've checked have been checked *exactly* the same way.

      --
      My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    3. Re:Well, everyone's already said it, but... by Anonymous Coward · · Score: 0

      They have probably compiled that shit with VC++ for gods sake.... dont talk to me about formal proof :) Ill believe the FFT code is correct in theory, but I refuse to believe it has been formally proven down to the machine code level.

  62. Re:Bunk .. maybe not by Standfast · · Score: 1

    No! As I understand it, the goal of the SETI client isn't to prove a signal, only to attract attention to a slice of data.

    Your own statement explains the flaw in your position that SETI shouldn't be opened. You said: Imagine if it is opened up and a signal is found. It will be processed, double checked and checked again. But when they announce it, there will be a large number of people (and scientists) who, for whatever reason, will refuse to believe it.

    This is exactly why a faster (even possibly flawed) new algorithm might be helpful. The original data will always be preserved safely and re-examined with multiple algorithms once a signal is claimed to be found.

    I can see two drawbacks to opening SETI:

    1. The increased potential for a flood of malicious or honest-error false positives to overwhelm the process for reviewing the original data;

    2. The possibility of false negatives, as discussed in another thread on this subject.

    But false positives, at least in reasonable numbers, are hardly a reason not to open SETI.

    -David.

  63. SETI is right by Anonymous Coward · · Score: 0

    Has anybody here ever taken a course in University (or High School, for that matter) Science?? You have to have control over your experiment to get valid results. People who modify the SETI@Home Client are basically destroying the results. Whether or not they intend to screw things up, that's what they're doing by not using the standard Client from SETI.

  64. This is SETI's own fault. by Crixus · · Score: 1
    This wouldn't even be an issue if the SETI@Home people didn't decide to turn this distributed computing effort into a CONTEST to see who (or who's group) processed more work units. OF COURSE people want faster clients now.

    These people might also be the people who used to yell, "My dad can beat your dad!" when they were kids... I don't know.

    What I do know is that I'm running two Seti work-unit as I type this (one each on 2 machines. A Windoze box and a linux box), and am more interested in precision and accuracy within my completed data, not speed.

    --
    Ignore Alien Orders
  65. Yes! by Standfast · · Score: 1

    I was planning to make this point. Thank you! Whether or not it is open-sourced, SETI should not be a contest.

    -David.

  66. Nope, not right. by Standfast · · Score: 1

    The SETI client isn't mission critical. Its job is only to attract attention to certain slices of the raw data.

    -David.

  67. Re:Useless optimization? by phil+reed · · Score: 2
    When we compare Seti to some other project, such as RC5, we can see that maybe there's such a thing as too much optimization.

    RC5 has a known number of keys to check, and that number is truely enormous when compared to the number of keys per day that can be done. Thus, there is every incentive to optimize the hell out of the client.

    By comparison Seti@Home is already processing data faster than it can be created. Optimizing the client won't make the analysis go any faster - maybe they would be able to check each work unit three times instead of two. But, where's the incentive to optimize?

    S@H is a victum of its own success. What will probably happen is the number of users will start to drop off as people become bored. This isn't necessarily bad.


    ...phil

    --

    ...phil
    "For a list of the ways which technology has failed to improve our quality of life, press 3."
  68. Not a Sound Bite Answer by hanway · · Score: 5
    There are several intertwined issues here, so it's not easy to boil everything down to a simple "it should[n't] be Open Source" answer:

    • People are conditioned to want their computers to run faster. The amount of time and effort some people spend to overclock and benchmark their computers is often far out of proportion to the actual benefit they get from their computer's speed. It's not surprising that people treat their SETI@home processing speed as a benchmark.
    • The fact that SETI@home puts up statistics that have turned this experiment into a competition to complete the most work units reinforces that behavior.
    • At least one company (perhaps SGI, but I can't remember for sure) has mentioned their SETI@home crunching speed in some marketing literature, again emphasizing speed over quality of results.
    • As several in this discussion have pointed out, making the clients faster won't help the project because the bottleneck is that SETI@home can't prepare the units fast enough. However...
    • If the client software were improved, clients could potentially do more sophisticated processing in roughly the same time, improving the science. However...
    • This could make the clients seem even slower than they already are, which wouldn't sit well with the kiddies who are more interested in their rank or how fast it makes their box seem than the science involved.
    So what lessons could be learned if this or a similar experiment were to be done again?
    • Deemphasize the ranking of work units completed. Perhaps if the concept of a fixed work unit could be dropped altogether (i.e. make the "size" of a work unit something arbitrary so that they couldn't be compared). This would possibly prevent the client from being used more as a benchmark than for its true purpose.
    • Plan for hacked clients and spoofed results by sending out enough test work units and by cross-checking results with multiple clients enough to have confidence in the results backed up by statistics.
    • With enough cross-checking, you might as well Open Source the client.
    I would be interested to hear if there is a (theoretically) foolproof way to use distributed clients to produce results with confidence if you accept that some clients will be spoofed.
    1. Re:Not a Sound Bite Answer by Doviende · · Score: 1
      In the case that a new client does more sophisticated processing in roughly the same time, it would have to return a slightly different completion indicator....then in your stats engine you just count the "New and Improved" work units as maybe 4 times the value of the old ones. That way, it's in every kiddie's interest to upgrade to the new client.

      -Doviende

      "The value of a man resides in what he gives,
      and not in what he is capable of receiving."

      --
      "The value of a man resides in what he gives,
      and not in what he is capable of receiving."
      --Albert Einstein
  69. well.. by JohnnyCannuk · · Score: 2

    Point well taken.

    Of course, what does this have to do with Open Source? If you don't like they way they do it, create your own version. I may not like Word, but I'm not demanding MS open source it, I'll use KOffice, StarOffice et al or create my own. Let them identify the slice their way first then check it out...don't mess with it midway through the experiment. Your proposal is to do the experiment a different way. Do it, but changing the experiment half-way through makes no sense.

    And I say once again:
    "Hey, if you don't like it, don't use it. It's their experiment we must participate on thier terms."

    --
    Never by hatred has hatred been appeased, only by kindness - the Buddha
  70. Re: Weather patterns? by kevin805 · · Score: 1

    Is there actually anyone out there doing weather simulations? I run seti@home because I like giving my computer something to do, and crypto projects seem like a total waste of time (what exactly are they proving? everyone already knows the results, and the public and the politicians don't care). Given that Arecibo wouldn't be able to detect our civilization from further than about a light year, I might want to try weather simulations.

  71. The Paranoia Factor by Pablonius · · Score: 1

    One thing that I think that hasn't been brought forward is the paranoia that SETI must maintain. Think about it.. These scientists have been the butt of jokes about listening for little green men for years. They've had most of the radio astronomy community bitching at them for using up scope time on a "useless" pursuit. So if or when they get conclusive "proof" of ET Intelligence do you think they want to be in a position where they have to explain how they can be explicitly sure of their findings in the light of having 1000's of non-scientists and non-mathematians programming the code which "detected" their results? Granted, they could verify the packet(s) through a set of slower non-GPLed clients, but these guys are already behind the gun on the nature of their line of research. Give these guys a break! This is just one of those 5% cases where Open Source doesn't fit.

    1. Re:The Paranoia Factor by lounsbery · · Score: 1

      how they get the information is irrevelant, if something is found, they don't just trust it. They run through exhaustive tests from various parts of the world verifying it with their own methods(didn't you see Contact?), which would be a lot more the an FFT from some anonymous coward. The worst case is someone posts an erroneous find, and they realize it when they verify it.

  72. SETI client for CIOS by RichiP · · Score: 1

    I had this idea that I'm hoping could get to one of the Cisco IOS engineers out there. If the source to the Seti@Home client were to be opened, wouldn't it be neat if someone would add a feature set for Cisco's IOS to function as a Seti@Home client. There are a lot of companies out there who have spare routers sitting idly by and a Motorola MC680x0 isn't that shabby. Of course, there isn't much memory to play with, but there are a LOT of idle routers out there.

    1. Re:SETI client for CIOS by Anonymous Coward · · Score: 0

      that's right ... just slow down the Internet even more ... let's put SETI processing into our fone switches while you are at it.

  73. Re:Why the seti@home client will never be open-sou by Anonymous Coward · · Score: 0

    Look the third entry in the Spain statistics: http://setiathome.ssl.berkeley.edu/stats/country_8 .html

  74. Everything to do with security. by Anonymous Coward · · Score: 0

    This has everything to do with security. You're proposing that by not making the source code widely available, you can somehow guarantee the INTEGRITY of the results generated. And you continue to do this in the face of spoofed results, and claim your views are good for science. It boggles my mind.

    1. Re:Everything to do with security. by TheAmigo · · Score: 0

      If they have spoofed results NOW, how is opening the client going to do anything but give them MORE spoofed results.
      I do say that they have a fundamental problem in the way they're conducting their system, but open sourcing the client isn't going to fix anything, it'll make it worse. Probably.

  75. Ya right by tak+amalak · · Score: 1

    This Seti@home code was written by aliens to not detect extraterrestrial signals. Do you honestly believe aliens have a clear concept of what open-source actually means? I think not!
    --

    --
    Don't lead me into temptation... I can find it myself.
  76. Question... by marlowe23 · · Score: 1

    This is a rumor I heard, and I don't have any confirmation, but didn't SETI@home have big problems with people uploading fake data packets, just so they could have more data packets processed by Joe Schmuck down the street?

    If that's so, that just undermines everything that SETI has worked for. Patching the client, that's one thing -- but fake data packets? SETI has not come this far to be undone by a bunch of code-happy jokers with nothing better to do than gratify their own fragile egos. I find that rather pathetic.

    As far as the "client optimization" issue is concerned, it should be obvious that if SETI can't keep up with the data packet demand, "releasing the code" isn't going to do anyone a damn bit of good. What are they going to do? "Okay, we'll send you data packets -before- we have them?" (Again, SETI there's a chance that SETI has some reason to lie about this, but I'm going to take them at their word.)

    And, really, whether or not someone thinks they "know better" than SETI or "know what they're doing," and are clamoring for the source so they can tweak it -- it's not yours to tweak. If you want to alter SETI's project, go work for SETI. Take some responsibility in the project and stop treating SETI@home like it's your personal toy. Certainly many people's intentions are good -- they just want to make the client "better" -- but that decision's not theirs to make. It's not their project.

    If you truly want to help SETI, then use the @Home client the way the project's creators intended it, and don't sabotage it for the sake of your own ego.

  77. Can we? Please? by theonetruekeebler · · Score: 3
    1. Seti can hardly be convinced to open-source the client until they have means of verifying the blocks they receive.
    But they can sure as anything verify the blocks they've sent, and if they get a report of a hit, they can verify it themselves using a reference implementation, or quietly submit it to someone else and see if they get the same results. I'm thinking that if they make a point of being the One True Source of Source code, and reviewing submitted patches and integrating them themselves, much potential trouble will be eliminated.

    Open-sourcing has the further advantage of becoming very, very portable, almost for free. I'm sure there are a few bored mainframers out there with a few underutilized MVS boxen that could contribute to the Cause.

    <troll>But all of us know the real reason they won't publish the source--SETI@Home isn't sending us space noise at all; they're sending us heavily-encrypted high-level diplomatic radio transmissions from all over the world, letting us do the CIA / NSA / NRO's dirty work for them. Until we see the source, they can't prove it's false; therefore we must assume it's true until we see the source.</troll>.

    Has anybody seen the latest DNRC office prank? Someone's co-worker was running SETI@Home on their office PC, so the DNRCie hacked him a screen saver that beeped and kept flashing the words SETI@Home: Possible extraterrestrial transmission found. Confidence 99.9893% over and over again. I can think of a half dozen people I'd like to do this to, only I'd make damned sure that on the next user input event, they'd get a dialogue saying "Please stand by: writing results to disk. DO NOT INTERRUPT THIS PROCESS" followed two seconds later by a dialogue box saying "Fatal exception error", because there's no point in being just a little bit cruel.

    --

    --
    This is not my sandwich.
    1. Re:Can we? Please? by AndyL · · Score: 2

      "and if they get a report of a hit, they can verify it themselves using a reference implementation, or quietly submit it to someone else and see if they get the same results. "

      That's not the problem. They're not worried that people will submit false positives because, as you said, it's easy to check. They're much more worried about false negatives. Imagine this. I'm a Freaked out advocate of Some machine or OS. I'm sure my suped up computer will blow everyone out of the water! So I'll sign up for SETI@Home to prove it to the world! Yea! The only problem is that my machine sucks. It performs below average. I'm still convinvced that it's the best (Because I'm a freeked out advocate) but I can't spare the cash to actualy make it perform. So how to convice the rest of the world how cool my system realy is? I Fake it! I modify my client so every half hour it requests a new packet from SETI@home and sends it straight to the great hard drive in the sky. Then half an hour later it tells the SETI program "Nope no aliens here" and requests the next packet.
      The point is a large number of the people using SETI@home realy don't care about the science. They're doing it as sort of a 'My Box is Better then Yours' contest. And at least some of them would fake it if they could. Meanwhile the aliens are saying 'hello' and we're missing it.
      So what they've got to do is come up with a way to ensure the packets are actualy being checked that doesn't involve the client. I don't see why they don't send the occasional fake-possitive to suspect clients.

    2. Re:Can we? Please? by Kyrrin · · Score: 1

      > But they can sure as anything verify the blocks they've sent, and if they get
      > a report of a hit, they can verify it themselves using a reference
      > implementation, or quietly submit it to someone else and see if they get the
      > same results.

      If I were the designers of the SETI@Home project, I wouldn't be worried about false positives; those are easily verified by running the data on their own machines -- which they do anyway, IIRC, upon finding something that a client marked 'interesting'. I would be worried about false /negatives/ -- either malicious (someone doesn't want the project to succeed, and therefore returns all false blocks) or self-serving (someone wants to bump his/her score up more and in order to do so, returns blocks marked as processed that have not been touched).

      As much as I like the idea of open source, in a situation like this, I don't think it's advised.

    3. Re:Can we? Please? by theonetruekeebler · · Score: 1
      I see your point. I think that a lot of the cheating can be resolved by sending packets to an average of 1.2 people and comparing checksummed results.

      I'd also be curious to see if there is a technique by which pairs of packets, to be sent to different places, could be trivially checksummed together in such a way that the SETI@Home'd results of each packet could be trivially checksummed together and compared to the earlier value, but that neither site could "fake" their own result without either knowing the other packet's initial value or going ahead and running the full SETI transform. Kind of a paired-key cryptography thing. I wish Applied Cryptography hadn't given me such a headache, or I might know whether I was talking out my ear...

      --

      --
      This is not my sandwich.
  78. They should open source the integrity check :) by Anonymous Coward · · Score: 0

    Anyone who has looked at the source for the patcher knows that S@H security is an oxymoron :) Anyway, they can fight windmills all they want and talk till they are blue in the face... let us deal with reality here though. Talking wont make the patches go away. They should stop spending effort on whining and either improve the security to a point where patches become very hard (wich would require frequent client updates probably) or remove most of the impetus to use them in the first place. (ie setup some resources to integrate community improvements, this does NOT mean open sourcing the entire project just the number crunching part) If you feel the second is not "scientifically sound" and you have no problem with the colossal waste of resources (including the natural resources, ie energy, belonging to us all) then you should push the S@H people to do something about security... anything else is futile. Futile can be fun, but not usefull :) And I would expect the S@H people to want to spend their time usefully. Ohhhh the big bad world doesnt play by my rules... Ill just start pouting and write scientific articles about it, that will teach them!!!

  79. They should open source the integrity check :) by Anonymous Coward · · Score: 0

    Anyone who has looked at the source for the patcher knows that S@H security is an oxymoron :)

    Anyway, they can fight windmills all they want and talk till they are blue in the face... let us deal with reality here though. Talking wont make the patches go away. They should stop spending effort on whining and either improve the security to a point where patches become very hard (wich would require frequent client updates probably) or remove most of the impetus to use them in the first place. (ie setup some resources to integrate community improvements, this does NOT mean open sourcing the entire project just the number crunching part)

    If you feel the second is not "scientifically sound" and you have no problem with the colossal waste of resources (including the natural resources, ie energy, belonging to us all) then you should push the S@H people to do something about security... anything else is futile. Futile can be fun, but not usefull :) And I would expect the S@H people to want to spend their time usefully.

    Ohhhh the big bad world doesnt play by my rules... Ill just start pouting and write scientific articles about it, that will teach them!!!

  80. Re: Weather patterns? by Anonymous Coward · · Score: 0

    Is there actually anyone out there doing weather simulations?

    Yes, here's the Slashdot story

  81. Re: NAPSTER@home by Anonymous Coward · · Score: 0

    ...the subject line sez it all. =)

  82. Re:SETI is wrog by Anonymous Coward · · Score: 0

    peer review, repeatability, they can't trust clients anyway

  83. OOh, those nasty scientists! by WickedDyno · · Score: 1

    Yeah, I agree. The Seti@home client MUST be opensourced AT ONCE! I mean, we all know what we're doing, right? It's not like we can't figure out an obscure bit of code that does something we don't understand with data that we can't see and produces results that we can't check -- it's just drawring purty pitchurs, ain't it? And HOW DARE those scientists think that they can control the manner in which they analyze their data? Science isn't about control! It's about freedom! Freedom! Freedom! It doesn't matter if they just want to discover something that could change the world. If it ain't open source then it's E-VILLE! Control of data computing methods my ass. Just who do they think they are, rocket scientists?

  84. During the development, this was OSS by JohnnyCannuk · · Score: 3

    BTW, for all the "why not Open Source" whiners out there, 18 months ago, this project WAS open sourced. You could volunteer, talk directly to the project leaders and hack the code all you wanted. This was during the DEVELOPMENT phase. When the development was finished, the client was closed. Where were the whiners when you could get the source? I got 2 different versions of it to play with (though I don't have them now, since I've nuked my hd a few times since then). The client is NOT a commercial product. Open source is great for commercial products because it continuously improves the quality of the code and design. A commercial product needs this improvement to stay competitive. The SETI@HOME client does not need this. It is doing what it was designed to do for this experiment just fine. There is no "competing product" to stay caught up to or surpass. In 2 years, when the experiment is over, so will the SETI@HOME client. Therefore, any of the benefits of OSS development have already been utilised by by SETI@HOME. It doesn't need to be tweaked or spead up or become more efficient. It simply needs to be used by 'volunteers' the way the project leaders have designed it. If you can't abide by their request, don't volunteer. If you don't like the way it works, don't use it.

    If SETI@HOME didn't have their ranking scheme, would we be even having this discussion? I think that was their only mistake....

    They already used the Open Source model...

    --
    Never by hatred has hatred been appeased, only by kindness - the Buddha
    1. Re:During the development, this was OSS by Anonymous Coward · · Score: 0

      Any clue why did they decided to do this in a one stage project? ie open it up while keeping it totally obscure and only really attracting a few scientists (of lets say.... varying programming skills) and a smattering of outsiders and then throwing it in the wild? (and as has been shown to them, the wild is not particularely friendly... it doesnt care about scientific articles either :)

  85. Re:It's *not* open source - But it *should* be. by AndyL · · Score: 1

    But, the "whole point" is essentialy a scientific experiment. When you do a scientific experiment you have to controll all the variables. When the experiment is over they have to be able to say "We looked Here,Here, and Here. On These Frequencies using Exactly these algorythms and we did[n't] find an alien signal"
    It's wouldn't do to conclude the experiment by saying "We looked Here, Here, and Here. On These Frequencies useing some algotythms. Some data was check with this algorythem, Most of it with this one, and packets xxx through yyy we're not sure how they were checked but we're still prety sure we did[n't] recieve a signal. But we can't reproduce anything because we're not sure exactly what was going on"

  86. Re:Bunk .. maybe not by bogado · · Score: 1

    I'm sorry but I have to disagree with you. Since the client is distribuited one can never be 100% sure that the results from one client are created by the same manner, even if the source is closed. Reverse engenering is possible and all one has to do is to figure out the exact protocol and packet format that the client uses (this could be hard, or not). Once this is done, one could create another client from the ground that could create valid or not packets.

    Other cientists would not pay atention to results from clients on the internet. A result like that could only be accepted with results made with original data and with in-house computers. The seti@home just help to point out witch parts of the data the project manager should look at. This way even if a false packet is sended to seti@home they can be shure that a signal is real or not (analising their data, with their computer, and their software).

    I don't know how much "damage" an open source client would make to the project it self, and I don't want to enter this "war". One thing is certain protocols can be hacked, and with closed source is usualy more easy to do it.

    --
    "take the red pill and you stay in wonderland and I'll show you how deep the rabitt hole goes"

    --
    []'s Victor Bogado da Silva Lins

    ^[:wq

  87. The bizarre bazaar by copito · · Score: 3
    Open source works best when the developers are "scratching their own itch" or at least eating their own dogfood. Linux supports lots of odd hardware because the users need to use lots of odd hardware. OpenBSD is fairly secure because the users need it to be secure.

    In the case of SETI, there is a mismatch between the potential developers and users that is unique to a distributed system. The client user/developer wants a client that is faster, potentially at the expense of accuracy. The official SETI developers are not users primarily, but instead want to have great confidence in the client, potentially at the expence of speed.

    This mismatch turns many of the benefits of open source on its head, from the perspective of the SETI developers, since their goals are different than the potential developer community. Note that the client user/developer would achieve his goals quite well if the client were open sourced, as per dogma.

    Perhaps we need to tweak the dogma a bit to account for this bizarre bazaar. Instead of "open source is always better", try this on for size:
    Open source always makes what I am running on my computer better for my needs, assuming I am a developer or there are developers whose goals coincide with mine.

    It does not necessarily make me happier with what you are running on your computer. If you are running a server I am happy that the server is open source because that means it has open interfaces. I'd be equally happy if you just opened your interfaces. If you are running my code for me in a distributed type of network, I want my goals to be preeminent in the code design. Open source only gaurantees this in the rare case that our goals completely coincide.

    For open source to work reliably in a distributed network of users with varying goals, there has to be a central authority with approved clients for whom the cost of approving clients is less than the benefit of the potential innovation. In addition there must be a way to strongly authenticate that those clients have not been modified. Incidentally, an authentication method is what is really needed in a closed source case as well. I can't think of a foolproof method for doing this, the best bet is probably just random result comparison and some speed heuristics.

    So the answer is that SETI could open source their client, and the people running it would benefit. But it might not be a benefit to them since the benefit of added speed (the most likely outcome) is not currently needed, and the potential for good faith bogus clients increases greatly. Bad faith bogus clients would likely stay at the same frequency.

    --
    --
    "L'IT c'est moi!"
  88. I've seen the code. Lots _could_ be done:proof by wall · · Score: 1

    Having actually seen the code for seti@home,
    I'd have to say that there are quite a few
    ways this code could be cleaned up. I was able
    to test a version using a much faster FFT from
    a commercially available fft library that I had
    my brother run. See his results!!!
    "wahl@sgi.com" thats right _1:52_ baby!!

    Now I understand that there is even a FASTER
    version of an FFT out there as a public domain
    algorithm. This would have saved even more
    time.

    da'fly

    1. Re:I've seen the code. Lots _could_ be done:proof by InsomniacsDream · · Score: 1

      I agree. The fastest FFT algorithm that I know of is called the FFTW (Fastest Fourier Transform in the West) and it can be downloaded for free at http://www.fftw.org. I don't know if this is what the SETI team is using or not.

    2. Re:I've seen the code. Lots _could_ be done:proof by phil+reed · · Score: 2

      And you're absolutely sure that when you swap in this new FFT subroutine, that you will get the exact same results, down to the least significant bit, every time? Because if you're not sure, then you've effectively changed something in the project, thereby throwing the entire thing into a realm of uncertainty that science does not handle well. It could be enough to invalidate the entire project.


      ...phil

      --

      ...phil
      "For a list of the ways which technology has failed to improve our quality of life, press 3."
    3. Re:I've seen the code. Lots _could_ be done:proof by wall · · Score: 1

      Well I'm not absolutely sure, as I can't remember off the top of my head how far they were carrying the data places. However we did achieve excellent results to the same place. Wasn't familiar with FFTW, but I'll check that one out. da'fly

  89. unexaminable source by Anonymous Coward · · Score: 0

    Hmm... I never looked at this SETI@Home thing before. So, I'm supposed to let some unexaminable program run lord-only-knows what while I'm not paying attention? No thanks. I won't even let Java in my browsers.

  90. Raw data access; "OpenSETI"? by egnor · · Score: 2

    The current policies of SETI@Home are clearly wrongheaded; security-through-binary-obscurity is not the right way to protect the integrity of their project, and they're falling into the same close-minded trap the DVD Forum did. Obviously, they should open source the client (and the server!), but maintain an "official" binary distribution with an embedded signing key; their servers would only accept input from blessed binaries. (Yeah, it's possible to extract the key [though this can be made difficult]; you'd want to send a different key with each download, so you could easily revoke one. The point is that this policy would allow well-meaning contributors to play with the client source and submit optimizations for review.)

    Furthermore, they'd get people making not only performance improvements, but bug fixes. Do they really think that by working alone they have better QC than if everyone could review the code?

    That's not my point, though.

    Normally, when the community at large is faced with someone taking a clearly broken licensing approach, we can react by making our own version free of encumbrance. Here, however, we're tied to SETI's data source -- few of us own large radio telescopes.

    Is it possible to gain access to SETI's raw data feed? (Of course it is; they send data blocks to everyone for processing!) Is it possible to come up with our own code for analyzing that data and processing it elsewhere -- with or without the cooperation of the S@H administration? I don't think they'd be happy; but could they stop it? (Surely not without causing even more ill-will.)

    ...

    Tangent: What if the ETs use ultra-wideband (UWB) techniques (see http://www.uwb.org/, http://www.time-domain.com/)? Won't FFT-based analysis totally miss such signals?

  91. side effects of open-source by The+Mayor · · Score: 2

    There are some side effects of open-sourcing the SETI client. As I understand things, the SETI client periodically transmits data to an outside machine. If SETI were open-sourced, it would be easier for rogue programmers to alter the source to send files (or whatever) to a programmer. Sure, we would all have the source. How many of us actually look at the source? Furthermore, a less than scrupulous programmer could publish source that didn't match the compiled binary.

    I am somewhat concerned that the SETI project could be a front for the NSA and/or Echelon. How can the NSA keep up with analyzing all those voice lines they're monitoring? Why don't they just right a cute little screensaver that analyzes voice lines, and transmits the results back to home base? Hmmm. If that's the case, they really don't have anything to benefit from open-sourcing the code. It is this that prevents me from running SETI on my home machine...

    --
    --Be human.
  92. Open Source Seti@Home? by Anonymous Coward · · Score: 0

    Are you crazy? There would be too much chance of people doctoring data. Three guys get together, mess it up, and *BOOM* ET hoax. SETI would have to deal with possibly hundreds of hoaxes.

    1. Re:Open Source Seti@Home? by Anonymous Coward · · Score: 0

      Well its not exactly diffucult to do that very thing right this minute :) Thats what this discussion is about, S@H client code sucks security wise. (performance wise too but thats not the issue, just the main cause of the problem) And now everyone is clammering about either how evil the world is or how silly the S@H programmers are. Personally I support the silly argument, not only for how lame the client code is... but moreso about them spending effort on whining about cracked clients instead of stopping it. The whining serves no purpose whatsoever except from self gratification, or in other words they're pouting.

  93. Re:speed vs. accuracy: an analogy (a bad one) by Kostya · · Score: 2

    You want more speed? Double the heat setting on your oven, and cut the baking time by half. Watch what happens.

    That's a great example, but it is also a straw man. That example works for cookies, but not necessarily for software. I agree that there might be a way to speed up the code at the cost of accuracy. But that is not what I am advocating. I'm advocating better written software--which will mostly likely be at least of of the following: more stable, more robust, faster. Better written, by definition, has to be at least one of those. And we already have a requirements for the project: no loss of accuracy. Fine. We work towards that goal. That's what software development and design review are all about. Open source just taps the resources of thousands for those tasks.

    And just because they open source it doesn't mean they lose control. As these post evidence, many who do SETI are doing it for the right reasons. So if SETI realeses the code FreeBSD style--i.e. where they retain control of the "official" tree--then they gain all the benefits of opensourcing along with maintaining specific control of their research. The authentication problem could easily be solved by some public key system that is controlled by SETI. And before we start arguing about that, let's remember that they have already LOST that battle. So at this point, an open approach to how to improve the client would only help them.

    Again, cookies are one thing. But software is another. I am sure you have worked on projects where someone wrote something accurate, but slow. Perhaps their memory management wasn't right, or they were using a slow method to get something done. The code worked. The code was accurate. But it could be improved and remain accurate just by having someone more experienced look at it.

    And that is what I am advocating. Remember, that's the whole open source "thing". I think your confusing GPL, forking, and crab grass development techniques with a time honored scientific approach: peer review.

    When it gets down to it, that is EXACTLY what open source is all about.

    --
    "Doubt your doubts and believe your beliefs." -- Switchfoot, Ode to Chin
  94. seti maintainers not techincally savvy? by sluke · · Score: 2

    I understand the merits of keeping the source to seti@home closed. It would be quite aweful if the project were invalidated by bogus results. However, I have a real problem in that the project maintainers seem to want their clients to run slowly. That's right! they seem to want to run inefficient code on your computer.

    My chief example of this comes from some work that compaq has done on the client. They asked for the source to Seti@Home so they could get it to run on Alphas. the sent their version back to the maintainers and that is the alpha client that is being used now.

    However, later they went back and tuned the client to run more efficiently. They linked the seti@home code against their Compaq Extended Math Library which contains a highly optimized FFT routine. The results are stunning. If you check out Compaq's stats, they have 21164 Alphas completing data blocks in under 3 hours. On my 21164 machine the best I've ever seen is 6. The speedup on the 21264 processor is even more dramatic. Check out their top users in the compaq team, they're flying through the data in under an hour per block!

    Seti@Home has recieved that patch many months ago. (I found out about it from a compaq engineer on the now dwindling AlphaNT mailing list this summer) However the package maintainers have done nothing. This leads me to conclude that they either are technically incompetant and lack the skills to test this enhanced client (which I doubt because they are letting compaq use it) or simply want the clients to run slower.

    So while I agree that open sourcing the client would be a very bad idea, I fail to see the logic behind refusing to distribute perfectly valid patches that could INCREASE the amount of science that seti@home does.

    1. Re:seti maintainers not techincally savvy? by Anonymous Coward · · Score: 1

      Patches they are knowlingly allowing to be run by a select group of users no less...

  95. Floating point results differ by heroine · · Score: 3

    Having worked with the gcc compiler for many years I can say that math fluctuations are increadibly easy to introduce through optimization. Floating point operations, though rarely used in CS education, are rampant in the Seti code. The problem isn't in producing bad data but in differences in the output that most floating point optimizations produce. Floating point operations are much more prone to fluctuations due to optimization. The optimized seti clients are guaranteed to produce different results than the original clients.

    Since they haven't been able to collect enough data by orders of magnitude to feed their clients, there's little use to optimized Seti clients outside of learning how the Seti client works.

    1. Re:Floating point results differ by Anonymous Coward · · Score: 0

      How about saving resources? I understand wasting resources is a US pass-time, but even so cant we find better ways of wasting them :)

    2. Re:Floating point results differ by ~k.lee · · Score: 2

      Having worked with the gcc compiler for many years I can say that math fluctuations are increadibly easy to introduce through optimization.

      Amen. Somebody should moderate this up. The pro-optimization faction here on /. seems to be a bunch of semi-competent high school-grade programmers who have no idea how incredibly difficult numerical computing is.

      Free clue of the day: it's hard to write a program that produces good floating point results for any nontrivial computation. Seemingly trivial optimizations can result in accumulated errors and numerical instability that completely fsck up the entire calculation. Nothing could be worse for the SETI project than a legion of arrogant C hackers submitting blocks processed with patched, "optimized" clients that have different numerical behavior than the original.

      ~k.lee

      --
      (remove nospam for email)
    3. Re:Floating point results differ by Anonymous Coward · · Score: 0

      And the remainder sits high on their scientific perch pretending that a couple of least significant bits in a particular bin in a FFT result makes any real difference for the validity of the calculation... FFT is a very basic well understood algorithm, if the least significant bits of the resulting floating point numbers make any real difference you are not using enough precision in the first place. I am willing to bet that all errors for correct FFT algorithms using single precision math drown in the noise. (correct for the sizes they use of course, its easy to write an algorithm for wich error accumulation does become a problem above certain sizes) Correctness could be checked firstly by a regression test bench and secondly in the wild by redundancy with other clients. Anyway that ship has passed, they have allowed compaq to run S@H using an optimized math library...

    4. Re:Floating point results differ by Anonymous Coward · · Score: 0

      And the remainder sits high on their scientific perch pretending that a couple of least significant bits in a particular bin in a FFT result makes any real difference for the validity of the calculation... FFT is a very basic well understood algorithm, if the least significant bits of the resulting floating point numbers make any real difference you are not using enough precision in the first place.

      I am willing to bet that all errors for correct FFT algorithms using single precision math drown in the noise. (correct for the sizes they use of course, its easy to write an algorithm for wich error accumulation does become a problem above certain sizes) Correctness could be checked firstly by a regression test bench and secondly in the wild by redundancy with other clients.

      Anyway that ship has passed, they have allowed compaq to run S@H using an optimized math library...

  96. Patches would go away if better client released by Anonymous Coward · · Score: 0

    I recently upgraded my OS from windows 95 to Linux. The windows 95 seti client pumped out work units in about 59 hours. The linux client cranks through units in about 22 hours. This is the same hardware! There is no way that windows introduces that much overhead compared to linux. The windows seti@home client must simply be *very* inefficient. I think this is the real reason "upgrade" patches are circulating. If the seti@home team would just release better-optimized clients, there would not be the incentive to install the rogue update patches. (Or people could just take this as a good reason to upgrade from windows to linux :^)

    1. Re:Patches would go away if better client released by dman123 · · Score: 1
      I don't run the Linux version, but I am fairly sure that it's the graphical portion of the Windows/Mac clients that slows down the work unit times.

      Shameless OS plug...My Mac client kicks patooski over what any similar Windows machine can do.

      Anyway, I guarantee that virtually everyone here would agree that there will always be someone that will try to optimize any client, no matter if it is considered 'final' or not. We should not accept that and just say, "Oh, well. S@H deserves it because their meager staff can't optimize all their clients to all the /.er wishes. Everyone should read the other posts to see why speeding up the clients will really do no good (except to increase you own (or team) score.

      --

      --

      --
      dman123 forever!
      Filtering out the -1s and 0s since 1999.
    2. Re:Patches would go away if better client released by Anonymous Coward · · Score: 0

      Well I accept it since theres nothing I can do about it. Or rather thats not really true, I bet I could give some usefull input on good integrity checks if they opened the code :) But barring that, they and the people using the patches are the only ones wich could possibly change anything about the situation... but writing scientific articles isnt exactly what I would think would be a usefull part of those changes. (of course for scientists the only thing more important as their research is getting as many articles published as possible...)

  97. Ideological moderation again by Anonymous Coward · · Score: 0

    This is happening more and more often. The above was not a troll.

  98. Test units instead of cross-checking by Webmonger · · Score: 1

    Instead of cross-checking a client's results with others, you can just send test units at random intervals. These test units would have bogus contents that indicate extraterrestrial signals.

    Any client that returns the wrong results on a test packet is untrustworthy. All the work it's done can be re-sent to other clients, and it can be ignored in the future.

  99. They should turn people down... by Anonymous Coward · · Score: 0

    Well they can use a bit of redundancy to weed out erronous results. (both from patched clients, and simply the odd dud processor/cosmic-ray/whatever) And for the rest... they should the cycles be used on other projects. There is no good argument for waste, at least not unless its to keep the economy running smoothly :)

  100. What if Seti had some sort of 'checking' feature.. by Andrew+Dvorak · · Score: 2

    What if Seti used some sort of checking to verify data? Example:

    Person A processes the data and checks the processed data into the server.

    The data person A had is assigned to a (random) person B. If person B verifies what person A found, the data is accepted to be true.

    If the data person B processed is different than the conclusion person A came to, the data is sent to person C and D for processing. C and D should verify what either A OR B got.

    Of course, this could cause problems if abused, but it would allow for an open source client in that nobody can REALLY forge data because the data would be processed more than once. Of course, one may argue that this considerably slows down the effort .. but this is the best way to operate in a way that may lead to better efficiency.

    But then again .. what do i know, and why are you reading this?

  101. Re:Useless optimization? by Captain+Nitpick · · Score: 1
    By comparison Seti@Home is already processing data faster than it can be created. Optimizing the client won't make the analysis go any faster - maybe they would be able to check each work unit three times instead of two. But, where's the incentive to optimize?

    You're looking at it from the wrong angle. From the viewpoint of the overall project, yes, "we" are processing data faster than it can be created, and so, there is no reason to try to make the clients any faster. But from the _user's_ viewpoint, it's taking him hours to do one data block, it should be faster! Who cares if he has to wait a few days to get the next one so long as the one he's got finishes quickly? Once it's done, he can go do other things with his processor.

    And making the client faster could benefit the project overall. Say by some miracle, the algorithm is tuned to be twice as fast. Horror of horrors, now we have to send out twice as much data, but we don't have it! So, send out the data you've already checked (and I don't mean like that bug early in the project). The more times a single block of data is checked, the more likely it hasn't been affected by a modified client or random errors.

    --
    But then again, I could be wrong.
  102. three words to describe the problem by SpacePunk · · Score: 1

    NOT INVENTED HERE

  103. What's wrong with using the scientific method? by mykdavies · · Score: 1

    I would be interested to hear if there is a (theoretically) foolproof way to use distributed clients to produce results with confidence if you accept that some clients will be spoofed.

    Send each packet out to three or more clients - those that return different results get suspended. Isn't good science about repeating the experiment and checking the results?

    --
    The world has changed and we all have become metal men.
  104. Re:Useless optimization? by phil+reed · · Score: 2
    But from the _user's_ viewpoint, it's taking him hours to do one data block, it should be faster! Who cares if he has to wait a few days to get the next one so long as the one he's got finishes quickly? Once it's done, he can go do other things with his processor.

    Personally, I don't believe most people are running it that way. This one doesn't work like RC5, or the Mersienne Primes, where it can sit quietly in the background. Since the S@H client takes over so much of the machine, I believe most people only run it when they aren't using their computers. Thus, it's not a question of "doing other things with the computer". When the user is doing the other things, the client is basically shut down.

    It's exactly the But from the _user's_ viewpoint, it's taking him hours to do one data block, it should be faster! viewpoint that leads to the race mentality and ultimately cheating to get higher in the rankings. The important thing is the science, not the race. I've got several machines running the S@H client, and I quit checking my rankings a long time ago.


    ...phil

    --

    ...phil
    "For a list of the ways which technology has failed to improve our quality of life, press 3."
  105. Impossible Security Quagmire by Doug+Dante · · Score: 1

    This is an impossible security quagmire. You can't give out software to be run on someone else's system (with or
    without source code), and prevent them from modifying it.

    The trick to better security may be to engage the help of those who might otherwise thwart it. Many of the people who
    are cleverly optimizing SETI@Home would be good people to design sophisticated mechanisms to detect and prevent
    program modifications.

    --
    The world will not get better through technology. We must seek to be better people.
  106. It is a fallacy to believe that Open is Perfect. by Anonymous Coward · · Score: 0

    It is probably not a good idea to make the SETI client open source. If it were made thus, people would be entirely free to make their own modifications to the client and do all sorts of nasty shit--in the name of their stats. By leaving it closed-source, the SETI@Home scientists can achieve at least a modicum of control over the types of clients that are used to connect to their networks. I mean give me a break. Open Source isn't the perfect solution for every piece of code on the planet!

  107. This argument makes no sense by Anonymous Coward · · Score: 0

    This calculation is not some huge chain where if one part is broken they all are... they can (and will, probably hundreds of times and in with a hundred different methods) just check positive results themselves. The only real danger is a false negative.

  108. Re:Useless optimization? by Mr+Z · · Score: 1
    Since the S@H client takes over so much of the machine, I believe most people only run it when they aren't using their computers.

    That may be true on the Windows and the Mac clients. The Linux client runs happily backgrounded at a nice-level of 19 on my fiancee's dual PII-450 box. Even when she's busy running LaTeX or Nethack or WordPerfect. Running an RC5 client alongside would not be out of the picture at all, even though she has two SETI clients running (one for each CPU).

    Greater optimization means that the SETI folks can do more analysis on the data they have and build more redundancy (and therefore more security) into the system. I don't understand why you would argue against faster clients when the problem is already infinite in scope.

    --Joe
    --
  109. Maybe the architecure of SETI should be changed. by Anonymous Coward · · Score: 0

    It seems to me that perhaps it would be better to just distribute a 'registration' client whose sole purpose is to give the user a unique digital ID and to download a (fingerprinted) latest release of the software or just the critical code each time the calculation was started, all subsequently packages could be signed with PGP or something. I imagine that this would hinder most attempts at tampering and would make it even safer to open source the code. Releasing binaries only, does give some form of lamer-protection, but as we have heard in this story and half a zillion other stories it offers no security at all. I am currently running setiathome at my box, and it would be very sad if the project got so f*** upped that the results of the investigations would have to be discarded as random lamer noise.

  110. what are you thinking by Anonymous Coward · · Score: 0

    how can you people run software on your computers that retrieves & returns data w/o actually knowing what it is doing. i'm not bashing the project, it's a great idea. but what are these guys hiding by not opening the source. i'm a sys adm, & it makes me pretty nervous that all my developers are running that stuff w/o a 2nd thought.

  111. The Problem? False negatives by Robert+S+Gormley · · Score: 2
    False positives are not the problem. Negatives are. "You can just check the positives to see that it's not a hacked client".

    What about the person who hacks the client, not realising he's broken something stopping potentially valid results from being sent back. Do we then check all negatives too? If so, why bother?

    Yes, a few people who use S@H are "smarter than usual", the kind of backpatting people occasionally like to give themselves. I have a reasonably high IQ. I *don't* think I'm qualified to fiddle with algorithms people with PhD's in astrophysics have spent *years* on. "Thousands of eyes" don't help here.

    --

    Open Source. Closed Minds. We are Slashdot.

  112. Its not all or nothing by Anonymous Coward · · Score: 0

    They dont have to open source everything, and even if they do clients could have to be blessed.

  113. Hidden facts following....... by Baddog+Abel · · Score: 1

    Somebody posted an old /. link to news about seti@home here... The Truth About SETI@Home I followed it's link and somehow visited www.3dnow.org. Upon viewing it's analysis, I deleted all traces of seti@home clients immediately. Why?

    SETI isn't getting enough data. As so many data cruncher are finishing blocks more and more quickly, SETI simply want others to process more slowly... denying Intel's optimized build, and denying support of 3dnow (without giving reason!). So I think they want users to waste more cpu cycles without their knowledge. I'm so furious I stopped it immediately.

  114. Re: Turning off RC5 by Anonymous Coward · · Score: 0

    Hear, hear. Distributed.net's client is a fancy lottery machine. Yes, I admire the software engineering that went into it. The client can even work in 3 contests with cash prizes! But it appears that the OGR-enabled client has languished for lack of financial incentive. I for one have moved my mips to mersenne.org; the prize money is much greater, and the project has lasting scientific value with verifiable results. A fun part is that you can lower someone else's Lucas-Lehmer score by factoring one of their LL results (if you decide not to chase the prizes). That's still more fun than flying toasters.

  115. But the 'attitude' galls me by sohp · · Score: 1

    [project scientist Eric] "Korpella says the project will not release its source code, and the program is being rewritten to make it harder to alter."

    Now, all the arguments about needing consistent results, and not being able to generate units fast enough to keep up (but then why can't they optimize the splitters on the server, too??) and what could be characterized as a mistake by the project's race-horse results postings goes out the window with this statement. Project programmers are *actively* working against the people the need to help them. The lingering doubts I had about running the client on my systems have been iced -- I won't run it any more.

  116. Re:Useless optimization? by phil+reed · · Score: 2
    I don't understand why you would argue against faster clients when the problem is already infinite in scope.

    Because the problem, as defined by the Seti@Home team, is not infinite in scope. In fact, it's very finite. The are only generating about 30 gig of raw data per day, and the analysis capacity in place is way more than sufficient to analyze all that data.

    Now, you might say "expand the project". That's a good idea, but it takes money and people that are not available. The S@H guys are running this thing on a relative shoestring. If you are going to tackle an infinite project, you have to throw infinite resources at it, and that's simply not available. They are doing what they can with what they have.


    ...phil

    --

    ...phil
    "For a list of the ways which technology has failed to improve our quality of life, press 3."
  117. Showing off science? Or just showing off? by gad_zuki! · · Score: 2

    Te obligatory this isn't news reply:

    SETI said the same thing about releasing the source to the 3Dnow team and they certainly aren't going to release it to the public now.

    Personaly, I think its a major waste of computing power when other projects like GIMPS have 30,000 members while SETI is pushing half a MILLION.

    The Spielbergesque lure of meeting ET keeps morons happy with their number crunching competitions while real science like GIMPS is mostly ignored.

    Now the number crunching competition has gotten to the point where people with a lot of time to kill have written patches to have the fastest team on the net.

    Its the geek equivilent of drag racing. SETI open source advocates should admit they're in a bloated project, swallow their BS techie pride and crunch slowly away for science or go do something else to show off.

  118. Re:Yes, SETI is listening--LOL by Anonymous Coward · · Score: 0

    Hehe. You weren't expecting common sense, were you? ;)

    The trick to understanding /. is to use the proper part of your brain..The stem!




  119. Re:It's *not* open source - But it *should* be. by Macdude · · Score: 1
    If we process signals faster it'll either let them eventually process more signals (larger spectrum, etc) or use less computers.

    Since SETI@Home can't process the amount of data being processed now, increasing it doesn't make it better.

    (They refused AMD's offer of help to speed the client up, doing more work, as carefully as before, in less time.)

    And AMD wanted to do this why?
    1. Because the BODs, President, and CEO of AMD are all UFO buffs who wanted to help the search?
    or
    2. AMD wanted a misleading Benchmark to quote in their advertising to make their processors look good?

    Everyone who answered 1, take the tin foil off your head and experience reality...

    --
    "Grab them by the pussy" -- President of the United States of America
  120. An experiment must be controlled by ponyisi · · Score: 1

    The issue here is not speed at all -- it's the science. (As has been said many times.) For the experiment to be controlled, everything must be known about the processing. Even if changes that people make don't actually affect the result, in general, it is impossible to have a standardized experiment without absolute control over the analysis programs. And a standardized experiment is very necessary. For example, if an error is found in their code, they should be able to tell what specific blocks have been affected, and if there are half a million different copies of the code lying around, who knows?

    This isn't distributed.net, where you can run a "check" to validate the client, and where the entire keyspace is known. This is also not the Linux kernel, where "This is known not to compile absolutely correctly on gcc 9.25.x" is acceptible. All parameters must be constrained as much as possible.

  121. SETI@home - looking for intelligence by Anonymous Coward · · Score: 0

    We are still trying to determine if there is any intelligent life on earth ;-)

  122. Re:It's *not* open source - But it *should* be. by WNight · · Score: 1

    Who cares why?

    It's like, if they were willing to make Quake twice as fast on your computer with only a software patch, would you look the at the gift horses tonsils?

  123. Re:Bunk .. maybe not by homunq · · Score: 2

    But with any experiment, you must be sure that ALL conditions are the same everytime it is repeated, to be sure the results are as accurate as possible.

    "Oh, the reason you couldn't reproduce my experiment is that your conditions weren't the same. Jupiter was in Taurus when you did it."

    Science isn't about making ALL conditions the same. Science is about deciding what conditions are important, and making them the same. (In that regard, your comments are very scientific: you've decided what's unimportant and actually completely forgotten about it.) So one of you is arguing "implementation is unimportant, algorithm is what matters", and the other one is arguing "who writes the implementation really is important, because there's a finite chance they'll screw it up, by mistake or on purpose". Guess what: you're both right.

    So find a solution that solves both problems. Here's a hint: it's going to involve social engineering. The scientists and the hackers are going to have to actually listen to each other if they want to reach a good accomodation. It's not just a matter of the hackers shutting up and doing what they're told.