C language [A monster to face] help!!!

crvinay_4u

New Member
Disciple
Apr 29, 2009
334
1
0
26
so guys,i've finished all my entrances.So,i'm free for a while and I decided to take up computer science in my engineering.Most guys I've met advise me to stay away from cse as it requires me to learn "C language". I have a couple of questions here.

1.Is C language that hard?
2.After a bit of googling,i found out that c has a steeper learning curve and the pro's on some of the forums advise people to learn perl or python.
I've decided to learn java first.what do you guys say?:S
3.any good books available for self study?

I have to add that I've got zero knowledge in programming as my school didn't teach anything good except some HTML.
 

Konquerror

Well-Known Member
Adept
Nov 7, 2009
765
87
67
33
Bangalore
pranavprakash.net
C is not hard to learn...C is the basic language you would be using throughout your graduate studies to solve problems (at least we used to)...there are many books available...but for starters I recommend Balagurusamy...I know many people will disagree with me about book I recommended...but trust me...this is best book for starters...
 

blueren

Well-Known Member
Adept
Jun 1, 2009
552
80
66
29
I believe Balagurusamy has only vtu related stuff? Either way, that should do! One tip. If you do take up cs, Don't byheart any programs. Its one of the main reasons of hating the language.
 

agantuk

Well-Known Member
Adept
Aug 1, 2009
2,395
75
88
Balagurusamy for starters? I think there are easier books out there! Not to deny that this is a fantastic book, but I am not sure it really is a beginner's guide.
 

dhruvrock2000

Well-Known Member
ex-Mod
May 4, 2009
1,412
20
52
28
New Delhi
Haha... well i am in 2nd yr of Comp Sc. Engg. now... Most colleges will recommend Balagurusamy. You can also try Let us C by Yashwant Kanetkar. C is fun provided u dont learn the programs but understand the logic. Trust me 90% of the people in your class will be rote learning the programs. Understand the logic and you will end up above all of them.

I tries my hand at Java after my engg. exams and before college started. I was using Schildt - Java, The Complete Reference. Java too is a fun language. I intend to pick up Python this summer vacation.
 

adi_vastava

Code Game Code F**K
Adept
Feb 23, 2010
884
25
42
crvinay_4u said:
Most guys I've met advise me to stay away from cse as it requires me to learn "C language". I have a couple of questions here.
1.Is C language that hard?
They told you Sh*t. -> "You have to learn C so you should not take CSE"
I'll just suggest you to try programming first, any language, see if you are finding it interesting or not, than first decide about your stream and than bother about C as Programming is about expressing your logic in some language, be it any of them. If there is no logic (and there is nothing wrong in it) than its hard to program in basic too.

Next if C is difficult? Than any other language including java/python are difficult as well. Some laguages hides some details from you and implement that on your behalf to make your task easy, Take a hypothetical example, if C requires you to write 15 steps to implement a functionality, some other language may require only 10 steps (5 implemented by language itself) that is it; but you still need to know the internals to be a good programmer. whole 15 steps.

Additionally CSE is not just about C, so consider that as well. SO start programming and than decide.

Good Luck.

"You have to learn C so you should not take CSE" ---> Bloody bull Sh*t.

P.S: Now will you please remove monster from your subject ;). It may break several hearts.
 

agantuk

Well-Known Member
Adept
Aug 1, 2009
2,395
75
88
C is a monster, but a good one. C gives a programmer freaking awesome control over what needs to be done. 'Programming' languages like Java barely give a chance to bring out the programmer.
 

=CrAzYG33K=

New Member
Disciple
Jan 1, 2006
714
8
0
Balagurusway is from Anna Univ (not VTU)

@OP : C is the way to go. It's hard, but it's the very basic of programming (next to BASIC atleast!). Once you master it, your fundamentals would become pretty strong.

Once you're good in C & C++, you'd definitely find JAVA easy.
 

haraakiri

Active Member
Adept
May 28, 2009
814
24
31
39
crvinay_4u said:
so guys,i've finished all my entrances.So,i'm free for a while and I decided to take up computer science in my engineering.Most guys I've met advise me to stay away from cse as it requires me to learn "C language". I have a couple of questions here.

1.Is C language that hard?
C is hard, but not as difficult as your are making it to be.

yes, c has a steeper learning curve, though most in India do learn C as the first programming language. I too, would recommend you to go with something else.

2.After a bit of googling,i found out that c has a steeper learning curve and the pro's on some of the forums advise people to learn perl or python.
I've decided to learn java first.what do you guys say?:S
IMHO That's not at all a bad idea, that's actually a very good idea.

3.any good books available for self study?
Big Java by Cay Horstmann, Head First Java by Kathy Sierra and Bates, Beginning Java by Ivor Horton are decent for beginners. Do download these and decide.
Not opting for something like Balaguruswamy is even more important for Java compared to C. Just make some good programmer read his inheritance topics.
I have to add that I've got zero knowledge in programming as my school didn't teach anything good except some HTML.[/QUOTE]

I would personally recommend you to go with python. It's simple, powerful and fun. :)
 

crvinay_4u

New Member
Disciple
Apr 29, 2009
334
1
0
26
"You have to learn C so you should not take CSE" ---> Bloody bull Sh*t.
haha. next time these so called "to be software engineers" tell me this sh1t,i'll punch them straight in the face.:eek:hyeah:

I have decided to learn python first and then try my hand at c and c++.I got another doubt guys.what's the dev tool for java.

I mean there's some ui for c and python but I still didn't figure out in what UI are java programs written
 

blufox

Well-Known Member
Adept
Jun 2, 2009
360
70
67
Mountain View, CA
Learn Python as first language.

once you understand programming and basic stuff, learn C at your own pace.

Win win deal :).

Good deal.
 

shantanugoel

Active Member
Adept
Dec 31, 2008
304
8
32
tech.shantanugoel.com
crvinay_4u said:
haha. next time these so called "to be software engineers" tell me this sh1t,i'll punch them straight in the face.:eek:hyeah:

I have decided to learn python first and then try my hand at c and c++.I got another doubt guys.what's the dev tool for java.

I mean there's some ui for c and python but I still didn't figure out in what UI are java programs written
You mean IDE? For all my C programs I use vim only which is just a text editor and then compile with gcc.. But for Java I use Eclipse (its free) mostly because I have never learnt Java in school/college or read any java book, so an IDE helps out a bit..
 

Rahul++

SuperUser
Adept
Aug 27, 2007
3,142
175
152
27
Pune
www.wrapcode.com
C is just amazing language. As you'll start learning it, it'll be more and more interesting. As dhruvrock2000 told, learn the logic and try to implement your logic in program. Try doing it using various concept :)

C is not that hard. Learning Python as first programming language is good but C will also do. It is not hard at all.

And you've to learn something to be something. ;)
 

Lord Nemesis

Overlord
Veteran
Jun 3, 2005
5,935
2,403
377
crvinay_4u said:
Most guys I've met advise me to stay away from cse as it requires me to learn "C language".
Now thats the most weird and stupid advice I have ever heard. I don't know about other universities, but in mine, programming in C was mandatory for every branch of Engg in the first year and mandatory for EEE, ECE, CSE and IT in the second year.

crvinay_4u said:
1.Is C language that hard?
No it is not. Learning C is easy. Mastering all the features is not easy. Its vast like the sea.

crvinay_4u said:
2.After a bit of googling,i found out that c has a steeper learning curve and the pro's on some of the forums advise people to learn perl or python.

I've decided to learn java first.what do you guys say?:S
I would strongly recommend that you start with C. Learning Java first is a very bad idea IMO. While programming in C, you will also get a good grip on many fundamental concepts of both programming and also about the underlying operating system. Java spoon feeds a lot of stuff. All the basic stuff that you should be doing on your own during the initial learning phases is readily available as part of some package and people tend to use them. You don't have to worry too much about things memory leaks or corruptions. The intermediate JVM layer takes a lot out of the effort involved in debugging such problems. The end result is that you won't understand the system nor will you get a decent grip on debugging skills. Also, If you have to program in another language afterwards (especially C, C++), there would be a steep learning curve to adapt to that. But if you have a good grip on C/C++, programming in Java, C# or any other high level language is a snap. There will be very limited learning curve to start programming in a new language. To add more, you will also develop good coding practices due to the relentless way C punishes mistakes and often makes it hard for you to find them.

crvinay_4u said:
3.any good books available for self study?
Books by Ritchie and Kernighan, Balaguruswamy and Herbert Schildt. If possible you might want to avoid books by Yashwant kanetkar at this stage. Many of those books don't follow proper C syntax and use a combination C and additions made for C++. Although you would most probably using a C++ compiler, it might be handy to learn about things that changed between C and C++.
 

Emperor

Well-Known Member
Adept
Jan 12, 2006
3,329
72
137
Once 1 of my friend told me "C is mother of all Language"