Summer of Code/2016/Journal Rethink

From Sugar Labs
< Summer of Code‎ | 2016
Revision as of 07:06, 20 March 2016 by Abhijit (talk | contribs)
Jump to navigation Jump to search

About Me:

  • What is your name?

My name is Abhijit Patel and I am a 2nd year undergraduate student at Dhirubhai Ambani Institute of Information and Communication Technology, Gandhinagar, India.

  • What is your email address?

abhisandhyasp.ap@gmail.com

  • What is your Sugar Labs wiki username?

Abhijit

  • What is your IRC nickname on irc.freenode.net?

AbrahmAB

  • What is your first language? (We have mentors who speak multiple languages and can match you with one of them if you'd prefer.)

My first language is Gujarati . I am also fluent in English, Hindi and Marathi.

  • Where are you located, and what hours (UTC) do you tend to work? (We also try to match mentors by general time zone if possible.)

I am located in Gandhinagar, India. The time zone is Indian Standard Time (UTC + 5:30). I am planning to work 5:00 to 14:00 (UTC) but is adjustable. As I don't have any other commitments this summer I could surely manage my time and be active when the mentors are available.

  • Have you participated in an open-source project before? If so, please send us URLs to your profile pages for those projects, or some other demonstration of the work that you have done in open-source. If not, why do you want to work on an open-source project this summer?

I am new to open source.The idea of “anyone could contribute code” is just splendid. Developing a piece of software that would be used by millions of people by coordinating with other developers all round the globe, is something that has always fascinated me.

Sugar learning platform is an example of how technology can be used to impart education. Contributing to the open-source project under sugar labs would indirectly contribute to educating a few more children. Nothing else could match this joy.

About my Project

  • What is the name of your project?

Journal Rethink

  • Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?

Journal Rethink is to enhance Journal such that students could use it as a platform to do their project-work.

The listed features can be used for making Journal as a platform for working on projects.

Shared mini-journal:

The present Sugar Journal shares only single instance of an activity with a group of participants. A need is to make Journal support sharing of multiple instances of one or more activities among the same group like for Maths Project group.

For this a feature of “Shared project having multiple Journal Entries(A mini-journal)” would be added under this project. On sharing a project , a new shared and synced mini-journal would be initiated. This idea of mini-journal can be implemented by creating one single instance which has instances of all the activities to be shared.

In short, When users opens the Journal they see a list of mini-journals. When they click on the mini-journal, they see a list of activities that are shared with the same participants under the same project in the mini-journal (same layout as journal today).

Start a new entry or Add New Item:

Under the mini-journal feature another feature of adding more instances of activities directly from Journal by just using the feature of “Add Item”. At first the student or user will be forced to title the entry he is adding. Than a File-Chooser view of Home-view displaying the list of activities would pop-up from which user would select the activity to start working in.

Integrating Chat Activity in mini-journal:

As for every project work needs discussion among the group members. Integrating the chat activity in this mini-journal would give a place for discussion for all the members of the mini-journal.


Something more that would improve user experience :  

Icon View for Journal:

Journal is in list view today. The Icon View would make searching through images much more engaging and efficient. A prototype of this Icon View is created in the below link.

Implemented Icon View (in my prototype [1]):

Journal as Service:

Journal currently is used as an Sugar Activity.The Journal is always running as a service when the Sugar is running. It is accessible by also by the Journal button in the frame.

Sort alphabetically:

Adding another “Sort by name” feature only when the view is switched from Journal to the external device like USB.

This sort would be best in case when external devices are connected. For if the users want to copy some files from external device to their device in such case sorting by name would be preferable than sorting by date or size.

Technologies or languages used are python and Gtk.

For the mini-journal I will be using telepathy implementations like the Salut (for link-local XMPP ) and Gabble that are being used by sugar.

UI design for Mini-Journal below with the details of new tools:


  • What is the timeline for development of your project? The Summer of Code work period is from May 19 - August 22; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (27 June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.