From Fedora Project Wiki

About

  • Name: Wildsky Fann
  • Location: Taiwan
  • Department of Computer Science and Information Engineering, National Taiwan Normal University, Taiwan
  • HTML, CSS, JavaScript > PHP > C++ > Java(Android incl.)
  • Learning Node.js, Python

Contact Information

Questions to answer

Why do you want to work with the Fedora Project?

I started my Linux journey with fedora 20. Fedora has been my best friend for 2 years. I find it a really marvelous OS, so I cannot go back to Windows OS. Now I finish my slides, edit images, chat with friends, surf the net, and do all of my daily chores on fedora, I cannot leave it! I have gotten a lot from fedora, so now I want to give back. I have participated in some other open source communities, and now I want to sharpen my skill and try to help fedora community!

I think people in fedora community are all visionary and like to be the early adopters. If I learn here, I think I will earn a lot of experience, and face the future better!

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

Yes, I usually contribute to Fedora Taiwan Community, Vim Taiwan Community, Mozilla Taiwan Community, Lolypop Community, or some other open source community in Taiwan. What I contribute to are all about front-end (Not only websites but also web apps). Besides, I am one of Firefox Student Ambassadors in Mozilla Taiwan. When Mozilla Taiwan inc. or MozTW Community hold activities, we will go there for assisting. (e.g., fx10)

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

No, this is my first time to participate GSoC. I have read a lot of articles in the internet, and feel that GSoC is a great activities, which let me get involved into fedora community more easily.

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

Of course, I would like to continue contributing after GSoC. GSoC is my first step to contribute to the Fedora Project. I think fedora is really a great os, and I want it better. What I can do is about HTML, CSS, JavaScript. So I'm interested in Fedora Hubs Project.(Which might need me for front-end.)

Why should we choose you over other applicants?

Here are some reasons:

  • I use fedora on daily basis and wouldn't change, so what I do in GSoC will be the dog food I will eat. haha
  • I also suggest my friends (and teachers ;P) to install fedora for daily life because I find it easy to use, not only for submitting reports(thanks to LibreOffice) but also developing softwares (thanks to MS Windows, LoL)
  • I have contributed to many websites for open source communities, so I think I have the ability to help fedora community in front-end.
  • I am interested in lots of things, which make me learn new things willingly and quickly.
  • I have a strong sense of responsibility over others. No matter how hard the mission is, I'll never give it up as long as I promised it.

Therefore I think I am one of the best candidates.

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, as I said, I usually contribute to Fedora Taiwan Community, Vim Taiwan Community, Mozilla Taiwan Community. Here are some of the repos:

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

  • I'm a member of MDN (Mozilla Developer Network), I used to translate articles from en_US to zh_TW for front-end developers.
  • I'm a member of SUMO (Mozilla Support), I used to provide solutions to some general problems regarding firefox.

Proposal Description

Overview

Fedora Hubs is a modern, web-based platform to provide a communication and collaboration center for Fedora contributors of all types.

What I can do for Fedora Hubs Project

  • Solve issues in fedora-hubs repo, include but not limit:
    • to finish unassigned widget (or even those issue which has been assigned)
    • to finish start page "wizard"
    • to finish some charts with D3.js (or some other frameworks)
    • to improve responsive of Hubs
  • If needed, I could use react.js to write this platform ;P

Any relevant experience you have

I have contributed to many open source communities on GitHub. Most of them are all about HTML, CSS, JavaScript, Bootstrap, RWD ..., so I am familiar with git, and the languages, techniques, frameworks I just mentioned. Besides, I used D3.js before, so I could help Hubs to build some graphs, charts, ...etc with D3.js. Furthermore, I am learning Python in a class in this semester, so I could 'talk' a little bit of Python. (Not only hiss... hiss... :P)

How do you intend to implement your proposal

I am going to learn how to use flask after finishing my proposal. ;P And start to get involved in the project, included discussing issues, communiting with other developers in IRC, trying to pull requests...etc.

  • Step 1: Build a breakable toys using flask.
  • Step 2: Carve static pages according to mockups
  • Step 3: Do something I can do, such as improve stylesheet(use scss or other tools), or do something not so hardcore :P
  • Step 4: In this step, I think I will be familiar with the archtecture, so I might do more than I could imagine now!
  • Step 5: Invite and help my friends who are interested in open source and/or fedora but don't know how to start

A rough timeline for your progress

Upto the start of Community Bonding Period (26th of March - 22th of April)
  • Get familiar with Python and flask web application framework
  • Get familiar with Jinja2 and Fedmsg
  • Get familiar with the archtecture of fedora-hubs
  • Try to make a static page according to mockups
  • Search for issues I could solve
Community bonding period (23th of April - 22th of May)
  • Discuss with other developers in mail lists and IRC channel
  • Discuss with the mentors the spec of widgets
  • Solve the most basic bugs/issues
Work Period (23th of May - 28th of June)
  • Week 1-2:
    • Implement some pages which are easier to implement (to develop my confidence ;P)
    • Adjust style according to mockup (Or merge those static pages I have implemented into master (that is, dev branch))
    • Keep fixing those problems in issue list
  • Week 3-4:
    • Start to make the site more complete, and adjust them according to feedback
    • Make Hubs responsive
  • Week 5:
    • Keep refactoring, the target is to make Hubs v1.0 (which might not contain any widget)
Mid Evaluations (21th of June - 28th of June)
  • Completing and submitting mid-term evaluations
Work Period (28th of June - 16th of August)
  • Week 1-2:
    • Implement prototype or help other's prototype and adjust them according to feedback
    • If needed, I could help to use react.js to rewrite the website!
    • I might discuss with mentors and other developers before these weeks
  • Week 3-5:
    • Merge and help others to merge their prototype into master
  • Week 6:
    • Fix bugs
    • Prepare for final evaluations

I will record what I do for these weeks when participating, and in this week, I will make those articles better (add some details, pictures... etc)

Final (16th of August - 24th of August)
  • This week is for something accident which makes me not be able to complete some work within the schedule
  • Completing and submitting final evaluations
After Final (after 25th of August)
  • Keep helping to make Hubs better!
  • I might get involve to other fedora projects
  • Drag my friends into the project and teach them how to do

Final deliverable

A fast and stable web application for developers. And one (or more) developer(s) who will be a long-term contributor, that is me (and my friends maybe) ;P