User:AMR KELEG

From Octave
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

A: An introduction


  • My name is Amr Mohamed, a student from Egypt. I am a self motivated person who enjoys his work and I am a fourth year undergraduate student at faculty of engineering - Ain Shams University in computer and systems engineering.
  • I speak arabic as a mother tongue and have good command of english.
  • I have a background in Mathematics , Electronics and Computer Science. I have done courses on Linear Algebra, Numerical Analysis, ODEs, and Complex analysis.
  • I am interested in coding, and i find the GSoC an amazing opportunity to learn how to interface to other developers in a fruitful fashion.
  • I'm mainly interested in studying algorithms , signal processing and competitive programming which highly relies on C++.
  • I think contributing to a well-established organisation like Octave is a great experience that one will never forget. I hope that i can do my best to collaborate with the developers/maintainers of Octave in order to contribute to this great organisation.

I have been using Octave for nearly two years and was always impressed by having an open-source alternative to Matlab.I used many packages of the Octave Forge such as : Control - Serial - Signals and others.


C: Contact


  • My Nickname on the IRC, wiki is AMR_KELEG and amr_keleg on the Savannah bug tracker.
  • I live in Cairo,Egypt and my time zone is UTC+2:00.
  • I usually code from 18.00 to 23.00 and during the vacation i could also work from 11.00 to 15.30


E: Coding experience


  • I am programming using C++ as a main language.
  • I have been using MATLAB/Octave for more than two years now.I wrote m-scripts / GUI apps and Simulink programs.
  • I am currently implementing a college project using Qt.
  • I worked on a signal processing project during the last summer to detect the hand movement using EMG (Electromyography) and Octave was the project's main processing unit.Its main purpose was to detect hand gestures.
  • I have average knowledge of python, Ruby , Rails , Java , Android and Game development.


F: Feeling fine


  • General Experience with the required Octave tools:
    • I am comfortable with using the IRC and the Mailing list.
    • I am generally using Git but working with Mercurial isn't a big deal.
    • I had built the stable branch and used the gdb on Octave smoothly.
  • I am trying to fix the double-single computations bug [1] and hope i can contribute in solving the problem.I have submitted a patch but it requires some refinements.
  • Applying mathematical knowledge through programming was always my dream. I think contributing to Octave fulfills my passion.


O: Only out of interest


  • I have heard about Octave from my colleague three years ago. I loved the idea of having an Open Source application that can replace Matlab.
  • I still don't get the idea of adding packages to Octave Forge instead of adding them to the main Octave program.

P: Prerequisites

  • I am mainly using Ubuntu 14.04 for development and surfing the internet.
  • I use Windows 8.1 on my desktop computer for programs such as : Matlab -Proteus etc.
  • I have complete (sudo) access to the computer running Ubuntu 14.04 24-7.Installing new software does


S: Self-assessment

  • I am a self motivated person who tries to help people by sharing my experience with them. I always discuss my programs with my colleagues in order to share our knowledge. I am currently interested in Competitive Programming where continuous discussion among the team members is a must.
  • I prefer to have a clear plan before starting to implement the required algorithm / script rather than have unclear requirements and doing work that doesn't fit these requirements.
  • I might require frequent reviewing and feedback from my mentor to make sure that i am on the right track and improve the quality of the implemented functions.

Y: Your task


  • I am interested in working on the "Implement boolean operations on polygons" project.
  • The goal is to implement a Matlab-compatible set of boolean operations and supporting function for acting on polygons. These include the standard set of potential operations such as union/OR, intersection/AND, difference/subtraction, and exclusive or/XOR.
  • Milestones
    • 10-6 : polysplit - polyjoin
    • 8-7 : ispolycw - poly2cw - poly2ccw
    • 22-7 : polybool
    • 29-7 : poly2fv
  • My proposal can be found here :

https://docs.google.com/document/d/1XnsTC51vRFOoKON7lJDh-0cuF9w50vkTUcSQNZPWaI8/edit?usp=sharing