Changes

Jump to: navigation, search

WikiPort

744 bytes added, 02:54, 29 March 2018
m
no edit summary
This page is under heavy development, for the time being, please refer to the proposal in rich-formatting [https://docs.google.com/document/d/1mPd_SeUqeJF_yKWVEDFuzU7LWsnUFSbLdQQ44HvsYyA/edit?usp=sharing here]
[[File:Logo wikiport.png|frameless|center|WikiPort]]
== About You ==
Technologies and Skills Used
This list is just a small glimpse of technologies that I am thinking to use for this project. I am proficient in each of them, through my past projects. (Refer)
'''Programming Language''': Python 3.6 using libraries such as requests, LXML, Scrapy, Beautifulsoup etc. Python will be used widely in this project. '''Markup Languages ''' - Markdown, MediaWiki, reStructuredText'''For Automation ''' - Ansible or Bash (To automate each step of the migration process and installation of the tool.)'''Tools ''' - git, shell, MediaWiki API - Pywikibot,GitHub API (Experimental) '''Others ''' - Yaml (If Ansible is used)  
An Overview of the Migration Process
[[File:S.U.G.A.R.png|thumb|center]]
Some documentation of activities are stored in help-activity. Hence to prevent duplication of content between these two sources (Wiki and help-activity), my checklist already contains a step to either manually check the content difference between them or use a script or program to find and settle differences between them. Thus ensuring end-to-end migration of the wiki-pages and avoiding more maintenance.
Week Number [#]
Task
                 {| class="wikitable"|-! Week 1 Number [#] !! Tasks|-| [#1] April 23 - April 30 || Week 1 [#1]
Community Bonding Period
Community Bonding, if possible keen on having a meeting with the Activity and wiki team. Discussion of ideas that I have.
Wikitext
Exploring the problem case defined earlier.
|-| [#2] April 1 - May 7 || Start documentation and blog post, about Sugar Labs on my blog.
Setup: development environment.
Continue with Research Part 2
Discuss results with mentor, shortlist methods that have the highest success rate.
Pushing to Github; fixing organization problems
|-| [#3] May 7 - May 14 || Finalized migration process, start coding.
Spider ready to scrape activities for their GitHub repo.
Report on activities missing GitHub repo. links
Blog post on Community Bonding @ Sugar Labs
|-| [#4] May 15 - May 22 || Official Coding period starts
Start work on migration script.
Test migration script on 10 activities (aim - 60% migration of content from wiki to GitHub readme of the activity)
Gets reviewed by mentor; implement suggestions
 |-| [#5] May 23 - May 30 || Work on script continues; Tweaking; suggestions implemented by the community
Testing extensively; and commenting
Documentation for script
Write a quality checklist for pages converted to determine bugs, thorough checking of every page converted, every step of the way.
|-| [#6] June 1 - June 7 || Work on Other Deliverables
Script improved; Commenting; Logging implemented;
Quality Checks implemented on sourced markdown files
100 pages completed (minor improvements)
|-| [#7] June 8 - June 15 
First Code Evaluations
   || Implement suggestions from evaluations.
Start work towards automation of scripts wherever possible (Aim - Least user input)
Start work on making WikiPort available to all as a simple tool.
Get a review of pages migrated, from the community.
|-| [#8] June 16 - June 23 || Documentation alpha release; Repository made;
Start work: Report of Activities#Sugar_Activities
200 pages migrated.
Random quality checks; manual fixes wherever required.
|-| [#9] June 24 - July 1 || 250 pages migrated, checked.
Get a review of the pages migrated from the community and mentor(s)
Implement and discuss changes.
Finish automation task.
|-| [#10] July 2 - July 10 || Second Code Evaluations
300 pages migrated. Completed end-to-end.
Blog post about GSoC: 10 weeks later.
|-| [#11] July 11 - July 18
Soft Deadline - All 345 web pages migrated completing the primary objective.
|| 345 pages migrated.
Documentation completed.
Tool Ready with automated tasks and checks wherever they could be implemented hosted on GitHub for everyone to use under Sugar Labs
Start work on wiki report (Aim - To propose a better format for clear, uniform documentation)
|-| [#12] July 19 - July 26
Hard Deadline
|| Time allocated to fix errors and do any due/extra/unknown work.
Submit Wiki Report; Get feedback from the community
WikiPort reviewed from the community
|-| [#13] July 27 - August 05 || Time allocated to fix errors and do any due/extra/unknown work.
WikiPort reviewed from the community
Implement further suggestion if possible.
|-| [#14] August 6 - August 13 || Final Code Evaluations
Various blog posts about the entire experience, GSoC 2018 and Sugar Community.
Finish making the activity (tentative)
|}  '''Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. ''' <br />* I love writing and reading code. I learned almost everything by reading the docs. I, later on, started writing documentation and code for others too. Helping me always know exactly where I can find the information I am looking for and how to improve on it, how necessary it is. * All my past projects, showcase a strong dedication to the deadline and the determination to get work done. WikiPort will be no different. * As for my skills, <br />- Articles written, published using Pelican, Wordpress (Markdown).<br />- I use git in all project that I start. Document and collaborate on GitHub. <br />- Comfortable with both Linux and Windows OS, (preferring Linux all the way) <br />- There is no better to prove that I can accomplish and execute my vision for WikiPort by actually showing that work has been done. (here) <br />- There are many points to keep in mind while migrating is taking place, hence for a '''more methodical ''' approach a [https://etherpad.net/p/Sugar_Migration_Checklist checklist ] has been implemented by me which has a summary of all the - steps. (Both manual/automated) <br />
You and the community
People would contribute more to bug fixing, indirectly helping the Sugar Labs community to grow and expand more. Helping students, developers, activity maintainers, members of the community.
Produce a new tool by the community, for the community and with the community’s help for everyone to benefit from.
 '''Answer 2: ''' Walter Bender - walter.bender@gmail.com <br />
This project has solid potential to address several pressing issues for the community:
(1) bifurcation -- we are spread across too many platforms which is both a maintenance issue and also an issue for our users and potential developers, who struggle to find the documentation for the Sugar Activities;
(2) redundancy -- we are spread too thin to maintain multiple, redundant instances of documentation. Migrating everything to a uniform platform where is it directly tied to the source would impact both of these issues.
'''Answer 3: ''' James Cameron - quozl@laptop.org <br />
(His assessment of project impact from both Github and Email )
* "Migration is needed because Wiki is not being used now that GitHub is being used. Maintaining the Wiki in addition to GitHub is not sustainable. So we want documentation to move from Wiki to GitHub. So that when an activity is updated in GitHub, the documentation can be updated in the same place at the same time."* “Originally documentation was separate because we had non-codingdevelopers and tool chains that varied by type of developer. Now weuse GitHub the tool chains are combined. With the project as described, documentation will be concentrated in the source code repository for an activity, reducing ongoing maintenance.We have less active Wiki contributors than we ever did, and in the current threat environment a Wiki requires significant monitoring and administration; we recently lost some system administrators and gained new ones; using GitHub allows us to outsource system administration.”
'''Answer 4: ''' Tony Anderson - quozl@laptop.org <br />
(His comments clarifying the need of WikiPort and the problems it solves)
As always, the question is the impact on our users. The traditional source of information for users is [1] and [2] and, especially the wiki pages. So far the effect of gitHub has been to reduce the value of these two sources. In many cases the activities on ASLO have been superseded by ones on gitHub or other git repository but are not available to our users. The documentation of activities on ASLO has never been adequate but now no effort will be made to improve it. This continues the trend toward Sugar being a playground for the technical elite. Complete conversation available here.
[1] http://www.sugarlabs.org [2] http://www.laptop.org
'''What will you do if you get stuck on your project and your mentor isn't around?'''<br />
I strive to solve a problem using my own skill base by searching about the problem case and working it out into smaller bits.
#sugar and #sugar-devel channels on IRC, the mailing lists where other community members discuss issues. I am familiar with mailing list etiquettes for open source communities and learn fairly fast.
'''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?''' <br />
I would get regular, constructive feedback on the code I will write and the work I would do for the community by posting work samples from Github, on the mailing list and on IRC. [Check Timeline for the same]
Post constant updates on my blog and maintain an update tracker for each week on a public notepad (Etherpad, etc.)
== Miscellaneous=='''Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.''' <br />I needed to test my WikiPort beta script that I had created, hence took made some extra effort efforts and migrated these four wiki pages listed below. [https://github.com/sugarlabs/lettermatch/pull/3 lettermatch/pull/3] [https://github.com/sugarlabs/AEIOU/pull/9 sugarlabs/AEIOU/pull/9] [https://github.com/sugarlabs/iknowmyabcs/pull/7 iknowmyabcs/pull/7 ] [https://github.com/sugarlabs/AEIOUi-can-read-activity/pull/9 6 /i-can-read-activity/pull/46]
So what happened one day, I walked to one of the seniors and asked him a question if I remember right about how he would determine which browser is better for a particular segment of code I wrote. He took me to the lab and told me to open a link similar like to this http://bfy.tw/HFBs This will have the solution surely to all my problems.
What happened next? I was embarrassed and couldn’t see straight but he was not judgemental and was very humble (A trait everyone of should have towards beginners, I feel like.) and from that day forward. The only place I actually learned something was the internet.
That day I actually learned how to Google by letting someone google that for me. Teaching by the application at its best. I look back to this incident and still smile. I share this experience of mine whenever I have a chance to interact with my juniors that serves as motivation boost and compels them to think that nothing is impossible, and everybody makes mistakes once in a while. This lead to me creating hundreds of links more from this website.  '''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?'''<br />
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?* I think I am well satisfied with the proposal that I have made for WikiPort, the project for Sugar Labs. The template given by Sugar Labs really covers all the corners of my project, and actually helped me think more constructively about the project and the fine aspects of it. * I learned a lot through these few weeks, working on the proposal. MediaWIki API and new skills, contributing to an open-source organisation of this stature, how to interact with people. This has been a memorable experience. I am in awe, I really am.* All open-source communities may not be same, but are run on the same principle that I also try to follow in life. Be humble, and helpful to everybody. The ‘ahaa-moment’ of a beginner is what I live for, when he truly get the point that I am trying to make.* Some Credits - Learned to not contest for issues, but focus on better PR’s, and many new things from James Cameron (@Quozl)’s blog. Jasikrat too for helping people on IRC and all mentors who review our proposal and go through all our mails. Thank you all for the opportunities and the help provided to me and my fellow contributors. I hope down the line, I could follow in your footsteps too.

Navigation menu