I'm planning on heading to college, and I'd like to know what I should be looking for in a school when making a decision about going there for a computer science degree. What are good signs? What are red flags?
|
|
|||
We're looking for long answers that provide some explanation and context. Don't just give a one-line answer: please explain why you're recommending it as a solution. Answers that don't explain anything will be deleted. See Good Subjective, Bad Subjective for more information. |
|||
|
I think the most important thing for a degree program to have is accreditation. In the United States, computer science, software engineering, and information technology programs are accredited by ABET. Other countries might have other accreditation programs, but the goal is to assert that graduates of the program are going to have the skills that are needed to function in the workforce or in continuing (graduate) education. For different programs, ABET specifies core content that must be taught as part of a program, and ensure that students are required to take classes that add value to the professional environment. You can search for accredited programs on the ABET website. There really aren't any red flags that I can think of that apply in all cases. You need to visit each university, talk to professors, faculty, financial, and students. Ask questions, and see if anything sparks your interests or turns you off. If you have some idea of your interests, both professionally, academically, and socially, you can see if the university fits your interests and needs. It's all about fit, within the program and within the university. Don't just focus on the academics, either - you'll be spending 4+ years and a lot of money, so make it worth the time and money. There are a number of things that you can look at:
There are probably a lot more things that you can ask, too. These are just the things that stood out when I was looking at schools for an undergraduate education, and most apply to graduate schools as well. If I think of anything else, I'll add it to the list. |
|||||||||||||||||||
|
|
I'm betting one of the key choices will be whether to enter a program that focuses more on theory or more on coding. I got a very theoretical education from 1994 to 2000. On the positive, it helped me to become a better abstract thinker and problem solver. Learning LISP might not get your ready for most programming jobs, but when you get handed code that uses recursion, everything's cool, because you've already scratched your head in bewilderment and come to terms with it in order to pass that exam... The negative part was that I didn't get to apply the theory in a timely manner. The most drastic example is that I had to get up to speed on Databases in the past few years and while it was useful to remember all the stuff about Tuples and ACID, it would have been more useful if I had been required to write a few queries with inner joins and outer joins - the theory to understand them correctly was there in my mind, but it took me a while to access/associate it to the thing I was looking at/trying to learn. |
||||
|
|