A: An introduction
- Please describe yourself in three sentences, one of them regarding your current studies.
I am Asma Afzal, currently a first year PhD student (Electrical Engineering) at the University of Leeds,UK.
- Which languages do you speak?
I can fluently communicate in English.
- What's your overall background?
Bachelors and MS Electrical Engineering from NUST, Pakistan. My research is based on stochastic modeling of wireless networks, which requires a deep understanding of mathematics. I have been using Matlab to implement the developed models.
- Why do you want to participate in the Google Summer of Code? What do you hope to gain by doing so?
I would like to join the open source community and GSoC provides the ideal platform to kick start my journey. This will be my very first formal exposure to the open source world. I'll soak in as much knowledge as I can from my mentor. And I'd love to contribute code in existing projects that anyone anywhere can benefit from.
- Why are you choosing Octave?
I enjoy coding in MATLAB and I have been using it extensively since quite some time now. Octave is the open source alternative to MATLAB and it is possible to contribute to it.
- Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to Octave.
- Which time zone do you live in? Will that change over GSoC duration?
- Please state the timeframe (in UTC+0) when you feel most comfortable working during GSoC. Where are your time buffers?
I usually code 11:00 onwards
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 have extensively used MATLAB during my research. My research requires extensive matrix manipulations and the usage of several toolboxes including: signal processing, communications, statistics, numerical analysis and symbolic math
I have quite a bit of experience in C.
- Please describe your experience with other programming languages.
Verilog, microcontroller C.
- Please describe your experience with being in a development team.
I have been involved in collaboration for research work. e.g. development and verification of mathematical models.
- Do you have experience working with open source or free projects?
- 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.
The AES-128 implementation on the Programmable System on Chip (PSoC) by Cypress Semiconductor. AES had not been implemented on this particular hardware platform and I was tasked with implementing it. The article (link above) gives a more detailed overview. My role in the project was relevant to the development and testing of the encryption module.
- Please state the commits and patches you already contributed 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'll won't necessarily need them while working with us.
- IRC and mailing lists. Normal usage
- Mercurial or other source code management systems. Heard about them
- Mediawiki or other wiki software. Normal editing this wiki etc.
- make, gcc, gdb or other development tools. Heard about them.
Note: My husband is actively involved in the Embedded Linux community and has been part of GSoC before. I don't need guidance from mentors for these.
- What will make you actively stay in our community after this GSoC is over?
I'd like to contribute in toolboxes relevant to my research.
O: Only out of interest
- Did you ever hear about Octave before?
- If so, when and where? How far have you been involved already?
Heard about it regarding an open source MATLAB alternative.
- 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?
Confusion between posting on which forum vs wiki application template vs google melange project proposal
- Please state the operating system you work with.
- If you have access to more than one, please state them and the conditions under which you are granted this access.
Windows, Ubuntu. Admin rights.
- Please estimate an average time per day you will be able to (if separated) access
- an internet connection
- a computer
- a computer with your progressing work on
Full access to internet on my laptop 24/7.
- Please describe the degree up to which you can install new software on computers you have access to.
I have admin rights
- Please describe how useful criticism looks from your point of view as committing student.
Very useful. Criticism is necessary for growth.
- How autonomous are you when developing?
Once a specific goal has been defined, I can work on it autonomously
- Do you like to discuss changes intensively and not start coding until you know what you want to do?
At least to the point of end-product. The functions inputs and outputs have to be defined before starting any code.
- 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?
Sometimes. Depending on tasks.
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.
Improving logm, sqrtm and funm functions
Link to wiki page for project details is below GSoC 2014 Improving logm, sqrtm and funm functions
- Please provide a rough estimated timeline for your work on the task.
The task naturally divides itself into three blocks.
Before mid-term evaluation
After mid-term evaluation
The implementation for funm requires much more rigorous testing and is trickier to implement. Hence it has been given more time.