# First Year CSE, questions about Linux/Unix and Old pc



## ACidBaseD (Oct 24, 2013)

>I am very interested in self learning everything I can about computers. [I already learnt basics of C++ and have ordered Head First Java ] 
>I came across this site: What every computer science major should know
and decided to follow it beginning by learning C along with UNIX/LinuX for which i am thinking of ordering the following books:
-The C Programming Language : Ansi C 
-The UNIX Programming Environment 1 Edition

>Where do i get a free Unix OS? Will i be able to follow that book on any Linux Distro [Looking to use Ubuntu]? Command Shell of Unix/Linux is the same or is it different?

*I have an old pc lying around with the following specs:
AMD Athlon 64 X2
Asus M2A-VM
2gb DDR2 Ram
160gb HDD [formatted]*
---------------------------
Can i use this PC to learn UNIX/Linux? or should i just dual boot with that extra hdd in my current pc [i5 4570]?
[I have two monitors so it isn't a problem]
Also how will Unix/Linux help me in knowing more about computers/programming?


----------



## icebags (Oct 24, 2013)

install virtualbox on ur main pc for instant access of linux.


----------



## krishnandu.sarkar (Oct 24, 2013)

ACidBaseD said:


> >I am very interested in self learning everything I can about computers. [I already learnt basics of C++ and have ordered Head First Java ]
> >I came across this site: What every computer science major should know
> and decided to follow it beginning by learning C along with UNIX/LinuX for which i am thinking of ordering the following books:
> -The C Programming Language : Ansi C
> -The UNIX Programming Environment 1 Edition



Great decision 



> >Where do i get a free Unix OS? Will i be able to follow that book on any Linux Distro [Looking to use Ubuntu]? Command Shell of Unix/Linux is the same or is it different?



Keep your eye on DistroWatch.com: Put the fun back into computing. Use Linux, BSD.

Most popular distros are...
1. Ubuntu
2. Linux Mint
3. Fedora
4. OpenSUSE
5. Mandriva
6. Arch Linux

It's just a small list, there are many popular distributions, but peoples generally tend to use one of them.

Whatever linux you use generally the things will be same across all the distros. You may notice a little bit of changes on some things, but the concept and working procedure is same. As the kernel they use is same. 



> *I have an old pc lying around with the following specs:
> AMD Athlon 64 X2
> Asus M2A-VM
> 2gb DDR2 Ram
> ...



Use whatever you want to use, even the old system will be breeze with Unix, so you can understand what's going to happen on the new system 

Linux isn't resource hogger like Windows. There are even Light version of Linux which will run on 256MB RAM smoothly 

So it depends on features you install and etc.




> Also how will Unix/Linux help me in knowing more about computers/programming?



Linux programming is much more of kinda actual / real programming compared to Windows, specially in case of C, C++.

Linux helps you to learn how OS Works. With Linux programming you can learn how to interact with OS, how to System Calls, how things goes on.

Linux itself is build using C, so actual C is this what's getting used in Linux not that Windows Turbo C crap. It was just a port to windows to make things work.

Also, while interacting with linux you will learn commands, which will help you analyze many things slowly


----------



## ACidBaseD (Oct 24, 2013)

krishnandu.sarkar said:


> Linux programming is much more of kinda actual / real programming compared to Windows, specially in case of C, C++.
> 
> Linux helps you to learn how OS Works. With Linux programming you can learn how to interact with OS, how to System Calls, how things goes on.
> 
> ...



Thanks for the help  But i had a few more doubts:

 Do you think Mumbai University colleges will teach me a lot of computer based stuff? [I read courses of US Under-grad universities and now i'm jealous that they get such epic education :'( , one of them mentioned they teach concepts of parallelism to utilise more cores and threads of a processor at under-grad level. ] 
Because if i'm not going to be taught all that by them , i want to self study and was thinking of starting with MIT Open course ware videos ? [OR should i just wait till 2nd year for my college to teach me basics and then i explore upon those stuff? and enjoy with games now?]


----------



## krishnandu.sarkar (Oct 24, 2013)

ACidBaseD said:


> Thanks for the help  But i had a few more doubts:
> 
> Do you think Mumbai University colleges will teach me a lot of computer based stuff? [I read courses of US Under-grad universities and now i'm jealous that they get such epic education :'( , one of them mentioned they teach concepts of parallelism to utilise more cores and threads of a processor at under-grad level. ]
> Because if i'm not going to be taught all that by them , i want to self study and was thinking of starting with MIT Open course ware videos ? [OR should i just wait till 2nd year for my college to teach me basics and then i explore upon those stuff? and enjoy with games now?]



If you want go ahed with the coursewares. You are not going to get that type of education in Indian institutes and parallelism in UG Course is a distant dream. Better learn it yourself.


----------



## avinandan012 (Oct 24, 2013)

programming requirements

60% algorithmic skill + 30% language skills + 5% Hardware Consideration(this can cause which algo you use) + 5% exposure to standard problem solving tried & tested methods

Last one is a tough thing to get cause you will need to be in touch of a good professor who works with Industry or an veteran programmar as mentor.

And don't forget everything comes under MATHEMATICS. You should be proficient in linear algebra,probability & statistics and analysis.


----------



## sling-shot (Oct 24, 2013)

OpenSolaris - I think that is Unix. Not 100% sure. No idea of how well maintained etc.


----------



## avinandan012 (Oct 24, 2013)

another thing if you want to be fluent in UNIX then install only the command line version of the Linux you choose, no GUI.

after your grasp on C try to implement a file system with basic functions(google).


----------

