Changes

Jump to navigation Jump to search
m
minor formatting edits
Line 9: Line 9:  
:'''Languages:''' English
 
:'''Languages:''' English
 
:'''Where am I located? and what hours(UTC) do I tend to work?'''
 
:'''Where am I located? and what hours(UTC) do I tend to work?'''
: I'm located at Mumbai, India (UTC +05:30)
+
: I'm located in Mumbai, India (UTC +05:30).
 
: Work Hours: 5:00 AM to 2:00 PM UTC
 
: Work Hours: 5:00 AM to 2:00 PM UTC
    
:'''Past experiences with Open-Source projects:'''
 
:'''Past experiences with Open-Source projects:'''
   −
: I have worked with an open-source organization called [https://github.com/frappe ERPNext] sporadically between 2016 and 2017.
+
:* I have worked with an open-source organization called [https://github.com/frappe ERPNext] sporadically between 2016 and 2017.
 
   
 
   
: I added an AWS S3 Integration to Frappe, a Python framework that powers ERPNext.
+
:* I added an AWS S3 Integration to Frappe, a Python framework that powers ERPNext.
: https://github.com/frappe/frappe/pull/4272
+
:* https://github.com/frappe/frappe/pull/4272
: Here’s a PR I made that has some Ansible:
+
:* Here’s a PR I made that has some Ansible:
: https://github.com/frappe/bench/pull/473/
+
:* https://github.com/frappe/bench/pull/473/
: I've been making minor contributions since May 2016.
+
:* I've been making minor contributions since May 2016.
      Line 36: Line 36:  
:*act as a WiFi AP that clients(browsers, sugarizer apps) can connect to.
 
:*act as a WiFi AP that clients(browsers, sugarizer apps) can connect to.
 
:*serve Sugarizer using Sugarizer-server on the local WiFi so there will be no requirement for Internet connectivity for now.
 
:*serve Sugarizer using Sugarizer-server on the local WiFi so there will be no requirement for Internet connectivity for now.
:*start a browser session running sugarizer client so a single user/instructor can use it by connecting a display to the Pi.
+
:*start a browser session running Sugarizer client so a single user/instructor can use it by connecting a display to the Pi.
    
:This is being created because the Raspberry Pi is inexpensive, widely available and many such Sugarizer School Boxes can provide a cost-effective way of reaching out to more students and communities through Sugar.  
 
:This is being created because the Raspberry Pi is inexpensive, widely available and many such Sugarizer School Boxes can provide a cost-effective way of reaching out to more students and communities through Sugar.  
Line 43: Line 43:  
:This will include making sure that the IIAB playbook uses the latest version of sugarizer with all available functionality and ensuring that it works.
 
:This will include making sure that the IIAB playbook uses the latest version of sugarizer with all available functionality and ensuring that it works.
   −
==== Goal #2: Heroku Button====
+
====Goal #2: Heroku Button====
    
:
 
:
Line 60: Line 60:  
=====Best Case Scenario=====
 
=====Best Case Scenario=====
   −
:If things go as per the timeline till the 2nd evaluation phase, I will also be making a Bash + Docker script for sugarizer deployment. Ansible, Terraform or Packer can be added to the script to allow compatibility for different VPS providers. As the Docker build for Sugarizer-server already exists, this will not take long.
+
:If things go as per the timeline till the 2nd evaluation phase, I will also be making a Bash + Docker script for sugarizer deployment. Ansible, Terraform or Packer can be added to the script to allow compatibility for different VPS providers. As the Docker build for Sugarizer-server and Ansible installer for IIAB already exist, this will not take long.
      Line 214: Line 214:  
= The Project and the Community =
 
= The Project and the Community =
   −
===If the project is successfully completed, what will be its impact on the Sugar Labs community?===
+
 
 
*:'''Rishabh Nambiar'''
 
*:'''Rishabh Nambiar'''
 
:: rishabhn@protonmail.com, [https://twitter.com/rish4bhn Twitter]
 
:: rishabhn@protonmail.com, [https://twitter.com/rish4bhn Twitter]
Line 221: Line 221:     
::The convenience of using one-click deployment scripts can be instrumental in getting non-developers to using a project and using a Heroku Button is even better when you don’t have to use to a terminal to have your own instance of Sugarizer.
 
::The convenience of using one-click deployment scripts can be instrumental in getting non-developers to using a project and using a Heroku Button is even better when you don’t have to use to a terminal to have your own instance of Sugarizer.
  −
   
=== Answers from the Community ===
 
=== Answers from the Community ===
 
:
 
:
*:'''Michaël Ohayon - mohayon75@gmail.com (Potential GSoC Mentor)'''
+
*:'''Michaël Ohayon''' - mohayon75@gmail.com (Potential GSoC Mentor)
 
:: 1) I think that the Pi will be able to handle the load, we won’t have that much kids connected to the same Pi and the networking process is not that heavy.
 
:: 1) I think that the Pi will be able to handle the load, we won’t have that much kids connected to the same Pi and the networking process is not that heavy.
 
::We should try to launch the server in background and display a web browser in foreground. If the load is too high we will see it quickly.
 
::We should try to launch the server in background and display a web browser in foreground. If the load is too high we will see it quickly.
Line 237: Line 235:  
::'''One major thing for all platforms is to think about the upgrade processes, how can we update the devices/server without losing data.'''
 
::'''One major thing for all platforms is to think about the upgrade processes, how can we update the devices/server without losing data.'''
 
:
 
:
*:'''Tony Anderson - tony_anderson@usa.net http://schoolserver.org/'''
+
*:'''Tony Anderson''' - tony_anderson@usa.net - http://schoolserver.org/
 
:: This is exactly how the xsce server works so you may get valuable help from that community (xsce or iiab).
 
:: This is exactly how the xsce server works so you may get valuable help from that community (xsce or iiab).
 
::A continuing issue is performance of the server in a classroom or school. One metric is the number of simultaneous connections the device can support (a classroom of 40-60 is not uncommon). Response time to requests to the server can be limited by the size of memory, the speed of access to the sd card, or the processor speed. I would be very interested in the methodology you propose since that process would apply equally to the schoolserver.
 
::A continuing issue is performance of the server in a classroom or school. One metric is the number of simultaneous connections the device can support (a classroom of 40-60 is not uncommon). Response time to requests to the server can be limited by the size of memory, the speed of access to the sd card, or the processor speed. I would be very interested in the methodology you propose since that process would apply equally to the schoolserver.
 
::One issue is to characterize the workload - how often does a user request a transaction from the server, what is the time between requests (when the user is reading the response to the previous request), how much processing is required for a request (e.g. a text search), how much information is required to satisfy a request (e.g. size of file download). So far as I know no one has attempted this characterization for a classroom. This load could be different for Sugarizer than for Sugar, but the effort would be valuable in any case)
 
::One issue is to characterize the workload - how often does a user request a transaction from the server, what is the time between requests (when the user is reading the response to the previous request), how much processing is required for a request (e.g. a text search), how much information is required to satisfy a request (e.g. size of file download). So far as I know no one has attempted this characterization for a classroom. This load could be different for Sugarizer than for Sugar, but the effort would be valuable in any case)
 
:
 
:
*:'''Tim Moody - tim@timmoody.com - http://internet-in-a-box.org/'''
+
*:'''Tim Moody''' - tim@timmoody.com - http://internet-in-a-box.org/
 
::Speaking of reliability, we have experienced a number of occasions when mongodb was corrupt on the rpi, perhaps through disorderly shutdown. Perhaps you can sort that out.
 
::Speaking of reliability, we have experienced a number of occasions when mongodb was corrupt on the rpi, perhaps through disorderly shutdown. Perhaps you can sort that out.
 
::I would also recommend focusing on the rpi install before turning to Heroku or AWS as most users are without an internet connection. All I'm suggesting is that you start with Sugarizer School Box item 1 and then proceed to item 2 when it is complete.
 
::I would also recommend focusing on the rpi install before turning to Heroku or AWS as most users are without an internet connection. All I'm suggesting is that you start with Sugarizer School Box item 1 and then proceed to item 2 when it is complete.
Line 275: Line 273:  
====Describe a great learning experience you had as a child.====
 
====Describe a great learning experience you had as a child.====
   −
:working-on-it
+
:in-progress
    
====More questions I'd like to ask====
 
====More questions I'd like to ask====
   −
:I've taken a lot of freedom in making the timeline and I'm not sure if I've given enough time to the important things.
+
:*I've taken a lot of freedom in making the timeline and I'm not sure if I've given enough time to the important things.
:If something I've given time to isn't very important then we could replace that with setting up CI wherever it's required.
+
:*If something I've given time to isn't very important then we could replace that something else.
:I'd love to receive feedback from the community!
+
:*Would you like to see even more implementation details? (I've added some in the Timeline).
 +
:*I'd love to receive any feedback from the community!
 +
 
    
[[Category:2018 GSoC applications]]
 
[[Category:2018 GSoC applications]]

Navigation menu