Page MenuHomePhabricator

Develop a JavaScript-centric approach to onboarding new developers
Open, LowPublic

Tokens
"Like" token, awarded by Jan_Dittrich."Like" token, awarded by bearND."Orange Medal" token, awarded by Krinkle."Mountain of Wealth" token, awarded by Jdlrobson."Like" token, awarded by Bawolff."Like" token, awarded by Racso.
Assigned To
None
Authored By
Sophivorus, Oct 23 2016

Description

Type of activity: Pre-scheduled session
Main topic: How to grow our technical community

The problem

JavaScript is one of the most popular programming languages of today, yet its role on Wikimedia projects is small, underestimated, neglected and highly disorganized. How can we gather, coordinate and grow a community that can unleash all the potential of this web technology?

Expected outcome

  • Better documentation on the best current practices to develop JavaScript code for the Wikimedia projects
  • A roadmap of what needs to be done to make JavaScript development as pleasant and efficient as possible
    • Improve the JavaScript API

Links

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 23 2016, 3:56 AM
Sophivorus updated the task description. (Show Details)Oct 23 2016, 4:33 AM
Sophivorus updated the task description. (Show Details)
cscott added a subscriber: cscott.EditedNov 4 2016, 8:51 PM

I've worked on Scribunto/JS as well, which would let you use JavaScript to write templates on Mediawiki. Same general aim: take advantage of the large and active JavaScript community.

See also https://github.com/cscott/node-mediawiki-express, which embeds all of mediawiki inside a node.js runtime. An approach like T114457: [RFC] Use `npm install mediawiki-express` as basis for all-in-one install of MediaWiki+services would let you mix JavaScript and PHP more liberally inside mediawiki, eroding some of the barrier between "server side", "client side" and "gadget" code.

At the editing offsite we also discussed (in general) ways to lower the barrier between "community developed code" and "production quality code". Having community members develop features as gadgets using client-side javascript currently means they typically have to be rewritten from scratch as an extension in server-side PHP before they can be hosted in production. It would be desirable to converge these different programming models somehow.

Krenair added a subscriber: Krenair.Nov 4 2016, 9:27 PM
Sophivorus updated the task description. (Show Details)Nov 7 2016, 2:09 PM
Siznax added a subscriber: Siznax.Nov 15 2016, 7:53 PM
Gilles added a subscriber: Gilles.Nov 17 2016, 10:48 AM
Racso awarded a token.Nov 18 2016, 3:13 AM
Qgil added a subscriber: Qgil.Nov 18 2016, 10:30 AM

@Sophivorus this proposal is gaining popularity but, as far as I am aware, you are not able to participate at the Summit. What should we do?

Sophivorus added a comment.EditedNov 18 2016, 1:16 PM

@Qgil I think you should re-consider my scholarship request! Short of that, if the topic is so popular, someone may volunteer to do the pre-scheduled session instead of me, and I can participate remotely.

Sophivorus updated the task description. (Show Details)Nov 18 2016, 1:32 PM
Qgil removed Sophivorus as the assignee of this task.Nov 18 2016, 2:23 PM

@Qgil I think you should re-consider my scholarship request!

That process is now closed, and I would not count on that.

Short of that, if the topic is so popular, someone may volunteer to do the pre-scheduled session instead of me, and I can participate remotely.

Yes, that make sense. Summit pre-scheduled sessions are supposed to have prior ongoing discussions. If this discussion is happening in the next days, then it should not be difficult to find a facilitator.

Meanwhile, I think having the proposal unassigning will help encouraging someone to step in (as proposals without anyone assigned will not be pre-scheduled). Maybe one day we will have sessions lead by someone remotely, but I don't think we are ready for that yet.

Zack added a subscriber: Zack.Nov 18 2016, 10:15 PM
Krinkle added a subscriber: Krinkle.
Sophivorus updated the task description. (Show Details)Nov 20 2016, 7:44 PM
Qgil added a comment.Nov 23 2016, 5:47 PM

Any volunteers willing to take the role of session facilitator?

Sophivorus updated the task description. (Show Details)Nov 23 2016, 6:45 PM
Sophivorus updated the task description. (Show Details)

Today is the deadline Summit proposals aiming to be pre-scheduled to proof active interest. This proposal hasn't got any ongoing discussion. It still might be a good candidate for an Unconference session.

bearND awarded a token.Dec 1 2016, 7:55 PM
Jan_Dittrich added a subscriber: Jan_Dittrich.

I considered gathering some people to talk about possible improvements of the gadget creation and maintenance. (This was triggered by some of my recent research on workflows on Commons – seemingly a huge part of the work is done only via gadgets). Am I right assuming that this session is rather similar in its aims?

Aside of Javascript itself I was thinking about stable APIs, stable and defined places in the UI to add custom GUI and documentation.

@Sophivorus Hey! As developer summit is less than four weeks from now, we are working on a plan to incorporate the ‘unconference sessions’ that have been proposed so far and would be generated on the spot. Thus, could you confirm if you plan to facilitate this session at the summit? Also, if your answer is 'YES,' I would like to encourage you to update/ arrange the task description fields to appear in the following format:

Session title
Main topic
Type of activity
Description Move ‘The Problem,' ‘Expected Outcome,' ‘Current status of the discussion’ and ‘Links’ to this section
Proposed by Your name linked to your MediaWiki URL, or profile elsewhere on the internet
Preferred group size
Any supplies that you would need to run the session e.g. post-its
Interested attendees (sign up below)

  1. Add your name here

We will be reaching out to the summit participants next week asking them to express their interest in unconference sessions by signing up.

To maintain the consistency, please consider referring to the template of the following task description: https://phabricator.wikimedia.org/T149564.

@srishakatux Hi, thanks but even though I'd love to, I won't be able to
attend the Summit (read comments above). Some weeks ago I unassigned myself
from this task and we're waiting for someone else to take over it.
I will try to participate remotely though, but I will be cycling through
Patagonia around those dates, so no promises.
Kind regards,

@Sophivorus okay! no worries :) I missed the comments above.

Qgil triaged this task as Low priority.Dec 20 2016, 7:01 AM

I think this topic is very relevant to our work even if the upcoming Summit doesn't seem to be the right time and place. I am moving this task to the Developer-Advocacy backlog for now. We can discuss how to move forward. Maybe an online meeting around February, or purely online discussion? The goal is to connect better JavaScript developers with our projects.

I think this topic is very relevant to our work even if the upcoming Summit doesn't seem to be the right time and place. We can discuss how to move forward. Maybe an online meeting around February, or purely online discussion? The goal is to connect better JavaScript developers with our projects.

Would anyone be willing and have the time to lead such an effort?
( https://www.mediawiki.org/wiki/Good_meetings and https://www.mediawiki.org/wiki/Meeting_best_practices_(including_remote_staff) might come handy. )

Qgil added a comment.Sep 12 2017, 9:08 AM

A JavaScript-centric approach to onboarding new developers is still needed... I wonder how @Sophivorus or anyone else interested could contribute to this goal without us Developer-Advocacy being a bottleneck (or actually being supportive, of course).

Aklapper renamed this task from How to unleash the power of JavaScript to Develop a JavaScript-centric approach to onboarding new developers.Oct 7 2017, 6:32 PM
Quiddity updated the task description. (Show Details)Oct 13 2018, 5:38 AM
Quiddity added a subscriber: Quiddity.

Note to myself: Was wondering about potential places / communication channels here; Quiddity pointed out #wikimedia-cssjs on Freenode IRC.

Restricted Application added a subscriber: alanajjar. · View Herald TranscriptAug 22 2019, 9:45 AM