Post: Code learning
04-09-2012, 02:22 AM #1
PULS3
< ^ > < ^ >
(adsbygoogle = window.adsbygoogle || []).push({}); Im planning on Majoring in computer science in college and I wanted to get some practice before I started.I want to currently learn C and see what else I can learn after learning C.So can you guys recommend me a tutorial on how to learn C and a program to write in.Also any help and advice is appreciated
(adsbygoogle = window.adsbygoogle || []).push({});
04-09-2012, 02:42 AM #2
Pichu
RIP PICHU.
Originally posted by PULS3 View Post
Im planning on Majoring in computer science in college and I wanted to get some practice before I started.I want to currently learn C and see what else I can learn after learning C.So can you guys recommend me a tutorial on how to learn C and a program to write in.Also any help and advice is appreciated


Honestly, if you are going to learn any starter language, I would recommend Java. Java for the most part if the first language they will teach you in college, this will mean you will have a better grasp at it when you enter college.

The syntax for Java is very similar to that if not the same for C#, Javascript (Which is for websites), ASP.NET ect.

You must login or register to view this content.

That site may help you out with some of the basics to understand for C. You may have a better chance just finding a C-Objective E-Book which is all around the web and on torrent sites and just downloading.

The following user thanked Pichu for this useful post:

PULS3
04-09-2012, 03:27 AM #3
Epic?
Awe-Inspiring
Originally posted by PULS3 View Post
Im planning on Majoring in computer science in college and I wanted to get some practice before I started.I want to currently learn C and see what else I can learn after learning C.So can you guys recommend me a tutorial on how to learn C and a program to write in.Also any help and advice is appreciated



Let me begin by saying that the best resources are books. There are no free, public resources that can rival a good book. A book's author gets paid, it's their job to create good content. Furthermore, the author of a book is generally well educated (and frequently well respected). People who write tutorials online generally don't have jobs, they rarely receive top-notch educations (in fact, many don't have an education), and they're rarely well respected in the professional community. This is why anyone who is seriously interested in computer science or programming should invest in a good book.


I do somewhat agree with Sublimity, C may not be the best starting place.

Having said that, the canonical resource for learning C would be The C Programming Language by Brian Kernighan and Dennis Ritchie (the book is often known as the "K&R book", based on the authors' names, and is considered to be a classic). I would recommend that all programmers read K&R at some point (especially C programmers). Two other books that I quite like (which could be a better starting place) would be C Programming: A Modern Approach by K. N. King and The Joy of C by Lawrence Miller and Alexander Quilici. Once you read those, let me know and I'll be happy to recommend more.

You must realize that there is much more to computer programming than the programming language, and that there is much more to computer science than computer programming. Computer science (when taught correctly) involves a fair amount of math and a fair amount of theory (in addition to bits and pieces of programming). Computer programming (when taught correctly) involves a fair amount of design, technique, planning, and engineering - all of which is eventually expressed to the computer (through either a programming language or other medium).

If you'd like to get started on your path through the university, I'd suggest visiting You must login or register to view this content. or You must login or register to view this content.. Work your way through calculus (and everything beneath it). Once you've done that, I'd recommend reading the Structure and Interpretation of Computer Programs by Abelson and Sussman (this book is frequently abbreviated to "SICP", and occasionally referred to as "the wizard book" due to it's cover, and is a classic in the field). In addition to this, you should pick up a book on discrete mathematics and logic. I'd recommend reading Concrete Mathematics by Donald Knuth (either before or immediately after reading SICP). I'd then consider a book on algorithms, Introduction to Algorithms by Thomas Cormen, Charles Leiserson, Ronald Rivest, and Clifford Stein is quite good (it's often referred to as "CLRS" based on the authors' names, and is considered to be a classic). After that, The Art of Computer Programming by Donald Knuth (another classic, sometimes abbreviated to "TAOCP") is a good read. Once you read and comprehend all of that, come on back and I can tell you what to read next.

edit: SICP is available for free, online (and MIT offers free recorded "open courseware" lectures to accompany the book). As Sublimity alluded to, many of the books I recommended are available through piracy. Not that I encourage it (I own or have owned a hard copy of all the books I mentioned).

The following 4 users say thank you to Epic? for this useful post:

Glover27, Pichu, PULS3, Rainbow Gravity
05-19-2012, 05:05 AM #4
caleb01
Little One
wow! I don't mean to sound like a total fanboy, but everytime I see a post by you, you always give the best advice and practically one-hundred perrcent of the time your always right. In other words, your AMAZING!:happycry: I wish I were you.Gaspkay: What books do you recommend for programming, mathmatics, theory, etc? Ive been saving up some cash and am really looking forward to buying some good books on thoughs topics.

edit: Uhm sorry, I dont know how i'm excpecting you to answer that when you don't even know what i'm specifically learning. If you would be willing to help me pick out some good books then i'll tell you what i'm studying so far....I need all the help I can get Smile. I just started getting really serious into programming and math this year.
05-19-2012, 08:35 AM #5
Epic?
Awe-Inspiring
Originally posted by caleb01 View Post
wow! I don't mean to sound like a total fanboy, but everytime I see a post by you, you always give the best advice and practically one-hundred perrcent of the time your always right. In other words, your AMAZING!:happycry: I wish I were you.Gaspkay: What books do you recommend for programming, mathmatics, theory, etc? Ive been saving up some cash and am really looking forward to buying some good books on thoughs topics.

edit: Uhm sorry, I dont know how i'm excpecting you to answer that when you don't even know what i'm specifically learning. If you would be willing to help me pick out some good books then i'll tell you what i'm studying so far....I need all the help I can get Smile. I just started getting really serious into programming and math this year.


Now, when you read my recommendations, take it all with a grain of salt: I'm 16, I'm attending a university, and I'm majoring in mathematics. One could say that I am more mathematically inclined than most (especially in comparison to teenagers). So, my recommendations might be appropriate for me, but they might not necessarily be best suited for you.

Here is my ultimate recommendation for anyone interested in computer science:

  1. Learn math to at least the level of an advanced high school student (this includes: probability, statistics, algebra, geometry, trigonometry, and calculus). Your choice on how to tackle this one, but resources like You must login or register to view this content., You must login or register to view this content., and You must login or register to view this content. are popular (and free!).
  2. Read books that introduce proofs, discrete mathematics, analysis, college level algebra (primarily linear algebra), and more advanced college level calculus. A popular introduction to all that good stuff would be Concrete Mathematics by Donald Knuth. Make sure you learn some formal logic as well.
  3. Read an introductory computer science book. I'd highly recommend the Structure and Interpretation of Computer Programs by Abelson and Sussman.
  4. Either now, or immediately after reading the algorithms book (recommended in the following step), learn C. Not C++, C#, Objective-C, or any other crazy C inspired language, but C itself. I'd recommend K&R.
  5. Read an introductory algorithms book. I'd highly recommend Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein.
  6. Read a book on computer architecture, operating systems, then compilers. After that, a book on formal languages and computability would be good.
  7. Read a book on computer networks. You could also be simultaneously reading books on computation and computability theory.
  8. Read a book on database systems (you can actually do this before or after the computer networks book, it's up to you).
  9. Read a book on artificial intelligence.
  10. Throughout this process, probably after reading the introductory algorithms book, start reading books on software engineering. Ideally, you should read books with a focus on programming technique and software architecture. Focus on procedural and object-oriented programming, but be sure to learn some functional and logical programming as well (I'd suggest C, Java, Haskell, and Prolog).
  11. Read The Art of Computer Programming by Donald Knuth. You might want to start early on, as it'll take a damn long time to read.


Best of luck, let me know if you need more specific recommendations. I'd recommend starting on the math, and focusing on one thing at a time (I don't want to give overly strict recommendations, it should take you at least four (probably six to eight) years to get through everything - assuming you work very quickly).
05-20-2012, 05:37 PM #6
caleb01
Little One
Holy crap thoughs books cost ALOT! hahaha, I got them though Smile...they seem to be really great books from what i've skimmed
over on the book preview. Have you perhaps skipped a grade or something? I always had the thought that you were in your 30's or something, since you're always so wise and intelligent the way you describe things and give useful help to others. I never had the thought that you were only 3yrs older than I am...Did you start really early or something?

Okay on to my big questions....Smile

1. For the mathmatics suggestions that you gave me. Since I had not told you specifically what I plan on learning I think it would be best if you checked this thread a posted like a week ago. It will show what I am learning, that I plan on learning, and mathmatics that i'm unsure of learning. You must login or register to view this content.

2. As i've mentioned in some of my previous posts i'm learning a language called Uni-script. It is a language used in one SPECIFIC game engine called Unity3d. It is in a way like java, but also said to be very different from java. In your opinion, do you think it would be best if I continued studying Uni-script or learn the languages you suggested instead? I plan on doing software development in the future and things that involve engineering, but for now I kind of wanted to expierment with game development...I would also create programs for the game engines too, so in many ways it has been helping me quite a bit, but I fear that it could be a waste of time in some ways.

3. Do you perhaps know any good books on physics? I know its kind of off topic, but my science teacher said that we would be studying physics in 8th grade or highschool. I wanted to do some major studying over the summer and learn things on my own, so that way i'm ahead of most kids.

I think thoughs are the only questions I have for now. Thank you so much Epic I really appreciate the suggestion you've given to me. I plan to use them wisely and do the best that I can.Smile

edit: Do you know where I can get The Art of Programming books editions 1-4a? I love programming, but paying around $200 for books seems a bit over the top for me....I found some good downloads on Piratebat, but they don't include all the editions or volumes. Also, do I need to learn assembly before I read the Art of Programming? I read about it on wiki and it says the people who don't have a good knowledge of assembly will have a hard time understanding the book.:???:
05-21-2012, 12:02 AM #7
Epic?
Awe-Inspiring
Originally posted by caleb01 View Post
Holy crap thoughs books cost ALOT! hahaha, I got them though Smile...they seem to be really great books from what i've skimmed
over on the book preview. Have you perhaps skipped a grade or something? I always had the thought that you were in your 30's or something, since you're always so wise and intelligent the way you describe things and give useful help to others. I never had the thought that you were only 3yrs older than I am...Did you start really early or something?

Okay on to my big questions....Smile

1. For the mathmatics suggestions that you gave me. Since I had not told you specifically what I plan on learning I think it would be best if you checked this thread a posted like a week ago. It will show what I am learning, that I plan on learning, and mathmatics that i'm unsure of learning. You must login or register to view this content.

2. As i've mentioned in some of my previous posts i'm learning a language called Uni-script. It is a language used in one SPECIFIC game engine called Unity3d. It is in a way like java, but also said to be very different from java. In your opinion, do you think it would be best if I continued studying Uni-script or learn the languages you suggested instead? I plan on doing software development in the future and things that involve engineering, but for now I kind of wanted to expierment with game development...I would also create programs for the game engines too, so in many ways it has been helping me quite a bit, but I fear that it could be a waste of time in some ways.

3. Do you perhaps know any good books on physics? I know its kind of off topic, but my science teacher said that we would be studying physics in 8th grade or highschool. I wanted to do some major studying over the summer and learn things on my own, so that way i'm ahead of most kids.

I think thoughs are the only questions I have for now. Thank you so much Epic I really appreciate the suggestion you've given to me. I plan to use them wisely and do the best that I can.Smile

edit: Do you know where I can get The Art of Programming books editions 1-4a? I love programming, but paying around $200 for books seems a bit over the top for me....I found some good downloads on Piratebat, but they don't include all the editions or volumes. Also, do I need to learn assembly before I read the Art of Programming? I read about it on wiki and it says the people who don't have a good knowledge of assembly will have a hard time understanding the book.:???:


To be honest, I wouldn't worry about that too much. Don't even bother purchasing The Art of Computer Programming (or any programming books) until you feel confident in calculus, and everything beneath it. If you'd like, I'd be happy to quiz you.

As far as what mathematics to learn, I'd recommend learning as much of everything as you possibly can. There is no "good" or "bad" mathematics, and there isn't a particular field of mathematics that you will be able to personally comprehend that will be explicitly useful to programming.

My suggestion is not to focus on the whole path, but to focus on the very first step of that path. Don't look ahead, look right where you stand.

Side note: you really shouldn't be learning physics in eighth grade, unless you are learning it at a very elementary level. Although I believe all three of the free resources I mentioned previously offer instruction regarding physics.

The following user thanked Epic? for this useful post:

caleb01
05-21-2012, 12:23 AM #8
caleb01
Little One
Thank you, once again Smile, always nice to hear great advice. I've always been the type of person that plans way ahead of himself. May I add you as a friend on NGU or skype or something? Also, I believe you forgot to answer one question of mine about the Uni-script language...Or did you leave that intentionally because it's more of a decision for me to make?
05-21-2012, 07:07 AM #9
Epic?
Awe-Inspiring
Originally posted by caleb01 View Post
decision for me to make


That.

Most people your age prefer to just "goof around" with computer programming. It's very possible that the path I've recommended is not for you, at least not now. It's very possible (and very acceptable) that you want to learn about game programming, build something interesting, and sort of play around. A lot of kids do that (and many of them become excellent computer scientists later on). However, if you'd really like to get serious, I'd recommend jumping into the math, and not focusing on programming as of now. You can do whatever you'd like, there's no shame in taking whatever route is right for you.

The following user thanked Epic? for this useful post:

caleb01
05-21-2012, 08:08 PM #10
caleb01
Little One
Really? Learning mathmatics will help me become a better computer scientist rather than learning programming first? I always thought that if you wanted to get good at computer programming that it's better to start early on it, rather than learn later on when your memory is getting worse. I just want to do whatever will benefit me the most so if you say your plan will benefit more than what I am doing now i'll stick to it!Smile

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo