**THIS IS STILL A DRAFT!**
**Name:** Frédéric Bolduc
**IRC or IM networks/handle(s):** ferdbold on freenode
**Web Page / Blog / Microblog / Portfolio:** Personal portfolio being developed, you can look at some of my work in the meantime on https://linkedin.com/in/bolducfrederic (French alert!) and https://www.github.com/ferdbold
**Resume (optional):** http://bit.ly/1IkmK2K (French right now, English one coming soon™)
**Typical working hours:** 9 to 17, GMT-5
This project aims to develop an extension for VE which will allow useras to edit Vega-ready JSON strings from a tailored UI, without having to open up the page source, thus reducing user-error risk.
Possible mentors: @mooeypoo and @mvolz
Right now, Vega JSON strings are considered by VE as a alien extension. Therefore, and are not rendered at all in the editor. thisMy project will beposition is to divided in 3e this project into 5 core steps, which will need to be completed sequentially, but are all viable on their own (so the project could be shipped as-is at the end of any step):
1. Design and implement GraphData's UI for graph data editingEnable Vega support into VE
2. Design and conceive GraphData's UI and architecture
3. Develop a Vega JSON parser allowing GraphData to read and edit bar chart JSON data
4. Implement read and edit support in GraphData's UI for bar charts
25. Develop a Vega JSON parser to allow GraphData to read and edit the page JSONExtend progressively GraphData for multiple chart types (as many as time allows!)
36. *(as a bonus, if time allows)* Enable real-time Vega previews in VE during edit, if time allows)* Enable real-time Vega previews in VE during editfor supported chart types
### Proposed timetable
| **KEY DATE** | **DELIVERABLE****TASK** | Deliverable
| **March 27** | **Application deadline**
| **April 27** | **Student applications approved**
| **Until May 25** | **Community bonding, research on MV extension development, basic prototyping (as much as finals allow!)**
| May 25 - 31 | Design GraphData UI design's UI, define the JSON parser's architecture | Mockup bundle, define JSON parser architectureclass diagrams
| June 1st - 7 | Enable Vega support into VE, Integrate basic UI framework for debug purposes | Static UI instanced on VE
| June 8 - 14 | Implement GraphData's JSON parser reading ability *(bar charts only)* | Simple UI filled with data fetched from JSON
| June 15 - 25 | Implement GraphData's JSON parser editing ability *(bar charts only)* | Simple UI able to save JSON data for a bar chart
| **June 26 - July 3** | **Midterm evaluation**
| July 3 - 9 | Implement GraphData final UI (see below for module list), ability to create graphs | Graph creation process implemented, support for multiple chart types
| July 10 - August 2 | Extend JSON parser functionality to other chart types | Extended UI able to support as many chart types as time allows
| August 3 | Feature freeze
| August 4 - 16 | Bug-fixing, documentation polish
| **August 17** | **Pencils down**
| **August 18 - 22** | **Final evaluations**
I've been actively using Git (and other VCSes) for a few years now, so I've got the basic code review workflow and collaboration aspect pretty well established.
While I'll be working on this project, I'll submit my code for review daily to Gerrit. I like to keep things backed up, and doing this daily ensures that other developers will be able to keep track of my work much better.
Also, these are the additionnal means I plan to use to communicate progress:
- IRC: I'll stay online on **freenode** in #mediawiki-visualeditor as ferdbold during my working hours
- I'll setup up a personal blog on **ferdbold.com**, on which I will post a weekly summary of my work.
## About you
I'm a video game developement second year undergraduateundergrad in my second year at Université du Québec à Chicoutimi.
In 2013, I graduated in Multimedia Integration (which is pretty much fancy-talk for front-end web development) at Cégep de Sainte-Foy.
**How did you hear about Google Summer of Code?**
I actually don't remember how I first heard about Google Summer of Code, I just know it was a while ago when I didn't know how to code and it looked like a great experience. Last year though, I went to a local dev meetup where it was mentioned, but it was already past the student application deadline. So here I am this year ;)
What initially sparked my interest for this particular project was that I've previously developed a node-based graph editor with MooTools and KineticJS on one of my personal WordPress projects**Will you have any other time commitments, such as school work, another job, planned vacation, etc., during the duration of the program?**
I am heavily involved in a personal project of mine named [Terra Arcana](http://www.gnterraarcana.com), a live-action role-playing organization who creates events every summer and supports the local LARP community. This year, our events will be held at the end of May and mid-August, which means I will have to devote some more time to them during these periods. Overall though, this should not hinder significantly the time I intend to devote to GSoC.
(Psst... I actually made that website!)
**We don't just care about your project -- you are a person, and that matters to us! What drives you? What makes you want to make this the most awesomest wiki enhancement ever?**
What initially sparked my interest for this particular project was that I've previously developed a node-based graph editor with MooTools and KineticJS on Terra Arcana's website, fetching . This editor is used as a skill tree that players of a role-playing game can use to customize their characters (inspired by Path of Exile's own web-based [passive skill tree](http://www.pathofexile.com/passive-skill-tree)). I've really enjoyed doing this and working with graphs in general, so this task looked like it'd be right up my sleeve!
(This node-based editor is available at http://www.gnterraarcana.com. Sadly, it's kind of hard to find right now, since you have to actually make an account on the website and then make a new character and access their Skills ("Compétences" in French) page.)
## Past experience
Since my Cégep graduation in 2013, I have been working on web design and development with multiple agencies, as well as by myself.As a video game developer, I've mainly dabbled in WordPressI like to work daily with visual assets and UI is one of the aspects of game development, that I enjoy the most. as well as a lot of responsive web designAs such, as I've often been tasked to take the lead in front-end integration.I really like working with graphs and statistics, While I haven't worked oas well as design any open source projects yet,d deploy UI. I'mI have the confidentce that my prior work experI have the dedication and patience will serve me welle needed to make this extension reliable and fun to use.
I'm also a big fan of game jams.**Past experience**
Since my Cégep graduation in 2013, I have been working on web design and development with multiple agencies, as well as by myself. I've mainly dabbled in WordPress development, I've done almost ten of them nowas well as a lot of responsive web design, including Global Game Jam,as I've often been tasked to take the lead in front-end integration. and always have a blast doing so.While I haven't worked on any open source projects yet, Most of my games' source code are available onI'm confident that my GitHub account (siprior work experience these projects are small,will serve me well. I don't really count them as open source experience)Having already worked as a freelance designer and developer makes me even more confidence that I am able to give it my all during the entire summer.
I'veI'm also participated in various competitions and hackathons,a big fan of game jams. such as Hack QuébecI've done almost ten of them now, Ubisoft's Academia and the CSincluding Global Games. Jam, These kinds of events helped round out my skills,and I'll be adding the Ludum Dare to that list in three weeks. as I've picked up useful knowledge on domains like VCSesI always have a blast doing jams, teamwork (especially with strangers!) and code rigorand most of my games' source code is available on my GitHub account (since these projects are small, I don't really count them as open source experience).
(TODO)I've also participated in various competitions and hackathons, such as Hack Québec, Ubisoft's Academia and the CS Games. These kinds of events helped round out my skills, as I've picked up useful knowledge on domains like VCSes, teamwork (especially with strangers!) and code rigor.
## Grab bag## Other info
As a video game developerI also have a [Bitbucket account](https://bitbucket.org/qonic), I've got a great love for them,though I'm mostly working with Github now so stuff on there tend to be old. and as such am a great believer in gamification. As I design user interfacesFor the curious only ;)
I am not applying for Outreachy Round 10, I try to challenge usual tropes and come up with clever and intuitive ways to convey messages to usersas I'm not eligible.