any ideas for a nub with c++?

lyssword

Diamond Member
Dec 15, 2005
5,630
25
91
im trying to learn c++, what would be a fun small program for a noob (total noob to prog) to make in c++? I can do "hello world" thing in dos mode already :p
also I have both dev-C++ and visual c++ 2005, but I like dev-c++ more because its simpler I think..
 

Cheex

Diamond Member
Jul 18, 2006
3,123
0
0
Advice: Make sure you learn the basics well. It can be a real headache if you don't.
I found out the hard way (in school).

Edit: Maybe you should try learning C first.
 

lyssword

Diamond Member
Dec 15, 2005
5,630
25
91
Originally posted by: Cheex
Advice: Make sure you learn the basics well. It can be a real headache if you don't.
I found out the hard way (in school).

Edit: Maybe you should try learning C first.

oh ok thx for advice :D
 

lyssword

Diamond Member
Dec 15, 2005
5,630
25
91
sweet, I d/led a free MS VBstudio2005xpress that thing is awesome and so easy to use :D I'm gona go learn vb instead :p
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Edit: Maybe you should try learning C first.

Doubtful, since he's already started C++ going to C will most likely only confuse things.

sweet, I d/led a free MS VBstudio2005xpress that thing is awesome and so easy to use I'm gona go learn vb instead

AFAIK there's express versions of all of their IDEs so why not grab the C++ or C# one?
 

Spydermag68

Platinum Member
Apr 5, 2002
2,616
99
91
You would be better off learning C++, C# or Java. If you think you would like to make programming a career there are more opportunities in a language bases off of C, than VB.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Learning language or two is not a way towards job. Getting some degree is.

Depends on the job, practical experience is better IMO. Most of the people I've talked to and heard about with CS degrees are frustratingly stupid or so died up on theory that they miss the practical side completely.
 

Atheus

Diamond Member
Jun 7, 2005
7,313
2
0
Originally posted by: Nothinman
Most of the people I've talked to and heard about with CS degrees are frustratingly stupid or so died up on theory that they miss the practical side completely.

Oh yes, they're so dumb and impractical it makes my brain hurt just thinking about it. I mean, a computer science degree is only a few years of working on the deepest and most fundamental parts of computers and operating systems under the supervision of people with decades of academic and industry experience. Any 5 year old could do it! And of course, computer scientists have only invented 'frustratingly stupid' and impractical things like the internet and the world wide web...

In case you can't tell I am being sarcastic. In fact I think your comment was more than a little unfair. Kind of insulting really.

 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
In case you can't tell I am being sarcastic. In fact I think your comment was more than a little unfair. Kind of insulting really.

Sorry if I insulted you, but it's true to the extent that most of the ones that I've talked to are stuck in their world of academia. If you're not one of them, great, but if you aren't I can't see why you'd be insulted since you'd know that I wasn't grouping you with them.
 

Atheus

Diamond Member
Jun 7, 2005
7,313
2
0
Originally posted by: Nothinman
In case you can't tell I am being sarcastic. In fact I think your comment was more than a little unfair. Kind of insulting really.

Sorry if I insulted you, but it's true to the extent that most of the ones that I've talked to are stuck in their world of academia. If you're not one of them, great, but if you aren't I can't see why you'd be insulted since you'd know that I wasn't grouping you with them.

I do get what you mean (I think) by the impracticality thing but the wording was a bit harsh. Computer scientists are definately not stupid, quite the contrary.

You do get just-graduated compsci people who can't put a network together or tell you the difference between an Athlon 64 and a Pentium 4, is that the sort of thing you are referring to? Or maybe they don't know how to use language X or development environment Y which is considered required in Z field of work?

This stuff is minor compared to the things they have already learned. Their knowlege base will allow them to pick up new techniques far quicker and easier than those without it - you need experience _and_ education to master your field.

 

lyssword

Diamond Member
Dec 15, 2005
5,630
25
91
Originally posted by: Spydermag68
You would be better off learning C++, C# or Java. If you think you would like to make programming a career there are more opportunities in a language bases off of C, than VB.

heh I was thinking about that visual C++ too, msdn site is great they even have streaming videos to teach noobs :D O well I have nothing to lose basically, free software, free vid tutorials :p
 

So

Lifer
Jul 2, 2001
25,923
17
81
Actually, learn Java. It'll teach you about object oriented stuff (really good to know), good programming practices, and you'll be able to get 'windows' applications pretty easily. I went QBasic -> Visual Basic -> C++ -> many other languanges.

VB is kinda a dead end language (it's fine but not a good stepping stone to others IMHO).

Almost everything you pick up in Java will apply to C/C++/many others, even syntax.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
visual C++ is too much for beginner. it covers two things that you are better off learning one by one: C++ language, and GUI event based design based on C++.

As for Com Sci majors "knowing nothing" I would say that is very rubbish. I think they know more than you, as they have solid foundation in every aspect of computer science, not just few unconnected self-built skills. If anybody lacks big picture that is one who haven't had chance to see it outside one or two programming languages that they know.
 

ynotravid

Senior member
Jun 20, 2002
754
0
0
Originally posted by: Nothinman
In case you can't tell I am being sarcastic. In fact I think your comment was more than a little unfair. Kind of insulting really.

Sorry if I insulted you, but it's true to the extent that most of the ones that I've talked to are stuck in their world of academia. If you're not one of them, great, but if you aren't I can't see why you'd be insulted since you'd know that I wasn't grouping you with them.
You are suggesting that CS grads are 'frustratingly' stupid, suppossedly because the ones you've 'talked to' and 'heard of' (seriously though, heard of?). Now why would that insult anyone?

There are plenty of CS grads that just showed up to class and weren't interested enough in the subject to do what it takes to become an expert, but this is not a result of the education. It is a result of the person's motivation, or lack there of.

In other words it's not the CS classes that make some CS grads appear clueless. If you are a motivated person and are genuinely interested in programming then schooling can do nothing but help you.

So to recommend to someone that they should emphasize only practical aspects of programming for fear of CS classes making them stupid or 'tied up in theory' is crazy talk.

Also, if practical is the goal then why steer him away from VB? VB oozes practical.


 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
You do get just-graduated compsci people who can't put a network together or tell you the difference between an Athlon 64 and a Pentium 4, is that the sort of thing you are referring to? Or maybe they don't know how to use language X or development environment Y which is considered required in Z field of work?

The most recent example is a CMU prof that's a client of ours. He's attempting to startup a new company and we're just doing the physical hosting, we did initially setup the boxes for him but that died as soon as we gave him the root password. Virtually everything you could imagine was setup wrong; the network, the backups, the databases and he ignores any and all advice we give him because he works for CMU so obviously he knows better than us.

You are suggesting that CS grads are 'frustratingly' stupid, suppossedly because the ones you've 'talked to' and 'heard of' (seriously though, heard of?). Now why would that insult anyone?

'Heard of' was a bad choice of words, I'm not on our Linux team any more so I don't work directly with our clients but I do work with the admins so I hear stories.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
Originally posted by: Nothinman
You do get just-graduated compsci people who can't put a network together or tell you the difference between an Athlon 64 and a Pentium 4, is that the sort of thing you are referring to? Or maybe they don't know how to use language X or development environment Y which is considered required in Z field of work?

The most recent example is a CMU prof that's a client of ours. He's attempting to startup a new company and we're just doing the physical hosting, we did initially setup the boxes for him but that died as soon as we gave him the root password. Virtually everything you could imagine was setup wrong; the network, the backups, the databases and he ignores any and all advice we give him because he works for CMU so obviously he knows better than us.

You are suggesting that CS grads are 'frustratingly' stupid, suppossedly because the ones you've 'talked to' and 'heard of' (seriously though, heard of?). Now why would that insult anyone?

'Heard of' was a bad choice of words, I'm not on our Linux team any more so I don't work directly with our clients but I do work with the admins so I hear stories.

Sorry, but you have no clue what is CS about and what is learnt there.
Networking is not what CS major is about. Networking can be done (and is done) by basic skilled labor with 0 to 2 yrs of college. It doesn't involve creating something *new*, but rather using somebody's existing products.

Like the cook is gonna make better meal than prof. of agriculture, but it doesn't imply he knows more than the prof. do.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Sorry, but you have no clue what is CS about and what is learnt there.
Networking is not what CS major is about. Networking can be done (and is done) by basic skilled labor with 0 to 2 yrs of college. It doesn't involve creating something *new*, but rather using somebody's existing products.

I do and that's part of the point, he could be the smartest person I've met but without any practical knowledge he's still an idiot. In this particular case he's an IT directory for a local startup and teaches two courses at CMU one of which is a Linux course that I would assume is supposed to be pretty technical. Book knowledge is only so useful, you still have to be able to apply it somewhere.
 

jman19

Lifer
Nov 3, 2000
11,225
664
126
Originally posted by: Nothinman
You do get just-graduated compsci people who can't put a network together or tell you the difference between an Athlon 64 and a Pentium 4, is that the sort of thing you are referring to? Or maybe they don't know how to use language X or development environment Y which is considered required in Z field of work?

The most recent example is a CMU prof that's a client of ours. He's attempting to startup a new company and we're just doing the physical hosting, we did initially setup the boxes for him but that died as soon as we gave him the root password. Virtually everything you could imagine was setup wrong; the network, the backups, the databases and he ignores any and all advice we give him because he works for CMU so obviously he knows better than us.

You are suggesting that CS grads are 'frustratingly' stupid, suppossedly because the ones you've 'talked to' and 'heard of' (seriously though, heard of?). Now why would that insult anyone?

'Heard of' was a bad choice of words, I'm not on our Linux team any more so I don't work directly with our clients but I do work with the admins so I hear stories.

Mind PMing me the name of said prof? I used to go to CMU :p
 

Atheus

Diamond Member
Jun 7, 2005
7,313
2
0
Originally posted by: Nothinman
The most recent example is a CMU prof that's a client of ours.

A professor? The last time that guy set up a network it probably had to have a coal fire set in the boiler before it would transmit packets, you can't expect him to be able to configure modern equipment. He'll pick it up quickly I'm sure.

As postmortem said, CS isn't really about setting up equipment anyway. We had a 'networking' class in my degree where you don't have to touch a single ethernet cable if you don't want to - instead you learn how the protocols work and fit together, design a protocol including a packet structure, learn how routing works and write a router software from scratch implimenting different routing methods, learn the computational and mathematical workings of private and public key encryption, authentication, intrusion detection, etc, etc.

You're just expected to pick up what practical stuff you need as you go along. I chose to do a project once which involved building and configuring a minimal Linux system from scratch and running it off a flash card on an SBC, but I got no marks for this part, they considered it trivial.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
Originally posted by: lyssword
im trying to learn c++, what would be a fun small program for a noob (total noob to prog) to make in c++? I can do "hello world" thing in dos mode already :p
also I have both dev-C++ and visual c++ 2005, but I like dev-c++ more because its simpler I think..

Implement some basic types and test frameworks for them. For example, create a stack class with push() and pop() methods, and if you want to get fancy templatize it for arbitrary types. A string class is another good excercise. Write utility classes that provide basic capabilities and then write basic Windows console apps to test the interfaces. Of course you don't need to write any of this stuff anymore, since it is all provided in frameworks like .Net and MFC, but working on this kind of small, atomic class will give you a great introduction to how the language works.