Mentoring for Google Code-in – WikiToLearn

Google Code-in

Google Code-in has just begun. I’ll be mentoring this time. 🙂

If you know any pre-university students who are interested in computers or open source please do inform them about this. Task varies from coding, documentation, training, outreach, research, quality assurance and user interface. Also, students earn prizes for their successful completion of tasks.

What is Google Code-in ?

Google Code-in is a contest by Google to introduce pre-university students (ages 13-17) to open source software development. Since 2010, over 3200 students from 99 countries have completed work in the contest.

What I’ll be doing ?

I’ll be mentoring for tasks under WikiToLearn, KDE organization.
I have published a task related to WikiToLearn community : What can I do for WikiToLearn

I’ll be helping students with code and design for this task.

I have few other tasks in my mind. I may publish them as we move on (based on our progress).

Why I’m doing this ?

Well, I just love open source and like helping others to get into FOSS. And WikiToLearn, KDE is a great community to work with.
I strongly believe in it’s philosophy – “Knowledge only grows if shared”. It feels good to help the younger generation to get into community so that our community grows big.

Join WikiToLearn now and contribute however you can. 🙂

One last step for completion of Google Summer of Code – KDE – WikiToLearn

One last step for completion of Google Summer of Code – KDE – WikiToLearn

Collaborative Editor Extension for MediaWiki
The Google Summer of Code 2016 is coming to an end, just couple of days left.

The good thing is that I’m also almost done with my project and enjoying my free time. 🙂

I have published the screencast of how my project (Collaborative editor extension) works on my laptop.

YouTube :

I had built the extension on normal MediaWiki.
I tested it on my local instance of WikiToLearn i.e (URL is accessible only if you are running its local instance)
It works good and as smooth as it was on MediaWiki.

The things I’ve planned to work on these final days are :

* Write good documentation. Since my project was bit complicated, I do feel it requires a good documentation on how does it work, how to use it and configuring it.

* It may need some tweaking on UI so as to match with the current skin of WikiToLearn. It would be easy, we can do it anytime but my focus is on get the collaborative editing work good.

* I’m curious to know how it would perform when we deploy it on staging or production server. I know WikiToLearn will be used by the huge number of people every day and hence it will have high traffic.

I’m also looking for any good tool to write my documentation. Maybe GitHub wiki, ReadTheDocs or a blog post would be fine I think.

Hope all these goes well. 🙂


Testing Rich Elements.

YouTube :

Collaborative Wiki Editor – WikiToLearn

Collaborative Wiki Editor – WikiToLearn

It’s been more than a month I’m playing with MediaWiki. I have learned a lot of things.
In my last blog post, I had mentioned about running the MediaWiki instance locally. After spending some time I was able to configure Parsoid server successfully. The issue was MediaWiki parsoid developer setup configuration page had a different format of URI.

The good part is I have done all works which were there in my TODO list of last blog post. In fact, I have done more than that.

Now, I have good knowledge on how to setup MediaWiki locally and run VE (also configured with parsoid server). I can also help other if they face any issues.

VisualEditor talks with Parsoid server to save the wiki page

I discussed with James Forrester regarding our extension and took some feedback from him. He pointed me to some of the hurdles which I would face while building Collaborative Editor extension.

The workflow of my extension is also done. Cristian helped me in designing the workflow of extension.


Workflow of extension

* I tried out different VE extensions just to get used to how extensions are build.
* VisualEditor provides a powerful API through which we can build our extensions on top of it.
* I tried out OO.ui to add an icon within VE so that user can enable collaboration by clicking on it.
* Now, I’m working on APIs listen to behavior of cursor inside the VE, so that all the changes made will be seen by others in real time.