From Fedora Project Wiki
No edit summary
No edit summary
 
Line 31: Line 31:


Nonetheless, my determination, good programming skills and good communication skills will lead me to valuable contributions to the community.
Nonetheless, my determination, good programming skills and good communication skills will lead me to valuable contributions to the community.
== Proposal Description ==
===Overview===
Waartaa is a web IRC client thought as a service. The main goal of it is to give users the possibility to know what is discussed on IRC channels even when they are not online. Some of its features are central logging, 24/7 online and unique identity on all channels, so you don't need to change your nick if you access a channel from a different machine.
My contribution over the summer will be divided in 3 main objectives:
* Developing a central hub for searching and reading channel logs
* Developing a user dashboard where users can change the settings
* Adjusting the UI for mobile devices
===The need you believe it fulfills===
Waartaa is a project for developers and is oriented on making their lives easier. One problem very many people experience is knowing what was discussed on IRC channels while they were offline. Even if they have access to the logs of those conversations, it is hard to scroll the hole content, sometimes, content from a few days and catch the most important topics or the one they were mentioned in.
I am looking to address this problem by building an app where people can search the logs, receive notifications when they are mentioned and bookmark important topics so that they can communicate and coordinate better in open source development.
===Any relevant experience you have===
I have previously worked on a single page app as part of an open source project. Even, if there we used different techonologies, I have gained the experience of accomodating myself quickly with new technologies and with the principles of a single page app.
I have also started contributing to Waartaa, so I got accustomed with the codebase and the technologies involved.
===How you intend to implement your proposal===
1. To implement the central dashboard for searching through logs, I will have to complete 3 main goals:
* Build an Elasticsearch backend where logs will be stored and which we will query. After discussing with the project mentors we decided that Elasticserach is the best choice because unlike MongoDB which is pretty quick making queries, but becames pretty resource hungry, Elasticsearch is more scalable.
* Elasticsearch with Waartaa and start collecting data. This integration should be pretty straightforward because waartaa logs are already in JSON format, so all we need to do is to send the information to the backend wich could be implemented with an asynchronous HTTP call from Meteor.
* the user interface. For this purpose, I will take into consideration to build it with Meteor just like Waarta is, but if the platform shows that is not appropriate for the task, I will take into consideration to use another Node based framework like Hapijs.
Some of the features I am planning to include are:
* searching the logs based on various crieria like date or sender
* notifications system, so that the user knows when he was mentioned in a conversaiont
* bookmarking system for managing important
2. Developing the user dashboard I will have to write some templates where the user can fill or change some of its preferences like email, password, bookmarks, etc and to update the database with the given input.
3. For the purpose of making Waartaa looking good on mobile devices I will have to tweack Twitter Bootstrap and make the app feel natural on smaller screens.
Timeline
Due to the fact that between 24th May and 13th June I will attend my final exams, I will start working in the Community Bonding period part time so I can meet my objectives.
21st April - 19th May
* Discussing with the mentors and deciding exactly how everything will be implemented
* documentation and learn what I don't know
* building the Elasticserach backend
19th May - 25th May
* work on Elasticsearch backend and integrate it with Waartaa
26th May - 8th June
* implementing the main areas of the user interface
9th June - 22th June
* bookmark and notification system
23th June - 6th July
* the user interface for the logs dashboard
* working on the user dashboard for Waartaa
7th July - 20th July
* the dashboard
* working on CSS to make it appropriate for mobile
21th July - 3rd August
* the adaptation for mobile devices
4th August - 8th August
* any last details
Have you communicated with a potential mentor? If so, who?
Yes, I have discussed with Ratnadeep Debnath about the project and about my application.

Latest revision as of 10:56, 20 March 2014

Contact Information

  • Email Address: bgdn.ciobanu@gmail.com
  • Freenode IRC Nick: bogdanc

Why do you want to work with the Fedora Project?

As a young student, I enjoy the opportunity Fedora offers me to work on something meaningful for a lot of people. I always wanted my work to be useful to others and so is this project and this is an opportunity to do just that. In Fedora's case, what the organisation does is to offer the chance for people to enjoy their computers for free, to learn for free and get the most of the device that became essential for humanity, the Computer. Therefore, my first reason that makes me want to join Fedora Community is because I really believe in the mission of the organisation and I want to spend some of my time working together to meet that mission.

Improving my skills and broadening my knowledge is another thing I am putting my energy and time. Working along some really skillful and talented programmers, I am assured that I will learn from the best, so someday I can be among the best. Therefore, my second reason is to keep growing at a personal level along a nice and supporting community.

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

My first contact with open source world was in my first year of college. I have started by joining a course organised by Rosedu, a local non-profit organisation which has the scope to educate through open source. There I was introduced in the process of working on a open source project, communicating with a team and enjoying the experience. During the program and beyond, I have worked on a single page app which was meant to be a UI for a software which automatically checks students' assignments and homeworks. With the contributions I have made to this project, I have competed in a contest based on open source contributions and won it.

My participation in Google Summer of Code last year was the most notable participation I had in open source, but I have also been involved in other open source related activities.

Did you participate with the past GSoC programs, if so which years, which organizations?

I was a student in Google Summer Of Code program, last year, just after I have finished my freshmen year. I participated along GNOME. My project was to create the possibility for the to choose as avatar in Gnome a profile picture from Facebook, Gravatar and other online services and to redesign the way he chooses that avatar. As a follow up, I have mentored some students into starting contributing to Gnome as part of the same project I learned about open source in my first year, as I have described earlier.

Will you continue contributing/ supporting the Fedora project after the GSoC 2014 program, if yes, which team(s), you are interested with?

I will continue to contribute to my project and develop it even further. Also, after I will meet more persons and projects in the community I will work on other projects that I will find interesting.

Why should we choose you over other applicants?

I believe my most important asset is the passion to solve other people's problems through good quality software and, more than that, my inclination for trying to find solutions for real issues, not just solving technical problems.

Moreover, my past experiences proved that I am highly capable of quickly adapting myself to new situations, learn new things quick and acquiring the skills needed in a short term. Also, I am very motivated to meet my objectives and get better every day.

Nonetheless, my determination, good programming skills and good communication skills will lead me to valuable contributions to the community.