Difference between revisions of "Summer of Code/2014/AnaBalica/Social Help"

From Sugar Labs
Jump to navigation Jump to search
(→‎About the project: fav technologies paragraph)
Line 38: Line 38:
 
:* 16-22 June - Set up a forum platform (Discourse for example), configure it (create general topics, assign admins, rules, write descriptions)
 
:* 16-22 June - Set up a forum platform (Discourse for example), configure it (create general topics, assign admins, rules, write descriptions)
 
:* 23-29 June - On Forum(s) button press event open Browse activity and open the page to the specific topic on the sugar forum
 
:* 23-29 June - On Forum(s) button press event open Browse activity and open the page to the specific topic on the sugar forum
:* 30-6 July - Review, refactor if necessary parts of code
+
:* 30-6 July - Localization, review, refactor if necessary some parts of code
 
:* 7-13 July - Write unit and integration tests for the activity and the functionality integrated into sugar
 
:* 7-13 July - Write unit and integration tests for the activity and the functionality integrated into sugar
 
:* 14-20 July - Extensive manual testing  
 
:* 14-20 July - Extensive manual testing  
 
:* 21-27 July - Fix bugs, solve unexpected issues
 
:* 21-27 July - Fix bugs, solve unexpected issues
:* 28-3 August -  Write documentation (docstrings, a wiki page with description, help page to Help activity)
+
:* 28-3 August -  Write documentation (docstrings, a wiki page with description, help page to Help activity maybe)
 
:* 4-10 August - Extra polishing (small enhancements)
 
:* 4-10 August - Extra polishing (small enhancements)
 
:* 11-17 August - Merging to main repos, submitting code to melange
 
:* 11-17 August - Merging to main repos, submitting code to melange
 
*''Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.''
 
*''Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.''
:My exposure to computer science and information technologies began 4 years ago. In that period I have achieved a reasonably solid expertise in clean coding, usage of procedural and OOP paradigms (just the basics of functional), scratched the surface of software design and design patters. My main passion is Python, though I have tried different tools (JavaScript, PHP, Matlab/Octave, git, a variety of web frameworks, technologies, libraries).  
+
:My exposure to computer science and information technologies began 4 years ago. In that period I have achieved a reasonably solid expertise in clean coding, usage of procedural and OOP paradigms (just the basics of functional), scratched the surface of software design and design patters. My main passion is Python (actively developing using Python for the last 3 years), though I have tried also other tools (JavaScript, PHP, Matlab/Octave, git, a variety of web frameworks, technologies, libraries).  
  
 
:Some of my pet projects are:
 
:Some of my pet projects are:

Revision as of 04:28, 12 March 2014

About me

  • What is your name?
Ana Balica
  • What is your email address?
ana.balica@gmail.com
  • What is your Sugar Labs wiki username?
AnaBalica
  • What is your IRC nickname on irc.freenode.net?
ananasova
  • What is your first language? (We have mentors who speak multiple languages and can match you with one of them if you'd prefer.)
I know 3 languages: Romanian, Russian and English.
  • 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.)
Originally I am from Republic of Moldova. My current location (also during the summer) is Prague, Czech Republic (UTC +1). Normal working day starts at 8AM UTC and ends at 7PM UTC.
  • 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?
Open-source contributions:

About the project

  • What is the name of your project?
Social Help
  • 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?
Social Help is going to be a system wide mechanism to access a range of social channels like IRC and forums. In order to access a context-dependent window with available communication channels, the user should press <Shift><Alt><c> (c stands for chat or connect). The user can choose between being connected to IRC (via IRC activity) or post a question to a forum (Discourse, Moot or some other reasonable modern forum software).
The feature is oriented towards users of Sugar (kids) that for various reasons are in need of social interaction:
  • ask a question on how to achieve something within Sugar or an activity
  • share knowledge and experience
  • propose enhancements
  • debug possible problems
To think about it, today's society is overwhelmed with social networks, forums and chats. Social Help is an easy way to access social channels and get children involved into helping each other. The interaction can give them a headstart in understanding how to use the tools they are offered and even contribute to the project.
  • 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.
Timeline:
  • 19-25 May - Decide on and create a final design and GUI of the Social Help window (general activity view and context-dependent view)
  • 26-1 June - Bring on a context-dependent window (within an activity) on <Shift><Alt><c> keypress to show all available communication channels for the following context
  • 2-8 June - Create a toolbar button for social help with a dropdown menu listing all available channels for the current context
  • 9-15 June - On IRC channel button press event open IRC activity and join the channel
  • 16-22 June - Set up a forum platform (Discourse for example), configure it (create general topics, assign admins, rules, write descriptions)
  • 23-29 June - On Forum(s) button press event open Browse activity and open the page to the specific topic on the sugar forum
  • 30-6 July - Localization, review, refactor if necessary some parts of code
  • 7-13 July - Write unit and integration tests for the activity and the functionality integrated into sugar
  • 14-20 July - Extensive manual testing
  • 21-27 July - Fix bugs, solve unexpected issues
  • 28-3 August - Write documentation (docstrings, a wiki page with description, help page to Help activity maybe)
  • 4-10 August - Extra polishing (small enhancements)
  • 11-17 August - Merging to main repos, submitting code to melange
  • Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
My exposure to computer science and information technologies began 4 years ago. In that period I have achieved a reasonably solid expertise in clean coding, usage of procedural and OOP paradigms (just the basics of functional), scratched the surface of software design and design patters. My main passion is Python (actively developing using Python for the last 3 years), though I have tried also other tools (JavaScript, PHP, Matlab/Octave, git, a variety of web frameworks, technologies, libraries).
Some of my pet projects are:
My github contains a variety of small university projects: a poll website written in Symfony2, Scrapy spiders, Qt4 apps, semantic web and linked data showcase app, SVG based editing tool.
Additionally I was employed as software developer for 8 months at Red Sky (had to quit due to change of geolocation). I have worked on CarOcean project, which is based on Scrapy framework. My responsibility was to handle about 100 different spiders (the project is available in 9 countries). Consequently I got a lot of experience in crawling the web, using xpath, regular expressions, agile methodology. As well I have worked on small PHP (Zend framework) projects.

You and the community

  • If your project is successfully completed, what will its impact be on the Sugar Labs community? Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the Sugar Labs community, at least one of whom should be a Sugar Labs GSoC mentor. Provide email contact information for non-GSoC mentors.
My thoughts
Social Help doesn't have a striking, absolutely vital impact on Sugar Labs community. Nevertheless this small feature will open the borders of communication for so many users on some many topics. Social Help shows a straight-forward way where to ask a question or to share your knowledge. By completing this project, Sugar Labs community will get even closer to its users through IRC and forums, which subsequently leads to a better understanding of what it's users are expecting.
Moreover Sugar Help will become a channel to find pals all over the world with same interests via reciprocal help.
  • What will you do if you get stuck on your project and your mentor isn't around?
Research or refocus. Those are the 2 strategies that always work for me. If it is a bug, then there must be a way to solve it. Get a step back and read some documentation - maybe I have missed something important. If the issue involves a collaborative decision and the presence of the mentor is absolutely critical, then I can refocus, checkout to a new topic branch and start doing other tasks.
  • How do you propose you will be keeping the community informed of your progress and any problems or questions you might have over the course of the project?
Talking from my past experience, weekly meeting are really helpful to keep everybody up-to-date (might be held only with the mentors and co-mentors). Usually I prepare lists of DONE, TODO next week and BLOCKERS. Also I am always online on IRC (using irssi via ssh) and I check it several times a day.

Miscellaneous

  • We want to make sure that you can set up a development environment before the summer starts. Please do one of the following:
    • Send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "logout".
    • Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.
It's normal to need assistance with this, so please visit our IRC channel, #sugar on irc.freenode.net, and ask for help.
  • Describe a great learning experience you had as a child.
  • Is there anything else we should have asked you or anything else that we should know that might make us like you or your project more?
[[Category:2014 GSoC applications]]