In the past, perhaps especially at the end of the nineteenth century and the beginning of the twentieth, most* scientists assumed that provided you knew the "laws" that governed some system (such as planets orbiting a star, or billiard balls colliding on a table) and knew its state at some initial point that you would be able to predict its behaviour at any time in the future. Newton's law of Gravity is probably the most famous instance of a law which seems to work like this - using it astronomers are able to predict astronomical events such as eclipses centuries in advance.
However, many everyday phenomena cannot be predicted in this way. The problem is that it is not usually possible to know the initial state exactly. Sometimes this does not matter, but in many other situations initially similar states of a system become more and more different as time goes on. After a while the differences are such that you cannot predict anything (and even slight approximations in a calculation may also dramatically affect later predictions). Taking more accurate measurements and calculating more accurately may enable you to predict things for a bit longer, but often it is a case of diminishing returns - even a big increase in the accuracy of the initial measurements gives only a small increase in the length of time your predictions are useful for . This is why weather forecasts are rather unreliable, and get more and more unreliable the further into the future they are for. This is called sensitive dependence on initial conditions, and systems which have this behaviour are called chaotic. The three pictures on the left illustrate an example of this behaviour in a simple iterated formula. In the top graph points are colored according to their position. In the second, they are colored according to their position two iterations previously. In the final graph they are plotted according to their position 7 iterations previously. Note how the areas of color have been blended together and dispersed. This means that points initially far apart have been brought close together, and vice versa.
The discovery of this unpredictability is the fundamental idea in chaos theory, and is the underlying explanation for the infamous butterfly effect, where a butterfly flapping its wings "causes" a hurricane in another part of the world. What we should really say, is that if we make two long term weather forecasts based on initial conditions that differ only in one measurement of air pressure in one place, by an amount comparable to the difference caused by a butterfly flapping its wings, then one forecast might predict a hurricane, and the other not.
*For example the French mathematician Laplace (1749-1829) wrote: "If we can imagine a consciousness great enough to know the exact locations and velocities of all the objects in the universe at the present instant, as well as all forces, then there could be no secrets from this consciousness. It could calculate anything about the past or future from the laws of cause and effect". It was a late 19th century French mathematician, Henri Poincaré, who first understood what mathematicians now call chaos.
Now, although the weather is not very predictable on a day to day basis, it is fairly predictable on average - although a very mild winter's day might be warmer than a cold summer's day, on average winter is colder than summer. Although the weather is variable, it does not vary very far from the average - in habitable regions at any rate. If we compared the weather for a certain place on corresponding days of the year from different years, we might find that the weather was quite different on a lot of days. Nevertheless, on average we would probably conclude that the weather was similar in the two years.
When a bounded chaotic system does have some kind of long term pattern, but which is not a simple periodic oscillation or orbit we say that it has a Strange Attractor. If we plot the system's behaviour in a graph over an extended period we may discover patterns that are not obvious in the short term. In addition even if we start with different initial conditions for the system, we will usually find the same pattern emerging. The area for which this holds true is called the basin of attraction for the attractor. (For a more formal definition see the Fractal FAQ.)
Intuitively we might expect the weather to be unpredictable, as we can see that there are many influences upon it. However even simple systems can be chaotic. The attractors plotted by Spirofractal are polynomials, or other fairly simple functions, that use either two real variables, or one complex variable (which amounts to the same thing). The functions are evaluated over and over again, using the result from one iteration as the initial values for the next. Sometimes the values will tend to infinity, and so are not bounded. Sometimes the function is not chaotic (small differences in the initial conditions do not increase - these functions result in attractors which are simple curves). But a small minority of the possible functions give rise to strange attractors, and in many cases these have beautiful patterns.