Hi everyone, I'm new here and this is my first post. Like the title says - I'm new to the whole coding and programming thing, I really LOVE the thought and the idea, I've started out with XHTML and CSS, it's going easy so far and I think I have a working mastery of the XHTML and I'm working on CSS. I really so badly want to start C and/or C++. Anyone aware of ways in which I can go about beginning, and which should I start out with bearing in mind I am doing this on my own, Any suggestions?

And thanks, I'm looking forward to really having fun while learning here!

Hi everyone, I'm new here and this is my first post. Like the title says - I'm new to the whole coding and programming thing, I really LOVE the thought and the idea, I've started out with XHTML and CSS, it's going easy so far and I think I have a working mastery of the XHTML and I'm working on CSS. I really so badly want to start C and/or C++. Anyone aware of ways in which I can go about beginning, and which should I start out with bearing in mind I am doing this on my own, Any suggestions?

And thanks, I'm looking forward to really having fun while learning here!

Welcome! To be honest.....if this is going to be your first TRUE programming language (HTML and web-dev aside), I might start with Visual Basic or C#. This is just a personal recommendation but I think jumping straight into C or C++ might be a mistake. I learned VB6 first, followed by Java and THEN C. I feel that if I hadn't taken Java first I would not have truely understood and appreciated the power (and insecurity) of a programming language such as C. Starting with C might get you into problems in other languages as it is a weak-typed language (you'll learn what that means if you don't already know). Many people have started with C and/or C++ i'm sure and may have different views on this one but I, personally, would start with a more strong-typed language first (such as the previously stated C#, VB, or perhaps JAVA).

In terms of compilers....

Java - Free from Sun Microsystems
C# - Free from Microsoft (Visual C# Express Edition)
VB - Also free from MS (Visual Basic Express Edition)
C++ - Also free from MS (Visual C++ Express Edition)

Also, there are many tutorials posted online (google them). But I, personally would start with a textbook if you can afford it.

Regards,

Tyler S. Breton

Comments
Agrees ~~ SpS

Starting with VB will only teach poor practice, don't do it.
Java is a better option, but will take you as long to master as does C++.
C# seems to be a slightly smaller language to learn.

What language you start with hardly matters as long as it's a good one, which C or C++ certainly is, and you have good teachers and documentation.
"Teach yourself C++ in 24 hours" and similar books don't count, those books aren't worth the paper they're printed on.

When you start, don't get caught up into learning an IDE thinking you're learning the language, which is what happens to a lot of beginners.

Get a good book or two, like "Accellerated C++" and "Objects, Abstraction, Data Structures, and Design using C++" and go through them one step at a time from beginning to end, repeating everything until you understand it.
This won't take 2 weeks, or even 2 months, but you'll soon grasp the basics.
You may also want to get you a copy of Stroustrup's "The C++ Programming Language" in the latest edition (3rd I think by now), which is THE standard reference for the language.

Comments
Good advice. --joeprogrammer
Agree ~~SpS

Anyone aware of ways in which I can go about beginning, and which should I start out with bearing in mind I am doing this on my own, Any suggestions?

For starters you can read this thread

I really so badly want to start C and/or C++. Anyone aware of ways in which I can go about beginning, and which should I start out with bearing in mind I am doing this on my own, Any suggestions?

And thanks, I'm looking forward to really having fun while learning here!

My personal opinion, go with C++. Many people out there will ask you to go for lanaguages like C# and Java which makes your life easy, but personally I think that if you can survive a nuke, bullets will look like sissy to you. Same way, if you manage to tame the raw power of C or C++, other languages are easily manageable. Programming in C will give you the feeling of a creator since they don't have a host of functions to do everyday tasks which you would have to code on your own.

I started off with C and so whichever modern language I look at makes me feel happy seeing the kind of abstraction they offer along with the host of inbuilt functions which make your life a lot easier. If you in this *only* for money, I would recommend you to go with C# or Java since there is a lot of market for these langauges.

As an ending note, a very interesting article on which language you should go for, a must read.

Programming in C will give you the feeling of a creator since they don't have a host of functions to do everyday tasks which you would have to code on your own.

Totally agree...but when I'm just starting, I WANT the language to provide methods/functions so that I can get the jist of whats going on before I decide to play jesus. After you learn a JAVA or even C#, I'd backtrack (I say backtrack because of the language decendancy from C for both languages) to C so that you can get a full appreciation of the language.

Regards,

~Tyler S. Breton

After you learn a JAVA or even C#, I'd backtrack (I say backtrack because of the language decendancy from C for both languages) to C so that you can get a full appreciation of the language.

Yet to see a person who started off his programming with a very high level language like C# or Java and who is really adept at understanding the inner mechanics of high level languages like C or C++.

I WANT the language to provide methods/functions so that I can get the jist of whats going on before I decide to play jesus.

So you mean that someone who wants to start off with Assembly programming should first dabble a bit with C# and after getting the *jist* of it, should try to play Jesus with Assembly. Good joke. ;)

Many others support my view point.

I don't disagree with you....C is a much more powerful and useful language, however I just feel like someone starting with C is going in a little over their head at first, as near everything (useful) you wish to accomplish has to be written manually. Plus I'd love to see someone pick up pointers as easily as objects. I'd find it much easier to understand an object and then go backwards to how pointers are used.

BTW...I started with VB and JAVA, higher level languages, and have no problems with understanding the semantics of a lower level language such as Assembly or C. But I certainly understand the higher level languages more because of the lower level ones, however, I understood enough at the initial learning of them to get the true passion for programming, which is what can drive a person to keep trying to understand C better.

Just a side note....I understand the argument that C should be taught first and am not by any means saying it's wrong. It's totally opinion at this point.

Regards,

Tyler S. Breton

Comments
You have some good points... -joeprogrammer

It really depends on what is your original intent of learning the language. If you are a 33 year old who wants to earn a living, I would very much recommend you to learn C# or the other hot technologies rather than dabbling with pointers in C. On the other hand, if you are a 15 year old who really wants to get his concept cleared and is very intent on going for research work, I would recommend him to learn a assertive language like C or Python and a functional lanauge like LISP, Haskell, etc.

IMHO, it solely depends on the purpose one is trying to achieve.

Just a side note....I understand the argument that C should be taught first and am not by any means saying it's wrong. It's totally opinion at this point.

Yes, exactly the point I was trying to prove.

It really depends on what is your original intent of learning the language. If you are a 33 year old who wants to earn a living, I would very much recommend you to learn C# or the other hot technologies rather than dabbling with pointers in C. On the other hand, if you are a 15 year old who really wants to get his concept cleared and is very intent on going for research work, I would recommend him to learn a assertive language like C or Python and a functional lanauge like LISP, Haskell, etc.

Try and learn everything like me :)

I have had no formal training in computer science, everything I have learned from visiting forums and reading a couple of books.

It really depends on what is your original intent of learning the language. If you are a 33 year old who wants to earn a living, I would very much recommend you to learn C# or the other hot technologies rather than dabbling with pointers in C. On the other hand, if you are a 15 year old who really wants to get his concept cleared and is very intent on going for research work, I would recommend him to learn a assertive language like C or Python and a functional lanauge like LISP, Haskell, etc.

IMHO, it solely depends on the purpose one is trying to achieve.

Yes, exactly the point I was trying to prove.

I agree. I am 15 I started with C++ last year. I really found it interesting and I discovered that its not so hard to learn as most people say.;)

I also tried to start with VB(for 2days only:mrgreen:) but it was boaring and just everything prebuilt(Now i understand what really is Windows Programming, after i saw Windows API).

So starting with C++ is good choice.

dabbling with pointers in C

I love dabbling with pointers.:cheesy:

Hehe...LISP, now thats something that will scare a kid away.... I think we can both agree LISP should NOT be the first language learned. :eek: But learning C and moving to LISP is not a bad sequence, happens to be the one I took.

Hehe...LISP, now thats something that will scare a kid away.... I think we can both agree LISP should NOT be the first language learned. :eek: But learning C and moving to LISP is not a bad sequence, happens to be the one I took.

+ Assembly

Thanks a lot guys, I think I'm finding these posts very interesting and helpful. I was about to start out with VB and a friend of mine who does Computer Science at the University I attend told me it was [tho easier] a bad idea to start that way, I have no prior experience in programming and I think I am young enough [22] to start now. I have started about two days now with C++ so, that's the route I am going to take (wether I like it or not). Some Tutorials would be good tho - I mean some really simple ones for total noobs like myself.

I think I am young enough [22] to start now. .

Its never too late to start. I was 40 when I started, but it is a lot better to start at a much younger age.

I am 19, Ive started since i was 12 years among programming issues by myself reading books, well it really depends on what you want to make. Ive mastered everything in HTML and CSS and its not nothing likely to other programming languages so if you want to get Web Development mastered I recommend to study PHP and MySQL as well before you move on into other languages. Its an easy task since PHP mixes up with HTML and it uses some things like arrays, operators, ifs, loops, variables, constants, etc and youll learn how to finish everything you have to know to make sucessfull learned most main Web Development principles.
Look for tutorials on the web since i cant post exact urls.

Its never too late to start. I was 40 when I started, but it is a lot better to start at a much younger age.

And I thought I was old when I started at the age of 35 :cheesy:

Serious, did you really start at 40 and made it your career AD?

And I thought I was old when I started at the age of 35 :cheesy:

Serious, did you really start at 40 and made it your career AD?

yes I did. I didn't get started until after I retired from the US Air Force in 1985. Bought a book and a cheap computer. started reading and practicing.

Wow, how did you find it? Hard? I'm kinda thinkin about the "old do new trick thing here"

Wow, how did you find it? Hard? I'm kinda thinkin about the "old do new trick thing here"

Yes I did find it difficult -- those were the days before internet and DaniWeb, so I had to learn mostly by myself, and I learned a lot of things incorrectly as you might imagine. Young people today have the equivalent of personal tutors right at your finger tips (keyboard).

And yes, you can teach old dogs new tricks:cheesy:

I'm not really sure what's a good beginner's book in C++. My first language was C, which I took a class for. I didn't get a whole lot out of the textbook we used (Deitel & Deitel's C: How to Program). Everything I learned in that class was from doing the assigned projects. When I took C++, I never even bought the book for the class, although I did occasionally refer to Lippman's C++ Primer text. C is like chess. Easy rules, but true understanding only through experience.

One book on C++ that I absolutely love is The C++ Programming Language by Strousstrup. Perhaps its something you can look at from time to time when you want to go more in depth into a topic you find in a more introductory text. It's a good book to reinforce things and to learn better ways to do things as you become more experienced.

LISP will blow your mind when you come from a C background, but there is a phenomenal textbook, set of (very good) lectures on video, and problem set offered (all for free) by MIT that teaches programming at a somewhat more philosophical level, called the Structure and Interpretaion of Computer Programs . You would have to be an incredibly motivated student to do it on your own (especially as an introduction to programming). It's the textbook used in the MIT, Caltech, and Berkley introductory programming classes, but most CS students come into those schools already knowing some java or C++.

Hi all,

Reading all this sure makes me motivated.

Mr. Dragon, hats off to u .
Thanks for sharing that piece for all the daniweb users.

Well, I use C++ Demystified and it was very easy, I also like The C++ Programming Language and C++ form the Ground up these are really great books and I would recommend them to anyone who's interested in learning C++. I know I 'm nowhere near mastering the language yet, but a couple of days ago I wrote a programme after about three nights of reading some of the books and trying out the stuff in them, the thging is the programme really does work (to my surprise), you can imagine how that felt! I want to know about GUI programming now, I heard that Java and VB kinda make it a bit easier!!! Ihave to have a working knowledge of C++ before I get into anything else tho, I hope I can really find the time to do so, right now I'm in school doing yup, Environmental Health that has nothing to do with CS, I took up Programming as a hobby, I really love computer science and Myabe I'll do a course when I graduate. As you can guess it is a bit challenging to do both, when I get home from school, I'm beat and can barely find the time so I think I'll just hang in there!!!

As you probably are guessing, C++ is what I am sticking with!!!

And on another note, I have this forum up, don't worry - it does not compete with DanIWeb, I would really love it if you guys who are interested dropped by, signed up and add your bits just for support , I would really appreciate it. The adress is
<snipped url> I could really use some help from you guys, its a free forum and such, I plan to work on it a bit more but I don't have the time (I've got school) so you can understand, I would really love your feedback!!!!

PS I really appreciate all the help and advice I get from the folks here, I must say thanx a whole lot, and whatever I can do to help I'l try!!!!!

hmm I started some years ago (I believe I was 13) with VB 6.0.
Didn't really master it completely, then I stopped programming for some months... somewhat got back into programming and decided to learn C++. Bought "C++ Without Fear" by Brian Overland, explained everything exactly the way I wanted it.

Maybe VB teaches bad habits, and starting straight to C++ is ONLY hard because of the fact that most people will not easily understand the concepts behind programming.
VB was able to teach me the concepts because of the fact that everything is visual - just drag and drop, change the values of labels, etc. With it came functions, etc. Concepts just build up easily.
From there on, C++ is easier to understand.

Right now im relearning VB6 as part of my college AS level Computing course, were being taught very well.

Right now im relearning VB6 as part of my college AS level Computing course, were being taught very well.

:eek: :eek: A college and university is supposed to teach you about moden skills. If you want to be an archologist and learn ancient laguages then learn VB6 But if you want to learn a skill that you can actually use on a job somewhere learn VB .NET. VB6 is only a toy nowdays for amiture programmers.

6th form college i mean (im 17 in a month)

we do VB6 and MS Access this year (for conecpts) then C++ and assembler next year

And VB6 is not a toy as many apps are still written in it (even microsoft ones)

:eek: :eek: A college and university is supposed to teach you about moden skills. If you want to be an archologist and learn ancient laguages then learn VB6 But if you want to learn a skill that you can actually use on a job somewhere learn VB .NET. VB6 is only a toy nowdays for amiture programmers.

Gee, I hope the hundreds of thousands of VB programmers out in the industry learn soon that VB is only a toy! They're in for a shock! ;)

This article has been dead for over six months. Start a new discussion instead.