I plan to start leaving pieces of junk that my computer science teachers say (and have said in the past) on this thread. If you want to rant about college, I would personally like to read it here. Also, I'd like to know what other programmers think about my little rants (Am I the one in the wrong? Am I correct but over-reacting? Or, am I dead-on?)
Well, I started college again this past Monday. I have finished all my core classes - all I have left are some electives. I thought Intro to Java would be a super easy elective class so I added it...
The first day of class, the teacher-lady does the normal first day stuff - she introduces herself, goes over the syllabus, calls role for the only time. Then, she starts talking about what Java is (in _very_ basic terms) and why it is "needed" in the world. She goes to say that C was a popular programming language most computer science majors should have heard of, in which Java has a remotely similar syntax. I can't really argue with that. She then continues to say that C eventually had so many "problems" and was not object-oriented so C++ was created - according to her, by the same people. But, then she goes on to say that C++ eventually had so many problems to arise that the SAME PEOPLE that apparently wrote both C and C++ "came up with Java." Java, according to my new teacher, Java is the end-all programming language that can do anything that "C++ can do while being safer." She said that, "they didn't want to call it C++ ++, so they came up with a new name. And they just picked 'Java'..."
This is only a personal rant (it is after my money and time wasted in classes that will probably never benefit me). However, this professor has a doctoral degree in computer science, but she is telling her students that Denis Ritchie and Bjarne Stroustrup got together with James Gosling at Sun to come up with some new, apparently perfect, programming language? She is telling these new computer science students that Java is everything C++ wishes it would have been - a C++ 2.0, and believes that C/C++ has no room in modern application development.
@superdude: what about guis? i mean i know it can technically take them, but you dont usually see guis that are called with them. however I disagree with RB's professors statement. i compile with g++ (on cygwin) and like to run cmake from the command line
Are you sure she really said "exactly same people"? I guess the intent was to say they all belonged to a group of programmers of languages based on Algol 68, contrary to the LISP crowd which were totally different people. Judging from the broader perspective, C, C++ and Java are really not that far away. Java has its roots much more in C and C++ than in LISP or Prolog, although Paul Graham says it brought C++ programmers halfway to LISP... ;)
However, this professor has a doctoral degree in computer science, but she is telling her students that Denis Ritchie and Bjarne Stroustrup got together with James Gosling at Sun to come up with some new, apparently perfect, programming language?
They didn't get together but they were building their work one on another. In science this is almost like working together. None of them created their language from scratch.
I don't like one-text-line-based command line arguments. The whole phrase "command line" seems wrong to me, or at least very outdated. But I will definitely disagree with anyone who says that some way of passing arguments to a new process is not needed.
The worst is that he's propagating his wrongness to younglings who have never programmed before and he never mentioned that it's traditional to start from 0 in CS. I don't know why you'd do it, since arrays index from 0. It's just not right.
Just had my first Comp Sci 2 class in college, the professor luckily seems to be very knowledgeable about C++ and Java and computer science in general.
But something happened I didn't expect - I asked about coding style, he explained, then I asked about whether he preferred spaces or tabs.
This is where it gets scary. He doesn't seem to believe that the tab character even exists - he seems to only know that when you hit tab, your IDE inserts a certain number of spaces based on the settings. This made my question seem nonsensical to him and I ended the conversation pretending I understood him.
People teaching introductory courses are not typically those high-up in current "know everything about the language they are teaching" yuppity-yup.
Of course, there's nonsense and then there's nonsense. You've got to know the difference.
A good professor of mine taught algorithms. He couldn't write a straight line of code in anything I knew if his life depended on it (AFAIK). But he made good money designing very efficient algorithms, and I learned a lot about the way computation actually works from his assignments.
BTW, it is traditional to start from zero in C (and related languages).
Some higher-level languages realize that the actual starting point is movable, depending on your convenience. C's low-level mentality has trained a lot of minds that starting at zero makes some kind of big difference.
(That said, if you are programming in C, C++, etc, start with zero.)