Comp Sci Programs at Junior Colleges?
An anonymous reader asks: "What place does a Computer Science Department play in a Community College? I recently started taking classes out of an interest in learning new things and getting a few college credits toward my first degree. I come to find out (only 1 semester after I started) that none of these credits will transfer to a bachelor's degree at one of our state schools. Many of the courses here are 'applied technology' such as Linux Administration/Installation or Web programming with PHP, but the local University only accepts their own 'theory based' courses such as Data Structures, Theory of operating systems, and so forth. I was wondering where a community college fits in, has anyone seen a great community college program recently and if anyone knows how these programs are designed?"
Those 'applied technology' courses are IT courses. The 'theory based' courses are CS courses. That's usually a different department. You should ask the university if they offer IT courses and what is comparable to the ones in the community college. I know that in Maryland, the community colleges don't offer much in CS.
I don't know your state, but I know that in Maryland, the community colleges, colleges, and universities have a shared system. You are guaranteed that any course you take in a state community college will transfer to any state school (and most non-state schools too).
PHP programming and linux admin (or any kindof admin) are not computer science disciplines.
The things they want (data structures etc) are. A more abstract layer that can be practically applied in any programming language.
Computer science is, funnily enough, more about the science.
You seem surprised that computer science is theory based...I'm afraid (at least from my own degree and others in surrounding universities) it largely is. The programming parts are merely to allow a practical presentation of the theory learned.
They generally expect you to pick up languages by yourself (you may get a quick introduction your first semester but you'll probably be handed a book and told to go read) and whilst you will probably be taught a smattering of unix, it won't be from a sysadmin point of view it will be from an IPC / pipes / OS theory / thread handling slant.
I'm not from the USA so I can't comment on community college courses but I would suggest you double check the Computer Science courses you're looking at to ensure it is actually what you want to do...better now than getting there and realising it's not what you thought.
Kev
As a soon to be graduate from the Compute Science program at Algonquin College I can tell you that even though it has course like Data Structures, Compilers, etc... Local Universities only give you a few credits and that's for the math and physics in the first year of the program.
Universities often times don't like Colleges
A psychopath can't tell the difference between right and wrong. A sociopath knows the difference - he just doesn't care.
For students planning to go to 4-year schools, junior and community colleges offer what California schools call "general education" requirements: English, calculus, etc. Offering the type of CS class that a 4-year school would offer would be too specialized for them.
If your plan is to get a job right away learning skills you can pick up quickly, then that's what the CC CS classes are for. If you are looking for credits that will apply toward a bachelor's degree, they are probably in more general things like English, math, and science. In a community college, it is usually cheaper, and you get those things out of the way so you can focus on your major-related classes once you transfer.
Good luck!
Straight goods:
The community college courses are for those that want to get into existing technology. University courses are for those that want to develop new techology. The bottom of both barrels work help desk.
what you're final goal is. If you're looking for a degree, then yes, check before hand if any credits you're getting will transfer over. However, if you're goal is a job, then you have to look at what the qualifications are for the jobs you're interested in. Do they require a university degree or will a technical type diploma suffice? Do you have experience?
I completed most of a University degree but got fed up with the fact that all I was learning was theory, I really had very little idea how computers worked and had next to no programming knowledge. I worked part time at a local computer store putting together and fixing PCs. I picked up a help desk contract and started doing a lot of learning on my own. I'm now in a fairly senior tehcnical position (actually, the next step up is management). The university classes didn't really help, except to network and learn from things other students did in their spare time. What helped me was experience and proof I did learning on my own.
The technical solution was to go through the standards for college and university courses, and match them at that level, so the university can now say "Joe Student has taken COL-231 and COL-233, which matches out UNI-206 course".
Net results? The Universities are now cooperating nicely with the Colleges. Notably Seneca (College), which opened their new campus at York (University)
--dave
davecb@spamcop.net
Forget CS at the community college level. In today's world, you need a BS. Really, you need a Masters, but you can work on that later. Instead of thinking about an Associate CS "degree", think about getting a whole lot of prerequisites out of the way at a much lower per credit cost, than transfer to a respectable 4 year college and finish up with a decent BS.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
I can't imagine a community college computer science cirriculum of any kind. One of the first computer science courses you have to take is Discrete Math, covering basic boolean logic and set theory, and the university students I was with whined enough as it is; I suspect a community college would simply revolt.
...?), but that'll be it. Of course you can find tons of courses that transfer to non-CS requirements, but I assume you knew that.
Computer science is simply too hard and too specialized to fit into a "community college", and any community college teaching it is either out of its league and something you should stay well away from, or trying to transition away from "community college" to true University. I don't know if that ever happens, but it sounds plausible.
If you're lucky they may have one course that transfers, maybe two (intro to C++ and
Of course, if you don't want to learn math, no sarcasm, stay where you are. If you're another person who's like, "Why should I learn more math, it's never useful anyways?", and you don't have any kind of open mind about the possibility of being wrong, then you are where you belong, again, no sarcasm. Personally, I find computer science courses highly and directly relevant to programming, especially programming in a high-powered and very abstract and useful way, but I am distinctly in the minority.
(And even so, a lot of it can be learned outside of school, though you will still miss a lot unless you have a lot of discipline... I've yet to meet someone online who truly grasps the computational complexity of algorithms who didn't learn some of it in school, for instance, though I've seen a lot of people who think they do but prove they don't within two or three sentences..)
Working in the IT arena for over 15 years at numerous companies and responsible for the hiring of resources for many of them, I can tell that you are probably better off taking the 'applied technology' (hands-on) courses. While a degree might help get you through the HR trolls, managers prefer experience and current/relevent industry certification.
Go for the degree if you want the piece of paper (and a well-rounded education), but remember that it won't guarantee you a job.
go ahead and get your A.A./A.S. ... once you have a degree it sort of "locks in" your level of expertise. You'd have much better success tansferring in as a junior with an A.A. instead of "just some classes"
meh
What you're describing are more along the lines of a vocational or an MIS-type of curriculum. Heavy on specific technologies, light on the theoretical underpinnings of same. If you're serious about CS, go somewhere with a good theoretical focus. You may want to find somewhere that strikes some balance with practical application (see also: software engineering), especially if you want to, say, work for a living, instead of do graduate studies, but you do need a theoretical basis for that. It makes a big difference to have some understanding of the whys behind the whats of doing your job.
Whether or not that's inextricably bound up with a degree from someplace that doesn't call itself a community college, I don't know. I'd bet you'll have better luck with a satellite school of a larger state university than with a community college.
Canthros
That said, other states do things differently: the cc system is specifically set up as a "feeder" to the larger public universities. In many cases, your 2 years at cc give you 2 years credit at the uni.
This may not help you, but to others, please check before hand about your local cc and transfer credits. We see lots of students who waste two years (of time and money) and get nothing at the next level.
You should definitely look and see if this stuff will transfer to a CIS degree, because it seems to be a lot more of what you're learning. CIS is the practical application of computer science, where you learn configuration, setup and not the theory behind it all.
If you are going to transfer to a 4 year, the AA might make you feel good, but is otherwise worthless. What counts is transferable course work. You can in fact do much better than an AA (if you intend on transferring) by maximizing your transferable credits. An AA with a shitty GPA will not get you into a 4 year. An AA with a decent GPA is no better than a butt-load of transferable credits with a decent GPA. Go for transferable credits.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
I received a 2-year degree from a Massachusetts community college back in the early 90s, at a school which had tailored the program specifically for transfering to a 4-year school. They even had agreements with many schools such that as long as you had a 3.0 or higher GPA, you were guaranteed a transfer into the school.
... looks like my favorite professor is still hanging around there!
I was at Springfield Technical Community College, and transfered the degree to WPI, where I eventually ended up getting my MS in CS. I absolutely feel my 2 years at STCC were no handicap to me in my academic knowledge.
URLs:
List of transfer programs
CS Transfer Program
I actually feel I got an excellent grounding in CS from my introduction at the community college. I had, like you say, a Data Structures class. It was taught using C++, so I picked up some practical knowledge to go with the theory. Same with the introductory programming class, which used Pascal. Same with the machine language class, which had theory elements.
Basically I came out of the school with all the math I needed for a BS in CS (including linear algebra, DiffEQs, and discrete math), almost all of the science, and almost all of the humanities classes. I was a litle behind in CS theory classes, so when I got to WPI as a "Junior" I ended up enrolled in a couple "Sophomore" CS classes to catch up. It was really no big deal, and I had a little more practical knowledge than some of my classmates, too, because WPI at the time wasn't teaching C++ to its freshmen and sophomores.
Considering I saved, oh, maybe 15K+ each year by taking the first two years at a CC, I'm thrilled with how it worked out. Plus I could overload and take even more classes, at a cheaper cost per credit.
There's definitely a place for Community Colleges in science and engineering. You just need a program designed around it. Maybe your state has something similar....
Not representing or approved by my company or anybody else.
Community Colleges are a great place to pick up your core curriculum that will cost 2 to 3 times as much to get at a University. You can generally get a couple semesters worth of English, Math, and other courses that will transfer to your University of choice. As always make sure that the courses you plan to take at your Community College will transfer to the University before you pay for them.
At the junior college I attended (http://www.llcc.edu/), there were two types of computer science degrees. The first was the A.A.S. which was the applied degree. The second (the one you would be interested in) was the A.S. degree.
The A.S. usually has the transferrable credits. In my case, almost all of my courses transferred. LLCC (Lincoln Land Community College) is almost right next door to the University of Illinois at Springfield and they have a close working relationship. Most of the people that attend LLCC go on to attend UIS, so the courses are designed accordingly. My advice would be to seek out a junior college that has a similar set up. Also, be sure to talk to the college advisors since very often they will have access to the course catalogues for other state schools.
Don't be afraid to call any prospective universities and speak to an advisor. Explain that you will be a transfer student and ask if there are courses that you can take at your current school that will transfer. Sometimes the person with whom you speak will be the same person that determines what courses the school will accept as transfer credit.
Also, junior colleges are much cheaper than four-year institutions. In Illinois, if you get a A.A. or an A.S. at a junior college, then usually any general education requirements that you would have needed to fulfill at the university level are considered completed. See if you can take advantage of any similar arrangements in your location.
The Moo went "Cow!"
I guess it depens on where you are. Here in SE Virginia out community colleges (TCC) teach both the theroy based classes needed for the CS degree. And the pratical application classes (MIS/IT) that you are describing.
TCC even offers an Associates in Computer Science, but again as others have said, this is a theroy based degree.
- Practical courses, e.g. DNS and BIND
- Current hottest technologies
- Immediate job skills
A university is about a foundation of theoretical knowledge. You don't go to university to be trained for a job, you go to learn the knowledge to understand a field. Universities offer:- Theory-based courses, e.g. Networking
- Exposure to good technologies, not necessarily the latest hottest thing
- Related knowledge, such as mathematics
- No specific job skills
At a university they won't teach you the specific skills you'll need to get a job. That does not mean you won't have job skills by the time you graduate. You're expected to learn the theory in class and learn the practical job-skill aspects on your own. If you aren't comfortable with that responsibility, a university degree is not for you.I am going to a community college majoring in IT with a Unix/Linux concentration. I am finding that I wish I'd gone into another major, like graphic arts or English or something.
I basically did it because I figured since I'm a computer geek, I may as well get a degree in it. However, I've found that the IT program at my school sucks. 40% of the students have left the IT program in the last year. Most of the credits will not transfer to another school, so if I go to a CS program I might have to start from scratch. And I do want to study CS more than IT.
In retrospect, I am thinking I should have used the comm. college to broaden my horizons a bit before concentrating on getting a BS in my chosen field.
I don't mean any disrespect to them, but I suspect that the other departments are not as inferior to their 4-year school counterparts as the IT/CS departments at a CC. Perhaps majoring in something like math at a CC will help you in your quest for a BS. It would be more likely to transfer credits, anyways.
For anyone in New Jersey looking for what classes do and don't transfer to and from community colleges to the four year schools in the state, check NJ Transfer at http://www.njtransfer.org/. A most invaluable resource.
Th
actually, it's my experience that most CS majors have significant background in it/programming before they even start university; it's this background that's often the driving force behind choosing CS
/bin/fortune | slashdotsig.sh
Does the University recognize the acediting body of the jr. college. If so - then the courses transfer. The problem is that most jr. colleges are acedited by a state body, and therefor don't cross state lines because California is likely not to recognize the legitimacy of a Texas body saying what has to be in a Political Science class
I have mod points and I am not afraid to use them
At my university they do offer courses in the computer science department very similar to those you described, usually under the heading of CSC 191: Special Topics (examples this semester: "Unix Systems Administration" and a course on Perl). They're typically half a semester long, worth 1.5 credit-hours (normal classes are worth 3, sometimes 4) and are explicitly excluded from being counted towards the computer science major. They're purely elective.
The World Wide Web is dying. Soon, we shall have only the Internet.
I teach part time at a community college and we have courses that transfer and courses that do not. The ones I teach all transfer to the big schools so students can save a bit of money getting the lower division course work out of the way. We work closely with the larger universities in the area to ensure that we cover all the required material so that our students are properly prepared when they transfer.
ALWAYS check with atleast 3 people whether the credits will transfer.
also if they say no, talk to someone else. there is no real RULE for credit transfer, in my experience it is mostly based on whether the advisor got cut off on the way to work etc.
In California, courses from jr colleges are transferable to state colleges; however, you need to choose CS classes, not IT classes. My jr college had both an CS and an IT department. I earned an Associates degree from the CS department. I was able to transer all my C, Ada, physics, calculus, and English credits over to the state school, where I earned a Bachellors.
This is the preferred path, since classes in jr colleges are generally smaller than those in 4 yr colleges. It's been shown that students that spend their first two years in jr college do better than their friends who dive stright into 4 year schools. Besides which, it costs a lot less.
I dropped out of school in '96 (with a decent job, who needs stinkin' school!).
Then I was laid off in 2001 ("sorry, we don't hire non-college graduates")
So now I'm going back to the local Community College and will transfer to complete a Computer Information Systems degree at Cal State San Bernardino. From all the advice that I'm getting, everyone is saying that you should get an AA degree before leaving community college. The requirements change at the universities all the time so once you complete your AA degree they can't take away any of those classes that you completed.
--Ajay
Technical schools, like the US's community college structure, are about how to do things. Like how to make a DLL. Universities, like the University of Calgary, Saskatchewan, Alberta, etc, focus in the why. As in, why you should make a DLL, and why is it possible to make a DLL.
;) In University, the focus is always on theory. Theory of data structures, algorithms, logic, digital circuits, machine design, OS algorithms and stuctures, security, etc. It's all the kind of stuff easily transferable to any language or problem, as well.
The stated goal of a University is to never teach anything practical. Read that twice if you don't get the joke
In University, assignments are handed out merely as a guideline towards what you should understand and know for the final exam (which is typically 50% or more of your final grade). At the Usask CS dept, CMPT 214 is a good example of this. In the course they introduce people to Unix OSes, Bash, C, and Perl. They don't lecture very much on Bash, C, or Perl, except to go other a little of what's different compared to other languages. Mainly they focus on why you should use a different tool for a different job, Unix theory in general, etc.
You'll find that these courses are much more interesting than applied technology courses because they get you thinking about the reasons for things; you're never handed something and said it's magic (except for a bit in first year, but you can always research it yourself). With a real CS degree, you're also much more marketable. People who can run a Unix machine are a dime a dozen compared to people who understand Unix machines to the point where they can write their own kernel modifications and so on.
Similarly, people who can't transfer anything they learn across language barriers are the majority of for-hire programmers out there. In the IT food chain, these guys get the implementation detail jobs. People with CS degrees get the design, coordination, project management, etc, positions: the good ones, the ones which pay about double per year.
Plus, you can always go into post grad studies and take our collective CS knowledge further. Don't waste your time in a technical college if any of this interests you.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
"Computer Science is no more about computers than astronomy is about telescopes"
--Edsger Dijkstra
Having gone to school and worked at the same Community College since Fall 2002, and having a parent who has gone to school, graduated, and now teaches at that same community college, I can give you a bit of perspective.
Most students go to there for skills, not so much for degrees. If you want to use a CC as a cheap jumping-off point for a four-year institution, check with your counselors to see if they have a direct-transfer or three-and-one programs with the school you want to transfer to. That way, you'll know you're taking classes that will transfer.
tasks(723) drafts(105) languages(484) examples(29106)
CS is about being able to advance the state of the art. It's related to IT in very much the same way physics is related to auto mechanics: you need to understand *some* physics to be any good at auto mechanics, but you're not going to be up for a Nobel prize anytime soon, and you'll probably stand there like a deer in headlights if people start trotting out Maxwell's equations.
However, most people who study CS and get degrees in the field are really not all that different from before they got the degree. CS, like most other sciences, is not very useful at the baccalaureate level; it only begins to have real application to real tasks once you get into the graduate level, and it doesn't come into its own until you get deeply into the post-graduate work. (Nobody is impressed by a bachelor's in physics or biology, either; strangely enough, I meet a lot of bartenders that have those.)
So if you're not planning to go for the doctorate, target the general area where you want to work: CS people are usually at a desk creating software, and IT people are usually in the basement monitoring hardware. If you don't really like either of those things, look into certifications; once you get into the Real World (TM), anything less than a master's degree is just a label that tells them where you "belong". Find people that are where you want to be, and get what they have.
Microsoft cheerleader, blue flag waving, you got a problem with that?
What are you expecting? Community colleges are 2 yr colleges and only really going to offer classes you'd take in the first 2 yr of university. If you look at 100 and 200 level courses in most university CS departments, there's not a lot of material there. Essentially you're looking at introductory programming classes and maybe a little bit of basic theory.
While I'm suprised that there's nothing you can take that will transfer over, you shouldn't be suprised that you're not getting much CS-specific stuff. In most places, geting your asociates degree from a CC doesn't really 'transfer' credits, it simply waives the university's general requirements - that core set of classess that all students must take.
Beyond that, if you're transfering credits between any two schools, you're going to get screwed. It's never 100%. On top of courses not transfering, things that were requirements at one school might not be required at another and things like that. Based on my experience & people I've talked to, you're generally looking at around 80% of credits transfering over - less if, like in your case, you're taking non-academic classes.
my sig's at the bottom of the page.
Computer Science is a branch of Mathematics. This confuses a lot of people who have different ideas of what Math is, and it apparently confuses a lot of Slashdotters too. To Joe Public, Math={Algebra, Trig, maybe high-school Calculus}. It confuses my Mechanical Engineering friends, because to them Math={DiffEq, Numerical Analysis, etc.}. The confusion comes from the fact that Computer Science doesn't "look" like those other branches of Math. More often than not, there are no numbers involved. Computer Science has little to do with the things you can percieve when you use a computer. It has little to do with hardware or applications or anything you can type in, click on, plug in, email, or listen to.
Off the top of my head, these areas fall under the umbrella of Computer Science:
- Discrete Math (this is the heart of CS because lots of stuff gets lumped in here including propositional logic, relational algebra, combinatorics, graph theory, automata and formal languages, computational cost analysis, upper/lower bounds, sorting and searching, data structures, and anything else that I can't think of right now)
- Linear Algebra (algorithms for solving systems of linear equations, matrix operations)
- Abstract (aka Modern) Algebra (functions/relations, groups/fields/rings)
Some of the areas of "Applied Theory" which build on the previous list and might be considered a part of Computer Science:- Languages (compiled vs. interpreted, functional, procedural, object-oriented, etc.)
- Compilers (language structure, parsers, data-flow analysis)
- Databases (file structures, Entity-Relationship modeling, indexing/hashing/trees)
- Operating systems (scheduling, memory management, file systems, loaders/linkers/assemblers)
- Graphics (2- and 3-D transformations, planes and curved surfaces, ray tracing, etc.)
- Computer Architecture (Von Neuman (sp?), instruction sets, fetch/decode/store, I/O and memory)
- Communication theory (packetizing, error-checking, error-correction, compression)
- Digital Logic (circuits, state-machine design, control units)
And finally, "Applied Technology" which builds upon the previous list but is so far removed from real Computer Science that they are nothing more than trade skills:*None of the above should be taken as comprehensive, authoritative, or even accurate.
I have found there are just two ways to go.
It all comes down to livin' fast or dyin' slow. -REK, Jr.
I attended a community college for my first 2 years for economic reasons since I was self funding my education. You can really only do this for your college basics i.e. classes everyone has to take: English Lit, Music appreciation, underwater basket weaving, etc... I then was able to transfer every credit of that to a University. At the time in my state there were 2 things to look for. First is a system where all schools have a standard for each class and are "certified" to be transferable. Second, is an agreement between the community college and the University you wish to attend where MUS101 at the community college = MUS101 at the University. I did the second choice as my local CC wasn't certified. I literally went to the University for guidance and they had a sheet with the course mappings.
It was much cheaper (about 1/4 the cost) for the first 2 years, but I do think I missed the "college experience".
I took a 2-year programming course at Medicine Hat College. Some of the required classes (the Excel one and the Linux Admin. one) could be replaced with courses that do transfer (Calculus I and Intro to Comp. Sci I and II, I believe). I was lucky, though. Although the course was centred around VB.Net, Java, and a little bit of C++ the teachers were good at making sure the concepts behind the languages were explained.
Another nice thing they had set up is the ability to transfer to some universities and get a full 2 years of credits. They talk about it on the bottom of the page I linked to.
I'm not sure what's going on with that course now, though. They shuffled things around a year after I finished. I doubt I would have gone into the course if the options were the ones being offered now.
I work at a Community College and usually most of the CS courses offered here will transfer. Community Colleges are NOT anything like ITT or other technical schools or schools that just teach MCSE or other certs. If it was not for the fact that most of your AA or AS will transfer, most of our students would leave. Again, it depends on the state or on the school.
Gorkman
This is more than just degree requirements. It seems that you are attending a trade school. In a trade school, they teach you how to do something -- repair cars, service air conditioners, or write code. In a university, you are supposed to be taught the theory behind that.
Granted, many of the crappier universities out there have turned into trade schools, but a CS degree is not supposed to teach you how to code. Computer science is about the theory behind computing. It applies equally whether you are writing in Lisp, assembler, C++, or BASIC.
In a typical CS program, you spend very little time learning to write code (usually no more than two semesters of introductory classes). Most of the time is spent learning mathematical theory (typically calculus, linear algebra, differential equations, probability, and a discrete math course), data structures, numerical methods, operating system theory, language and compiler theory, and perhaps some software engineering stuff. Any decent program should use at least two languages (preferably not as similar as C and Java, but rather something like Lisp).
You will not see a single "Introduction to PHP" class -- if they taught things like this, your BSCS would not be worth much in 2 years. This is the main reason why companies like to hire CS majors to do coding, even though a CS program does not teach coding. Someone who was trained in computer science will have much less trouble switching to a completely different programming language than someone with only vocational training. You don't want to be a one-trick pony.
In new york (or my part of it, anyway), we have a 2+2 program, where a student can take 2 years of junior college courses, get an associates degree, and then be guaranteed a swift transition into a 4 year school. all credit earned at the 2 year goes to the 4 year. so, the student needs only 2 more years at the 4 year. 2+2.
That may be regional. As a minimum, I know Monroe Community College has this arranement with U of R, R.I.T. and a number of others in the area.
Basically, junior college CS programs aren't designed for the same thing as those in universities. Find out what general (and not-so-general) classes you'll need for prerequisites after transferring, and try to knock those out of the way.
At the JC I attended, there were separate CS and IS departments. CS was there for "programming" and IS was there for "job skills". The really important stuff was all in the math department.
One thing I noticed once I had transferred, and this may just be a symptom of the particular university, but the transfer students in general had a better grip on basic math (ie calculus and discrete math) than the students who entered university as freshmen. The moral of the story is that universities focus more on the upper-division (ie interesting) stuff than the intro classes, and JC's are good for intro classes if you know how to game the system.
My HOUSEHOLD APPLIANCE is on DRUGS.
Being able to stack up university credits...
or
Being able to do a job that (hopefully)
companies are willing to pay your heaps for doing
(or - in the absence of such companies, near you
- being able to start a business based on such
skills & knowledge in the industry... and -
if you do it well - make more money than in a job)?
You decide...
This needs an Insightful mod. Where are my moderator points when I need them?
"This mission is too important to allow you to jeopardize it." -- HAL
I can tell you that a degree at the Hollywood Upstairs Medical College is not as highly regarded as you might think.
It's simple: I demand prosecution for torture.
I know somebody has probably already said this, but I'll reiterate:
1. check with the University you want to transfer too, *before* taking classes somewhere else (including another University) regading transfer credit.
2. What transfers ultimately depends on the school accepting the would-be transfer credits, but some observations:
a. "general ed" courses from CC's usually transfer with no problem. That is, the courses that you would typically take in the first two years of a "liberal arts" degree. Stuff like English, Literature, History, Political Science, Physical Geography, Biology, Maths courses, etc.
b. Usually *some* maths courses will transfer, but check **ahead of time** to find out exactly which ones.
c. The University may have a cap on the total number of hours they will accept, and it may vary based on where the transfer classes were taken.
d. "trade" classes usually don't transfer, sometimes classes will count for hours but not for specific course credit, etc. Again, check with your target university (or universities) beforehand.
e. But a "trade" course may still be useful, even if you don't get course credit for it. For example, if you have taken 3 semesters of Java programming at a CC, you may be able to argue your way out of taking "Intro to Programming" at the University, which would free you up to take another elective in that spot. This would vary by case though.
To use my own example, I'm currently taking classes at Wake Technical Community College, and Durham Tech, and planning to transfer to UNC - Chapel Hill. I found this and this while browsing the section of UNC's website that talks about transfer admissions. Look for similar material on your University's website, or call them and ask to speak to an admissions counselor.
3. Taking classes at a community college can be a great thing. You usually pay less (sometimes much less), and usually have smaller classes - which is especially nice for challenging classes where you may want more one on one interaction with the instructor.
// TODO: Insert Cool Sig
Lane Community College near the People's Republic of Eugene, Oregon has an excellent Computer Technology programs in the CIT department. Options include a 2-year Computer Programming degree if you want to be a VB/Java code monkey, as well as Computer Network Operations and Computer User Support programs..
Most of the courses are fully transferable to Oregon universities, and they offer a transfer program for Computer Science students which basically covers most of the lower-division requirements for most CIS programs, including discrete mathematics and introductory computer science courses.
In two years and a term, I earned the AAOT (and, well, the AGS... I could apply for the AS degree too - I collect associate degrees, I guess) which guaranteed that I'd meet group requirements as set forth by the University of Oregon's degree requirements, in addition to filling out the requirements of the direct transfer. It worked out well, and I am now a senior in CIS at the UO.
"Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
I can't imagine a community college computer science cirriculum of any kind. One of the first computer science courses you have to take is Discrete Math, covering basic boolean logic and set theory, and the university students I was with whined enough as it is; I suspect a community college would simply revolt.
I have Mod Points at the moment, but modding you up would be useless; you'd just get modded back down [as I expect I will be shortly], and, in the process, I'd have lost my chance to reply to you [if I understand Mod Points correctly].
Anyway, the situation is much, much worse than you imagine: A poster later in this thread mentions a Massachusetts "college" that got rid of their "Linear Algebra" requirement because the students couldn't cut the mustard [and I imagine the "Linear Algebra" in question wasn't a whole lot more complicated than multiplying a couple of matrices].
My experience was even more pathetic than that, however: In the first week of teaching a course in "Intermediate C/C++", I tried to impress upon the students the importance of data typing, and of chosing a data type that was appropriate to the problem at hand. I tried to teach them about things like additive and multiplicative overflow [e.g. if you're really serious about your mathematics, then you've got to consider the possibility that adding two positive numbers could give you a negative number, or that multiplying two numbers could give you an NaN], and about granularity in floating point numbers [abcissas and exponents, and how e.g. 32-bit floats lose begin to lose their integer granularity at i = 16M].
The result? The students went absolutely ballistic, stormed the dean's office ["This isn't computer science! This is MATH!!!"], and damned near got me fired.
Well, I hung in there, and finished out the course. For their final project [with several weeks advance notice], I asked them to write a program that would dissect very large files into a series of smaller files [or "chunks", as I called them], each capable of fitting onto a 1.44MB floppy disk, and then reassemble the large files from the little chunks [this was about eight or nine years ago; similar commercial programs now exist to do this sort of thing, such as e.g. WinRAR, which, as I understand it, is very popular with pr0n downloaders].
I figured something like this might take them about a day or so - maybe a solid eight hours on a Saturday afternoon/evening, or four hours on two consecutive Saturday afternoons - but that it was not completely unreasonable, given that they had several weeks to work on it.
The result? No student in the class turned in a working program. Or, as a certain [formerly] rotund radio personality would say: "Zip, Zero, Nada". It was just completely beyond their abilities to even begin to undertake.
Furthermore, this was not the only community college course I taught [although it was certainly the most "advanced"], and I would say that, in the maybe 18 months to 2 years that I was hanging around the community college system, I NEVER SAW A SINGLE "STUDENT" WHO WAS EVEN REMOTELY CAPABLE OF WRITING A WORTHWHILE COMPUTER PROGRAM IN A LANGUAGE LIKE C, OR EVEN REMOTELY CAPABLE OF ADMINISTERING SOMETHING MISSION CRITICAL, LIKE AN RDBMS DATABASE.
I realize that what follows is a profoundly un-PC thing to say, but community college students are morons; their IQs just aren't high enough to do this sort of thing [on average - and yes, I know that any time you take a population of several million, there will always be a few bright bulbs way out at the far end of the bell curve, and that one of those exceptional lights just might be a lone Slashdot reader who stumbles upon this comment]. And [what's possible worse]: Even if they did have the requisite IQ, they don't have the "fire in the belly" that a person needs in order to tackle a complicated problem and see a potential solution through to its completion.
And I'd go even one step further than that: Having taught at major
Conestoga College in Kitchener, Ontario offers an excellent Computer Engineering Technology diploma (three years). It has a heavy hardware/embedded focus so it may not be quite what you want. www.conestogac.on.ca
Once you have completed that you can get an engineering degree in two years plus part of your summers at Lakehead University in Thunder Bay, Ontario. www.lakeheadu.ca
This is probably the most efficient way I have found to get an engineering degree using community college credits.
Other than that, Saginaw University (New York) and Athebasca University (On the web) seem to be reasonable about granting advanced standing.
If you want to get the best prep for transfering into an undergraduate CS program you can take every math course possible during your first 2 years. Other math or logic heavy classes such as physics and philosophy will help tune your brain and you have a much better chance of their credit transfering, putting you ahead financially and time-wise.
Sure, take a couple classes that include some programming to see if you like it, but don't expect that class to count towards your eventual BS degree.
What you are experiencing is the attempt by some colleges to pass off an IT or CIS major as CS. (I am starting to see this more and more.) Computer Science involves a lot of theory with some practical knowledge like a programming class here and networking class there. The key word in CS is "science." Just like other scientists you will be expected to experiment on your own and learn. Scientist create or discover, they don't just learn. CIS tends to be CS without the math and some business courses thrown in to make up the difference. It is more for management in the computer industry. These people will usually wind up being your boss. Most CS grads don't won't to worry about profit margins and "risk accountability" reports. CIS also focuses on computers in business environments. You won't normally be building your own database software, but you will be implementing a purchased program. IT seems to be what you are taking. It is a vocational cirriculumn. Meant to make you a productive member of the community right out of college. Nothing wrong with IT; I infact am taking some IT courses since I have to work and go to school at the same time. I am majoring in Computer Science, but IT courses give me some skills to at least keep out of the unemployment line. IT has the advantage of knowing something useful from the start. In the early stages, you might have a leg up on the CS graduate who has no exact knowledge of a Windows networking environment. What you need to do is ask yourself which career path you want. If you want to develop software and/or have a true love for computers, go with CS. The love of computers will keep you learning way after the classes are over. If you want to be a manager or some who helps run the company, study CIS. If you just want to have a nice paying job go with IT.
Thank you, for not using your mod points, and actually posting something useful
I respectfully disagree with you on the view of community colleges. True, there are some truly horrendous institutions that have no business handing out degrees; but I am the product of a community college. I was accepted to a major university, but my father was a tight wad. I wasn't eligible for financial aid because of my parent's income and what scholarships I did get would only cover half the cost. So I decided on a nice community college where all the cost was covered. I learned a lot there and feel that the knowledge is comparable to what universities teach. In fact, I have some friends who attended universities, and for the classes we have in common, we learned the same things. I will agree with you on the student's who attend. The college isn't at fault, it is the lack of motivation out of its alumni.
It seems that most of you did not take computer classes at a community college or did not get the angle of the message that the OP was presenting.
His main gripe was about the uselessness of the classes he took, and that is accurate for the computer classes at most commuity colleges regardles of the type of class.
I've taken several computer classes at community colleges and they are all just a waste of time. They are watered-down, over generalized, simplified, slowed-down, and are not covered indept. One can easily get an A in a computer class at a community college and still not know a thing about programming or networking. I know community colleges are suppose to be more practical rather than theoretical, and a bit easier, but it's part of the overall outlook of education in the U.S. teach less but expect more!