What's wrong with C++ as a first language?

This is a discussion on What's wrong with C++ as a first language? within the C++ Programming forums, part of the General Programming Boards category; Originally Posted by abachler Woot, i stand corrected... Commodore BASIC FTW!!! Actually I was 9. I have a picture around ...

  1. #31
    Guest Sebastiani's Avatar
    Join Date
    Aug 2001
    Location
    Waterloo, Texas
    Posts
    5,708
    Quote Originally Posted by abachler View Post
    Woot, i stand corrected... Commodore BASIC FTW!!!
    Actually I was 9. I have a picture around here somewhere of me with my VIC-20, Ill have to dig it up.
    Heh, I actually had to google that. Pretty impressive specs, too:

    Quote Originally Posted by Wikipedia
    It was equipped with only 5 KB of RAM (of this, only 3583 Bytes were available to the user) and used the same MOS 6502 CPU as the PET.
    Why on earth would you need that much RAM, anyway?

    Anyway, at 9, that's pretty amazing. I don't think I could have grokked such a thing so young. In fact, if it didn't involve like lizards or GI Joe, you could safely assume that it was out of my league...

  2. #32
    Registered User meganewbie's Avatar
    Join Date
    Apr 2009
    Location
    USA, CA
    Posts
    10
    Quote Originally Posted by abachler View Post
    OOP BASIC? Must be some abomination of nature like VB, which isnt BASIC at all.
    Well...it is called REALbasic...
    I like the language and it did help me understand programming BUT it is also a RAD/IDE so I always felt I was missing out on really understanding alot of stuff.

    There is nothing wrong with RAD/IDE's...just for me (personally) I always felt I was missing core understanding

    and Like I said I have always wanted to learn and understand C++...even at a "hobbiest level"

    Call it self achievment I guess??

  3. #33
    C++まいる!Cをこわせ! Elysia's Avatar
    Join Date
    Oct 2007
    Posts
    22,604
    Nothing wrong with hobbyists either. I am a hobby programmer for C++ and have come to a huge understanding, especially due to hanging out on these boards.
    They are probably the best source of learning C or C++
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  4. #34
    Registered User meganewbie's Avatar
    Join Date
    Apr 2009
    Location
    USA, CA
    Posts
    10
    Quote Originally Posted by Elysia View Post
    Nothing wrong with hobbyists either. I am a hobby programmer for C++ and have come to a huge understanding, especially due to hanging out on these boards.
    They are probably the best source of learning C or C++
    That is awsome!

    Thank you for the info!

  5. #35
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,189
    Quote Originally Posted by meganewbie View Post
    Well...it is called REALbasic...
    I like the language and it did help me understand programming BUT it is also a RAD/IDE so I always felt I was missing out on really understanding alot of stuff.

    There is nothing wrong with RAD/IDE's...just for me (personally) I always felt I was missing core understanding

    and Like I said I have always wanted to learn and understand C++...even at a "hobbiest level"

    Call it self achievment I guess??
    Well, for RAD I prefer LabView™, but it interfaces very nicely with C/C++, well, really any language that can create standalone DLL's. Its great for doing all the GUI stuff that I hate (doing). So I can hack up my core functionality in C/C++ then just write the UI in LabView and tie the two together.

    Hobbyists are absolutely the way to go. I started as a hobbyist, and I got my EE because I wanted to understand computers at the component level. I think as a hobbyist you end up knowing more because you often go off i directions that a CS program might not take you. Taking some CS courses is good too, but after a point they become so redundant that the only reason to take them is to get your bonafides.
    Last edited by abachler; 09-19-2009 at 06:28 PM.
    Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off.

  6. #36
    Registered User meganewbie's Avatar
    Join Date
    Apr 2009
    Location
    USA, CA
    Posts
    10
    Quote Originally Posted by abachler View Post
    Well, for RAD I prefer LabView™, but it interfaces very nicely with C/C++, well, really any language that can create standalone DLL's. Its great for doing all the GUI stuff that I hate (doing).

    Hobbyists are absolutely the way to go. I started as a hobbyist, and I got my EE because I wanted to understand computers at the component level. I think as a hobbyist you end up knowing more because you often go off i directions that a CS program might not take you. Taking some CS courses is good too, but after a point they become so redundant that the only reason to take them is to get your bonafides.

    Never heard of LabView...I will investigate it.

    Well I will admit I am not a Uni grad...I have never been to college
    Yes I might venture some day...but now I have house payment and full time job and blah blah...I know...excuses right :-)

    I did take effort and got CompTIA A+...Network+ and Security+ certified...and also Took some MS exams...so Im MS pro certified...but only did that because I wanted to...my job doesnt require it and those are some of the "things" I had on my "life to do list"

    C++ is one of them :-)

  7. #37
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,189
    Yeah I remember when that A+ crap started, I already had an EE and years of experience repairing computers, but I actually had a few jobs turn their noses up at an EE degree because it wasn't an A+ certification. Kinda like not hiring a licensed surgeon because he doesn't have his first aid card.

    Quote Originally Posted by Sebastiani View Post
    Anyway, at 9, that's pretty amazing. I don't think I could have grokked such a thing so young. In fact, if it didn't involve like lizards or GI Joe, you could safely assume that it was out of my league...
    Well, I was a computer nerd from the start.
    Last edited by abachler; 09-19-2009 at 06:47 PM.
    Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off.

  8. #38
    Registered User meganewbie's Avatar
    Join Date
    Apr 2009
    Location
    USA, CA
    Posts
    10
    Quote Originally Posted by abachler View Post
    Yeah I remember when that A+ crap started, I already had an EE and years of experience repairing computers, but I actually had a few jobs turn their noses up at an EE degree because it wasn't an A+ certification. Kinda like not hiring a licensed surgeon because he doesn't have his first aid card.
    Hee hee

    totally understand...

    BUT like I said I only took all those tests because it was something I promised myself I would do.

    I dont advertise to my current job that I have those certs...actually they dont even know...
    only the cboard knows now (background "ohhh ahhhhhh" sound please)

  9. #39
    Registered User
    Join Date
    Sep 2009
    Posts
    63
    I'd have to say that C or C++ is probably a good place to start learning programming. They may not be the best, handed down from some holy mountain with the demand that we start with them, but I started that way.

    I feel that C++ or C make good beginning languages because they don't hide anything. There's no garbage collection, and you get to deal with raw pointers, memory addresses, etc. If you started out in Java, for example, switching to C++ would be complicated, at the very least, because of Java's garbage collection. This memory management also gives you a feel for what's going on behind the scenes, should you switch to Java.

    I suppose I must end my comment by saying that I myself am a hobby programmer, and I started with C++. I'm no expert by any means, but I write the silly little programs I need to. Mod tools and the like is what I'm doing.

  10. #40
    ...and never returned. StainedBlue's Avatar
    Join Date
    Aug 2009
    Posts
    168
    >>memory management also gives you a feel for what's going on behind the scenes, should you switch to Java.

    Absolutely. My first intro to programming class was taught in C++, and I loved it. The next level course (where you learn classes) at the same school was taught in Java. Confused the ever-loving s--t out of me.

    Make a long story short, I went to another school that taught that same level two course but in C++. Loved it.

    The point is the explicit OOP that C++ demands is invaluable for actually learning OOP. Knowing how to allocate/delete memory, and how to move pointers around will give you a much deeper understanding of what's going on inside the guts of a program.

    Where I work, about half of our development team has never written anything in a c-style language. Now, having learned in C++, I can dissect the VB nonsense with relative ease, though they can't understand a lick of my C#. Not to mention that they all manage to have picked up very very bad programming habits, and generally write code that gives me and a few other competent developers a good laugh.

    Abachler, I agree with you about these java peeps, because it's so "easy" to develop in java, it's usually the best course to re-write bad java programs from scratch, instead of trying to figure out what some very misguided developer did because they just have no idea of how to properly use classes and the such.

    C++ forces you to have structure in your programs, structure that makes sense. You learn, really learn, what OOP is all about (becasue after all, OOP, regradless of language, boils down to encap., inherit., and polymorphism., not making sure every darned data type came from a single object.) There's nothing wrong w/java or c#, but if that's what you learn in, I personally think you're missing out on some much needed understanding of basic programming concepts.

  11. #41
    The larch
    Join Date
    May 2006
    Posts
    3,573
    C++ forces you to have structure in your programs, structure that makes sense.
    How does it do that?
    I might be wrong.

    Thank you, anon. You sure know how to recognize different types of trees from quite a long way away.
    Quoted more than 1000 times (I hope).

  12. #42
    Registered User
    Join Date
    Sep 2009
    Posts
    63
    I was going to ask the same thing. If you wanted to, you could write a program with no classes, and no functions other than the main function. I shudder at the thought of doing such a thing for most of the programs I've written, but I suppose it would be possible.

  13. #43
    ...and never returned. StainedBlue's Avatar
    Join Date
    Aug 2009
    Posts
    168
    Maybe "forced structure" was a bad choice of words.

    What I mean is sometimes in languages like C# or Java, you rely so heavily on built-in "nice-ities" that you get away from relying on yourself to do basic things. That's all well and good, but sometimes it feels like something is missing. I don't know, I can't explain it.

  14. #44
    Registered User
    Join Date
    Oct 2006
    Posts
    2,407
    I can tell you from my experience that learning C++ in high school was one of the best things I've ever done. I started BASIC programming on the Apple II at about 11 years old, and did that for a while, then got my feet wet with procedural programming in QBasic, then a friend gave me an old version of Borland C++ when I was a junior in HS. This was back in the days of DOS 6.22 and windows 3.1(1). C++ didn't even have templates yet at that time. I have now worked with C, C++, C#, Python and PHP, and I can say without a doubt that, had I not learned C++ first, I would not have picked up the other languages as easily.

    On a side note, there was mention of RealBasic and LabVIEW, and I have used FreeBASIC from time to time, and find it to be quite useful. It uses nearly identical syntax to QBasic, but adds classes and other OO features, without the typical MS bastardization. There are ports of wxWidgets and GTK+ for it, and since it's basically a front end for GCC, it has good interoperability with code from other gcc compilers.

Page 3 of 3 FirstFirst 123
Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 15
    Last Post: 08-09-2009, 11:20 AM
  2. The value of learning a new programming language
    By h3ro in forum General Discussions
    Replies: 21
    Last Post: 06-13-2009, 01:48 AM
  3. ASM to C language
    By TAZIN in forum C Programming
    Replies: 22
    Last Post: 06-03-2009, 06:29 AM
  4. God
    By datainjector in forum A Brief History of Cprogramming.com
    Replies: 746
    Last Post: 12-22-2002, 11:01 AM
  5. bubble sort in assembly language!!!!!!
    By lorenzohhh in forum C++ Programming
    Replies: 1
    Last Post: 04-15-2002, 08:30 PM

Tags for this Thread


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21