Suggestion :

WebPainter maintains consistency among all the clients by message passing. Just like some other distributed applications, state-consistency problem in WebPainter is not easy to solve. For example, consider the case of two users, one is drawing a circle and the other is drawing a rectangle at the same place on the canvas at the same time. It is possible that the circle is on top of the rectangle on one canvas while the rectangle is on top of the circle on the other. This kind of inconsistent states can be avoided by using some traditional consistency solutions, however, the additional mechanism will dramatically degrade the performance. There is a tradeoff between consistency and performance. I choose the latter because of one reason. Although the coordination is not enforced at the system level, users can do their own coordinations at the user level. More specifically, one can tell other members what he or she will do next by writing others a message. The user may tell others to wait until he or she finishes the action. The coordination at user level will perfectly solve the consistency problem. The additional advantage to do it at user level is flexibility. The user can decide the level of the coordination -- one action at a time or no coordination at all or etc. As a result, the suggestion is that when consistency is considered critical, user level coordination is necessary to maintain the consistency.

Future work :

A lot of things can be done to extend this project. Users may want to load and save the drawings. It is not possible right now because there are security constraints of applets and no image-format conversion support in Java. Hopefully, it can be done in the future release of Java. It is also cool to let users create their own geometries on the canvas instead of the four fixed ones. Of course, integrating WebPainter with some other applications is also a good way to extend its functionality. As a conclusion, I think useful applications like WebPainter will make Internet more powerful and popular in the near future.