Thread: Insulted for using C++?

  1. #1
    Registered User
    Join Date
    May 2009
    Posts
    64

    Insulted for using C++?

    I'm a currently 3rd year computer science student. I use C++ on most of my project and might also use it on my thesis that's related on 3D Graphics which probably Math extensive.

    Here in my school, they always tell me that I suck/lowtech/crazy because I don't code in java or C#. The reason I don't use it because I prefer to learn in C++ because of the OpenGL and DirectX, not because I don't know or something. Another one is I heard that most of the good games released today use C++.

    My question is, why do most people(students,some teachers) insult/annoy/provoke me for using C++ as my main programming language? Here in my school, I heard that most of the graduating student use java/c# on their thesis. Am I on the wrong track for using C++? Should I stop using it and move to java or C#?

  2. #2
    Officially An Architect brewbuck's Avatar
    Join Date
    Mar 2007
    Location
    Portland, OR
    Posts
    7,396
    It's no different from somebody calling you a poopy head. It's childish, that's all.

    Good software is created by good programmers. It has nothing to do with the language used. Some programmers prefer some languages over others. For the most part, it's a matter of preference, not superiority of one language over another.

    Of course, I'm guilty of holding dim views of certain languages. But I tend to keep these views to myself. The quality of the software is what counts, not the language it is written in.

    Brush these people aside and continue about your business. Rock on, ok?
    Code:
    //try
    //{
    	if (a) do { f( b); } while(1);
    	else   do { f(!b); } while(1);
    //}

  3. #3
    Deprecated Dae's Avatar
    Join Date
    Oct 2004
    Location
    Canada
    Posts
    1,034
    It wouldn't hurt to learn Java or C#. It's good to have plenty of tools on your belt. Use the best tool for the job.

    You can easily use OpenGL and DirectX in C# (and Java somewhat). Although personally I would stick with C++.

    I don't know where they're getting their information, but C++ has always been a great programming language, and with C++0x (or C++1x) on the way it should gain popularity.

    They're either jealous (C++ is harder, choosing a harder language might make you look snoody or something) or misinformed. I have CS friends whom seem to think Java or Python is going to supersede C++ into extinction or something. We're still using C for many of the worlds important libraries, so they are crazy if they think C++ is going anywhere. I think the problem is C# and Java have much simpler syntax, less ways to shoot yourself in the foot, and more built in libraries; therefore better tools to teach CS. That needs to be justified by saying it's "better" than some other language, or else wouldn't you choose that one instead. Those qualities don't matter if you know C++ well enough, and they certainly aren't faster or more powerful.

    If however you are torturing yourself accomplishing projects in C++ at the same rate as other classmates, then you are crazy. If the projects are designed (you mentioned teachers) for C# or Java, then that is what you should use. 3rd year seems like a weird point to switch though, imo.

    As brewbuck said, it's not about the language. There's plenty of languages. There's no way it comes down to that.
    Last edited by Dae; 09-16-2009 at 12:00 AM.
    Warning: Have doubt in anything I post.

    GCC 4.5, Boost 1.40, Code::Blocks 8.02, Ubuntu 9.10 010001000110000101100101

  4. #4
    Registered User
    Join Date
    May 2009
    Posts
    64
    @brewbuck

    Thanks. It really calm me down. Yeah, I agree with what you've said.

    @Dae
    I don't think I'm torturing myself accomplishing projects in C++ at the same rate as other classmates because not to brag but I finished the project a week before the submission and most of my classmate that uses java is not yet finish. My professor allow me to use C++ on that java/c# project and got almost perfect grade.

    I just don't like the way I code in java.c#. I guess I'm in love with C++ and I don't know why. lol

    Honestly, I really felt sad for having a bad rating on my project(even though I have a good grades) because of using C++. I really hate this !@# school, really. ;'(

    EDIT:
    I want to add something.

    One time when it's our project demo, the professor ask if I seek any help from a C++ programmer. LMAO. What the heck is that question?
    Last edited by sarah22; 09-16-2009 at 12:19 AM.

  5. #5
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by sarah22 View Post
    My question is, why do most people(students,some teachers) insult/annoy/provoke me for using C++ as my main programming language?
    Probably it is revenge for the centuries during which C++ programmers wrought havoc and destruction upon the world in their thoughtless quest for whatever it is the ancient C++ overlords were seeking to accomplish here now.

    In other words, you are a victim of history's crossfire, sarah22. Don't get mad -- get angry. You can still rise above this injust absurdity to seize the mantle that is rightfully yours: C++ programmer. In the days to come, the universe will surely realize it's mistake and reward you 2, 4, 8, 16, even 32 fold for your current suffering, such as it is.

    Finally, (in short): THEY do not get what's up, sarah22. But time is on your side -- IF you remain true to the core, C++.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  6. #6
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    Java and C# are the easy button of programming languages. Great for writing flash ads that try to sell natural male enhancements, but not really for serious high performance computing. I don't think Java has support for CUDA is what I'm saying. i also don't think anyone is tarded enough to write an OS in C#.

  7. #7
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    Quote Originally Posted by abachler View Post
    Java and C# are the easy button of programming languages. Great for writing flash ads that try to sell natural male enhancements, but not really for serious high performance computing. I don't think Java has support for CUDA is what I'm saying. i also don't think anyone is tarded enough to write an OS in C#.
    I'm not particularly certain that you could write a kernel in a language that operates on a run-time environment.

    To the OP:

    The fact is that different languages are used for different things. All biases aside, for people that (somehow) got comfortable with Java's syntax would find that Java is a more suitable language for certain non-hardware critical tasks. It does currently support features in its standard libraries that are not yet standard in C++ and can make things a whole lot easier. Not to mention that it's more easily distributable amongst operating systems that support the JRE. That said, C++ definitely has its place in the world and likely will for a very long time... it's highly portable, extensible, can be compiled into basically any assembly language and works with no-overhead. This is important for hardware and its while any technical documents you'll see made by Intel, nVidia, and AMD will always be in C++.
    Last edited by SlyMaelstrom; 09-16-2009 at 01:20 AM.
    Sent from my iPadŽ

  8. #8
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    C/C++ is like sex, just because its been around a long time doesn't mean it isn't the best way to do things

  9. #9
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    i also don't think anyone is tarded enough to write an OS in C#.
    There are some.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  10. #10
    Malum in se abachler's Avatar
    Join Date
    Apr 2007
    Posts
    3,195
    Quote Originally Posted by CornedBee View Post
    My question is how did they actually get it to compile to a RAW binary file which is bootable? I mean C# is managed code, which means it runs in a virtual machine, hence why I wont even bother learning to write Hello World in it.
    Last edited by abachler; 09-16-2009 at 04:11 AM.

  11. #11
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Singularity bootstraps in native code not written in C#. But at least one of the others uses a specially modified compiler that will precompile the bootstrap C# code to native code.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  12. #12
    Registered User
    Join Date
    Oct 2008
    Posts
    1,262
    I am stunned reading this topic. Normally it's the complete opposite. If anybody would tell me to use C# or Java I would laugh at their face as though they'd just ........ed on themselves. Actually, it might very well be a more shameful thing to say such a thing than to ........ on oneself.
    Professors that are that clueless? W-o-w. Go to another school

    When I had to look for a university, first I looked at one. It looked okay, but not amazing. But nothing about coding. So I went to one of the students and just asked them: What language is primarily used here? Java, he said. And without hesitation I scrapped that school from the list of potentials.
    The next one taught C++. Heck, even some assembly. Sure, you might get some Java in one class, but they don't even bother giving a lecture about it. Well, yeah, one was dedicated on some basic Java stuff. You were assumed to be smart enough to figure out how Java worked, since you know C++.
    I would LOVE to see that done by a java coder; give them a C++ compiler, tell them how to compile programs, and let them find out the rest for themselves. Half the class would probably be found hanging from the ceiling with a rope around their necks.

    I have a strong opinion on some languages. Like Java and C#; I just don't like them very much. I'd rather code my projects in Assembly than that. But I'm not saying they're useless: they might still be useful for the right task. But rarely is it actually STUPID to do a task in C++ in stead of C#/Java, while quite often it is very stupid to do a task in C#/Java in stead of C++.

    My advice is, if possible, find another school. A serious one.

  13. #13
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Quote Originally Posted by sarah22 View Post
    My question is, why do most people(students,some teachers) insult/annoy/provoke me for using C++ as my main programming language? Here in my school, I heard that most of the graduating student use java/c# on their thesis. Am I on the wrong track for using C++? Should I stop using it and move to java or C#?
    I think there might be a little truth in their criticisms, but not because Java & C# are better languages than C++, just that there seem to be a lot more job postings for Java & C# now than there are for just C++ by itself, and most of the jobs for C++ only want people with many years of experience, whereas Java & C# jobs look for beginners...
    I think it would definitely help your employability if you learned several different languages.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  14. #14
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by sarah22 View Post
    Here in my school, they always tell me that I suck/lowtech/crazy because I don't code in java or C#.
    Meaning you aren't part of their little sissy club.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  15. #15
    l'Anziano DavidP's Avatar
    Join Date
    Aug 2001
    Location
    Plano, Texas, United States
    Posts
    2,743
    Personally I think you should leave the school and find a new school if its professors are so degrading of C++.

    But since that might not be possible for you (since I don't know your geographical, academic, or financial background), you will have to deal with their criticism for now.

    Considering C++ has been used on a large majority of the world's software products for the last 20 years, know that C++ is an excellent language, and in my mind is far superior to both Java and C#. I do use Java and C# for certain projects, so I will not say I never use them, but I always tend to use C++ as my first choice language.

    I think the problem is C# and Java have much simpler syntax, less ways to shoot yourself in the foot, and more built in libraries; therefore better tools to teach CS.
    I have always disagreed with this notion.

    If you have a child, and you want to teach your child not to touch a hot stove, do you put walls around the stove with windows so your child can only look in? Surely that would disable your child from touching a hot stove, but it would not teach your child anything. Instead, you would firmly teach the principle and the consequences. Most children would get it, but some would still touch the stove once, and the severe 2nd or 3rd degree burn they would receive after touching it once would surely be enough to teach them not to do it again.

    Why this analogy? It's the same in programming. Give the programmer the tool and teach him how to use it properly, don't cut him off, or else he will never learn.

    Sure, Java and C# have tons more libraries...but do we want students to be using those? No...we normally want students to be writing those...hence why even care about whether Java and C# have the libraries?

    In terms of syntax....the syntax is pretty much the same for all 3 languages, and in many cases Java and C# have more complicated syntax because there are extensions to those languages which change their syntax a bit.
    My Website

    "Circular logic is good because it is."

Popular pages Recent additions subscribe to a feed