Student Application Template
Name: Javier E. Fajardo
Contact/Email/IRC nick:
Email: foxtrotzulu94@gmail.com or j_fajard@encs.concordia.ca
- IRC: foxtrotzulu94
Background:
- I'm a 2nd year student of Computer Engineering in Concordia University at Montreal, Canada. My experience with Linux dates back to my middle school and high school when I began using it both as my main Operating System and as a way to diagnose PCs I was working with. In my post-secondary studies, I have concentrated in specializing in Operating Systems and optimization. I have extensive experience with C, C++ and C# (Mono) and have professional experience working in Video Games (Gameplay mechanics and Engine code) One of my most interesting previous projects with Linux included building the Operating System using available online source code. This project required compiling a sanitized x86 Toolchain for cross-compilation and manually verifying the consistency of built binaries using "readelf" to avoid linking issues. Furthermore, current University projects include an extensive study of the MIPS architecture and Instruction Set Architecture.
Project title: Improve one of the Debian MIPS ports (mips, mipsel, mips64el)
Project details: Ports of Debian on mips/mipsel/mips64el has been implemented for some time. However, many of the packages which could previously pass compilation can no longer pass. Also, some of the recently uploaded packages cannot pass compilation either. It has been therefore proposed that abnormal packages be identified, rebuilt and fixed to improve the quality of Debian on these specific architectures.
Synopsis: Project goals are to rebuild and verify packages on the MIPS ports of Debian so that they are on par with other arch ports.
Benefits to Debian:
- Improve quality of existing Debian packages in a specific architecture (MIPS)
- Increase the amount of packages available to said architecture
Deliverables:
- Expetected deliverables from this projects are:
- Thorough documentation listing all packages and their build status
- Patches and changes in build configuration for the target architecture for all packages that fail to compile correctly.
- Working binaries which successfully pass compilation, testing and manual verification.
- Report summarizing all changes, final build status and recommendations for future package building.
- Expetected deliverables from this projects are:
Project schedule:
- The schedule outlined below constitutes a rough approximation of time for the work needed. It describes 16 weeks of work, given the Start and End dates outlined by Google. Nevertheless, Work on the Project can begin as soon as needed.
- Week 1 (April 27): Begin setting up workspace and collecting the list of packages to revise along with their source.
- Week 2, 3: First pass at compilation to identify/document broken packages and prioritize importance
- Week 4 (May 25), 5, 6: Start fixing all higher priority packages that were identified as broken in the previous two weeks
- Week 7 (June 15): Testing and verification of fixed pacakges
- Week 8, 9, 10: Continue fixing high priority packages (if needed). Begin fixing lower priority packages
- Week 11: Testing and verification of all packages. Documentation of current build status to compare to initial.
- Week 12, 13: Iteration of fixing and testing for any remaining broken packages from initial list.
- Week 14: Draft documentation of all work done (Final Report)
Week 15: Testing with new MIPS hardware for developers.
- Week 16: Last changes to packages. Finalizing documentation
- The schedule outlined below constitutes a rough approximation of time for the work needed. It describes 16 weeks of work, given the Start and End dates outlined by Google. Nevertheless, Work on the Project can begin as soon as needed.
Exams and other commitments:
- I have exams during two specific periods in the summer: June 18 to 23 and August 13 to 19. I do not expect, however, that this interfere with my work in the project.
Other summer plans:
- I have no plans to go on vacation nor work elsewhere. My time will be dedicated solely to coding.
Why Debian?:
- I started using Debian-based Ubuntu more than five years ago and was stunned by the stability and reliability of this distribution. Today, I rely on Debian 7 for both my embedded devices and my personal computers. The advance packaging tool ("apt") has been the most straightforward way of installing packages in any distro and, by now, I do not imagine myself using anything else to manage my packages and dependencies. Therefore, I constantly recommend other people switch to try Debian or Ubuntu to find out what they're missing out on.
Are you applying for other projects in SoC? Note that letting us know about this does not impact your chances of acceptance or rejection with us; we ask this because it helps us to resolve deduplications wherein a student is accepted for multiple projects.
- No, this is the only project I will be applying to.
