Platform Team/Sugar Network/Architecture: Difference between revisions

Line 53: Line 53:
Client application is local, for reasons:
Client application is local, for reasons:


* Originally, Sugar Network is being developed for deployments where teachers' XOs will be distributed servers, thus, it will be useful to delegate some of computing to students' XOs;
* Originally, Sugar Network was being developed for deployments where teachers' XOs will be distributed servers, thus, it will be useful to delegate some of computing to students' XOs;
* Stimulate doing behaviour when it should be possible to create new client application or tweak existing;
* Stimulate doing behaviour when it should be possible to create new client application or tweak existing on a client side;
* It is all time possible to create Web application on the server side.
* It is all time possible to create Web application on a server side.


=== Default client ===
=== Default client ===
Line 61: Line 61:
The default client is implemented using Web technologies to:
The default client is implemented using Web technologies to:


* Using Web technologies might make client developing easier;
* Make it possible to reuse Sugar Network in any Web browser in any Desktop Environment, i.e., not only from Sugar Shell;
* Make it possible to reuse Sugar Network in any Web browser in any Desktop Environment, i.e., not only from Sugar Shell;
* Using existing Web methods might make frontend developing easier;
* It might be easier to find potential Sugar contributors within Web developers rather than developers who know GTK.
* Involve Web developers to Sugar community;


It might sound a bit confusing to have local Web application, but this decision is based on:
It might sound a bit confusing to have local Web application, but this decision is based on:


* Local Web applications serve only one user and are much simpler than singular applications that are intended to serve thousands of users simultaneously;
* Local Web applications serve only one user and are much simpler than singular applications that are intended to serve multiple users simultaneously;
* Having simple and clean designed code, it will be easy for doers to learn, change, reimplement the frontend.
* It might be useful to design simple and clean code using existing Web technics like MVC;
* Thus, it will be easier for doers to learn, change, reimplement the new clients.


=== Personal server ===
=== Personal server ===