On Fri, Mar 3, 2017 at 5:30 AM, William Brown firstyear@fedoraproject.org wrote:
Hi,
I'm really excited that you find this project interesting! I'm putting my answers inline, and I hope that this helps you,
On Fri, 2017-03-03 at 02:35 +0530, sane sai charan wrote:
Hi, I am a senior undergraduate student from Indian Institute of Technology-BHU, Varanasi, India. I am a GSoC 2017 aspirant and am interested in developing administrative tools for 389 directory server task. I have a good understanding of Python classes, inheritance, MRO, the working of modules, etc. Though I haven't produced any good quality code, I started this <https://github.com/sacha23/booker noobie script just for fun. I just worked on it for two days as I was busy last semester due to placements.
That's no problem - life and study do take time so I can understand you making this choice.
Thanks for understanding.
As a note, python uses soft tabs, not hard ones, so maybe use 4 spaces not tabs in your python. Most text editors like vim and emacs can be set to do this automatically. More generally, you'll find many projects have a style guide like this that helps you write your code in certain ways. For example, here is ours:
http://www.port389.org/docs/389ds/development/coding-style.html
You'll find that review like this is an important part of work in open source, and I find it really enjoyable - Some of the people in the DS team are truly experts, and their reviews help improve your code.
Excellent. I always look forward to learn new principles and I enjoy that.
I am *interested in this project because* ** *I find this as a *great opportunity to learn *how toproduce high-quality and highly reliable code as William said https://www.youtube.com/watch?v=1mIttrUcS5w&t=28s đ
* ** I *get to know how open source world work*. *** I *want to apply my python knowledge* to some realworld application. I read books on Python (David Beazley's book, Dive
into
Python, etc.) few times but I never used that knowledge to full
potential,
although I code in python usually.
* ** Fedora and Redhat's stickers and T-Shirt's.đ Programming languages: Good - Python, C Intermediate - Bash Noob - C++,perlExcellent: We are really happy you are interested. In this you'll mainly be focused on python only, so don't worry about the C.
Great !!
Although I was selected for GSOC last timefor RTEMS to do "Integrating RTEMS file descriptors with LwIP" task, I withdrew from the program just before Mid-Term evaluation. The reason was. First, It was the first time for me
to
look into the kernel and chasing the function calls and see what is happening and I actually started late in preparing to GSOC. I never
thought
I would apply for GSOC, and it happened suddenly as the qualification
task
was quite easy. There was a lot to know about RTEMS for me. I was frustrated by seeing large pieces of code daily trying to understand how
it
is working. Second reason was my mentor is a very active contributor in many projects and Prof. at Czech Technical University, and he was quite busy and many people in RTEMS community did not have enough experience
with
LwIP. My mentor helped me a lot by answering all silly questions very patiently, but the problem for me was his answers contain dense information. Even after reading his message for 4-5 times I was unclear.
So
I decided to withdraw and learn necessary things before reattempting that task. I contacted my mentor recently about the task, and he said he was busy and may not help me out regularly.
I want to ask you that 1. *How to approach* and where should I startstudying to get enough knowledge?
I think this is a good document to read:
http://www.port389.org/docs/389ds/development.html
As well, for the project itself we don't expect a lot of code, we mainly want you to go through the process of being in the project. My rough timeline and idea of how the project will progress is:
May 4 - May 30: This is your time to setup a DS server, install the lib389 source code, and test it out. Try running dsconf, get it to work. This is your time to ask me about how to make it work (ask as many questions as you like in this time!). In this time we'll cover what module we think you can write, joining you to mailing lists and irc, getting you a fas account, and making sure you have access to pagure (our code and ticket system).
May 30 - June 26: Write first module. This means that you should have code in lib389/plugins.py for enabling/disabling the module, maybe changing some simple settings. There should be tests for this behaviour. You should have the ability to see the plugin in the dsconf tool also and configure it. This too would have tests.
We don't want this to be one "big patch", we would rather you do it in smaller submissions, so we can review and work with you as you go. We'll teach you how to write the patch, how to submit for review, and how to go through the review process with us.
June 26 is the end of "Phase 1" so that's our chance to review and see how we are going, and if we have asked to much.
June 30 - July 28: Start on a second plugin or module. Again, same requirements as the first. Iterative commits, where we can review and work with you through the whole process. During this phase, if you felt comfortable, you could start to look at and review the python work of others in the team to understand their work. Asking questions is a great way to learn.
July 28 - August 29: Google calls this the "submit final work" - But as I've made it clear here, I think we want you to submit "as you go". Perhaps this "final work" is the final addition of the hooks to dsconf so you really can use it, perhaps you can write a report on the experience. This would be the "end of work", so this is a chance for you to hand in anything you haven't finished 100% if you wanted.
These times are taken from:
https://developers.google.com/open-source/gsoc/timeline
2. Any *qualification task*s?None besides what you have listed here.
Great !!
3. Did anyone want to do this task already?There have been a number of other expressions of interest, but applications don't open for a few weeks so the selection hasn't been made yet. I'm also not sure about how many students I can have in the project either, so I need to confirm this with Fedora Project.
Best regards, Sai Charan Sane.
Thanks for your valuable suggestions.
I tried to build 389 DS on kali linux ( Debian ) but had no luck. I got some errors. I looked into configure script with some hope but could not make it out. I am attaching the config.log here. I installed all required libraries ( libdb-dev libkrb5-dev libicu-dev libsnmp-dev libsasl2-2 libsasl2-dev libsasl2-modules-gssapi-mit libpam0g-dev libpcre2-dev libldap-dev libsvrcore-dev libnss3-dev libnspr4-dev autoconf automake libtool ant libapache2-mod-nss libds-admin-serv0 libidm-console-framework-java libjss-java libldap-java libmozilla-ldap-perl libnetaddr-ip-perl libnss3-tools libperl4-corelibs-perl libsocket-getaddrinfo-perl ). Please help me solving these errors. I am now trying to install in fedora. I made draft proposal here https://docs.google.com/document/d/17dDMUoHuoOYuVnTSkVbhgKeIE1Go4s0ZEoov4kibbwA/edit?usp=sharing. Please look into this and don't hesitate to comment on any additions or deletions. I created FAS account with handle sacha23 and yet to get access to create a wiki page.
Best regards, Sai Charan Sane.
389-devel@lists.fedoraproject.org