1) As mentioned before, a short-coming with the JAVA applet is that it would not allow the audio data to be store in the user's machine. The user can not save an audio file of the message signal. There is a possible solution to eliminate this short-coming. A feasible solution is to implement the idea of server and client. The client is the JAVA applet while the server is a CGI script that is waiting for a request from the JAVA applet. Once this CGI script receives a signal that incoming data are valid, it will encode this data into audio data and save it in a file. Once this is done, the CGI script will reply to the JAVA coded server that the audio file is ready. This will allow that audio file to be create by the applet script with the idea of server and client.
2) Even through the JAVA applet is great at this point, there are still some problems with it. One problem with the present JAVA is that it can only do 100% modulation. It could be nice if the JAVA will have the option of doing a modulated wave at a different percentage of modulation of the message signal with the carrier wave. One can create another button that a user can enter the amount of percentage of modulation for the modulated wave. The second problem or an inconvenience is the lack of a button to plot the wave. With the present curve, we have to click on the "CLEAR", then the "+" button to plot a new wave. It is easier to just click on a "PLOT" button to have the new wave displayed on the graph window.
3) There are some great ideas to add more functions and a nicer interface to the JAVA page. One of those functions is to be able to use the mouse to highlight something on the graph window to zoom in and out with the left and right mouse buttons. With the use of the mouse, one may also use it to highlight a section of the wave and only play the audio of the highlighted part. I am not sure how this will be implemented but it will require some extra work in the code. Another great idea is to use small pictures in the button that indicate the action of that button. With the use of small pictures, if a mouse is on top of a button, then some texts will appear telling the operation of that button.
4) The JAVA page will only do AM at this point. It will be a great idea to implemented more basic concepts of communication in the applet. For example, one can implement the frequency modulation (FM) and pulse code modulation in the applet. I would like to see most of the modulation techniques is implemented in the applet.