# User:Jiabao wu/GSoC 2013 Project Work

## VisualEditor Mathematical Equations PluginEdit

- Mentors: Peter Krautzberger (MathJax) and Roan Kattouw
- GSoC Project Proposal
- Gerrit Code Review

## Working with MentorsEdit

*based on the suggestion emails from mentors*

**Code**: submit code directly to the VisualEditor project in Gerrit

**Bugs**: leave comments on the project bug report

**Updates**: progress report every 1-2 weeks, depending on how much work have to write about.

**Regular communications**: IRC, Email, Google Hangout. More information has been discussed in the email.

## Monthly ReportsEdit

### JuneEdit

- Finished the Community Bonding Period Checklist
- Had the first meeting with VisualEditor team and joined their IRC channel
- Read through the code examples and documentation introduced on the meeting
- Started coding! xD
- Got a lot of help and constant code reviews from Roan
- Sought for help on the VisualEditor IRC channel

- Worked on Math node handler, and a basic version of it is about ready to merge
- Exploring and made a hack version of Math Node UI, which is going to be fixed to normal version soon

### JulyEdit

- Math node handler merged
- Math Node UI worked and merged
- Tested and found some bugs in Math Node UI (recorded on project Bug Tracking page)
- Math Node UI (Bug Fix) worked and merged
- Proposal Step 1 Completed =D
- Figured out how MathJax can work for VisualEditor
- By discussion with mentors (mostly with Peter) and community
- By reading the documentation

- Enabled MathJax in Math Node and allowed MathJax Live Preview
- Identified some bugs in MathJax Live Preview and recorded on project Bug Tracking page
- Reviewed and learned about patch Math Clean-up (by Esanders)

### AugustEdit

- Math extension got a lot of community attentions. I read through the emails, chat flows, etc. to learn how people think about it.
- Discussion about Math for VE on my user talk. (with Spectral sequence and Salix alba)
- Create Math Node UI page and get further feedbacks from the discussion page.
- Further research on how MathJax can work with the GenerateContentNode.
- Discussions with mentors and communities.
- Worked on MathJax Live Preview II which about to support MathJax Live Preview totally.

### SeptemberEdit

- Got MathJax Live Preview II supported MathJax Live Preview.
- Fixed MathJax Live Preview II rebase problems.
- Created a new patch Implement live preview in MWMathInspector (original called MathJax Live Preview III) which solved the master conflicts. It also includes:

- 250ms after the user stops typing, rerender the node with what they've typed so far.
- Update ve.ce.MWMathNode to no longer emit 'rerender' when <img>s load (handled in the parent class now)
- When using MathJax, tell it which node to rerender
- Allows users to add LaTeX node

## Progress ReportsEdit

### 1 July - 7 JulyEdit

- Updated the code according to several code reviews
- Studied about DOM and Ajax online
- Got the Math Node UI to work properly

- Code has been merged (by Mentor Roan) xD
- Planned for next week:
- Fix the bugs just found from testing
- Start discussion and work for Math UI and rendering

### 8 July - 14 JulyEdit

- Created a page for discussion about Math Node User Interface
- Created a page for Bug Tracking
- Found three bugs from testing and fixed two of them
- Read documents about MathJax
- Investigated problems with using MathJax
- Enabled MathJax in the Math Node

### 15 July - 21 JulyEdit

- More dicussion about MathJax implementation (with Mentor Peter)
- Updated code of the bug fixing according to the code review

### 22 July - 31 JulyEdit

- Reviewed and learned about patch Math Clean-up
- Further investigated and discussed about MathJax live rendering
- Working on patch MathJax Live Preview
- Identified the bugs encounted