Slashdot Mirror


Grand Challenges For The Next 20 Years

terrapyn writes "Infoworld is reporting: 'A group of British computer scientists have proposed a number of grand challenges for IT that they hope will drive forward research, similar to the way the human genome project drove life sciences research through the 1990s.' Did they get it right? What are some other worthy computing challenges?"

11 of 449 comments (clear)

  1. Nothing new here by MAdMaxOr · · Score: 3, Informative

    I didn't see anything that hasn't already been proposed many times before. Also, the article was short, and the descriptions were very general and boring.

    **yawn**

  2. Re:Teleportation by stephanruby · · Score: 1, Informative
    Information has been telecopied, not teleported.

    This distinction is important because we will learn to telecopy objects and telecopy live organisms before we learn to teleport them.

  3. Re:Just ONE request... by plover · · Score: 3, Informative
    Fuel cells.

    They already have prototypes small enough to power a cell phone, and they're approaching the marketplace. Cost is unknown, but you can expect them to be expensive at first. And if they take platinum as a catalyst, costs will of course stay high.

    It will remain to be seen if people will accept carrying volatile fluids around with them, but I'm betting they'll come out with a "clean change" cartridge system that people will like. Just think: no recharging time. A small reservoir will probably allow for a hot-swap of the cartridge as well, meaning not even any down-time.

    Next problem?

    --
    John
  4. Re:DATA DATA DATA by Linker3000 · · Score: 2, Informative

    I'd actually put it another way - many organisations are only beginning to realise that they need to do something (or can do something) with all the information they are gathering and/or that there is value in what the information can tell them about their customer base (internal or external) and business workings.

    To imply that we're only just working out what to do with all our information is not quite right because the principles of Knowledge Management are well established - for example one of the often-quoted books on the subject was published in 1971 by CW Churchman (useful info here). The main problem is getting organisations to 'see the wood for the trees' and to invest some time and funds in analysing the potential in the information they possess - such activities often pay for themselves in a surprisingly short time.

    Anyone wanting to read more could do worse than start at brint.com - the web site looks daunting but it's well worth a visit and spending some time there.

    --
    AT&ROFLMAO
  5. Re:Who knows what will happen by Alrua · · Score: 2, Informative

    Moore's Law doesn't apply to clock speed, but to the number of transistors in microchips. The number of transistors continues to rise exponentially like Moore predicted...

  6. They need to learn basic compsci by DunbarTheInept · · Score: 2, Informative

    To achieve the goal of building dependable computer systems, the scientists suggest building a verifying compiler, a tool that proves automatically that a program is correct before allowing it to run -- something first written about in the 1950s.

    This, admittedly was in the summary text in the magazine, not the article by the scientists themselves, so it could be a case of "idiot summarizing it wrong", but there just is NO WAY to do what they are talking about. No how, no way.

    To prove a program correct requires that you run it in a test environment. If you run it, and it is not correct, you get the same problem in your test run that occurs in the real run. Therefore you cannot test for a program's correctness automatically in a compiler. For example, any program trying to detect if a loop is infinite will itself end up looping infinitely when it encounters one and tries to check it.

    --

    Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

    1. Re:They need to learn basic compsci by Animats · · Score: 2, Informative
      just is NO WAY to do what they are talking about.

      Wrong. Machine-verified proof of correctness is quite feasible. We did it twenty years ago. The DEC SRL people did a nice proof of correctness system for Java in the 1990s, before Carly shut down DEC research. It's hard to build such systems, but not impossible. The theory is well understood now, which wasn't true when we did it.

      It's not that hard to prove loop termination. You must define some measure which, for each iteration of the loop, decreases. For many loops this is trivial. For most loops it isn't too hard. For loops so complicated that it's hard, add a loop counter to detect non-termination as an error.

      Proof of correctness went out of favor because C won the programming language battle, and C semantics are so ill-defined that formalization is hopeless. Java, though, isn't bad.

      The "design by contract" people have the right idea, but it's hard to retrofit design by contract to C++ in a sound fashion. If you're going to have object invariants, you need to insure that control never enters the object when the object is not in its stable state. This is a constant problem in C++, because you can call out of an object and then back in. (GUI systems are notorious for this.) You need to be explicit about inside/outside issues. There needs to be an explict way to say "control is now leaving this object" at the point you call something that could call you back. Without that, object invariants are meaningless.

      Hardware proof of correctness tools are widely used. Look up VHDL verifiers.

  7. Re:Biggest Problem in that Scenario by Daniel+Dvorkin · · Score: 4, Informative

    Here's a very simplified explanation:

    The problem is that resistance isn't either/or -- that is, it's not as simple as saying a particular strain of bacteria is resistant or it's not. All strains have greater or lesser degrees of resistance; more precisely, individual bacteria within the population have greater or lesser degrees. When you're on antibiotics, the bacteria tend to die off in, pretty much, an exponential decay curve. Once the curve drops below a certain level, the remaining bacterial population is insufficient to maintain the infection; your immune system is fighting the infection too, of course, and it can take care of the remaining bacteria, which are the more resistant ones, one the less resistant ones are killed off by the antibiotics.

    So what happens when you stop taking the course of antibiotics halfway through? Well, where you previously had a bacterial population consisting of some bacteria with weak resistance, some with moderate resistance, and some with strong resistance, now you only have the latter two categories. And these are going to continue breeding, and your immune system is going to spend its resources fighting them equally, without preference as to which is more or less antibiotic-resistant -- which means more of the bacteria with greater resistance will survive and grow. OTOH, if you'd finished the antibiotics, only the most resistant bacteria would be left, and your immune system could probably finish them off on its own.

    To top it off, resistance requires an expenditure of energy on the part of the bacteria -- you're quite right that many such critters have non-expressed resistance genes already in their genomes; the reason these genes aren't usually expressed is because doing so takes energy the bacteria would usually prefer to devote to feeding and reproducing. So in a patient who doesn't take antibiotics at all, the percentage of resistant individual bacteria is going to be very low. This means that taking half a course on antibiotics is the worst possible course of action: if you take the whole thing, you'll probably end up killing off the entire infection; if you take no antibiotics, you'll either get better or you won't, but either way you won't encourage the formation of a resistant strain.

    And the reason that shorter courses of antibiotics are being prescribed is that, quite simply, many newer antibiotics work more quickly. That's the only reason. It has nothing to do with some magical discovery that the traditional ten-day course was longer than it needed to be.

    --
    The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
  8. Project Oxygen is a good one from MIT by Anonymous Coward · · Score: 1, Informative

    Have a look at their project description and it sounds like one of the goals listed

  9. Re:Just ONE request... by Anonymous Coward · · Score: 1, Informative

    well, just open google, type in "UPS Fuel cell" and thell me you haven't seen them ...

    For an actual product shot, see: http://www.mgeups.com/products/pdt120/alternat/fue lcell/index.htm

  10. Re:Actually... by FleaPlus · · Score: 2, Informative

    I'm not quiet sure you understand. With a verifying compiler, the programmer defines what is considered correct. The compiler verifies that the program is correct, according to the definition.

    Of course, if the definitions are wrong, all bets are off, but it's still an incredibly useful thing to have.

    For another example, think of software test suites. Nowadays, you have a programmer explicitly defines a score of situations and checks to make sure that these situations fit defined requirements. With a verifying compiler the programmer still has to define the requirements, but the computer is also able to mathematically prove that any possible set of inputs and situations will obey the defined requirements.