# I need a MENTOR



## Cipher (Apr 9, 2005)

I am an engineering student of final year computer science and engineering.... i m developing a download manager for Linux environment.... and i need  mentor ... the UI will be designed using qt and i plan to code the back end in C++ .... if someone can metor me for the project i would be obliged .... would be beneficial for me if my mentor is from india and not abroad so that i can contact him over the phone if needed .... the project will inclucde some serious socket API and a threaded module too... HELP ME PLEASE


----------



## gxsaurav (Apr 9, 2005)

Well,a download manager for Linux is a good startas it is really required for linux, as still nothing close to DAP 7.4 in UI & ease of use

I m no coder, but if U want help I can make the UI icons etc


----------



## khin007 (Apr 9, 2005)

nice work man.. keep it up


----------



## Cipher (Apr 9, 2005)

Thanks for your responses gxsaurav and khin007 ... but we desperately need a mentor ... please someone help us we are fighting a deadline which is approaching soon


----------



## demoninside (Apr 10, 2005)

Ok so want to do it in C++,
dude i m not much in to C or in C++,
but i guess if u want help about java then u r more then welcome,
can help u in C++ too but not sure about hw much,
any way i'll be helping u out coz one my teacher is vary good in C++ so i'll ask him to help u out.....


----------



## Cipher (Apr 10, 2005)

Thanks demoninside for showing interest and backing me up.... any help will do ... can you help me with control flow and data flow.. any one who can help me is welcome


----------



## demoninside (Apr 10, 2005)

Ok i can help,
first tell me r u doing it in C or in C++,
wht about network programming stuff,
and yes wht u want to know in control flow(coz there is not much of control flow aspact but yes dataflow is very critical,

and yes give me some details wht u hv done till yet....

nd be perticular what u want to know..


----------



## ujjwal (Apr 10, 2005)

HI,

Once again I cannot help you on the mentor part, as I lack any knowledge of development.

However, maybe it would help if you looked at the source code of some existing download managers for linux, and tried to get some ideas.

Two good download managers are

Aria
Downloader For X


----------



## Cipher (Apr 11, 2005)

Thanks Demoninside and Ujjwal .... well i am clear at logic and working of the program ... the coding will be done its not a problem ..... ill be using socket library for network programming ... the interface will be designed in gtk ... i am not at all able to understand from where to start it ... help me with the design of the software .... i want to use threading for simultaneous connections ... for any more details mail me at anubhav.atrish@gmail.com ... thanks for yor suipport and motivation


----------



## GNUrag (Apr 11, 2005)

you are clear at logic and working of the program, then you should just start building your interface. Its already April and most universities have their acedmic year closing.. When are you going to start coding? You seem to be in thinking stage still.

I know UI building with PyGTK and Swing only. but the design of your program remains essentially same. What are the ideas you've got right now?

One could just get away by making a PyGTK UI and giving a * shell * call to * wget -b*.


----------



## demoninside (Apr 11, 2005)

For starting this, try this logic,

1- start with single thread simulating connection for data,
can use n/w headers, can check before simulating connection,
2- try next thred for chacing data in your system,
3- try next thread simulate transfer action & read & write option,
4- Try next thread go for second connection from the same system,,,,

so let's start work now,
i guess front end & connection wouldn't be a trouble,

any way if u need help in coding too then reply here we'll work it out....


----------



## demoninside (Apr 11, 2005)

and one more thing which i forgetten is,

be very serious about it coz if u haven't done ur designing then u r in deep trouble,

any way i'll make a primary model for u & mail u ASAP..


----------



## Cipher (Apr 11, 2005)

Thanks guys .... i ve tried copying a file on the locl machine using two threads at a time ... what i did was i opened (or created) a file of the desired size and then i copied the source file in it using two threads ... the first thread copied first half and the second thread copied the second half ... this was the logic i want to implement ... the ideas youve given are great ... ill try implementing them ... actually i m fairly good with the coding part but dont have any prctical knowledge of managing project ..also the size is very big in this case (as i ve seen source code of some download managers) ...thats the main problem i am not able to start the whole thing ... i am unable to decide from where to start ....anyways thanx again for support and motivation


----------



## GNUrag (Apr 11, 2005)

Using a local CVS repository can make life easy for you... You project wont grow big, dont worry.

Please let us know what you've done till now. Most of the people take quite some time perfecting the user interface. And the project examiners also get impressed with good UIs. The download manager part is not quite tough.


----------



## Cipher (Apr 12, 2005)

REALLY !!! see man i am really worried about it ... see i have designed UI on the paper .. you can say it is inspired by RegetDx .. the work on the UI has been started .. we are workin as tem of two ppl ... other one is my roomie... you tell me what to do and we will follow your instructions .. i am really worried about cookie management (Will there be cookie management ? as i m not sure about it).. i have not started the back end... you guide me and ill be walking the path shown by you ... i dont need a coding guru as my mentor rather i need a person who can help me with logic and design ... after all there is difference in knowing the path and walkin a path


----------



## Cipher (Apr 12, 2005)

One more thing ... how to request a certain portion of the file from the server ?? does the range field in HTTP header has to do something with this ... if yes tell me where to get reference of it ... if you have any documents please send me in pdf format at
anubhav(dot)atrish(at)gmail(dot)com

i need a book too HTTP The Definitive Guide on O'Reilly publication is someone has a PDF please send me at address above


----------



## demoninside (Apr 12, 2005)

The portion you are looking for is to be done by HTTP req compare,
for cookies portion the answer is YES, think about it why i said YES,
any wat u want to do is to be done by,
say u r saving into your system as a temporal file(cache) for the actual file, now you start comparing the data portion and left the part saved in the cache(skiping it), then start reciving the file after that option,.........


----------



## Cipher (Apr 12, 2005)

do i need to maintain cookies for the authentication with the server ?? .... i also thought what you suggested demon but i am simply unaware of the logic behind the comparing it with the actual file ... i am not getting any proper feference to the HTTP .. i thought the book i mentioned would be helping me but its not available ... can anyone search it on any peer to peer network please ... and then mail me ... i work bhind a proxy and the firewall dont allow me to use p2p


----------



## demoninside (Apr 15, 2005)

k' i`ll do that,
actully didn't checked for a wile,
but yes u need cookies for keeping track of session,
as using FTP d/l u'll need it most,

nd yes the porting i hv said was for resume dessions, not for multiple likes to the server,

for this i`ll tell u tomarrow, nd yes will send u the book ASAP,

sorry for being late dude, but nowdays i m busy like hell,
coz stuck in two projects nd deadline is 24th apr,
so u can understand.....
but will help u for sure,


any way if any one know any C soure code site(better if they provide some info about code too) then pls tell me.


----------



## pallavnawani (Apr 16, 2005)

Cipher,

How much programming knowledge do you have, and how much design you have done already? If you don't have much time left, I suggest you scale down your plans for the download manager, and make something simple, like gwget.  Gwget is a front end for wget.

Important point is that you must be able to finish the project in time. Just GUI programming with GTK will take you a lot of time. You should use Glade to make your GUI, but then you will need to handle automake/autoconf stuff correctly. If you haven't already programmed in GTK, you will need some time to understand how it works.

Don't try multithreading unless you have prior experience in it. Multithreaded programming is very hard and can have all sort of weird and difficult to find bugs. Instead, for each download, start a seperate process using fork() and execv() and outsource the job to wget, and forget about it. If you want to be fancy you can open a pipe to wget's stdout and parse the wget output and show a progress bar in your gui. Again, this takes more work.

So my thinking is that you are undertaking a project you may not be able to finish in time. So instead, scale it down, simplify the GUI, keep only the essential functions and code that instead. Maybe you can ditch the GUI idea completely and code a single threaded command line utility, or maybe you can ditch coding the downloader yourself and outsource the job to wget. You will need to make some compromises to be able to finish this thing in time.

Hope that helps.
Pallav


----------



## demoninside (Apr 16, 2005)

@pallavnawani,

i whould hv to say this is a good planning to make it just in time,but chiper it all depends on ur programming exp......


----------



## Cipher (Apr 18, 2005)

Thanks Pallav ... your suggestion were great ...actually i am not doing this project alone but we are a team of three members ... so the workforce is enough i guess and i have say complete one month after my exams to submit the project ...will this time be enough ?? 

The coding portion... we are quite confident about it...actually our project guide is also a genius person but ... we are having some problem regarding the design as i said earlier...

the problem areas are maily the design which is solved upto a great extent by support of ruchir i must say (Thanks ruchir)  the another area of problem is HTTP reference ... i need that book badly guys please search and send that to me ....

ill have a talk with my teammates and guides regarding your suggestion pallav

Thanks again .... keep writing in


----------



## demoninside (Apr 18, 2005)

Hey cipher,
hw come u know my name(*Ruchir),

any way means u hv time, nd u`ll be doing it after ur exams,

then guys let me hv some time coz i need to summit my two projects before 25th,
so after that we`ll check out ur project..........

nd yes i`ll mail u that book but u hv to wait till 25th pls..


----------



## pallavnawani (Apr 18, 2005)

Cipher said:
			
		

> Thanks Pallav ... your suggestion were great ...actually i am not doing this project alone but we are a team of three members ... so the workforce is enough i guess and i have say complete one month after my exams to submit the project ...will this time be enough ??
> Thanks again .... keep writing in



Just one month?  
No,  this is not enough. You certainly need to scale down your project, and you will need some drastic cuts. Since you are 3 people, you will also need to coordinate between yourselves. You will need to decide who does what, and later, you have to collect the pieces of code written by you in a full program. So that requires some time.

The basic data structures of the program will have to be written by one person. During that time, others will not be able to do anything since their code will also use the basic structures. They will just sit around waiting for that to be done.
The time you have is very, very short.

@demoninside:
Look at your signature and see how he knows your name. Btw, I am also from Dehradun.

Pallav


----------



## demoninside (Apr 19, 2005)

OOP`s i never noticed that i m having my name on signature(* hell i hate this habit of writing my name every where *"ok one fun fact----I was writing my friends love letter *u can call it first love letter or purposal letter* nd i write it the best way i could nd in last i write down my name rather then his & even he didn`t checked it & send it,,,,, her reply was in Yes nd my friend was way too happy,,,, then he went to her & asked for date  ?she said no ?? then he asked that if she hv accepted his purposal then why not,, nd th reply was 
 fool when u hv purposed me & when i hv accepted, my friend was in deep trouble, he simpaly asked that he sended one letter nd she said that she didn't recived any letter from him, but yes she hv recipt one letter from *ruchir* nd that was it, he came back to me nd started fighting with me
said hey man if u liked her why didn`t u told me this & that--- at last i said hey i wrote a letter for u & done all the things for u then ever u r fighting, he told me the things happend there then i thought about it,

nd went stright to her & asked when hv i sended u letter, she give me the letter, I said it's my friends letter, then she showed me my name on it & said she said yes due to me----  man i was FU*Ked,
but then any hw i told her that it wasn`t me it was my friend but still the answer is no to him & yes to me*


any way pallav i guess u haven`t noticed that these guys r room mates..,
& 3 persons if working then it is very great coz i m also in group but nobuddy working other then me

so it`s like i m working for 8 people..,
but if they plan it good i guess one month is far more then good for student level project.


----------



## Cipher (Apr 21, 2005)

That was really cool ruchir.. it happens sometimes.

@pallav
i saw your profile ... seems quite interesting .. seems youve got a good programming experience...can you help me by sending me a detailed design ( i mean the data flow of the project) ... i know that the size is too big but i believe we can meet the deadline .... i was creating GUI in glade and didnt find it difficult...why you were saying its time consuming...we have X windows programming in our labs this semester but we are using Xlib and motif ... i find glade is easier to use and create front ends ...what u think...thanks for your support ..

by the way are you CEO if this ironcode ? just asking


----------



## pallavnawani (Apr 25, 2005)

Cipher said:
			
		

> That was really cool ruchir.. it happens sometimes.
> 
> @pallav
> i saw your profile ... seems quite interesting .. seems youve got a good programming experience...can you help me by sending me a detailed design ( i mean the data flow of the project) ... i know that the size is too big but i believe we can meet the deadline .... i was creating GUI in glade and didnt find it difficult...why you were saying its time consuming...we have X windows programming in our labs this semester but we are using Xlib and motif ... i find glade is easier to use and create front ends ...what u think...thanks for your support ..
> ...



Its your project, so doing it yourself would be a good learning experience. In any case, you have a Guide, so use his help instead. I can give you advice, but I am not doing your work for you!

Creating the GUI in glade is not time consuming of course. That's why I recommended it in the first place. The time consuming part comes later, when you have to hook up callbacks to GUI events. It is not hard, just long and tedious. And I personally find it very boring  

Of course, using Gtk and Glade is *much much * easier as compared to straight away using Xlib.

Yes, I am CEO of IronCode, but when you run a two man company, you can pick up any title you like  

Pallav


----------



## demoninside (May 5, 2005)

Hey Chiper couldn`t be online due this (DataOne)

any way where r u now as I m done with my project ,
so can help u know so just tell me where to start..........


----------



## Cipher (May 9, 2005)

Hey guys..i am royally screwed....all of a sudden the management and the administration has decided that we will not be given the full one month for the submission of the project...and ill have to submit that on 10 june...my exams will be over bt 2 june and pracs will be over by 7 june...i have to give a presentation also on 9 june....
i m screwed badly man...
what project you were workin on man ??
mail me the details
i saw a software similar to my project in the PCQlinux 2005... i guess the name was webdownloadmanager
why dont u mail me ruchir..i guess we need to talk
only you can help me out..
i guess ill have to back off with the initial plan
don kow what to do
HELP!!!!


----------



## pallavnawani (May 10, 2005)

Cipher said:
			
		

> Hey guys..i am royally screwed....all of a sudden the management and the administration has decided that we will not be given the full one month for the submission of the project...and ill have to submit that on 10 june...my exams will be over bt 2 june and pracs will be over by 7 june...i have to give a presentation also on 9 june....
> don kow what to do
> HELP!!!!




It is still May 10 today. Suggest you make a frontend to wget (And if you are not sure how to do that, just take gwget source code and look there). School management dosen't seem to care about your projects anyway...
What about your project printouts? You will have to do a writeup on your project as well, right?

Pallav


----------



## Cipher (May 10, 2005)

pallav have you seen a downloadmanager GUI based included in the PCQLinux 2005 distro ??..that was having all features we needed...can you gimme the link so that i can download the source and have a look on that...
just asking

will that help ?


----------



## pallavnawani (May 11, 2005)

This is what was in pcquest CD:
*www.krasu.ru/soft/chuchelo/index.php3

This is what I was talking about (Gwget):
*gwget.sourceforge.net/

I just found a free open source download managet for windows:
*francis.dupont.free.fr/truedownloader/

Http fetcher is a library that can be used in your program:
*http-fetcher.sourceforge.net/

Pallav


----------

