Work environnement has been properly setup. I will be using Mediawiki-Vagrant throughout the summer.
Research on both the MediaWiki and VisualEditor environment has been done. I've learned about the basics such as ResourceLoader, Extensions, DataModel vs ContentEditable, Hooks, etc etc.
I've familiarized myself with the Gerrit code review environment via my microtask.
I've explored Phabricator's apps such as Conpherence, Pholio and Maniphest.
Code style is very rigorous and important. I'll have to make a habit of using Grunt in order to adhere to the styleguide
Patience and rigor is key to success here. Tutorials and proper documentation will not always be available, and I'll have to not be afraid to ask help or studying other people's code.
Communication is key. So far a lot of help has been given to me by my mentors and other contributors, so most of the time I'll progress faster if I seek help at speedbumps.
git-review was a pain to setup at first. After much fiddling around I've managed to make it work, but since then I've formatted my work machine and the second setup was a breeze. So, kind of a fluke there.
DM vs CE, and in general VisualEditor's architecture. It still is kind of a blur, but I've really only started to shed some light on it after starting to code instead of looking at documentation. Learning by example really is a powerful tool.
Vega's syntax. This is still a main hurdle, since I will have to deconstruct Vega specifications in order for the UI to work. I've looked at the official documentation, as well as prior GUI tools powered by Vega.
Communication with the mentors has been steady and great so far. Weekly meetings will be held on Google Hangouts every Monday morning for the summer, where we will discuss progress on the project, main problems and solutions, in standard Scrum fashion.
For transparency, Maniphest will become my main tracking tool for this project. As such, every major task will be documented here, in order for all contributors to easily follow and comment on my work. I will also be available on freenode IRC as ferdbold during my working hours.
Vega graphs are now rendered by VisualEditor as a MWGraphNode
On click, the user can invoke a dialog displaying the graph's raw JSON specification
The user can edit the JSON and once applied, the changes are reflected in the graph
A basic JSON validation is made to see if the spec given by the user is valid JSON. The dialog doesn't check (yet?) if the string given is a valid Vega specification string.