Page 1 of 1

KolibriOS Summer of Code 2013 student applications

Posted: Tue Jun 04, 2013 9:37 pm
by yogev_ezra
Dear prospective KolibriOS Summer of Code 2013 students! Please post your student applications in this thread.
Make sure you read the rules before posting! Deadline for application submission is Thursday, June 13th, 24:00 UTC.

*** If you have questions, please ask them in our chat - there is always someone there to help! ***

After the deadline, our team members (together with people who pledged £100 or more to our Kickstarter campaign) will review all applications and select 2 (two) students from those who applied. Each of two selected students will receive a stipend of $2,250USD, paid in 3 monthly installments of $750USD.

1. Full Name (First + Last Name).
2. Age.
3. Country + city of residence.
4. Human languages you speak (write all languages and knowledge level - basic/intermediate/expert/mother tongue).
5. Name of college or university you are accepted into or enrolled in + link to their website.
6. Name of program (or faculty, or department) in that college/university you are accepted into or enrolled in.
7. Your current timezone in UTC/GMT terms (for example, Paris is UTC/GMT +2 hours right now).
8. Have you been involved with any open-source project in the past? If yes, which one, and what have you done for that project?
9. Code samples - please provide links to code that you have written (or attach to your application in the forum). It can be your high school project, contribution to open-source organization, your college/university task or anything like that.
10. The task you are willing to work on from our list of Summer of Code 2013 ideas (or suggest your own idea, if you don't like any of the proposed ideas).
11. Suggest or make a slight improvement to KolibriOS. You need to be specific, although it can be anything you want, for example:
a) You have found a bug in our kernel or in one of our drivers or applications - point us to this bug.
b) You have found a mistake on our website or in our Wiki - tell us how to correct it.
c) Improve one of our existing applications or write a new one.
To clarify, you don't have to do a+b+c, just one of them (your choice). Doing all 3 is a bonus :-)
============================================================

Rules for the application:
1. Applications must be posted in English language only.
2. Only one post per student. If you want to change your post, then click Edit button and edit the existing post. You can do this as many times as you want before Thursday, June 13th, 24:00 UTC.
3. The Summer of Code is a full (day)time job. This means we expect roughly 40 hours per week on your project, during the three months of coding. Obviously we have flexibility, but if your schedule (exams, courses) does not give you this amount of spare time, then maybe you should not apply.
4. If you are not 18 years of age or older on or before June 14, 2013, then you will have to provide written and signed parents consent to work on our Summer of Code. Without that letter, we won't be able to accept you.
5. Residents and/or nationals of Iran, Syria, Cuba, Sudan, Côte d'Ivoire, Somalia, Congo (both), North Korea and Myanmar (Burma) are ineligible to participate. We are terribly sorry, but we cannot work with countries on which USA has imposed an embargo.
6. If you are selected, you will be also required to provide a valid e-mail address, phone number and one IM (instant messenger) handle (Skype, Gtalk/Jabber or similar). Make sure you have those available (do NOT post them now so that spambots don't catch them).
7. If you are selected, you will be also required to provide a scan of your passport and university/college enrollment or acceptance papers.
8. If you are selected, you will be required to work with our forums and our SVN server. Please make sure you are familiar with SVN use, and have possibility to access our SVN from your computer: svn://kolibrios.org
9. Selection process might require conducting an online interview via IM or our forum chat, at our discretion. Make sure you are proficient enough to answer our questions via IM/chat in real time.
10. Stipend will only be paid after a mentor has reviewed the student's progress for the previous month, and awarded a "pass" grade. Students that received "fail" would be required to either correct their code based on mentor's remarks prior to being paid, or face removal from the program without any stipend.
11. All code written by the student as part of KolibriOS Summer of Code, should be released under GPLv2+ or the new BSD license.
Applications violating any of the above rules will not be considered.
============================================================

Program timeline:
June 4th: Student application period opens.
June 13th (24:00 UTC): Student application deadline.
June 14th-16th: Our team members, together with people who pledged £100 or more to our Kickstarter campaign, review and evaluate the submitted student applications.
June 17th (9:00 UTC): Two (2) accepted student proposals announced on our forum and Kickstarter project page. Students can begin coding immediately after this announcement.
July 17th: Mentors provide student evaluations for the 1st coding month. Students that get "pass" grade, are paid $750USD stipend. Students that get "fail", would be required to either correct their code based on mentor's remarks prior to being paid, or face removal from the program without any stipend.
August 17th: Mentors provide student evaluations for the 2nd coding month. Students that get "pass" grade, are paid $750USD stipend. Students that get "fail", would be required to either correct their code based on mentor's remarks prior to being paid, or face removal from the program without any stipend.
September 17th: Mentors provide student evaluations for the 3rd and final coding month. Students that get "pass" grade, are paid $750USD stipend. Students that get "fail", would be required to either correct their code based on mentor's remarks prior to being paid, or face removal from the program without any stipend. Coding period ends.

Re: KolibriOS Summer of Code 2013 student applications

Posted: Wed Jun 05, 2013 7:16 pm
by Shikhin
Dear sir,

The following post lists my application:
  1. Full name: Shikhin Sethi.
  2. Age: 15; date-of-birth for additional reference: 18th March, 1998.
  3. Location: New Delhi (city), Delhi (state), India (country).
  4. Human languages I speak: English (I'd say expert level) and Hindi (again, expert level). While Hindi is my mother-tongue, I learnt English prior to learning Hindi, and it can thus qualify as my first language.
  5. Springdales School, Pusa Road, New Delhi.
  6. Program under school: It's a school, so I'm not too sure what I write in the program. I've all science subjects coupled with Computer Science and English. I'm in the eleventh grade.
  7. UTC +5:30, India (Kolkata).
    • For open source projects, I've meddled with Sortix and its ext2 support, though I haven't pushed anything upstream. I haven't really messed with any other large-scale open source project, which is why I decided on applying for KolibriOS' SoC.
    • As for my own projects, I've got a primary hobby OS project, called Draumr. Draumr, a microkernel, has been designed to take care in mind NUMA, and SMP, since retro-fitting either is tough. It does not use many external resources (it has its own bootloader, not GRUB), and supports both legacy crud (serial ports, machines without CPUID, for example) and new stuff (NUMA, UEFI). It's in the refactoring stage right now (thus, upstream git won't build), and not much work is "viewable" if you run Draumr in an emulator, since most of it happens behind the scenes. Note that Draumr is the third rewrite attempting to be the perfect OS, which is why it's a bit of slow work with loads of design backhand. In prior versions of Draumr, which have since then been lost, I've dealt with FAT12,16,32 (which is relevant to the task I've chosen).
    • My other project is Tart which is a newly initiated Unix-clone for the Raspberry Pi. It's supposed to be a traditional monolithic kernel, and somewhat POSIX compliant to help me gain more experience with POSIX.
    • My third open-source project is a bootloader, destined to replace the monopoly that GRUB has. Its supposed to support all forms of booting, that is floppy, ISOs, hard-disks, PXE, both via legacy BIOS and UEFI. Furthermore, its supposed to be highly configurable to allow the booting kernel to even pick what video modes with what aspect ratio should be picked. Though it's not progressed much due to commitments of all the involved members, much of its design is final.
    • It's noticeable that my GitHub profile hasn't been very active in the past few months, due to school commitments. However, these are the summer vacations, which means that I'll be getting enough time to work on the task I choose for KolibriOS, if I get selected.
    • Draumr (hobby OS);
    • Tart (hobby OS);
    • Selfer. Selfer, which I haven't mentioned before, is supposed to be a fun bootsector project, as to test what all I can do in 512 bytes. You can assemble it with NASM and dd it onto a floppy, and boot it to have fun. It demonstrates my skills with assembly, and the corresponding OSdev.org thread with usage-instructions can be found here.
    • Since assembly experience should be a plus point, I'd like to point out that I rewrote the article on Entering Long Mode Directly, along with properly-commented assembly code for beginners, at the OSdev.org wiki.
  8. I'm willing to improve filesystem support in KolibriOS, by adding ext* write support, and further ironing of bugs in ext* read support. I'll also look at working on the caching layer, depending on the availability of time. I've had prior experience with filesystems, and I'm proficient at low-level programming. The task's idea is integral to a full featured OS, as well as the fact that it is a reasonable task which can be expected to be fulfilled under the given time frame.
    1. Fix. Authored a fix for sys_msg_board (fn 63) to not rely on cross_order and take arguments in original order.
    2. Potential bug. In boot_fat12.asm, line 47, you use lodsb, which depending on the state of DF either increases or decrements SI. It looks like you depend on it incrementing SI, which requires the direction flag to be clear. However, you don't clear the direction flag yourself, and its state is thus what the BIOS left it in. It is totally incorrect to assume the BIOS cleared the DF, and I've seen machines where it does not.
    3. Potential bug. In boot_fat12.asm, line 227, you attempt to read sectors from the disk. In several places in the same file, you try to read more than 1 sector at a time. First of all, the safest bet while reading from floppies using the BIOS is that only the sectors in the same track are tried to be read per call. A way to implement the floppy read code is to have a minimum threshold, and if the call to read multiple sectors fails that many times, after that, only single sector reads should be requested from the disk. Furthermore, between retries, it is helpful to reset the floppy using AH=00, int 0x13.
    4. Suggestion. In boot_fat12.asm, line 121, you do jmp $. That's a busy loop, which leads to the processor continuously doing... nothing. It's better to use the hlt instruction, which makes the processor execute no further instruction until an interrupt occurs, and thus saves power. The right sequence would then be: freeze_pc: hlt; jmp freeze_pc;.
    5. Potential bug. In kernel.asm, line 183, you enable the A20 using the keyboard controller. No checks follow to see whether the A20 gate actually got enabled, and I've seen machines where it would thus potentially fail. Moreover, the correct sequence to try and enable the A20 gate should be somewhat:
      • Try using the BIOS (int 0x15; ax=0x2401). The BIOS should be considered the most reliable, since it'd most probably use the method that should work for the particular machine. Check if A20 gate got enabled, and if successful, continue.
      • Try using the keyboard controller. Check if A20 gate got enabled, and if successful, continue.
      • Try using fast A20 (unless the fast A20 bit is already set). Fast A20 should be considered the least reliable. Check if A20 gate got enabled, and if successful, continue.
      It's not expensive to check if the A20 gate got enabled, and example code from Draumr can be found here.
    6. Wiki improvement. I pointed out the fact that the Style page on the wiki was inconsistent with the actual code and the forums. Hidnplayr beat me to fixing it, but the fix was based on my suggestion.
I've mailed a consent letter from my parents, considering the fact that I'm under 18, to yogev_ezra. My school also reopens sometime in July (the date isn't confirmed), so I would have to go to school. Of course, I'll still be able to clock in 40 programmer-hours a week, and, hopefully, and usually, more.

I think I'm a suitable candidate as I've experience with low-level programming, and my task matches the domain I've been working in over the past few years. I'm willing to work consistently over the given period, and won't do sloppy work at all (I love writing readable code as much as I love writing code). If any thing in my application is lacking, I'd be willing to provide that.

Regards,
Shikhin

Re: KolibriOS Summer of Code 2013 student applications

Posted: Thu Jun 06, 2013 9:58 pm
by latentprion
Yo~~

Application closed until further communication with the core team :)

--Have a productive day,
latentprion

Re: KolibriOS Summer of Code 2013 student applications

Posted: Sun Jun 09, 2013 1:36 pm
by dunkaist
Hello!

Here is my application. I keep it short but I hope you will like it.
  1. Full Name: Ivan Baravy
  2. Age: 22
  3. Location: St.Petersburg, Russia
  4. Languages: Russian (mother tongue), English (intermediate)
  5. University: SPbU
  6. Department: AM&CP
  7. Timezone: UTC+04:00
  8. FOSS Involvement: KolibriOS. I mostly work with raster images: decoding, encoding, transforms. But I also wrote 'crashtest' program (libcrash programming example) that computes different hashes of itself, including sha3 (keccak). This means I am experienced in parsing complex data structures and familiar with related algorithms.
  9. Code samples: libcrash, some parts of libimg, ASCIIVju (not really since I only disassembled it).
  10. Proposed task: I'd like to provide stable xfs read support and advance write support as much as I can. This became especially important for me with availability of AHCI driver, since I have xfs on almost all hdd partitions. And so the only reason I can't access my hard drive from KolibriOS is lack of xfs support.
  11. a + b + c
Those bugXX files are kolibri executables that illustrate bugs in sysfuncXX. You should fix their signatures to run.
Locker.asm is the source of locker binary. You may want to correct locker signature, run it and enjoy. However you are discouraged to do it!

I would like to note once again that I have xfs on most of my hdd partitions and therefore I am interested not only in getting the money (which is obvious) but also in mantaining corresponding code after the KSoK.

kind regards,
dunkaist

Re: KolibriOS Summer of Code 2013 student applications

Posted: Mon Jun 10, 2013 11:03 am
by haseeb
Hi,

1. Full Name: Abdul Rauf

2. Age: 22

3. Country + city of residence: India Gulbarga(Karnataka state)

4. Human languages i speak: I am Fluent in English, Hindi, Urdu and have somewhere between basic and intermediate in Kannada and Arabic(i can read ).

5. Name of college : Khaja Banda Nawaz College of Engineering. http://www.kbnce.org/

6. Name of program: Electronics and Communication Engineering.

7. Time Zone: UTC/GMT +5:30

8. Past Involment with Open source projects
I have recently started with SMC open source project and i am working on Urdu Transliteration ( https://github.com/haseebgit/Transliteration ), earlier i was fixing bugs/suggesting features to couple of Open source projects like Getting things gnome, Hasgeek's open source project etc

I am active member of opensource community in my College and City. I have been taking part in many opensource meetups and events(mostly in Bangalore). I have also volunteered with many events like Hasgeek's events( http://hasgeek.com/ ),PyCon India etc.This time i am handling PyCon India's Registration and also did it in past. I am also the founder of my Local Linux User group in my town (ilug-gulbarga).

In my free time i do translations to couple of open source project.


Github : https://github.com/haseebgit
Bitbucket: https://bitbucket.org/haseebbit
Launchpad: https://launchpad.net/~haseeb
Mozilla: http://mozilla.locamotion.org/accounts/haseeb/

9. Code sample:
https://bitbucket.org/haseebbit/another ... ?at=master

10. Proposed task
Improve Ethernet support
The project aims at extending KolibriOS functionality by adding Ethernet drivers for popular network cards such Broadcom(bcm57xx), Atheros and Marvell Yukon network cards during this summer.

My development process will follow the standard KolibriOS development process, under the guidance of my mentor. When the code is finished, they will go through code review by mentor to ensure it follows the coding standard, is sufficiently tested etc

Small,frequent feedback via code review will ensure I am learning and improving throughout the summer,

11. Suggest or make a slight improvement to KolibriOS:
Wiki Improvement: I would like to add minimum hardware requirements in FAQ( http://wiki.kolibrios.org/wiki/FAQ )
8MB RAM and few megabyte disk space.

P.S : I need Network cards for my proposed task.
Also i need a one week break from 4th july for my exam.

Thanks,
Abdul Rauf(haseeb)

Re: KolibriOS Summer of Code 2013 student applications

Posted: Fri Jun 14, 2013 8:14 am
by yogev_ezra
Applications are now closed - thanks to everyone who applied. Our team will review the applications and notify of the results on Monday, June 17th, at 9:00 UTC.

Re: KolibriOS Summer of Code 2013 student applications

Posted: Mon Jun 17, 2013 12:02 pm
by yogev_ezra
*** Student application results announced! ***

Many thanks to all 4 students that have applied this time, and we are very sorry that one of the students had withdrawn his application before the deadline (the application seemed a good quality, even though the proposed work did not fit our project).

After carefully considering the remaining 3 applications, our team decided to select Shikhin and dunkaist as our students for KolibriOS Summer of Code 2013. Congratulation on being selected - you may start working on your projects right now. I need your photos for a Kickstarter update - please send me your photos in private message.

haseeb - we wish you best of luck, and you are of course welcome to apply to us next year, if we run a similar Summer of Code (independently or via Google). You are also welcome to stay with the project if you like it, and contribute in your spare time.

Re: KolibriOS Summer of Code 2013 student applications

Posted: Wed Jul 17, 2013 1:49 pm
by yogev_ezra
Time for 1st month evaluations!
Students - please create new threads in our forum in this category: viewforum.php?f=31
Attach your source code (or link to your source code on the FTP) and describe what has been done by you in the 1st month.
Our developers will evaluate your code, and provide feedback where appropritate (comment or suggest corrections).