8. Projects

    1. AEX

    Each minute the AEX index of the Amsterdam Stock Exchange is computed and put on Internet in the URL

    http://www.financeweb.ase.nl/cgi-bin/sh206.exe?/
          cgi-bin/beursdata/aseindexcontent.ini
    

    The goal is to write an application that captures these real-time data. A second task is to display these data in a graph. The graph should be refreshed as soon as new data arrive. Unfortunately, the data do not come in a raw format, they are part of a larger HTML document. The Stock Exchange closes at 16:30, so take care you finish the exercise beforehand. Below is a sample of the HTML text.

    <!-------------------------------------------------
    Deze site is een produktie van:
    Riverland Networks (RIV.NET)
    Frederiksplein 51
    1017 XL Amsterdam.
    Copyright (c) 1996, Beursdata BV
    Credits: Irmgard Jansen en Nathalie Pol
    -------------------------------------------------->
    <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN//3.0">
    <html>
            <head>
                    <title>
    
                    </title>
    
            <base target="_self">
            <meta http-equiv="expires" content="Tue, 04 Dec 1993 21:29:02 GMT">
            <meta http-equiv="Refresh" content="60; url=/cgi-bin/sh206.exe/Lang=nl&ID=?/cgi-bin/beursdata/aseindexcontent.ini">
            </head>
            <body background="/beursdata/gfx/bg_purple.jpg" text="#ffffff" alink="#ff0000" vlink="#00cf00" link="#ffff00">
                    <table width=500 cellspacing=2 cellpadding=2 border=0>
                            <tr>
                                    <td>
    
            <b>Open: 843.65 Hoog: 848.29 Laag: 842.44 Huidig: 843.47 Winst: -0.18 Tijd: 12:46:15</b>
            <p>
            <img src="/beursdata/aex-index/out.gif">
            <p>
            Amsterdam Exchanges-index voor 13-06-1997
                                    </td>
                            </tr>
                    </table>
            </body>
    </html>
    

    2. Game of Life

    The goal of this project is to make a game of life. In the applet below you find such a game. It is a so-called automaton and is originally due to Conway. The game consists of cells that can be dead or alive. At each step the cells can change state according to some rules. The rules are:

    1. Each living cell stays only alive when exactly 2 or 3 neighbours are alive.
    2. Each dead cell becomes alive when it has exactly 3 living neighbours.

    3. Morse

    The morse encoding of words is done according to the table. The goal is to make an applet that translates strings of periods and hyphens separated by spaces to words. Also the reverse operation should be possible. A very sophisticated version is found below.

    4. Random Walk

    Make an applet that does random walks in two dimensions. Clicking on the screen should start a new walk. The applet below is without threads. An animation would be nicer.