A: An introduction
- Please describe yourself in three sentences, one of them regarding your current studies.
I am Mengcheng, and you can call me MC. I currently enroll in the Computer Engineering program at the University of Waterloo, Waterloo, ON, Canada.
- Which languages do you speak?
English and Chinese.
- What's your overall background? The general field you work in or are studying, e.g. computer science, physics, artificial intelligence, control theory...
- Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
- Please also describe your previous experience with the GSoC, if any. Includes any community-bonding, mentor experience or application, not necessarily accepted. We use this subquestion to identify which students are unfamiliar with how the program goes, providing further support. It has no negative impact on your rating!
This is my first time to apply and participate in the Google Summer of Code. I am looking forward to participating and accumulating project developing experience.
- Why are you choosing Octave?
I have used Octave when I was in second-year. So I have experience with using Octave and this is the first time to apply contribution to a scientific tools.
- Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave. We really want unique nicks. You might want to bold it.
- Which time zone do you live in? Will that change over GSoC duration? Perhaps DST adjustment or a relocation. Note that both UTC and GMT are not aware of daylight saving time! Please state UTC+x or -x.
- Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
- Example: I usually code around 9.00 to 18.00 and could also try to start earlier (~7.00) for few days ;-)
I usually code around 10:00 to 18:00 and could also try to start earlier.
E: Coding experience
This part is one of the more important ones in your application. You are allowed to be as verbose as you want, as long as you stay on topic ;-)
- Please describe your experience with C++, Octave or Matlab m-scripts, OpenGL and Qt.
I implemented data structure and algorithms by using C++ and finished the numerical method course by Octave and Matlab.
- Please describe your experience with other programming languages.
- Please describe your experience with being in a development team. Do you have experience working with open source or free projects?
Since I had several internship experiences, I accumulated much experience of working in a development team. I get familiar with version control tool, such as Git, Azure DevOps.
- Please describe the biggest project you have written code for and what you learned by doing so. Also, describe your role in that project over time.
One of my internship experience is working in a Canadian mortgage company. Our team was responsible for developing portal websites for the company's client including the lender, investor, broker, and borrower. I was working on new feature development.
- Please state the commits and patches you already contributed to Octave. This question (one of the most important parts by the way) is the only part of your application our wiki admins will edit for you even after the application deadline. Code sometimes speaks louder than many words do.
This is my first time to apply contribution to Octave. I am looking forward to having opportunity to contribute to Octave.
F: Feeling fine
- Please describe (in short) your experience with the following tools: We only use this question to determine where you need guidance, not for rating! We by no means expect you to be familiar with all of these and you won't necessarily need all of them while working with us.
- IRC and mailing lists
No any experience about IRC and Mailing lists
- Mercurial or other source code management systems
I have experience with Git including GitHub and GitLab.
- Mediawiki or other wiki software
No wiki software experience.
- make, gcc, gdb or other development tools
No any make, gcc, gdb development tools. But I have used these tools instead of developing.
- What will make you actively stay in our community after this GSoC is over? You can also tell us after applications close and we'll happily try to fulfill :-)
When I can realize the software is actively updated, it can make me to participate in the Octave community, even after this GSoc is over.
O: Only out of interest
- Did you ever hear about Octave before?
- If so, when and where? How far have you been involved already?
Yes, because I used Octave last year for numerical method course which required to use Octave and Matlab to finish the lab.
- If not, where would you expect or advise us to do advertising?
- What was the first question concerning Octave you could not find an answer to rather quickly? Of course more than one question can be stated. We try to improve based on this each year! Includes learning how to use it, code, website, GSoC application, …
- Please state the operating system you work with.
Windows 10 and Majaro
- Please estimate an average time per day you will be able to access
- an internet connection
- a computer
- a computer with your progressing work on
- Please describe the degree to which you can install new software on computers you have access to.
Free to install
- Please describe how useful criticism looks from your point of view as committing student.
It is valuable and helpful.
- How autonomous are you when developing:
- Do you like to discuss changes intensively and not start coding until you know what you want to do?
Yes, I only start to code once I know it is good enough to implement. Otherwise I keep improving the design.
- Do you like to code a proof of concept to 'see how it turns out', modifying that and taking the risk of having work thrown away if it doesn't match what the project or original proponent had in mind?
Y: Your task
- Did you select a task from our list of proposals and ideas?
- If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information. Please also wiki-link the page for your elaborated proposal here.
Yes. Task: Jupyter Integration. Link: http://wiki.octave.org/Summer_of_Code_Project_Ideas#Jupyter_Integration
- Please provide a rough estimated timeline for your work on the task. This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). If possible, include two or three milestones you expect.
Student Projects Announced: May 6, 2019 Get familiar with project and community: May 7, 2019 ~ May 26, 2019 Coding: May 27, 2019 ~ August 19, 2019