General question about C++ Programming/Computer Science

This is a discussion on General question about C++ Programming/Computer Science within the A Brief History of Cprogramming.com forums, part of the Community Boards category; Hi again.
Basically, I'm really thinking about changing majors from Computer Science. I'm now going to be starting my 4th ...

General question about C++ Programming/Computer Science

Hi again.

Basically, I'm really thinking about changing majors from Computer Science. I'm now going to be starting my 4th semester at it, and I still have very very basic C++ knowledge and practice at it. I've been at it for 8-10 hours a day my entire winter break and I still am stuck with so many 'programs' not working at all. Compiler errors with no idea why.

I'm just looking for some information as how programming or Computer Science is in real industry, not in school.

My college only teaches C++ for 4 months, during my 1st semester. They taught from "Hello World" to introduction to pointers, (with flow of control, declarations, basic stuff in between). We never really used and of them in any programs, just read from the book up to there. After that, every other course has been a lecture on basic computer theory. We never code again.

I tried talking to my CS advisers, and they admitted that they are not CS majors, (in fact, it seems they never touched Computer Science or programming with a ten foot pole!) They pull out the school's guidlines on CS and repeat it.

My school doesn't help students get work experience till our junior year, basically my 5th semester, and I don't really think I could get a job anyway, with my lack of computer knowledge and programming skills.

I can't get tutor help for coding, since that is only assigned to 1st semester CS students. I ask professors, and they don't answer me in emails or in person, especially since they just teach theory from a book and not code themselves. I've asked my peers, and almost all of them know just about as much as me, save for a few who learned coding a while ago and are just waiting for their degree. They aren't too willing to help out so many people also, (I don't blame them, everyone here is in need of help and ask them...)

I have 3 C++ books, and have been going throught them, but it doesn't help much if I don't have answers to look at and compare to my code, nor a way to find out why my implementation doesn't work, or what that complier error that I'm getting.

I really don't think I'm ever going to be able to get a CS job with the knowledge I got, I'll be graduating in only 2 more years I just don't know how it is in the industry, seems no one does at my school. I'm thinking of just changing majors to Information Technology, or to ensure I actually get a job, change schools and go for business.....

It's not like I slack off or anything like that. I'm good at science and math, which I have to take along with the Computer classes, but for all the studying I do, I seem to get no where with it.

Any information about what to do with programming or Computer Sciene in the work field would be very appreciated. I have no where else to ask. I'm stuck.

If your school really is that bad, I would check to see if it is even accreditted. If it is not, and they try to give the image that they are, you can sue them for false advertising, tuition, and probably the loss of those 2 years of your life.

It is accreditted. I go to NJIT New Jersey Instiute of Technology. Most of the professors do not know coding, or know old forms of code and the last time they really coded was a long time ago. Most only know C at best if they followed coding.

There was this one professor, he asked the class for help to debug his 'examples' when he tried to compile them on the classroom computer and compiler errors popped up. He admitted he didn't know how to program well, and that he never learned C++. That he did C a long time ago, now he just teaches.

We tried to get him fired, transfered, anything to get a real professor. Some of the students went to the head of the department every week to complain and a petition was even passed around. The school just told us he's tenure, that they would hire some tutors we could go to after all our classes were done (instead of letting us go to the tutors during the professor's nonsense lecture). They never hired the tutors, they also told us just ask upperclass students in the Computer Science club for help. It was always "ask the upper class students."

So in the end, we were all given A's. Shoved into the next semester. The professor was transfered to teach CIS 332, which is Basics of Operating Systems instead, a higher up class that I'm going to take with a different professor instead now.....

The final for that class was questions such as "draw how a link list looks and draw how it would look like if you inserted something and removed something." All we had to do was draw boxes and have the arrows going here and there to show "Code in work"

I know I should have just went to a better college, but at the time, I didn't know much about computers nor programing, so I didn't see the warning signs, as if they actually would let me find out during the application process. Not once was I actually able to talk to a CS adviser during the application process a year or so ago.

If your going to one of those fly by night "Tech" schools, I say switch to a regular college. While learning the theory of programming and proper application of technology is far more important then learning coding, coding should still be a very impressed upon part of the curriculum.

If your going to one of those fly by night "Tech" schools, I say switch to a regular college. While learning the theory of programming and proper application of technology is far more important then learning coding, coding should still be a very impressed upon part of the curriculum.

I agree. Unless you are planning on being a PhD and immediately becoming a proffesor and just love the theory, go to a school that emphasizes programming along with theory, cause most likely you are going for a programming job, and if you dont get the training now, you are going to be several years behind your competition when it comes to getting jobs.

I apologize Moderators if I am bumping a thread you don't want bumped, but I still want to add my input.

I went to MTI School of Business & Technology and received an AA in Application Development. I took 1 C class, 2 C++ Classes and 4 VB classes and like 1 programming structure class (putting it all together kinda class).

After walking out of that school with my degree I did not learn till after what the Win32 API was, which is the core to WINDOWS PROGRAMMING!!! Which is pathetic.

I am just saying that learning to code is good, and there aim in the little shops is to spit you out into the market now, but soon as your employer asks you to do something you didn't learn in school your screwed because you didn't learn enough theory to rework things to the way they need to be.

It of it like building blocks. The theory is what teaches you how you can arrange the blocks but without the blocks themselves the theory is worthless. Likewise if you have the blocks but do not know how you can arrange them they are worthless.

I say find a different school. One that teaches the theorys and the coding. The generally ideal way is to introduce a theory and then solidify it with an exercise usinig code. Any school that teaches just one or the other is not worth your time.

"The computer programmer is a creator of universes for which he alone is responsible. Universes of virtually unlimited complexity can be created in the form of computer programs." -- Joseph Weizenbaum.

"If you cannot grok the overall structure of a program while taking a shower, you are not ready to code it." -- Richard Pattis.

I have to agree... sounds like a bad school.

I'm not surprised that some of the professors are not C++ experts. They are probably working on higher-level stuff, and may not do that much actual coding.

However, it is very surprising (and very disturbing) that the advisors tutors & professor's assistants are not more helpful. It is also surprising that your advisors are not CS majors. The advisors at my school (Cal Poly) were all professors in the department.

Things may not be as bad as they seem:
If possible, try to check-out the school's reputation-rating-ranking. And, try to find out what jobs the CS graduates are getting. Maybe you can get some info from your school's placement office. (The last time I tried to dig-up school ratings, I didn't find much... but that was in the pre-internet days.) I sort-of doubt that NJIT really sucks that badly! It is a real university, not a fly-by-night tech school.

It's not unusual for universities to focus on theory. For example, I took Electronic Engineering and they didn't teach me how to repair a TV... or even how TV's work! I'm sure you can major in Mechanical Engineering and not learn how to repair your car. You can learn this stuff in community college... and 2 years of community college will usually give you more practical knowledge than the first two years of university. But, you should be getting a more solid foundation. It is not uncommon to feel like you haven't learned anything. Most graduates seem to have "feelings of inadequacy".

I would assume that a CS student would be required to take at least 4 semesters of programming languages. Maybe 2 semesters of C++, and 2 more semesters with emphisis on specific topics (Graphics, Windows, Databases, etc.), or 2 semesters of another language.

I would also expect a lot of coding required for most of your other CS classes. CS students are often required to to take an OS class and write an OS... How are you going to do that without writing code?

If you really think that NJIT has a lousy CS program, don't change majors. Change schools! A school with a poor CS program is probably week in all technical subjects... It might have an excellent Social Science program,, etc... But, a school named New Jersey Instiute of Technology should be strong in all technical subects.

I still am stuck with so many 'programs' not working at all. Compiler errors with no idea why.

Try working on the way you develop and debug your code.

Start-out with a very small program, and then test-compile and test-run your program every few lines of code. When you write a function, start-out with an empty function that returns some fixed value (if it has a return value). If you develop your code this way, you will always know where your errors are, and you should only have to deal with a few errors at a time. The more experience you get, the more code you can write between tests. But, nobody writes an entire program before testing! You should test every function thoroughly even if you have to write code just to test it. (I don't always do that.)

Also, learn to use your compiler's debugger (to help with run-time errors). You're going to be spending lot's of time programming and debugging over the next few years. A few hours invested in learning your debugger will pay-off quickly.

After walking out of that school with my degree I did not learn till after what the Win32 API was, which is the core to WINDOWS PROGRAMMING!!! Which is pathetic.

Maybe because they taught C++ and not Win32 API. What's the point of teaching a class Win32 API when a 13 year old kid can learn it off the internet in a couple weeks? If you are going to work on a non-microsoft platform, you wouldn't use it anyway.

When they primarily train you in Windows development, not Unix or Mac, and spend a year devoted to Visual Basic then I would say that Win32 API is a big deal. Also, most of your jobs are Windows based as a beginning programmer.