From Fedora Project Wiki
No edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
            '''GSOC-2016 PROPOSAL
This is a basic template of information you can use for filling out a GSoC application for the Fedora Project.
PROJECT-FEDORA INFRASTRUCTURE WEB APPLICATION DEVELOPMENT: COMMUNITY OPERATIONS    (CommOps)'''


'''CONTACT INFORMATION'''-
== Template ==
Olaitan Igbagbo Awe


laitanawe@gmail.com  
=== Contact Information ===
+234-8051069772, +234-8060132876
* '''Email Address''':    irunikail@gmail.com
FAS username-laitanawe
* '''Freenode IRC Nick''':    Irunika
IRC-laitanawe
* '''Code Forges (GitHub, GitLab, BitBucket, etc.)''': 
** Github : https://github.com/irunika
** Also have worked with SVN in private repository


'''WHY FEDORA'''- I want to work with FEDORA as I found your work very interesting. I visited all your pages like Fedora CommOps, Community Blog, Wiki, Fedora Badges, Storytelling, Hubs etc. After visiting all the pages and carefully studying, I found that Fedora CommOps is the most versatile project to work with as it connects to all the other things automatically and my skills are best suitable for this project.
* '''Social Media Accounts''':
**LinkedIn : https://lk.linkedin.com/in/irunikaw
**Facebook : https://www.facebook.com/irunikalw


'''GSOC PARTICIPATION-''' This is the first time I’m taking part in GSOC and I’m really excited to work with your organisation.


'''CONTRIBUTION'''- I have already started contributing to FEDORA and I will continue my efforts for making it better. I have joined the mailing list, IRC, got the FAS account, signed the CLA, and introduced myself on wiki, applied for FEDORA AMBASSADOR, applied for group membership. I also interacted with the mentors on mailing list and found them really supporting. I also checked the tools and utilities section.
=== Questions to answer ===


'''WHY CHOOSE ME'''- For this project (CommOps), you need someone who is self-motivated, self-sufficient and  the one who has curiosity to learn. I am a hard worker and I am ambassador for Mozilla,   icytales.com, Bioinformatics Africa (asbcb.org). I am member of the International Society for Computational Biology (ISCB). I write contents for asbcb.org and beyond news. I am comfortable in working with JAVA, C/C++, SQL, HTML5, CSS3, JavaScript, JQuery and Android Studio. I have made a Mobile Application for Nigerian Students as a mini project three years ago.
==== Why do you want to work with the Fedora Project? ====
Because I am open source enthusiastic undergraduate who have used Fedora for a long time and I’m now trying some other Debian distributions Ubuntu 15, Linux Mint, XUbuntu ect. So I always wanted to contribute to a Fedora project one day as well as to join Fedora


'''WHERE I BELONG'''- As I have already mentioned CommOps is a very versatile and flexible project, I can help you by editing the documents or writing the blog for Fedora community. I can help you in designing part and also in collecting and analysing data. I found that my interest lies in Messaging (fedmsg), Metrics, Badges, Hubs, Culture and Wiki.  And I am very curious for learning new things so definitely I’m going to improve myself according to the instructions provided by my mentor.
==== Do you have any past involvement with the Fedora Project or another open-source project as a contributor? ====
Even though I haven’t worked with Fedora Project I have spent my internship period in WSO2 ( A Fully Open Source Middleware Company . They also conduct projects in GSOC too )




'''TIMELINE'''- There are many things for which I can work during my project and according to the guidance of my mentor but I think a rough timeline is required to make sure that the project gets completed in a stipulated period of time. For that purpose I have prepared a rough and flexible timeline which can be modified later after discussing with the mentor.
==== Have you participated in GSoC in the past? If so, what year(s) and which organization(s)? ====
No. But tried a project in WSO2.


18March-25March:  Applying through GSOC’s website. Familiarizing with the code, community and documentation. Try to contribute something to CommOps project by creating an FAS account and joining the CommOps community.
 
22April-22May: GSOC Results. Confirming and discussing the project details with the mentor and understanding the workflow properly and planning the weekly tasks. Also getting started with the implementation of project.


23May-24June: Weekly target completion and submission of work report to the mentor. Submissions for Mid-term evaluation.
==== Do you plan to continue contributing to the Fedora Project after GSoC? If yes, what sub-project(s) are you interested with? ====
Yes. The I would like to contribute to same Fedora-Hub project since that is where my interested areas lies.


27June-31July: Continuing the Implementation and regular progress check-up.


1August-15 August: Final brush up, full integration testing, documentation and submission for final evaluation.


'''FINAL DELIVERABLES'''- Developed Content, Bug Free environment, Campaign Development and Implementation, Design Improvements, collected and well-organised data, improvements with wok related to metrics gathering and real-time messaging integration.
==== Why should we choose you over other applicants? ====
I’m using open source every time and because I’m very interested in those stuff. Because of that I was able to get a chance to work as an intern in a fully open source company WSO2. So I know how open source community works and how to contribute.
On top of all the things I have most of the knowledge that is needed to complete the project quickly since there would be very few things for me to learn and do. You will understand it if you go to my Github account.


[[Category:Summer_coding_2016]]
==== Have you contributed to any other open source organizations or projects? If so, do you have artifacts you can show so we can see your skill set(s)? ====
Yes. But open source aspect I couldn’t contribute to released product since even in WSO2 I was doing an internal project in research and development team using Flask, Python NLTK and ML tool kits.
But I’m creating some stuff with my friends as a hobby. Please refer my Github account
 
==== Do you have any other open source experience (even if not coding-related)? ====
Department of Computer Engineering, University of peradeniya, Sri Lanka (where I’m doing my current undergraduate studies) is using open source software for everything, even in lab machines we are using Fedora and XUbuntu. It gave us exposure to open source culture very much. After that, as I earlier mentioned I joined WSO2 which is a full open source company as an intern and got to know how actually an open source environment and community is working.
 
 
==Proposal Description==
 
===Overview and The Need===
 
 
===Any relevant experience you have===
I have hands on experience in most of the things that you ask to implement the project.
 
* Python
** I have 2+ years experience in python. I have used NLTK, JIRA, Gmail, Google Search, Open CV ,some coding with Raspberry Pi  and many more libraries in python for my projects
 
* HTML/Javascript/CSS
** I have 4+ years experience in web technologies and I have worked with front end technologies like Bootstrap, AngularJs, Jquery, Angular-bootstrap.
 
* Jinja2 and Flask
** This is one of key areas of my self studies and I have 1+ years experience in flask. I have done several projects using Flask and Jinja. It is interesting to use Jinja templates and create new pages in a easy way. Also I have deployed those projects using apache MOD_WSGI
 
 
===How do you intend to implement your proposal===
 
Refactoring will be done in the code base to a certain extent as discussed with the mentor and also the journaling feature - 'changelog' of glusterfs will be customised to serve the file-level synchronization.
 
*Phase 1:
**First I try to clarify the things that I have to implement and the scope of the project. There is a  site map of existing system[http://blog.linuxgrrl.com/2015/09/15/fedora-developer-website-design/]. So I will study it first and the code base since Flask is a micro-framework it can be implemented in many ways. 
 
*Phase 2:
**Then add necessary capabilities to backend implement and  the features required for the front end.
 
*Phase 3:
**Then I will create the widgets and deploy new widgets.
 
*Phase 4:
**Then Triage and process new widget ideas submitted by the community at large.
Finally I will Implement existing mockups from previous UI/UX work.
 
 
 
===A rough timeline for your progress===
 
* May 23 - May 30 (1 week)
** End Semester Examinations
 
* May 30 - June (4 weeks)
** Adding new features to the web frontend
** Adding new capabilities to the backend
** Fix UI bugs which already exists if time is enough (Extra)
 
* June 27 - July 10 (2 weeks)
** Writing and deploying new widgets
 
* July 11 - July 24 (2 weeks)
** Triaging and processing new widget ideas submitted by the community at large
 
* July 25- July 31 (1 week)
** Implementing existing (and thoroughly detailed) mockups from previous UI/UX interns and team members
 
* Aug 01 - Aug 07 (1 week)
** Mid Semester Examination
 
* Aug 08 - Aug 14 (2 weeks)
** Continue Implementing existing (and thoroughly detailed) mockups from previous UI/UX interns and team members
 
* Aug 15 - Aug 21 (1 week)
** Polishing the code base
** Implement unfinished parts if exists
** Fixed found bugs on the way if necessary
 
 
===Final deliverable===
Features which were discussed to implement during the summer with clean code base.
===Any other details you feel we should consider===
Please consider the deliverability of this project if I can contribute in this since it takes lot of time for someone to understand the architecture of flask implementation as well as Jinja templating. Because I have seen so many people who are misusing Jinja templating (Not even with “extends” or “includes”/ Some times using “include” instead of “extend” kind of scenarios. I have done those things in the beginning too.). Also I cloned the project and had a look at it. It is cool and there are somethings which I should learn even after doing few projects and intern project at WSO2 with flask.
As well as you should consider that above table is a rough timeline and I feel that it is not the correct way of doing that. Since there are no details about what exactly to do in the summer I am giving you a rough idea. It can be changed after discussions during community bonding period.
 
[[Category:Summer coding 2016]]

Latest revision as of 21:10, 25 March 2016

This is a basic template of information you can use for filling out a GSoC application for the Fedora Project.

Template

Contact Information

  • Email Address: irunikail@gmail.com
  • Freenode IRC Nick: Irunika
  • Code Forges (GitHub, GitLab, BitBucket, etc.):


Questions to answer

Why do you want to work with the Fedora Project?

Because I am open source enthusiastic undergraduate who have used Fedora for a long time and I’m now trying some other Debian distributions Ubuntu 15, Linux Mint, XUbuntu ect. So I always wanted to contribute to a Fedora project one day as well as to join Fedora

Do you have any past involvement with the Fedora Project or another open-source project as a contributor?

Even though I haven’t worked with Fedora Project I have spent my internship period in WSO2 ( A Fully Open Source Middleware Company . They also conduct projects in GSOC too )


Have you participated in GSoC in the past? If so, what year(s) and which organization(s)?

No. But tried a project in WSO2.


Do you plan to continue contributing to the Fedora Project after GSoC? If yes, what sub-project(s) are you interested with?

Yes. The I would like to contribute to same Fedora-Hub project since that is where my interested areas lies.


Why should we choose you over other applicants?

I’m using open source every time and because I’m very interested in those stuff. Because of that I was able to get a chance to work as an intern in a fully open source company WSO2. So I know how open source community works and how to contribute. On top of all the things I have most of the knowledge that is needed to complete the project quickly since there would be very few things for me to learn and do. You will understand it if you go to my Github account.

Have you contributed to any other open source organizations or projects? If so, do you have artifacts you can show so we can see your skill set(s)?

Yes. But open source aspect I couldn’t contribute to released product since even in WSO2 I was doing an internal project in research and development team using Flask, Python NLTK and ML tool kits. But I’m creating some stuff with my friends as a hobby. Please refer my Github account

Do you have any other open source experience (even if not coding-related)?

Department of Computer Engineering, University of peradeniya, Sri Lanka (where I’m doing my current undergraduate studies) is using open source software for everything, even in lab machines we are using Fedora and XUbuntu. It gave us exposure to open source culture very much. After that, as I earlier mentioned I joined WSO2 which is a full open source company as an intern and got to know how actually an open source environment and community is working.


Proposal Description

Overview and The Need

Any relevant experience you have

I have hands on experience in most of the things that you ask to implement the project.

  • Python
    • I have 2+ years experience in python. I have used NLTK, JIRA, Gmail, Google Search, Open CV ,some coding with Raspberry Pi and many more libraries in python for my projects
  • HTML/Javascript/CSS
    • I have 4+ years experience in web technologies and I have worked with front end technologies like Bootstrap, AngularJs, Jquery, Angular-bootstrap.
  • Jinja2 and Flask
    • This is one of key areas of my self studies and I have 1+ years experience in flask. I have done several projects using Flask and Jinja. It is interesting to use Jinja templates and create new pages in a easy way. Also I have deployed those projects using apache MOD_WSGI


How do you intend to implement your proposal

Refactoring will be done in the code base to a certain extent as discussed with the mentor and also the journaling feature - 'changelog' of glusterfs will be customised to serve the file-level synchronization.

  • Phase 1:
    • First I try to clarify the things that I have to implement and the scope of the project. There is a site map of existing system[1]. So I will study it first and the code base since Flask is a micro-framework it can be implemented in many ways.
  • Phase 2:
    • Then add necessary capabilities to backend implement and the features required for the front end.
  • Phase 3:
    • Then I will create the widgets and deploy new widgets.
  • Phase 4:
    • Then Triage and process new widget ideas submitted by the community at large.

Finally I will Implement existing mockups from previous UI/UX work.


A rough timeline for your progress

  • May 23 - May 30 (1 week)
    • End Semester Examinations
  • May 30 - June (4 weeks)
    • Adding new features to the web frontend
    • Adding new capabilities to the backend
    • Fix UI bugs which already exists if time is enough (Extra)
  • June 27 - July 10 (2 weeks)
    • Writing and deploying new widgets
  • July 11 - July 24 (2 weeks)
    • Triaging and processing new widget ideas submitted by the community at large
  • July 25- July 31 (1 week)
    • Implementing existing (and thoroughly detailed) mockups from previous UI/UX interns and team members
  • Aug 01 - Aug 07 (1 week)
    • Mid Semester Examination
  • Aug 08 - Aug 14 (2 weeks)
    • Continue Implementing existing (and thoroughly detailed) mockups from previous UI/UX interns and team members
  • Aug 15 - Aug 21 (1 week)
    • Polishing the code base
    • Implement unfinished parts if exists
    • Fixed found bugs on the way if necessary


Final deliverable

Features which were discussed to implement during the summer with clean code base.

Any other details you feel we should consider

Please consider the deliverability of this project if I can contribute in this since it takes lot of time for someone to understand the architecture of flask implementation as well as Jinja templating. Because I have seen so many people who are misusing Jinja templating (Not even with “extends” or “includes”/ Some times using “include” instead of “extend” kind of scenarios. I have done those things in the beginning too.). Also I cloned the project and had a look at it. It is cool and there are somethings which I should learn even after doing few projects and intern project at WSO2 with flask. As well as you should consider that above table is a rough timeline and I feel that it is not the correct way of doing that. Since there are no details about what exactly to do in the summer I am giving you a rough idea. It can be changed after discussions during community bonding period.