I am currently a sophomore(Grade 10) in High School. I'm pretty sure that I want to go into Computer Science. I am wondering what courses I should try and take in High School to benefit me when I get into college. Also can any of you recommend certain colleges are the United States that have a good computer science department.

Maths is one of the few courses in high school that will prepare you for Computer Science, as it's mostly a mix of Maths and operating a computer. From my experience, working with computers often is the only other real prerequisite (beyond any grade requirements for starting the course you want)

Also with Computer Science you're learning about the math and algorithms behind programming and not just a certain programing language so it doesn't really matter which language you use. It might just make it easier to program in though.

Also with Computer Science you're learning about the math and algorithms behind programming and not just a certain programing language so it doesn't really matter which language you use. It might just make it easier to program in though.

I'm well aware. I am about to graduate so I have gone through that hell. (Damn you theory courses about algorithms, I suck at inductive proofs.) I was referring to his seemingly dislike of java.

Also with Computer Science you're learning about the math and algorithms behind programming and not just a certain programing language so it doesn't really matter which language you use. It might just make it easier to program in though.

Are you kidding?
That's not the case at all.

I would strongly advise a CS degree. Go with something interesting like Physics or Electrical Engineering.
Don't get me wrong, I love CS, but the programs at university are garbage.

Taking CS will just ruin any hopes or dreams you had about life in general. Not because it's difficult, but most universities just pump out degrees so any help desk jockey could get a CS degree.
Preserve your sanity and do something else.

Edited:

I'm a junior in my CS department and we're still learning stupid bullshit in C++ like how to use vectors other lame ass containers that anyone with two brain cells to rub together could have learned within 5 minutes of picking up a C++ book in middle school.

I would strongly advise a CS degree. Go with something interesting like Physics or Electrical Engineering.
Don't get me wrong, I love CS, but the programs at university are garbage.

Taking CS will just ruin any hopes or dreams you had about life in general. Not because it's difficult, but most universities just pump out degrees so any help desk jockey could get a CS degree.
Preserve your sanity and do something else.

Edited:

I'm a junior in my CS department and we're still learning stupid bullshit in C++ like how to use vectors other lame ass containers that anyone with two brain cells to rub together could have learned within 5 minutes of picking up a C++ book in middle school.

What college do you go to? Every major company ive talked to for interviews (Google, MS, Amazon etc) wont give you a second glace if you dont have a CS or Computer Engineering degree.

What college do you go to? Every major company ive talked to for interviews (Google, MS, Amazon etc) wont give you a second glace if you dont have a CS or Computer Engineering degree.

Mines in the college of engineering and taken much more seriously

Yeah I know I need the degree to get a programming job, but you have to wade through so much bullshit in university that I'm second guessing my decision to get a CS degree.

I'm going to Northern Illinois. It's part of the Liberal Arts and Sciences college. That's just their everything else category for everything that isn't engineering, business, education, law, or health services. Other analytic or science majors are also in in that college (e.g. Physics, Biology, Math).

Most people aren't going to agree with me on this but here is my aspect of programming, you should buy some books and teach yourself and get some help here and their on steam and then goto college for something else such as business or hardware.

Most people aren't going to agree with me on this but here is my aspect of programming, you should buy some books and teach yourself and get some help here and their on steam and then goto college for something else such as business or hardware.

I'm starting Computing at Curtin University (Western Australia) this year - in fact, today was my first day.
("Computing" is the generic first year for Computer Science, Software Engineering, Information Technology and Cyber Security)

Throughout my high schooling (high school in Australia is like college in America) teachers always told me to take a math that I would pass, so I can get the highest grades possible.

Don't do this.
Grades are useless, it's credit that counts.

I went against that advice and took the highest mathematics classes I possibly could every year, and it means that I don't have to waste time on maths units at university now.
I see heaps of people doing the same course as me, but having to do maths 135 (algebra) instead of maths 103 (calculus) for the first semester; the teachers tell them not to worry, but I have a feeling they might struggle in the compulsory Statistical Data Analysis unit.

I recommend you aim as high as you can and do the hardest maths you can (without failing).

Also, ignore everything that PvtCupcakes said.
He obviously went to something that we call a "college" here in a Australia (terminology mixup with America); that is, an institution that offers the lowest qualifications in a field of study and hypes it up as an "employable certificate".
If you enrol to an even half-decent college and university, you'll do well.
If you ace those courses, companies like Microsoft will be banging at your door! :)

Also, ignore everything that PvtCupcakes said.
He obviously went to something that we call a "college" here in a Australia (terminology mixup with America); that is, an institution that offers the lowest qualifications in a field of study and hypes it up as an "employable certificate".
If you enrol to an even half-decent college and university, you'll do well.
If you ace those courses, companies like Microsoft will be banging at your door! :)

I feel like your expectations are too high.
Or maybe it's that after five years I'm just really jaded.

The fact is, most kids are idiots with no interest in what they're doing, regardless of where you go.

Take physics and math, and you should really take calculus classes, because most of the professors/lecturers at university will assume that you've already learned it in high school and teach accordingly.

I'm starting Computing at Curtin University (Western Australia) this year - in fact, today was my first day.
("Computing" is the generic first year for Computer Science, Software Engineering, Information Technology and Cyber Security)

Sorry but I stopped at that line and facepalmed for a solid minute. CS is NOT the same as SE, and it's laughable to compare IT to SE or CS at all. I'm in Australia also. Similar first year subjects at a place like Curtin maybe, but at most other unis - and especially better unis for CS in the country, it's not the case.

If you ace those courses, companies like Microsoft will be banging at your door! :)

You're obviously unaware of the competition that there is to land a grad job at a place like Google or Microsoft. Acing subjects isn't enough. Heck if you have a WAM of about 70+ they couldn't give a shit. After they do the initial WAM/GPA cull, it's all down to you.

The fact is, most kids are idiots with no interest in what they're doing, regardless of where you go.

I agree with the "most kids" part, but definitely not the "regardless of where you go."

I'm not sure if it is by design, but here in Western Australia, you don't go to university if you're not interested in the subject. There's no expectation by parents or the wider community for people to go to university.; it's entirely acceptable to go to TAFE and get a Certificate IV in something.

You only go to university if you're interested in what you're going to be doing.
I suspect the majority of students that drop out in the first year (a lot) are the ones who discover that they're not that interested in the subject.

Perhaps I am up-selling the job opportunities a bit... but what I'm saying isn't far from the truth.
Microsoft has employed plenty of people from Curtin University - enough for there to be a "Graduated at Curtin" club. (a few students got starting salaries of US$86,000)

Sorry but I stopped at that line and facepalmed for a solid minute. CS is NOT the same as SE, and it's laughable to compare IT to SE or CS at all. I'm in Australia also. Similar first year subjects at a place like Curtin maybe, but at most other unis - and especially better unis for CS in the country, it's not the case.

It's clear that you lost touch with reality for at least a solid minute.
Computer Science, Software Engineering and Information Technology are heavily rely on mathematics, right? Hence: Mathematics 135 & Mathematics 103.
Computer Science, Software Engineering and Information Technology all require use of statistical analysis to effectively solve problems, hence: Statistical Data Analysis.
Scientists, engineers, and all those who rely on scientific and engineering pursuits must know how to communicate with one another accurately, correct? Hence: Science Communication 101.
All computing projects require knowledge of software development and deployment to maximise the efficiency and return, hence: Software Engineering 110.
Software Engineering and Computer Science requires knowledge of programming (and knowing it for Information Technology doesn't hurt), hence: Object Oriented Program Design.

Teach the common elements in the first year, and then let students decide which area they wish to specialise in: I imagine that's what Curtin's reasoning behind the choice was.

You're obviously unaware of the competition that there is to land a grad job at a place like Google or Microsoft. Acing subjects isn't enough. Heck if you have a WAM of about 70+ they couldn't give a shit. After they do the initial WAM/GPA cull, it's all down to you.

I refer you to my answer to ROBO_DONUT..
Microsoft employed 7 people last year straight out of Curtin.

Can you not read? I said that grad jobs are obviously available, just hard to get, and that marks are not the most important thing once you reach their GPA/WAM cutoff. 7, wow, out of how many, hundreds? Great success rate there. Also link to where it says how many they employed, I'm interested, and in what roles, FT or grad program? If you think a job at a large tier business is easy to get - good luck, you're going to need it.

If you ace those courses, companies like Microsoft will be banging at your door! :)

Curtin University isn't large. I estimate there were at most 100 students (CS+SE+IT) who received a Bachelor of Science (Computing) last year.
7 out of 100 is a pretty good chance.
And Microsoft isn't the only company out there, there are plenty of small time ones.

And this is where I realise that the only point of arguing with you is to enlighten others of your mistakes.
It would seem that with experience, you've become fixed in your ways.

Any science/engineering job - in fact, every job - can be done better with use of statistics.
The application of statistical analysis is so incredibly huge that I cannot begin to explain it without it sounding magical.
Yes, IT jobs can be done without statistics, but not efficiently.

Basic example: deciding the number of servers to be used.
You need to factor in the demand, the initial cost, the cost of maintenance, the average traffic, the traffic at peak times, the power usage, etc etc..

Are you familiar with "optimisation"? Not in the sense of making code execute faster, but in the mathematical sense of adjusting variables in an equation to make it approach an optimal solution.
You should look it up if you didn't learn it in highschool.

I don't know which university you are looking at, but at mine IT is quite similar to CS&E. The main difference is that it seems that IT is more diverse(got some courses on computer hardware, management and so on), compare to CS&E which main focus is on programming and math.

This. The term "IT" covers a very broad spectrum - every institution defines it differently.

Wrong, very little maths in IT.
Wrong, almost no stats in IT.
Wrong, IT involves very little software development.
Wrong, you won't necessarily use an OOP language at uni.
CS and SE, yeah common first year for the most part. IT, no, very different field.

I don't know which university you are looking at, but at mine IT is quite similar to CS&E. The main difference is that it seems that IT is more diverse(got some courses on computer hardware, management and so on), compare to CS&E which main focus is on programming and math.

And Microsoft isn't the only company out there, there are plenty of small time ones.

Well when you bring small time ones into it it's obviously not an issue, you miss my point, I'm not saying CS/SE jobs are hard to get, I'm saying high end/top tier CS jobs are.

A 7% chance isn't that great. It's not bad, but not that great either. Like I've said so many times in this thread, you don't seem to understand or even comment on the fact that WAM/GPA is not important, once you're past the cutoff it's everything else that matters. Also again, link to the 7/100 students info? And you don't mention whether FT or grad position?

With regards to the stats, you haven't taken the subject, so why are you commenting on it and its apparent importance? You don't even know the content of the course. Stats at university is different to stats in high school. A lot of it is calculus based and most if not all people in IT won't need it. It would help on occasion, but it's not part of the vast majority of IT syllabus' for a reason.

Same at our university as well. IT and Computer Science and Engineering are separate from each other. But share many courses. Let me find some lists.

I don't know which university you are looking at, but at mine IT is quite similar to CS&E. The main difference is that it seems that IT is more diverse(got some courses on computer hardware, management and so on), compare to CS&E which main focus is on programming and math.

In Australia, IT and CS&E are totally different. IT focuses on the hardware side of things/business side of things and not a whole lot more. Some basic programming perhaps, but not a lot. Employers like Google and MS clearly state on their employment pages before you even apply, in no uncertain terms "CS/SE degree or gtfo". You will not get past the first round without a CS/SE degree.

EDIT: Mind linking me to the course outline for your degree? The B.Sc(Computing) seems like such a terrible name. What do they confer SE degrees as? Does the SE/CS/IT all come under the one degree of a B.Sc(Computing), so no matter which path you go down you get the B.Sc(Computing)?

EDIT: Mind linking me to the course outline for your degree? The B.Sc(Computing) seems like such a terrible name. What do they confer SE degrees as? Does the SE/CS/IT all come under the one degree of a B.Sc(Computing), so no matter which path you go down you get the B.Sc(Computing)?

If you manage to finish all your courses, get all 300 credits and to pass your bachelor degree project and masters degree project you end up with a Master of Science degree in the field you have wished to specialize in.

Coming from an employer, what your major is dosen't matter as much as if you have or don't have a degree, especially in the industry we are talking about.

My bad, while it might be like that in the US (or wherever you're from), I'm talking about employment in Australia - the difference in Australia isn't the major, they're actually totally different degrees. A CS degree is a Bachelor of Science. A SE degree is a Bachelor of Engineering. An IT degree is neither, it's just IT in most cases.

CS/SE are really similar despite being different degrees, but of course they do have their differences - most top unis have a 4 year SE program as opposed to a 3 year CS program, so they will lead to slightly different employment areas - athough like I said employers like Google/MS don't mind if you have a CS or SE degree.

Yeah in the US college is university I think. High school is still like high school over here.

In the US, "college" as its own term refers to either a college or a university. We just say "I'm going to college" or "I'm looking at colleges", however in the way institutes of higher learning are named it makes a difference. A college is an institute that doesn't have a graduate school, while a university does.

(I'm led to believe) The difference is that a high-school graduation offers more "qualifications" than the same in America.
This is an assumption based on what I've heard from people in America... so I could be wrong.

I was oversimplifying the relationship to help convey my advice to Doritos_Man.

(Edit: Oh, and am I correct in assuming it goes high school -> college -> university in America?)

I'm starting Engineering next week. Got a 9 hour long orientation program tomorrow. I'm going to be completely dead due to the Guild O-day today.

Regarding Software Engineering vs Computer Science. Software Engineering starts, like with all engineering disciples, with a foundation year, which is what I'm going through this year.

Foundation year composes of every single branch of engineering and all their required prior knowledge packed into one year so I'm going to be learning things like Chemistry, Materials, Design, Electronics and stuff like that. These things may or may not be relevant to each course and hence people may feel (like my brother who has a bachelor of science, computer science) that it's more efficient to just take the Computer Science degree and skip this engineering garblygoop.

For people like me on the other hand, it's a godsend due to me being undecided between Mechatronic and Software and they allow you to change focus at the end of this foundation year without hassle.

(I'm led to believe) The difference is that a high-school graduation offers more "qualifications" than the same in America.
This is an assumption based on what I've heard from people in America... so I could be wrong.

High School education in the US is pretty garbage, but I'm not inclined to believe it's any better anywhere else. Every time someone tries to argue that it's better where they live, it just sounds more rigid, and the last thing people need is more rigidity, rote memorization, and unquestioning acceptance of whatever they're told.

I'm starting Engineering next week. Got a 9 hour long orientation program tomorrow. I'm going to be completely dead due to the Guild O-day today.

Regarding Software Engineering vs Computer Science. Software Engineering starts, like with all engineering disciples, with a foundation year, which is what I'm going through this year.

Foundation year composes of every single branch of engineering and all their required prior knowledge packed into one year so I'm going to be learning things like Chemistry, Materials, Design, Electronics and stuff like that. These things may or may not be relevant to each course and hence people may feel (like my brother who has a bachelor of science, computer science) that it's more efficient to just take the Computer Science degree and skip this engineering garblygoop.

For people like me on the other hand, it's a godsend due to me being undecided between Mechatronic and Software and they allow you to change focus at the end of this foundation year without hassle.