From Fedora Project Wiki
Line 64: Line 64:




==My current approach towards the project==
===My current approach towards the project===
I have already subscribed into the Fedora summer-coding mailing list, Fedora developers mailing as well as the relevant IRC channels. I also discussed with mentors about the feasibility of my project and they provided me with influential advices. <br>
I have already subscribed into the Fedora summer-coding mailing list, Fedora developers mailing as well as the relevant IRC channels. I also discussed with mentors about the feasibility of my project and they provided me with influential advices. <br>
I have already set up the local machine for development and I must go through the codebase and understand the data flow. <br>
I have already set up the local machine for development and I must go through the codebase and understand the data flow. <br>

Revision as of 17:25, 23 March 2016

Fedora Infrastructure Web Application Development: Fedora Hubs

Contact Information

NOTE: My blog was not updated for quite a while. But I hope to blog about the progress of this project continuously in my blog.

Questions to answer

Why Fedora?

I am an enthusiast of open source software development and was exploring new open source software projects to work on as a long-term contributor. When I discovered that Fedora has many projects which are suit with my passion and interest of web application development, my attention was instantly drawn to it and I found out that it is a great place to learn something new. Also it consists of a very helpful community which supports new contributors who are willing to contribute with their knowledge.

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

I am participating in a FOSS project for the first time and I do not have past open source project experience. However, I am willing to work on it with my full effort as a long-term contributor of Fedora.

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

This is my first experience in participating in GSoC.

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

I have already planned to contribute to Fedora projects continuously. I am fascinated with Fedora-hubs and Fedora developer portal and I have already started to contribute. Since there are a lot to complete in the said projects, Fedora will need the commitment and the support of the contributors even after GSOC. Also I have found interest in learning kernel programming too. Undoubtedly, Fedora is the best way to seek my desired paths.

Why me?

As far as I can remember, I have always wanted to do something useful to the world with my knowledge of computer which pushed me to choose computer Science and Engineering as my major in my degree program in University of Moratuwa.
From there I was able to polish up my knowledge of web application development as well as my soft skills. (See my LinkedIn profile for completed projects. I have included some of them in my github account.)
I believe that Fedora is the place that I can fulfill my vision.
I am interested in Fedora hubs as I have a stable and fast-paced knowledge in most of the required technologies used in it (HTML/Javascript/CSS, Python, Bootstrap).
In addition, I am getting familiarized with Jinja2, Fedmsg and datanommer/grepper. Jinja2 is a template engine very much similar to blade in PHP, laravel and JSP EL which are the technologies that i have worked with previously.
Moreover, I have already researched resources on prototypes I am willing to develop for the GSOC. Therefore it will much easier to continue from there on.

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)?

No,I have not contributed to any other open source organizations yet.

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

I'm member of https://ask.fedoraproject.org/en/users/9982/jadd22/, I used to provide solution to some general problems regarding fedora.

Proposal Description

Overview and The Need

The issue in https://pagure.io/fedora-hubs/issue/47 highlights the need of information about regional places where Fedora already has or would like to have a presence in. It is proposed that a page similar to Teams hubs which contributors will automatically join those regional hubs based on their FAS locations would be suitable for this.
As mentioned in the idealist, Fedora hub is the new web presence for all of the Fedora users, subprojects, and communities and one of my target is to welcome the involvement of the newbies through simplicity. In order to achieve this, I propose to provide tutorial widget for each team hubs describing how to get involved and how to install pre-requirements including topics such as how to make development environment. Video tutorials with relevant information prove to be more efficient than words and it has a more favorable impact on the audience than reading long text. Therefore it is ideal to create tutorials for each team hub covering at least the initial phases such as setting up the developer environment. It is important to be able to reach out to tutorials with or without videos related to a project rather than going through guidelines that span over hundreds of pages. My colleagues of the university claim that these issues make Fedora very difficult to work with.
Fedora has many various projects which require varying skill sets. Therefore sometimes it can be quite difficult to find a suitable proposal for a newbie that suits his/her skill set. It would be very helpful if they have a widget in their profile page that suggests suitable projects according to their skill set.

Any relevant experience you have

As a contributor to glusterfs I have prior knowledge of the codebase,this would be helping me in integrating the new feature build for the geo-replication over the current features using C and Python wherever required.

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.

A rough timeline for your progress

Final deliverable

My current approach towards the project

I have already subscribed into the Fedora summer-coding mailing list, Fedora developers mailing as well as the relevant IRC channels. I also discussed with mentors about the feasibility of my project and they provided me with influential advices.
I have already set up the local machine for development and I must go through the codebase and understand the data flow.
I identified an issue in Fedora hubs (ticket #113) and solved it. In Fedora developer portal, identified issue (ticked #32) and solved it.
Additionally I watched all meetup videos and went through all mockups to get an idea about needs of contributes and their ideas.
I have made up mockup for regional hubs in Fedora hubs (#ticket 47). I have already created prototypes using the said mockup. ( http://www.titansmora.org/Fedora/templates/fedora_regional.html )
I have also created prototypes for project matching widget and tutorial widget.
Project matching widget: http://www.titansmora.org/Fedora/templates/search_projects.html
Tutorial widget: http://www.titansmora.org/Fedora/templates/tutorials.html (I used same regional hub page that I created for regional hub since it is very similar to the teams hub)


Any other details you feel we should consider

I have keen interest increasing my Fedora and FOSS contribution. I also possess good knowledge of the project's codebase and I have been in regular touch with my mentor since path 2 months. link title