views:

524

answers:

16

I'm competing in a public speaking competition. It is about communicating scientific ideas to non-scientific audience in only three minutes. What computer science topic might make an interesting 3-minute presentation? The competition is famelab

+1  A: 

Garbage Collection.

Justin Niessner
That's quite a complex topic to talk about in 3 minutes. You'd have to talk about why it's needed, so you'd want to talk about objects, object life-cycles...
Dominic Rodger
Yeah, for non-programmers, just giving the background would take more than three minutes.
Michael Myers
@Dominic, it's easy to do in a rough sense in 3 minutes, even to laymen. Just use the example of paper filing systems (that are already metaphorically ubiquitous in the computer world), and explain about bills that are so old they're no longer needed (out of scope) and need to be removed manually or automatically (GC) to keep the filing cabinet from filling up (memory).
jball
A: 

Bad code vs good code (give opposite examples). You can have quite a few in 3 minutes

Victor Hurdugaci
+1  A: 

Artificial Intelligence

fhucho
A: 

Kolmogorov complexity is interesting. Anyway, you'll be able to find out whether Kolmogorov(Kolmogorov) < 3 minutes. ;)

Matthew Flaschen
+1  A: 

Taking into account that your speech is geared towards non-scientific folks, purely theoretical Computer Science ideas won't be interesting. You need something that is interesting in Computer Science but can strongly influence other fields.

Take artificial intelligence, neural networks, and genetic programming.

As a few examples, these have use in:

  • Medicine and bioengineering (recognition of electrical signals, detection of pathological conditions)

  • Forensic science (voice and and facial recognition)

  • Financial systems (prediction of markets, optimal investments). And that's just off the top of my head, and things I've done myself ... the possibilities are limitless.

Milan Ramaiya
+2  A: 

IMO, choose a subject that your audience can relate to. For example, you might be able to effectively communicate various sorting algorithms to laypeople in three minutes, but that is not likely to win you much of their love.

A topic you might consider is Game Theory, you could spend a minute on the history of game theory, a minute on the various strategies of game theory, and a minute discussing the applications in computer science and other fields that your audience is interested in.

See this Wikipedia article as a launch point.

Segfault
+1  A: 

Transformation of affine loop nests.

Paul R
A: 

Thanks you for your posts. But i need to talk about the topic to NON SCIENTIFIC people. This means that the audience has nothing to do with the computer science field. Therefore, a talk that is very simple and relevant to everyone is better. I thought about Artificial intelligence, but it is a bit hard to explain in 3 minutes

isaac
you should delete this answer and instead edit the original question to make this clear.
ShuggyCoUk
+6  A: 

Why not give an answer to the following question:

What is the difference between a search engine and a browser?

It appears your average user really doesn't have a clue...

http://www.youtube.com/watch?v=o4MwTvtyrUQ

And it's kinda fun to see what peoples answers are to start off with. [grins]

Iain M Norman
Rule #1 of life: people are *really* stupid. Never forget it. :)
Ed Woodcock
Rule #2: this is magnified in large groups
Steven A. Lowe
+2  A: 

You could discuss the Scientific Method as it relates to programming.

  • Observe
  • Theorize
  • Experiment

Analysis is observation, design is theory, and programming is experiment.

Note: for a non-technical audience, I would steer clear of deep technical subjects - they're hard enough to explain to technical people! Depending on the goal of the talk (educate? entertain? facsinate?) you might amaze them with theoretical nanobot programming problems, wow them with Mandelbrot renderings, or educate them about the value of automated testing.

Steven A. Lowe
A: 

Well if you want for General Public ( :D ) here is the best one: Computation a By-product of Home Water Heaters!

http://cseweb.ucsd.edu/users/swanson/WACI-VI/docs/15_abstract.pdf

+2  A: 

A computer science topic you can communicate in 3 minutes? And it has to be accessible to a non-technical audience?

How about Brooke's law:

Brooks's law is a principle in software development which says that "adding manpower to a late software project makes it later".[1] It was coined by Fred Brooks in his 1975 book The Mythical Man-Month. Brooks adds that "Nine women can't make a baby in one month". The nine-woman analogy points out the corollary to Brooks's Law: There is an incremental person who, when added to a project, makes it take longer, not less time.

The audience can relate to it and it serves to explain why "throw more man power at it" never solves a problem.

Juliet
+6  A: 

I'll go for a simplified overview of Google Pagerank.

Most people (even "laymen") use Google and they probably have wondered, at least once in their life, how it works and what makes a page more "relevant" than another. The idea is simple enough to be understandable even if they don't know much about IT, and you can give more details if someone asks specific questions.

p.marino
See also this: http://www.wired.com/magazine/2010/02/ff_google_algorithm/
p.marino
A: 

The Annual Royal institute Lectures are almost always compelling.

In 2008 they had computer science as the topic. I would suggest that basing your talk on a very limited part of one of them might work well.

The Visual Cryptography one may work well since the concept is very simple (XOR) but allows lots of graphical presentation and makes it easy to show that the resulting data is truly secure unless you have both halves of the picture since you can come up with another 'half' which show something completely different (and preferably amusing)

ShuggyCoUk
+2  A: 

I would go for the PageRank algorithm which is the idea behind Google. And almost everyone used Google at least once ;-)

spa
+1  A: 

The rise of multicore rather than computers just "getting faster" at the rate they used to.

Chuck