Ask Slashdot: Comp-Sci Graduate Schools
Colonel Kurtz sent in this question which I figured be of interest to some of you: "I'm considering entering graduate school in abouttwo years to pursue a Masters or Ph.D. in Computer Science. I am a good undergraduate student with a passion for CS and I am seeking the academic challenge of grad school. I'm looking for the (un)informed advice of the Slashdot community. Specifically, how should I select a graduate school? Is it worth aiming for the top-tier graduate schools? (like MIT, Stanford, etc.) or should I aim just a little below those (like Purdue or Syracuse?) At this point, I'd be happy to have any kind of discussion about graduate schools."
You can certainly apply to a couple top school like CMU or MIT but apply to backups if you're serious about going to grad school. Just like you applied to schools when in highschool. If your top picks don't accept you, make sure you have backups. I think the most important thing though is to apply to schools that are doing things that you are interested in. Having a well known school is definitely relevant in the sense that wherever you go afterwards, you'll always be known as coming from the last school you attended. Despite this, there are many great graduate programs at lesser known universities. But grad school isn't like being an undergrad. The expectations of grad students go up dramatically. I like to think of grad-school as a full time job (except you are paid really, really pooly :). You are given time to learn but you also are expected to produce results, publish papers, etc. If you really think you're that good... I encourage you to take a shot at it. In a couple months, I'll have completed my M.S. in EE from one of the two universities listed at the top of this message and I think there is a real need to get more motivated, smart students into grad schools. Good luck.
Most companies now are specifically looking for people with bachelor degrees. More degrees are nice, but in a LOT of cases actually hurts your chances of getting a good job.
The reason for this is two-fold. Companies are forced to pay PhDs and persons with masters degrees more for starting salary. Also companies like to put their employees through their own training programs. Companies like Dell, Inprise, Oracle, and IBM have very extensive training programs.
With the market still going strong right now I would recommend you get a good job NOW, and work on your masters degree later. A good company will even re-imburse you for your tuition. You can get paid while you are doing work coding and going to school on weekends, or nights.
A lot of high school team captain quarterbacks go to Harvard but they only need 3 of 'em.
It's not necessarily the greatest advice to pick a sub-field at age 20 and think that you'll be doing it your whole life. You still need exposure to a broad background of subjects in Computer Science and other areas of interest (like English and Science and Girls). What you find interesting now, you may later find to be unprofitable or boring. Unless you've got your whole life figured out up to the old folks home, don't commit to a graduate school based on your current interest; pick a good school that provides lots of different opportunities.
Also when considering Grad Schools you've got to consider that advanced degrees aren't necessary in the high-tech field. Unlike other fields, most computer geeks are emminently employable *BEFORE* they graduate. Even if you want to go later, you might want to work for a couple of years in the real world first.
And don't think that your education ends at graduation, you'll learn more at work than you did in school.
BTW, It's sunny and warm and inexpensive and a young person's town in Austin. The University of Texas is the place!
It all depends on what you are interested in. Moreover, if you are looking at PhD programs, choose school based on potential advisors rather than overall school reputation.
You didn't give enough information for me to say much about which tier of school you should be looking at. To have a strong chance at the top-tier schools, you should have a strong research record. Preferably published papers (or even techreports), but a recommendation from a Prof. saying that you worked for them is probably good enough.
Here are a few very top schools in the US in each field (from memory -- sorry for any omissions)It is certainly worth your while to visit the schools you are interested in and to walk down the corridors and talk to the graduate students. Step inside the labs and ask them to show you what they are working on.
Students will generally tell you both the good and bad things about a place. Be sure to ask them (off the record) about the professors and their personalities. Graduate school isn't about reading books/papers and hacking solo. It is about participating in an academic community and getting to see how experienced people think about new and interesting problems.
Finally, don't worry about the money. $16K per year is more than enough to pay rent, eat good food, make yearly IRA contributions, take a couple of plane trips every year, and even go out every now and then. Just try to avoid the money sink known as an automobile and you'll be fine.
On a similar thread.. Does anyone know of good graduate schools that are doing research into stuff like Nanotechnology, Cybernetics, Biocomputing or anything equally uber-hitech? Or do you know of any specific researchers at an institution doing this sort of thing? (I know thats probably not quite computer science... or even computer engineering... sorry). I just no idea where to even start looking for schools doing research in these areas...
2^5
Cornell's CS school used to be good. Now, the computer facilities are second rate -- MIT's creative writing students get access to better.
If you don't believe me, see this press release. Look for the quote from Robert Constable.
I've been curious what the graduate program is like at UNC. How is it? What do they specialize in? I've been looking to see what they have there, but I would like to hear the opinion of someone already there.
GATech is a nice school, but OhioState Univ has the oldest (and IMHO the best) graphics program. Besides, OSU's Supercomputing Centre has more power than GA Tech's :)
jason
I know we're talking about graduate schools here, but CMU doesn't even have an undergraduate computer engineering program. Computer Science, sure, but no Computer Engineering, a major which most other top tech schools now offer. Any ideas why?
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
Beware. Once you start down the dark path, forever will it dominate your destiny.
Here's something I wrote late one night after a few years of grad school:
Keep in mind that I'm not a CS grad student. I'm a semiconductor engineer in EE, where IMHO a Ph.D. makes a lot more sense than it does in CS.
To get a Comp Sci perspective one might ask Philip Greenspun, MIT Ph.D. [emphasis mine]:
If you do go to grad school in CS, stop with the M.S.. There are only two good reasons to get a Ph.D.:
In my field, there are many jobs like this. In CS, I'm not so sure. Bill Gates does just fine with his high school diploma.
I went to grad school because I had fuzzy dreams of being a professor, and because I was intrigued by "the challenge". I was nuts. Now I can only wonder what I might have done if I had gotten some hard-edged advice in time.
-- Mike
P.S. Cornell has a great CS school. Look me up if you come here. With my luck, I'll probably still be writing my thesis.
Oops.
So much for my little joke.
I tried to plug my alma mater. I really did. But that quote is devastating.
Well, I think you'll find that most of the good advice people are giving about choosing a CS program also applies to choosing a math program.
One thing to be careful of, which no one seems to have mentioned yet : in math, at least, you generally don't select an advisor until 1-2 years into things. It would be a shame to spend 2 years jumping through hoops, only to approach your desired advisor and have them turn you down. The moral of this is two-fold:
1. Never choose a school because you assume you're going to be able to work Dr. Whatsisname -- if they're a big name, they probably already have a full docket of students. So make sure that, wherever you decide to go, there's more than one person you'd like to work with.
2. Your first few semesters are the time to shine. The better you do then, and the more faculty who get a good opinion of you, the better your chances are of getting the advisor you want. Everyone knows who the hot new first-years are.
One other thing -- don't go into grad school for math unless you're absolutely positive its what you want to do. If you can't work up a real passion about anything you've learned so far, don't expect it to come along in grad school. The life of any grad student sucks -- it means at least four more years of eaking out a living with barely enough cash for room and board, while all your undergraduate cohorts are making 5 times your graduate stipend. And it doesn't get any better once you graduate and start looking for a postdoc.
JRaven
Can you validate your figures? Or did you just make that up?
/. is an American based web-site, with a large amount of American content. Consequently I wouldn't be suprised if the majority of readers were American. But I'm not going to make any made-up claims.
I didn't go to an American university, I wasn't rich, but I work in America as a software engineer: my BSc Comp Sci seems to have been of higher quality than most of my co-workers.
This is not the right place for me to bore people with war stories but I must say this do not even think of considering the University of South Carolina!
The experience described in the posting to which I am replying (being left out to dry) is far from unique at both the grad and undergrad level.
I would not enter grad school without a lawyer at my side from day one.
I guess then that the greater moral to this story is that no matter what school one chooses, be very careful.
At least at the U. of South Carolina (probably elsewhere too), it is explicitly stated (in fine print) that the catalog is not authorative and that nothing your advisor says is binding upon the University.
As far as I was ever able to tell, there is no written document that is authorative with regards to graduation requirements for the U. of South Carolina. The awarding of degrees is purely discretionary at the whim of a committee. All of this information I learned personally and the hard way.
While you are entering into a contractual agreement, the obligations are purely on the side of the student. I am being quite honest and factual here: my kids will have their relevant college materials reviewed by my lawyer. Caveat emptor...
What many people will tell you is that your supervisor is the most important reason to choose a school. You have to respect the work this person does and how they do it. You also have to get along with them in some way. What "get along" means is of course different for everyone.
If you are not in a hurry, then I would suggest doing a master's first. Then the first choice of school and supervisor is not so crucial. Plus, it gives you a chance to figure out exactly what you really want to do. Reading many papers and going to conferences is the only way to determine exactly what you want to do. As an undergrad not many people have an opportunity to do those things.
Doing a masters and then possibly switching means 5+ years whereas a direct PhD can be done in 3, so this route is not for everyone. But, having done a Masters first lets you discover who is doing the most exciting work in the area you love most. So, choose a good, braod, fun school to do a Masters and while doing it decide who to work on a PhD under, then just go wherever they are.
Definately UT Austin. I did the undergrad CS program and loved it. I mean, you might as well go to a top school that also resides in one of the largest high tech communities.
Given a choice between NYU and Columbia, I'd say go for NYU.
More money, better neighborhood, better departmental politics, generally happier faculty and students. Columbia is a good place to be an undergrad, but I've met very few happy Columbia grad students in *any* department.
Fox: "What are you working on?"
Rabbit: "My thesis."
Fox: "Hmmmmm. What is it about?"
Rabbit: "Oh, I'm writing about how rabbits eat foxes."
(incredulous pause)
Fox: "That's ridiculous! Any fool knows that rabbits don't eat foxes!"
Rabbit: "Come with me and I'll show you!"
They both disappear into the rabbit's burrow. After a few minutes, gnawing on a fox bone, the rabbit returns to his lap top and resumes typing. Soon a wolf comes along and stops to watch the hard working rabbit. (Tippy-tap, tippy-tap, tippy-tippy-tap).
Wolf: "What's that you are writing?"
Rabbit: "I'm doing a thesis on how rabbits eats wolves."
(loud guffaws).
Wolf: "You don't expect to get such rubbish published, do you?"
Rabbit: "No problem. Do you want to see why?"
The rabbit and the wolf go into the burrow, and again the rabbit returns by himself. This time he is patting his stomach. He goes back to his typing. (Tippy-tap, tippy-tap, tippy-tippy-tap).
Finally a bear comes along and asks, "What are you doing?"
Rabbit: "I'm doing a thesis on how rabbits eats bears."
Bear: "Well that's absurd!"
Rabbit: "Come into my home and I'll show you."
SCENE: Inside the rabbit's burrow. In one corner, there is a pile of fox bones. In another corner is a pile of wolf bones. On the other side of the room a huge lion is belching and picking his teeth.
MORAL:
What matters is who you have for a thesis advisor.
I didn't write it, but it does have some truths in it (but do try to choose a subject that interest you...)
Liran.
It really doesn't matter that much where you go.
:)
Ok, I didn't have much choice when I started, all I knew was that I wanted to do electronics and CS, and I wanted to become an engineer.
Well, that left me with two choices here in Denmark.
Anyway, after my first year, my interests had moved completely away from electronics, and it was CS all the way.
However, I became rather dissatisfied with the CS department (at least with some of it), and numerics and _real_ computing has been my interest for the last years.
My point is, even though I've known ``exactly'' what I wanted since primary school, even CS is such a wide area, and you don't know what your real interests are going to be, before you found some subjects that weren't it.
If it's CS, find a university that does CS. Any university that does CS. You will end up doing stuff you didn't dream about anyway.
You have to get disappointed before you can be really happy. You have to hate subjects, before you can find the ones you love.
(Shit I sound old.
In undergrad, you're expected to just learn to do something, but in grad school, you're likely to do some research, and you're expected to contribute something new to the sum total of human knowledge. I say go somewhere that the research interests you.
That, and CMU rules. Actually, the CS school. if top notch. Sorry for the shameless plug. You should really also consider the city, ie whether or not you're going to hate living there.
Andrew Gardner
Outside of a dog, a book is a man's best friend. Inside a dog, its too dark to read.
You may want to look at the distance learning thing. I work full time, but attend grad school part time (6 credits a term) via the NTU (www.ntu.edu) satellite network. They get classes from MIT, U of I, U Mass, University of Arizona, Purdue, etc. Lots of schools. You get some of the best instructors from some of the best schools.
:-) ... and found that I acually like it. You can get the classes taped and watch when you want, or go live on some of them. The don't do phd, only masters, but it's something else to think about. Lets you work full time and make some decent money while going to school.
I was pretty skeptical at first, but tried it (cause lockmart is paying for it
/dev
"There's no secret. You just press the accelerator to the floor and keep turning left." -- Bill Vukovich
I think you are probably correct. I know that they have an option to do a thesis or just more courses. (whatever it's called, I can't remember now ...) I always, for some undefined reason, thought that if you took the thesis option you were OK, but if you didn't you were screwed for a phd. I'm probably wrong.
/dev
"There's no secret. You just press the accelerator to the floor and keep turning left." -- Bill Vukovich
If you're interested in computer graphics, especially real-time computer graphics (read Virtual Reality), seriously consider the University of North Carolina. Besides the fact that we have been studying this field for almost 30 years and we're ranked very high, we also have an SGI Reality Monster all to ourselves :-). Seriously, though, take a look at any year's SIGGRAPH proceedings and you'll see a large number of papers from UNC. So, when you think graphics, think North Carolina.
Tanner Lovelace
Ph.D. Student
University of North Carolina at Chapel Hill
Pick it on the basis of subject matter, assuming that you already know what interests you. If you're only vaguely sure of the latter, then choose on the basis of an existing multi-student and well-funded research project, so that you don't have to build all your tools from scratch.
On the other hand, you learn a lot when you have to do it all yourself. Er, well, I did, anyway.
Wherever you go though, it'll be fun, and your ultimate success will depend on you and only you. Good luck!
"The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
If you are interested to do your graduate studies in Europe, you should check out Turku centre for computer science in Finland. Everything is in English (of course as 50% of the students come frm outside Finland). You can get full financial support for the studies and living costs. I have been doing research in wavelet image compression there for one year and can fully recommend the school. If you have any questions, please feel free to contact me.
Vaadin - the best open source framework for building web applications in Java - no plug
I've been very happy with my years at UIUC. However, there is of course the downside, the UC part. I don't know if I'd want to stay hear for as long as some grad students I know have. Personally, I'd favor Stanford, if you have the means and ability. They have the most top notch faculty around, although after the retirement of some big names (Knuth, McCarthey), that's somewhat less the case. That said, I have no intention of going to grad school anytime soon, but that's me.
You make some good points about WHY you should stay in school - and I think it comes down to if you are planning a career IN acadamia - then a Phd is the cost of entry. If you are going to be a working stiff - then the graduate degree is indeed a waste of time. It never pays for itself. I was told when I was starting out in industry than an MS degree was worth maybe an extra 5K to start - and the difference between my income an the guy with the MS degree would disappear at 5 years out. Turned out to be true. I've worked with LOTS of Phds over the last 20 years. As for choice jobs - well they were doing the same stuff I was ;-) VERY VERY FEW Phds do research in industry (CS and EE that is.) Mostly you do development cause companies are more intrested in product. The R part of R&D doesn't show up very often in this industry from my observation. Thus the advanced degree doesn't help. My two cents worth - after taking inflation into account - not even worth that.
Have you compiled your kernel today??
I've been very happy with my years at UIUC. However, there is of course the downside, the UC part.
True enough. I spent six years there (but my graduate work was on the other side of campus -- in microbiology). You know UC is a dull place when Waterloo, Ontario (which even Canadians consider dull) seems interesting in comparison.
Um, don't believe your government's propaganda -- going to a public university as an undergrad in the US is extremely cheap (I paid my own tuition from working a low paying part-time job; frankly the idea of someone in the US not being able to afford college is absurd) and graduate school (at least for doctoral programs in the sciences) is better than free -- students get paid.
Medical school isn't cheap, true. But in a land without socialized medicine, physicans earn extremely high salaries. It isn't too unreasonable to ask medicial students to take out some loans. (And student loans are easily obtainable)
But your suggestion of going to another country is not bad. I'm doing a postdoc in Canada now.
If you want to do the power-education, do anything
and go anywhere route, then location probably won't
be too important to you.
On the other hand, whatever school you choose
will also determine what city you live in for the next
couple of years. As a guy from a small Oregon
town who went to MIT for my undergrad work, I
realised that the fast paced East Coast way of
life just isn't for me. Oregon isn't exactly a CS
powerhouse, but it's in a beautiful location, and
it's close to my family. I've been able to have
a family and raise my children close to their
grandparents while I persue my degree.
But, my choices would DEFINITELY be different
if I wanted to get a PhD and go into academia,
rather than getting a MS and working for a
Portland area company. The "prestige" of the
school you go to is much more important if you
plan on being an academic researcher. If you
want to go straight into industry after you graduate,
then you can afford to consider quality of life issues
a bit more when you make your decision.
-- Bret
I too, have heard this; it should be common knowledge. The advice I received from a grad student in my undergrad TA'ing days was to get both. That way, when you work on your resume, you can legitimately omit the fact you have a PhD, and only divulge it if asked.
UC Berkeley is a great place to go to school. Fun town, lots of really interesting and intelligent people. SF and Silicon valley are real close. Lots happening and phenomenal professors. Undergrad was a blast. If I could get into grad there I would be stoked...
-doog
Here was me thinking that /. was news for nerds on an international scale. This very american centric and totally unrelavent article seems to be totally out of place. Not that its ever stopped anyone before...
Well.... (You're not very clued in about real world jobs I see. No insult intended, but you're in for a hell of a shock.) If little lame mid-manager jobs is what you are after, then you go ahead and take them. Mid-manager jobs are the quickest way to wasting all the education you have worked so hard to get. Soon, you'll be stuck with all kinds of non-technical issues like making little charts about how all the real workers on your team are spending their time, stuck in eternal meetings about ridiculous topics, etc. Within a year, you'll be so far out of touch with the real technology that all you'll be is the butt of "pointy haired idiot" jokes.
Clue in: If you go into a managerial role, you do NOT get to play with the technology much, and you begin the downward spiral to incompetence.
I've been there, done that. It sucks.
Pursue a career path along the lines of "technical leadership" not "managerial leadership". It's a bit more of a challenge, as a lot of companies are just waking up to the concept and really don't know how to implement it.
What you want to be, if you are truely the "Way-SmartGuy" you say you are, is to be the technical leader - the guy who (1) works on the toughest coding problems, (2) is the person who all the "less gifted" come to with technical questions, and (3) who the pointy-hairs consult with to sanity-check their charts and graphs and time commitments. (Oh yah, and the technical leader is generally paid better, more respected, and considered more indispensable, than any of the pointy-hairs... Who do you really want to be??)
Being stuck with managerial responsibility really sucks rocks for those with true technical talent. Those with true technical talent generally don't need the advanced degrees. Face it, the best, most motivated people in the industry usually don't even have bachelor degrees! More power to you if you think you need an MS or PhD, but in the IT industry (as opposed to most other fields) going for the advanced degree is like keeping the training wheels on your bicycle well into puberty - it just ain't needed and in fact will bring you a lot of ridicule. Some dork with a PhD who thinks he's hot shit will cause the resident alpha engineer to spit in his general direction.
(Wow, that was a fun rant :) )
Well, I liked Northwestern as an Undergraduate. Just left this past June. None of the graduate students I knew ever complained so strongly about things...
Anyone know of anything in particular that's bad?
AR Schleicher
ars@iag.net (ars@nwu.edu is still active)
One thing to note is that you will probably be funded off of grant money; your research will be in support of some specific project. Therefore, in most cases you will not have the totally flexibility to pick any research topic of your choosing. Therefore, it is important to check out what work the profs are doing now, not ten years ago. What direction is their work leading to in the future? Remember that most journal articles indicate work done about two to three years ago; hence, check out conference proceedings for the latest stuff (or talk to your profs). It is likely that work that you will be doing has not even been funded yet; your future adviser may be writing the proposal at this moment.
Also keep in mind that profs only have a finite amount of grant money to support their grad students. This usually means the "good" ones have more money, more projects, and hence, more students. This could be good and bad.
My personal experience. I picked a school that had a fairly young and relatively small faculty that were on the rise up in terms of their careers. My adviser was just starting out but had already established a very good scientific reputation. Ppl told me that he also a very nice guy, honest, and easy to work with. My working for him turned out to be a good decision. It also turned out that my fellow grad students were great; we studied hard, played hard, and are friends for life.
The thing is it's called Electrical And Computer Engineering. The program here at CMU (I am a junior in ECE, doing the computer engineering side of things) is extremely flexible. The way the program works is this:
You have one intro course (18-100), and two core courses (Fundamentals of EE, and Fundamentals of CE). After that, you pretty much get to choose what area you want to do (electrical, computer, or both). If you want to learn more about the program, check out these two links:
The CMU ECE Home Page
Overview of the B.S. in Electrical and Computer Engineering at CMU
My experience here in the ECE program has been great. The program is nop-notch, and very flexible. Anyway, check the links if you want the details of how the program works.
That said, UT Austin is a decent, and very inexpensive (in terms of tuition) university, with an above-average CS department.
And yes, Austin as a town is a lot of fun.
I believe that it is, "I never let my schooling interfere with my education."
Recently, it's hard to beat Stanford's reputation in graphics, but MIT is coming from behind with a lot of talent and interesting work. Watch out! :-)
And yes, I am a GaTech grad. (MSCS '99)
--Ivan, weenie NT4 user, Jon Katz hater: bite me!
--weenie NT4 user: bite me!
"Computers are nothing but a perfect illusion of order" -- Iggy Pop
The only real way to know where you will go to grad school is to GO TO WORK for a while - get some real world experience first, then you will discover what you want to do in this big science that we know as CS (and getting bigger all the time!) ... plus, you may have the added benefit of having your employer pay for your school!
As far as schools, I would put in a vote for CMU. Simply based on the results that the school is producing in the CS fields lately.
There have really been some excellent suggestions among the slashdotters on this topic -- obviously, quite a few grad students read the postings. Let me second the opinion that you should really choose your grad school based on the topics you wish to study -- every grad school will have its specialty, and if you wind up missing on that target, you will have a hard time advancing. Of course, the big (n) schools will make this easier on you (e.g. Stanford and MIT do research in everything), but they are also harder to get into and larger, so it may not be what you are looking for.
Let me suggest my undergraduate alma mater: The University of Rochester. They have done seminal work on parallel computation, vision, robotics, AI (mostly NL understanding), cognitive science, and theory. They are a PhD-centric department, and very small (about 50 grad students, and 25 faculty. They are very well endowed, and I think highly of the faculty there. I think this would be ideal for the prospective student that wanted a small, intimate department. For more info: http://www.cs.rochester.edu.
A lot of the comments so far suggest figuring out what specific CS field one is interested in and then look for a school that's good within that field. Well, I've figured out mine: Architecturing, designing and constructing object-oriented software. Anyone have any suggestions as to what schools are good at that?
Well, Sir, thy supposition dost be false. Actually, I'm Swedish and I generally agree with what you say. I normally use more formal and more correct English in writing than I do in speaking (partly because when I write I have time to really think through what I'm saying, when I speak I'm fully occupied just trying to get the other end to understand me) but I have to admit that my involvement in MUDs and IRC has tainted that a bit.
But I'm shocked, good Sir! For pronounciation, surely you must turn to Oxford's "The Advanced Learner's Dictionary of Current English" rather than the standard dictionary?
If your primary interests are mathematics or theory, you still cannot beat Moscow State University
Not for the grad school. It is nonexistent - in the way Americans expect it. I have got my diploma from the Physics department there. It is a good equivalent of MS degree here. In the grad school you just write your thesis and hardly get any additional education except for your narrow field. I would claim it is impossible after american style college. Moscow State is the best place to get your undergraduate in Physics or Math. You actually learn something...
<^>_<(ô ô)>_<^>
It is foggy and girls are all pierced and ugly. Cross the bay.. ;)
<^>_<(ô ô)>_<^>
It sounds like a legitimate comment to me.
The fact is no one will hire you (at least not for any decent pay) if you don't have a degree of some sort. You have to invest money in a degree whether you actually need to learn anything or not. It's a lie it's a joke but that's the way the world works-- get used to it my friend. If you don't work with the system you'll get stuck taking orders from morons the rest of your life.
Unfortunately, top tier doesn't really apply to CS grad schools as it does to undergraduate education. As an undergraduate, you study computer science. As a PhD tracked graduate student your areas of interest will be much more particular. So now, this "top tier" applies only to individual fields inside computer science. For example, if you think that you would like to do research in MITs media labs, then that is one of the best places in the world to do so. However, if you want to do research in networks and group communications, look at JHU or Cornell where they have established research centers and EXCELLENT faculty that work in those areas.
Sounds to me like you have a lot of research to do. Also, don't hesitate to fly out to a school to check it out (small investment in the big picture). If the faculty member you are interested in working with is not receptive, you can make a big part of you decision based on that and the environment you see there.
I actually am pursuing my PhD at the school I attended for my BS and my MSE. I knew the environemtn here and knew that it was right for me and what I want to research.
Good luck in your decisions.
Then I worked at another company doing support and maintenance of their lousy code. Often times it was screaming at me to fix it, but if it wasn't on the list of bugs we were supposed to fix, I couldn't. Some of it was so ugly and I just wanted to improve it, but it was considered too much of a risk.
At Rice I had so much fun because even though I was coding something I was asked to do, I had considerable freedom in the coding itself and could actually talk to other people about what I was doing. Now I spend so much of my time wishing that I could work on this or that dream program of mine. Usually I want to write it to illustrate some kind of principle I have devised. I would get a big kick out of writing detailed documents explaining exactly what my theory is. That's exactly what research is.
I have begun a new job teaching CS at a local community college. Tomorrow is my first day teaching. The salary cut doesn't bother me, despite what some have said above. I have to be doing what I enjoy. If the teaching works out, I think that's a sure sign I need to go back to school. As for GRE scores, I recently trained with the Princeton Review to teach their GRE course. Not a problem. The only thing I'm concerned about is finding faculty recommendations. I might need to take a couple of classes to get to know some more professors.
hmm lets see where is the money ?
lets face it people talk of MIT, Stanford etc
but pray tell where is the most recogised Uni or gets more research money CAMBRIDGE !
no not the fake one
just trying to make a point if you go do research somewhere else in the world people think you are better. You experance more being in a differant place. You might as well because if you live any distance from home you have to get on a plane !
so why not cross some water ?
do the reserach that you want to not just go to the place you want to ! it makes a big differance if your prof is into the same things as you.
Japan is cool UK is good so are the germans hell travel and get sponsered (if you can get a sponsor they help out with food, traveling improves your chances of geting one)
but LIVE
john jones
a poor student @ bournemouth uni in the UK (a deltic so please dont moan about spelling but the content)
I opted for a Master's over a Ph.D. partly because I want to switch topics (and get a Ph.D. elsewhere) but also because of the politics in the environment--I just want to get of there for a while.
Getting a Ph.D. puts you in the heart of highly political academia, and since some fields are pretty much Ph.D.-only, like science, the subjugates can't avoid it.
In my frustration with the political nature of science, I started "The Open Lab", which applies the Open Source Software model to science (the former was modeled after the ideal of the latter; but we ought to strive for that ideal):
http://theopenlab.uml.edu/
This sort of thing has cropped up before. And it has always been due to human error.
--
This sort of thing has cropped up before. And it has always been due to human error.
HAL9000
I work at Beckman as a physics grad
student. Our lab is on the other side
of the wall from the "cave", i.e. immersive
3-d display (VR) system. As far as I can tell
all the power is used to play games, at least
that's the only sounds that come from there.
OTOH, the number of SGI's per square inch
is impressive.
Not to mention the Turkey Club with extra meat in the little place on the west end of the building is (was?) one of the best low cost eats on campus :-)
U of I.. uhm.. 'asked me to leave' as an undergrad in 94, So I missed out on alot of cool stuff. Personally one of the reasons I think I had trouble there was because the CS curiculum was designed by researchers and geared towards creating the next generation of researchers. I had some friends there in grad programs and from what I understand it's an incredible grad school. Part of me is sad to have missed out, but a larger more practical part of me is happy I dont have to deal with rigorous academics anymore. Keep in mind that UIUC is also a huge liberal arts school so not everyone is there to study. This may be a good, or bad thing for you.
-Rich
Cal Tech! Cal Tech! Rah, Rah, Rah!
Pasadena shore is purdy, too...
"...they may harpoon us, but they ain't gonna pick us up on no radar screen!"
I got an MS/CS from UIUC after attending from 94-96. Although I did not qualify for financial aid on entry, I got a teaching assistant job the first day I checked in with the CS department. Being a big 10 school, they have a huge need for TA's to teach basic comp sci courses to undergrads. So, I got a free ride all the way, and eventually got a research assistantship to do my thesis work. Also, I should note that their huge undergraduate population is approximately 50% female, FYI.
- Tim
I agree here. MIT or Stanford will just burn you out. Besides, we have such notable things as NCSA, and the birthplace of graphical web browsing. And as was noted before, the grad school (and the CS department, in particular) are top-notch.
When I got my MSCS from UW/Madison (1979-1981), I wrote tens of thousands of lines of code: compilers, interpreters, a database management system, even mock operating systems and device drivers. I believe it immensely strengthened my programming skills.
Interesting thing about MSCS programs: they have (or had at the time) huge numbers of students with BS (or even BA) degrees in fields other than computer science. (I started with a BS in Physics and an MS in Mathematics.) The non-CS majors weren't coddled; there were a couple of senior level classes we could take for graduate credit to "catch up", but we were expected to learn C and Unix based on a couple of one hour (each) supplemental lectures.
Stupid job ads, weird spam, occasional insight at
Where does that leave the rest of the world? What do you think: that they don't have any graduate schools? Why not suggest some fscking non-american graduate school instead of bitching and whining?
Read the original article...
Now perhaps it just happens that most of the posters here are American, ergo all the suggestions for US schools.
University of Waterloo in Ontario, Canada!
I graduated 2 years ago with a CIS degree and walked into the head IT position (WAY over my head and still am ;) at a private company.The experience I have gained handling people/budgets/owners is worth more than any prefix. I am not knocking MS and pHD's because I fully intend to continue my edu "some day". What I am getting @ is it will always be the bean counters that rule business, you need to learn what you will eventually have to face.
Check out U.of South Alabama. Top 5 rated CIS program with some of the most sought after network prof's around.
DEI, FIEF
I went back there the other day. Was very depressed to see how quiet it was. Not like back in my day, when men were men, and the sheep were scared.
Now its like a graveyard
Good advice. Also:
Send at least one application each to a school of the first rank, a school of the second rank, and a school of the third rank. Send additional applications to schools of the rank that you think you can get in.
The above scheme is intended to ensure that you do get into something, but don't have to settle for less than the best that you can get in to.
Sheesh, evil *and* a jerk. -- Jade
Ok, so I'm an undergraduate, but I thought I'd add my comments anyways from what I've seen/heard and know about the faculty.
If you're into theory/algorithms, it's a pretty hard core place. Sedgewick, Tarjan, and their buddies can compete with anybody out there in the field (IMHO, Donald Knuth would be an exception to that statement). A lot of the folks on this side of the department say that the best CS grad student was a math undergrad student.
There's also a new program in applied and computational computing which looks really promising. It's all about integrating CS and other fields that require intensive computer modeling, and they're putting some very cool folks in the program.
Also a pretty strong program in computer/network security, but I don't find that stuff so interesting, so I couldn't tell you much (except that Ed Felten, the government's tech guy in the MS case is involved in that program).
So, basically, I think I agree with the overwhelming sentiment of the others here today: the school you choose should depend on what you want to do.
Purdue has some amazing equipment for that TNT program, but that last time I checked (I graduated Purdue CS '97) you can't get a master's out of the Technology program, so the point is moot.
Anyways, CPT (computer technology) was the CS washout program when I was there. Heh.
it's not going to stop until you wise up, no it's not going to stop. so just give up.
Or are we going to be strictly midwestern (UofI, Purdue, CMU...) and left-coast (CalTech, Stanford, UCB...) biased?
it's not going to stop until you wise up, no it's not going to stop. so just give up.
mooo!
Jilles
IMHO I would try MIT, Cal Tech., e.g. all those dream schools. Don't worry about money, because with most grad schools they are looking for good students that will make their school look good. So if you have a clue and can show you have a clue money will come knocking at your door. IMNSHO I say check out The University of Cincinnati, Engineering School, they have a good engineering reputation and the computer department is still young so you get "A LOT" of freedom, and they are the ones that started the co-op program. GO UC!!
:P
Any ways in the end you have to find a school that fits your character, and no matter what don't worry about money[1] because it will only stop you from taking chances, and maybe getting lucky.
1. After Y2K every thing will be barter
Just your average Farmer
If you aren't sure that you want to get a Ph.D. get some experience first. I knew that I wanted to get a Master's but wasn't sure if I would get in to, or wanted to deal with the hassles of applying to a "top-tier" school. So, I looked for employment at a place that already had a close relationship with one of those schools (MIT Lincoln Lab). Now they pay my tutition and my regular salary with only a one year "stay with us" clause. It turned out to be a great job anyway.
According to MIT's Graduate Admissions Page, "an applicant must have received a Bachelor's degree or its equivalent from a college, university, or technical school of acceptable standing." Another place to contact is MIT's Internation Student Office. If English is not your primary language will almost certainly need to take the TOEFL (Test of English as a Foriegn Language). If you are asking about undergraduate admission you should be aware that financial aid for ugrad foreign students is almost unheard of in the US. I would say that any international (non-american) student would have a better-than-average chance of getting accepted to a US school since "diversity" has now become quantizable statistic used to rank US schools.
A few years ago I ran into this paper about how
.Z extension). To get the paper: .Z'
m l m l . crossroads]
. html t ml
to be a CS grad student, and how to choose a grad
school. I wish I had read it before I chose my
(EE) grad school.
10/5/98
Some years ago now, I wrote a paper called "How to Succeed in Graduate
School: A Guide for Students and Advisors," that is publicly available
on the net. (The original version of the paper was called, "How to Be
a Good Graduate Student / Advisor.") It contains a lot of suggestions
on finding an advisor and a thesis topic, doing research, writing the
thesis, and establishing a research network, among other things.
Pointers to HTML, postscript, and latex versions of the paper are
available at my home page (http://www.erg.sri.com/people/marie/), and
listed below.
The latest version of the paper is also available by ftp at
ftp.erg.sri.com. There is a latex file (advice.tex.Z), with four
additional input files (advice.bib.Z, the BibTeX bibliography,
fullpage.sty.Z, a style file to make the text portion of the page
larger, named.sty.Z and named.bst.Z, bibliography style files),
and a postscript version (advice.ps.Z). All of the files are
compressed
(hence the
ftp to ftp.erg.sri.com, login as anonymous, and give your
e-mail address as the password
'cd pub/ITAD/advice'
type 'bin' to the ftp prompt to turn on binary file retrieval mode
use the 'get' command to take whichever files you want.
To uncompress the files, just do 'uncompress
To generate the latex output, copy the first three files, run
'latex advice,' then 'bibtex advice,' then latex twice more
to incorporate all of the references.
The paper was published in two parts in issues 1.2 and 1.3 of
Crossroads, the online ACM student magazine, available at:
http://info.acm.org/crossroads/xrds1-2/advice1.ht
http://info.acm.org/crossroads/xrds1-3/advice2.ht
The Crossroads home page is at
http://info.acm.org/crossroads/
gopher://info.acm.org/11[the_files.pubs.magazines
ftp://info.acm.org/pubs/magazines/crossroads/
HTML versions of the original paper can be found at:
http://www.cs.umbc.edu/www/graduate/advice/advice
http://www.cs.indiana.edu/how.2b/how.2b.html
U. Indiana's "What Every New Grad Student Should Know," which points
to this HTML version as well as Phil Agre's networking paper and other
useful resources, is at:
http://www.cs.indiana.edu/docproject/grad.stuff.h
The paper was also reprinted in the Winter 1995 issue of the IAPPP
(International Amateur-Professional Photoelectric Photometry)
Communications, and in a shorter form in Vivek, an India-based
quarterly in AI.
Some of the references in the paper are incomplete (or possibly
incorrect). If anyone has more complete bibligraphic information for
any of the references, I'd appreciate it if you would send it to me.
Comments and feedback on the paper are also very welcome.
Marie
P.S. Another useful web page is Dave Burrell's "Getting In: An
Applicant's Guide to Graduate School Admissions," at
http://mail.h-net.msu.edu/~burrell/guide/ . A mailing list that
may be of interest to female graduate students is the systers-students
mailing list (see http://www-anw.cs.umass.edu/~amy/systers.html ).
I find this discussion very interesting, since
I am planing on going to the U.S. next year
myself, to study C.S. at the undergraduate
level.
I'm planning on applying to at least the University of Maryland (www.umd.edu), and
South Carolina State University as a backup, plus
two more I haven't selected yet.
I chose UMD because they seem to
* have many courses that interests me
* they don't brag about their "Macs and PC:s" (meaning MacOS and Windows)[1].
* are just about within my financial range
(around $22k total per year, for an international
student, including residency).
* they claim to have a highly ranked C.S.
department
Am I making a misstake? Does anyone know more about UMD (or SCSU for that matter)?
[1] I honestly can't take a C.S. department seriously if all they do is teach students how to use Microsoft products and click around in MacOS.
And I also want to learn more about Unix (because
I'm far from being an expert, even if I love Linux).
/ Peter Schuller
--
peter.schuller@infidyne.com
http://www.scode.org
I agree, but would suggest a further step--find a good supervisor. I'm a CS grad student now and can assure you that your supervisor makes or breaks your experience.
Go to the school and talk to some of the people in your area and find someone you can work well with.
Don't be sucked in by a big name researcher either. You're going to be working with this person closely and the shine of having a well known supervisor will wear off quickly.
You're not going to get shot, but... there's not such a bad chance that you'll get knifed
[We don't come from a planet. We come from a grid sector.]
Why not try U of Illinois? It's one of the top grad schools in engineering, and it's damned cheap compared to places like MIT and Stanford.
Colin Winters
Some of these comments I see on here really make me sick. The idea that some schools are "second-tier" and are therefore just full of unimaginative, uncreative, boring people. What kind of elitist attitudes are these "first-tier" schools fostering?
Academia should be about learning and sharing that knowledge with others, not about who goes to the most expensive school with the most prestige.
It's a damn good thing I don't intend to go further than M.S in CS (perhaps not even past B.S.) I certainly don't want to deal with this level of idiocy and elitism.
It all depends on what you want to do ...
Are you looking to get a more focused education in some area of CS?
If so, which area?
If not, then you're in it for the money?
If you want money in CS then (short term) get the job, screw grad school, or (long term) get a masters from just about anywhere (ok, ok, upper tier schools can open upper tier jobs, but it's not the only way) while getting job experience (intern/co-op).
Figure out why you want the degree (for "the challenge" is not that good a reason, you might be happier with a challenging job instead). Check US News Online and see where the good schools are. Ask your professors where they went, what they think, what they'd do different.
Good luck.
(for the record, I'm a PhD student studying graphics at UNC Chapel Hill)
I love Tucson, and the university has a good reputation (much better than mine, AZ State), but their CS program is really new. I remember wanting to go there in the late 80s for my bachelor's, and they didn't have an undergrad CS program yet. You had to do EE. Then again, what do I know, I went to ASU. Don't even consider ASU.
Being a graduate student in computer science is an ascetic experience. In order to succeed, you will be called upon by the elders of your order (professors) to forsake the temptations of big IT salaries and stock options, to labor and toil as a peon with virtually no status whatsoever. In the end, you are supposed to emerge as an enwizened practitioner. That's the theory at least.
Seriously though, if you decide to go to graduate school, you will help yourself greatly by doing the following:
1) Talk to graduate students from any of the schools that you are considering attending. They will be able to tell you the real deal about their school. You might also be able to judge how bright a department's grads are when you talk to them. A lot of smart grads is usually a good sign.
2) Find out something about the school's location. Even though you will be involved with classes and research most of the time, you want to make sure that when you actually have free time, that there's something to do.
3) Make sure that the school's aid package is enough to pay the rent and eat. That is, unless you are your parents are rich. Make sure that you know exactly what your expenses are, e.g., tuition, fees and health insurance. Any good Ph.D. program will pay most of these for you. Don't be shy asking about the size of stipends or fellowships. And make sure that you'll be funded throughout your tenure as a student.
4) Know exactly why you're going to graduate school. You will get depressed and start doubting your decision to go to graduate school. Especially when your friend's make $10,000,000 when their stock vests. It's good to be able to reassure yourself that you made the right choice when this happens.
5) Visit Ron Azuma's guide to being a PhD student.
Hope this helps.
EvilKevin
I would suggest that it is important to get to know your field of interest, and the key players in that field before embarking on your path to a decision. For example, is there a school with a concentration of people who could be considered pioneers, or is there just one person who may not be able to give you the amount of time that you deserve, because they are simply over burdened.
It's often hard as an undergrad to know who is doing what, so you should try to find articles which could be considered "suveys" of the field, as these will often point to other researchers with a small summary of what they have contributed. Keep in mind that grad school is focussed mostly on research, not taking classes. Therefore, any snooping you do in the field will only help you later on.
Once you are armed with references to people, find them on the web and see where they teach. You may be surprised. For example, Tarjan, one of the leaders in data structure research, is at Princeton, although people don't often think of Princeton as a computer science school. Terzopolis (biologically based modelling/animation) is at University of Toronto (also where Cook proved the first NP complete problem!). Although going to a big name school can be enticing, you may be much happier at a smaller (name) school where you can really focus on your research and can actually find your advisor.
As a final comment, I would suggest you not limit your search to the United States. Although they do have strong schools, other countries have equally strong schools, if not stronger. This will become evident to you as you peruse the publications in your field.
Eric
Finding somebody willing to pay you for the amount of education you have is only the first problem. Asssuming that you do, you're going to be expected to work even more hellish hours than people with BS's in CS.
And if you don't care about that, and salary is paramount, then you could very easily train yourself up to that pay grade in non-traditional ways, without having to pay back any more student loans.
My $.02
Your comments are dead on. Traditional academia is about being a highly specialized expert in a very particular field. The internet is not about specialism. It's about putting the cumulative power of those specialists into the hands of the world. You are right now where you want to be: having the time to read this comment and retaining the ability to direct your own course of action. Dedicating your life to scientific discovery or some highly technical computer feat is not only exhausting, but expensive, and in many ways not the reward people idealize it to be. But academia demands this for years on end. Its a little disillusioning when you get to grad. school or your post-doc and find out that "the experts" are scrabbling Wall Street players like the rest of the world. If the universities are merely intent upon changing the world, know that you can do that more efficiently without them.
http://tinyurl.com/4ny52
The fact that, as chrismaeda said, CMU is "so far from the action" turns out to be a good thing: people actually stick around and finish their degrees. One of the biggest problems at schools like Stanford and MIT is that students often get job offers before they finish. It's a really nice community that puts a lot of effort into being a community. There's so much stuff going on (theory, AI, robotics, systems, ....) that the interactions are great. I got a PhD there and loved it. One of CMU's odder problems is convincing students to actually graduate and leave... They like it too much.
i'm going to have to second you on that one that cmu did the initial work on afs, and now are doing coda. and as far as i'm concerned, if you're schools name appears on the bootup screen of hp's someone in the cs department somewhere has got some sauce...and don't forget the robotic van.
I've always thought of the american schoolsystem
as incredibly unfair (medicalsystem too)
It makes no sense that you have to have rich
parents or work your ass off to be able to
get a good education.
In Norway you can get a great education
for _free_. And everyone has the option of
cheap financing, for living expences.
If your primary interests are mathematics or theory, you still cannot beat Moscow State University, if you have the Russian tongue under your belt, and the guts to go there.
For data communication, there is little more impressive than many Canadian universities, particularly U. of Waterloo. (Though that may be in dispute after layoffs and golden handshakes there, as of late.)
If you have interests in parallel and distributed processing, Australia is definantly the way to go (particularly Sydney), and like Canada, there is no english language barrier.
In general, for hardware and technics, Japan is the way to go. If you want to go hardcore in hardware, go all the way and join the US Army. Other than that, go with Japan.
For up-and-coming university names, try Scotland and Ireland, with a free higher education system they are compounding quite rapidly, and will likely emerge as leaders in various fields in the next few years.
You might find various universities throughout the US and Mexico, but I find they are less worthy of mention than the laboratories. If your primary interests are in research, check Argonne National Labs, and Palo Alto Research Centre, and the other few familiar facilities throughout the US.
If you don't know what you're looking for, I suggest you examine your marks. Go with what you do best in, but take into account the life experiences that accompany a post-graduate decision, and for the sake of diversity, try and displace geographically as much as possible, for the sake of posterity, do what you do that blends best between enjoyment and payoffs.
Pascal was a horrible philosopher, and a great mathematician. We remember him for what he did, not for what he enjoyed. We do not historically, only in works of fiction and various extracts of past legacies, take the pleasures of Men and Mice under our belt as memorable.
My advice would be to apply to a range of schools and choose the best one that offers you a fellowship/assistantship which includes paying your tuition. US schools are dying to admit good US students so aim high. A high GPA and a high GRE including a high score in the subject GRE test (the special GRE in CS) will get you a long, long ways. If a school sees high numbers here, the reference letters are pretty much ignored. The other way to get attention is to demonstrate research capability (e.g., co-author on some conference paper). The top schools (MIT, CMU, Stanford, Berkeley) are highly competitive and very picky, so don't put all your hopes on getting into these schools. Also send your application to slightly lower tier schools (e.g., UCLA and most other UC schools, Purdue and most other Big 10 schools, and Harvard, Yale, and most other Ivy schools).
If you're going for a Ph.D., your choice of advisor is probably more important than your choice of school. Get familiar with the research literature in the areas that interest you. Find several researchers you'd like to work with. Find out if they are good mentors for their students, are able to take on a new graduate student, are good at getting funding for their students, etc. Then apply to the schools where your best prospective graduate advisors are.
> Software Engineering
[list of schools snipped - all US based]
The Computing Laboratory at Oxford University does an MSc course in Computation that has a software engineering strand.
If you're interested in the more theoretical end of software engineering (formal methods, Z notation, abstraction machine notation/B method, automated proof checking...) then you could certainly do a LOT worse. see Oxford Univ. Computing Lab home page.
The Comlab is also strong on reconfigurable hardware and hardware compilation, distributed/parallel computing etc.
-- O improbe amor, quid non mortalia pectora cogis!
You get a Ph.D. because you enjoy research and like being out on the edge where finding the right question is more important than finding the answer. 90% of the competent workers in a field can answer any given question, but far fewer can pose the right question. Getting a Ph.D. is about learning to ask new questions and creating knowledge in a field.
If you don't have a desire to do research or contribute to knowledge, then getting a Ph.D. is not for you. Get an M.S. instead. You'll be challenged and learn a lot of interesting stuff. And, if getting a job is the main reason you are in school, an M.S. will get you on the market in 1 to 2 years instead of 4 to 7 years.
If everyone with a tale or seven to tell about their advisor responded to this, it would be a good stress test for slashdot.
Choosing the right advisor is an important factor to successful completion of a Ph.D.
Consider the following attributes of a prospective advisor, listed in my perceived order of importance:
it really depends on the branch of mathematics you are interested in (of course)... I'm personally into Analysis, so I was looking at (and continue to look at)
University of British Columbia
Johns Hopkins
Columbia
though keep in mind that there are other schools that do Analysis well, these are just the top schools on my radar.
also note: last time I checked, the market for a PhD in Mathematics was abyssmal. my senior year of undergrad I was on the search committee for _one_ tenure-track position at a small (but good) school. we had to wade through ~1000 serious applicants, and I've heard that other job postings are similiarly competitive. this is why I am still in private industry...
- mark
Enjoy!
P.S. Plus with the advances of Optical Sciences and Optical Engineering in the Computing Industry, Tucson, Arizona looks to be the next home to data storage, due to the fact of the monopoly it has in Optical Engieering. (Some free food for thought.)
*Carlos: Exit Stage Right*
"Geeks, Where would you be without them?"
*Carlos: Exit Stage Right*
"Geeks, Where would you be without them?"
"Got Linux?"
*Carlos: Exit Stage Right*
"Geeks, Where would you be without them?"
*Carlos: Exit Stage Right*
"Geeks, Where would you be without them?"
"Got Linux?"
GUE Tech! Yes, GUE Tech provides REAL challenges for the graduate student. Why just study when you can study and run the risk of being eaten by grues?
-- The Sage does nothing, and nothing is left undone. --Lao Tzu
If you are interested/able to enroll in a PhD level program, the "expense" of a school like MIT/Stanford/CMU will not play a factor. All of the top-tier (and I'm sure most programs in general) institutions will guarantee your financial status. Some (such as MIT) are unwilling to put down their guarantees on paper, but the de facto policy is that as long as you remain on track for your degree, you will not have difficulties paying for your education (as in full tuition paid as well as a reasonable $12,000-20,000 stipend per year). You might have to work as a TA or RA, depending on the school, to qualify for such funding, but it is almost always available.
There are a lot of lower-tier graduate schools that are excellent in everything else. If you don't think you can get in the top-tier, apply for Princeton or Harvard. They have (more than) acceptable graduate programs, and you have the advantage of a nice looking line on your resume.
One final comment, STANFORD APPLICATIONS ARE DUE EARLY!! If you only knew how many people didn't even bother applying because it's hard to meet their deadline (early December)...
Ok, I'm starting my freshman year monday here (undergrad), but for me it came down to CMU and IIT. CMU kept putting me on the waiting list and kept not responding, and IIT gave me money. {g}
Anyways, I know IIT is one of the top engineering and computer schools in the country (ok, so its not extremely well known, bite me {g}), I'm not sure how it ranks in graduate though. Its one to look into, IMHO, though if CMU accepts you, go for it!
At least there's one thing I can tell you. The atmosphere is far different then any college I saw. The main campus is all engineers, so there's a lot of 'mutual respect' in attitude. The frats aren't drunken raves, more like a club of close friends. Its a lot nicer to work in. My brother went to CMU (physics, he's no doing grad. bio-physics at Stonybrook), and he kept telling me that CMU wasn't as great as I thought...
PS. Just because IIT gave me $ doesn't detract from their qualiy (if the idea of scholorships means they need to entice you beause there lower quality). I had two other high ranking colleges doing the same, just didn't like them as much. Even before I knew whether CMU was going to let me in or not, I had a hard time picking between the two.
PSS. IIT, aka Illinois Tech, is Illinois Institute of Technology (now really a University).
"Open Source?" - Press any key to continue
In case you are not aware of it, you will most likely be funded as a Teaching Assistant or Research Assistant at any decent school (often a few terms of TA but mostly RA). Some of the posts talk about whether a school is "worth the money", generally that's irrelevant.
Pick the right employer, and they'll pay for grad school. Sounds like a pain in the butt, but you can (1) save big bucks, and (2) earn some cash and (3) gain some industry experience.
I once worked for United Technologies. I'm not going to advocate them as an employer, but they have a kick-ass deal for those who want to go to school: Work full time, they give you some time off for classes, they pay for 100% of all course fees and books up-front even if those classes (or your major) aren't job-related. And for each degree you earn (Bach., Master, or Doctor), they give you 200 shares of company stock (at $60+/share, that's $12000+.)
Of course, the tough part is part-time grad school... it'll take longer, and to be honest, I doubt that a part-time academic experience is as good as a full-time experience.
But hey, after the $12k, quit and go back to school full-time. You'll loose some time, but you'll gain some industry experience and $.
Sorry, didn't answer your question.
One thing that will definitely help you is to get known by the professor(s) you want to work with when you get to grad school. Send them email, explain you intestest. If you can meet with them.
It is not like the undergraduate application process. If there is a professor who wants you and they have funding for you, you WILL be accepted. Guranteed.
In any case, if you have some one who recognizes your name and is willing to pull for you in the admission discussions it will help you get in.
If you haven't talked to people in the department, it can become a real crap shoot. In academics, relationships (s/relationships/politics/g) can be an important, unavoidable (although annoying) factor. Realizing this early can save headaches later and help you get in to the program you want to attend.
I don't know how it is in CS but in some fields, it is MUCH easier to get funded as a Ph.D. student than as a masters student. It can also be easier to get on a research grant rather than TAing. The research will probably be much more interesting than teaching lab sections and grading.
SO even if you only want a masters, it may be better to apply to the Ph.D. program and then opt out with a masters (which has been paid for) rather than paying for a masters yourself.
If the department is very well funded (which I assume top tier CS departments are), this may be a moot point.
I think it's capped now at about 16-18k but I've heard of engineering grad students making up to 20K.
I'm a 6th year PhD student at CMU. Nearly done...
:-). Personally, when I came to CMU I did not have a clue that some of these areas even existed, and it would have been a big mistake for me to have cut down my options prematurely. Of course, some people come to school knowing exactly what they're going to do and they do it --- that's fine.
:-) ).
... get an MS at most, then get to work.
Some people are saying that you should figure out what you want to do before you choose a school. I don't think that's necessary, IF you can get into some of the tier 1 schools. In particular, at CMU the system is set up to expose you to a lot of different areas of CS. You may think you like network protocols but end up hacking soccer-playing dog robots. Maybe you could even find a way to combine those interests
A PhD is definitely not for everyone. Many people start and drop out after a few years because they find it's not for them. That's fine. However, the job market for PhD graduates is RED HOT right now. There are loads of good positions available in academia and industrial research --- industry is crazy for people, so hiring any professors they can get their hands on, and the universities are trying to grow at the same time. MSR's growth in particular is really putting the squeeze on (but you don't have to go there
For getting into grad school, I'd second other people's suggestions that letters of recommendation from people whose names are known are key. Experience on a researchy project also really helps, if it looks like you did something interesting.
Go and do a PhD if you like to do cool things with computers that are too far out for a company to believe in. Especially do a PhD if you think you'd like someone to pay you to do that for the rest of your life. Don't do a PhD for the money
As for choosing grad schools, I love CMU CS and I could explain why at length, but that's not really appropriate for this forum. Send email to roc@cs.cmu.edu if anyone wants to know more...
PS, why are there so many CMU students on Slashdot? GET BACK TO WORK!
Rob
don't waste your time there for grad work
Well, well, well. If I've heard it once, I've heard it a thousand times. "But Zach, there's nothing to do here at Purdue." People that can't find anything to do at Purdue either are socially inept or they have a very small interest area (i.e. underwater basket weaving and nothing else). First of all, there are an endless number of parties with a lot of them being actually fun (unless you go thinking that you will have a bad time). Secondly, if your not into parties, then join a club. Countless clubs ranging from Skydiving (my personal favorite) to the PLUG (Purdue LUG) to snowboarding. There's also your standard sport clubs and political clubs. So let's say clubs aren't your deal. Well, we have excellent football, men's basketball, women's basketball, and women's volleyball teams among others. Hate sports and everything else I've mentioned? Then sit in your room and watch great movies on boiler TV for free. Surf the Internet on your ethernet or ADSL connection. Drive to Indianapolis, or Chicago, or Detroit for a weekend and enjoy all three of these big cities without having the hassels of living in one. Don't have a car? Take the bus. Don't have any money? Get a job. But please, don't say there is nothing to do at Purdue.
2 thumbs up for the TNT program here at Purdue. There are very few schools that can offer such a wide variety of computer interests, with a top notch faculty, and a tuition price that beats the heck out of Stanford. It is true that the department is leaning towards the evil empire, but there is a lot of excellent concepts discussed and implemented. Besides, what school isn't on board with MS? Very few any more. Professors are frequently available, and enjoy helping students. If your a Jedi programmer, then CS is probably where you should be. If you are at all interested in being in the Information systems or networking field along with some programming, then TNT is the way to go. Either way, Purdue is a superb school with one great benefit. No $60,000 student loans to pay off like a Standford or Rose-Hullman student would have.
Stanford doesn't have a program called "Computer Engineering." MIT lumps Electrical Engineering and Computer Science in the same department. At Rice you can also only get an Electrical Engineering degree. I'm sure the situation is the same at other private (and maybe public) universities. Just because there's no major called "Computer Engineering" does not mean the relevant coursework isn't avaliable. It is.
Here's an alternative viewpoint on the merits of graduate school for computer science. I think it's very telling.
Reading academic journals is a good way to get immersed in that ultra-dry writing style.
Even though your school doesn't offer graduate-level programs, your profs had to have taken some at a point in their scholastic history. Find a good one -- as many other people pointed out and I missed, a good advisor is worth their weight in gold -- and look into doing an independent study with them and learning the advanced versions of some topics.
Perhaps if you can find a project on which a professor is working and you can help out, perhaps you'll be able to get to help out on writing the final article, and being published is a great thing when you're applying to grad schools.
Good luck to you, Kurtz!
Sam Jooky
sapienza@holly.colostate.edu
Grad Schools are really competitive, so right now while you have plenty of time left as an undergrad, start improving your chances of getting in. You can do this in lots of ways.
Remember, though, that grad schools really pay attention to letters of references from past professors that show how well you can do work (and possibly research). Meet a professor in your department who is doing research on something you find interesting and offer them your services. Learn a little bit about CS research.
When you get up to senior-status, talk to some professors about taking on a class as a non-teaching TA. Profs and GTAs always appreciate all the help you can offer. TA one of the introductory CS classes with 100 people.
Both of these things will help you get better letters of recommendation, and at the same time, you will get a much better idea of whether or not the grad student life is for you.
Also, when you start to get into the higher-level courses, take some graduate-level courses. Most schools won't let you take the higher-level grad courses, but the introductory ones should be accessible. This will help prepare for the amount of reading and work that your classes will involve in grad school.
If I think of other helpful tips, I'll respond to my message again. :)
Sam Jooky
sapienza@holly.colostate.edu
When you're selecting a grad school don't just put a bunch of school names on a dartboard and throw a dart to choose. Figure out what interests you in CS. Which subfield makes you cream your jeans? AI? Parallel Processing? Computer Graphics? You need to have a semi-narrow choice.
Once you've figured that part out, then start looking at grad schools. Don't go pick a school and then figure out what you want to study. That's a recipe for unhappiness.
Most CS departments list on their webpages which fields they specialize in. Find the profs at the school who teach your interest and email them about the sort of program of study they offer.
And don't forget to use the profs at your current school. They're in the field and can probably point you in a good direction for a good school, and if not, they're in a better position than you to find out where the best [insert your interest here] school is located.
Talk to the grad students at your school, too. They've been through this process before and can probably offer you good advice.
In short, don't just jump into a CS grad program because you like the school -- make sure they'll teach you what you want to learn.
And if you're interested in AI, Software Engineering or Parallel and Distributed Computation, come out to Colorado State University! :)
Hope this was semi-helpful and not totally redundant.
Sam Jooky
your advisor is the key to getting through grad school intact.
you're going to end up working in your advisor's research group, doing work that your advisor finds interesting... it is therefore best if you find your advisor's interests, well, interesting. this may seems obvious, now, but it wasn't to me when i was looking.
if you select a school, get in, and _then_ start looking around for an advisor (like i did... whooops) the chances are much higher that you are going to end up either:
a) doing work that you are not really all that interested in.
b) not being able to find an advisor that has any interest in what you find interesting.
neither is good. so......
narrow your list of schools down to 10 or fewer.
check the faculty bios in the catalogues from those schools
(which should include their research interests).
identify a batch of likely suspects.
then search online for papers that they have published
(preferably with one of their students as a second author).
your first few papers will probably have you as the second author, no matter what fraction of the work you actually do yourself, so papers like this are a good indication of what kind of work the Research Assistants under the prof's wings are actually doing.
rank the schools by which have the most and most desirable of such profs. order your application efforts, and your final decision accordingly.
happy hunting!
:jeff
This is tempting to think. Certainly a starting salary for a graduate degree is higher than the starting salary for a bachelor's degree. However, that's not really a fair comparison. More interesting than that is taking into account how long it takes to get a Masters or a Ph.D. And whether or not that time is better spent gaining experience.
I've been in the work place for 7 years with a bachelor's degree in CS. After only 3 years in the market place, my salary had doubled. By that point, I had already surpassed the starting salary of some of the candidates with Ph.D's.
In my current position where I am responsible for hiring people, I can tell you that real world experience counts for a *LOT* more than education. In fact, we look for competance in the areas that we need much more than educational background. Some of the most successful people I've hired have no college degree at all.
Now, if you're thinking that employees with graduate degrees advance their salaries quicker than those without, you'd better think again. Once you're in the salary pool, you are competing with everyone around you based on your performance only . The helps you with two things and only two things:
To get the interview - but experience counts for more than education.
To help determine the starting salary of your first job out of school.
I'm sorry to say this, but the only thing that I can think of that a Masters or a Ph.D are good for are going into teaching. Currently, IT is experiencing negative unemployment. Until that changes, experience will count for more than education.
Key to financial independence: Spend less than you earn. Save and invest the difference. Do it for a long time.
If you're looking into gradshool, there are basically three things you want to consider
1) Are you going to get in.
2) What is their reputation in the field
3) Which professor do you want to work with.
#3 is VERY important if you're doing a Ph.D., and less important in some schools (like mine (Ga Tech)) if you're going for a masters.
MIT, CMU, Berkley all have great reputations in CS as gradschools, however many of the profs at those schools have been doing their thing for a long time- you might lose a bit of the flexibility that you'd get from another "lesser" institution. Ga Tech is currently ranked somewhere around 12th in CS as a whole, but it contains the GVU (Graphics Visualization + Usability), which is known throughout the industry (its a very good rep).
Now, I'm an undergrad, so I havn't had nearly as much firsthand expierene as the gradstudents here, however I've been working with them since I got here (I've been doing research though I'm an undergrad) as I'm on the gradschool track.
So, get to know the profs at each of the schools.. reading a few of their papers is HIGHLY recommended- it gives you some ideas on what you might want to do, and it looks impressive on the application when you know what you want to do, and with whom (this is what the profs say. Trust it. =) ).
Best of luck, and I'll be joining you soon!!
Read the rabbit story - it tells all about grad school - I know - I am in CS grad school right now. http://www.ics.uci.edu/~gajski/rabbitJoke.html
CMU all the way.
awc
Do any of your EE projects involve blow driers?
-awc
Umm, (not positive about it but) what about AFS? And Cyrus IMAP? I recall seeing CMU comments throughout the bootp clients that I've used. I think that if you look a little bit, you'll see an awful lot of stuff used every day has come out of CMU.
-awc
Heh. I met the guy in charge of the autonomous driving project last year. He's really cool, and some of the other things that they are working on there are absolutely incredible.
-awc
$ fortune -m cosine
e^U du dx
e^x dx
cosine, secant, tangent, sine
3.14159...
--
Repton.
Repton.
They say that only an experienced wizard can do the tengu shuffle.
Geez I'll post non-AC. Why don't you flamers do so. Purdue Undergrad upperclassman here. So this is really kinda off-topic, my viewpoint for freshmen candidates i guess.
1. Purdue undergrad is the easiest to get in. I'm a transfer student, i know all they ask is 2.0 GPA. Not so easy to get out, tho. class sizes shrink dramatically. My first class shrank from 220+ to ~25 people coming to class. Second one shrank from 60+ to 35. Those are not even THE weed out course.
2. Purdue Campus is terribly boring, that's world famous. A macho campus, too. If you have very little self control, then Purdue is perfect, the most interesting thing to do here is studying.
3. Purdue allows too many freshmen so the professor/student ratio is really bad. But I Never have problem getting personal attention from profs. Our profs are good. Some might be a bit strange, but they are good.
4. As an undergrad it is EXTREMELY easy to find research in here.
5. The campus is rather computer-illiterate. There's good and bad side about it.
6. we do have very good relations with the industry. Our Deparment really look very hard for our scholarship.
7. The TA's are, well, not very good. ok. bad. nothing personal,(after all i've been one)
8. The department has a very small pool of active people. Sure it is big but the people pool shrinks so damn fast that you will know each other soon enough.
**9. If you are a Pepsi drinker, you are in trouble; we only have coke and Starbucks.
10. you will be asked to code your butt out. Just like in any other respectable CS departments.
11. Purdue CS has the best whinners in the fresh/soph pool. They are all gone by your junior year.
12. the most unbearable thing about the campus, for me, is the conservative/christian atomosphere, racial segregation, and so on. I drive back to Chicago when i want to party.
13. one lovable thing is the CS department's "Pizza Culture." No Pizza, no party. We are pizza machines.
Over all, i think Purdue is great fresh start-over school for people who have stumbled in the past with a low GPA or whatever test score. But if you ain't prepared to be challenged, don't come.
IMO, there's little reason to get a PHD if you don't want to do research and/or teach at the college level. If you do want a PHD, be warned it's lots of years of hard work for very little pay (when I was in school, TAs & RAs were paid on a scale that capped out under $13k/year!). You really need to be a True Believer to go this route.
Also, you might go into industry and work on a graduate degree part time. But then you have the problem of coding 40 hours a week (probably more, unless you're very lucky) before even starting school work -- it's easy to get burned out fast.
Bottom line: your career (if it's going to be successful long-term) is going to be a process of continuing education, and an MS is a good way to start off, even though it does mean a few more years before you have a salary that doesn't suck.
150 Opening BINARY mode data connection for slashdot.sig (129323052 bytes).
And obviously I don't deserve it based on ;-)
grammar and memory...
I meant to say "from THE University of
Southern California."
My Ph.D. is from University of Southern Carolina.
But if you are planning on a Ph.D. (Most of the
top schools will actually pay you to geta Ph.D.
getting funding at the masters level is usually
improbably or impossible.) My advice would be
that your selection of advisor is as, or more,
important than your selection of school.
You can go to the best school with the fanciest
labs but if the professor in charge of the
lab isn't your advisor chances are you aren't
ever going to see that lab except for maybe
course work.
Your advisor also determines the topics of
research that you work on. You'll start by
doing work related to their interest, not yours
(Its what you get paid for.) This will ultimately
lead to your Dissertation topic.
So the advisor has an extreme amount of inffluence
on what you have access to and what your topics
will be.
I would also suggest trying to pick an advisor
that already has tenure. I didn't and my
advisor picked up in the middle of my dissertation
and switched schools leaving me without a lot of
fundamental support. And the school didn't have
any protocol for what to do with a fifth year
grad. student with a thesis topic and no advisor
so I felt I was left out to dry. I think a
professor with tenure and a well established lab
is less likely to leave you hanging.
my $0.02
I'm actually in the same boat as you. I am going back to school in the Spring to pursue a graduate degree in Computer Science. I just recently got my EE degree but my computer alterego seems to be more than I can handle.
In regards to your inquiry, everyone wants to go to MIT or Caltech but what you really should be asking is will this help me in the job market; a subject I get mixed replies about. I've read that companies want young, brilliant miracle workers they can mold into commercial drones who will preach the Microsoft pragma. Others say the more education the better which will allow you to start out in a Technical Lead position. If being practical is not in the cards for you disregard this comment.
In respons to all this stuff about American places, how about the Universities of Glasgow and Edinburgh? Beautiful cities that you're not going to get shot in, with beautiful old universities, great departments, and a good education.
Okay, so I do go to Glasgow Uni =o)
Try Univ Maryland, Baltimore County in Catonsville , Maryland. I am an under-grad there, and from what I hear, we are on par with MIT. Even UMCP (College Park, also just known as Univ Maryland) admits UMBC has a better program and advises Comp Sci people go there. Plus they bought the world's best chess team!
Enough random advice. Here are some books and URLs:
As usual, I've run on and on, so I'll close with a wish for your success and one last thought: grad school was the most fun thing I ever did!
The University of Pittsburgh has one of the oldest computer science departments in the US, and has both excellent grad and undergrad programs. Plus, Pitt students can take classes from CMU, and vice versa.
Hail to Pitt!
Bistromath
Disclaimer: I'm arguably biased, being at CMU...
Seriously. While the oft-quoted top four (MIT, Stanford, CMU, Berkeley) are all good, it depends upon your intended focus. In certain areas, other schools are also superb choices. Graphics? From what I hear, GA Tech ain't bad at that... And so forth...
It also depends on peculiarities, like: Do you mind having to TA? Do you want to be right inside a major city? And so forth.
Only the dead have seen the end of war.
Warning:
At some schools, you apply as a graduate student and only after admissions do you attempt Ph.D. candidacy status; essentially, you have the option of going for either when you arrive.
At others, you're admitted directly to a specific M.S. or Ph.D. program, and switching may be problematic (although Ph.D. -> M.S. can perhaps be done if you meet requirements and specifically petition for it...).
M.S. programs are far less likely to guarantee funding for you, while some Ph.D. programs will (for everybody). OTOH, you might be there for 6-7 years in the latter case...
The job doors opened up by the degrees may vary.
Keep that all in mind if you're not sure. You may not want to burn your bridges...
Only the dead have seen the end of war.
Choose the school that is strong in your field of- ----------------------
interest. A first tier school may definitely be
nice, but it is not necessary.
-------------------------------------
I asked the same question in 1978. The answer depends on what you want to do with it. If you want to be a propeller-head PHD and fight the academic wars, then go for a first tier school. If (like me) you're just interested in getting a little bit of an edge on your contemporaries, then it really doesn't frigging matter. Yes, I have an MS in CS. That's as far as I went, and as far as I wanted to go. You see, academics and The Patronage System drive me nuts. If I have to suck someone's dick to get somewhere, I at least want to be well paid. In Academia, they expect you to suck dick...and be grateful for the "learning experience." Expecially if your Patron, er, "advisor" is a Big Name. Be prepared to have some of your best work have his name attached to it.
Don't get me wrong. It ain't much better in the Real World. But at least you'll be driving a late model car instead of a 1983 Nova. All depends on your value system.
Good Luck
"If god did not exist, it would be necessary to invent him" --Voltaire
You guys are frickin crazy ! UCSD is the greatest.
Univeristy of Waterloo baby...
produce the top CS.cats in the world...
and the women are hot. meow.
And I here they're getting a new building to replace the two WW I era ones they have now!
And if you go to Pitt, join The Zets!
As another poster said, you will want to go to a school that has a group that is doing interesting work in an area that you're excited about. This is true, but there are a lot of other factors.
It is important to not only be excited about the reserach, but also to get along with the professor(s) who run the group. Many professors are not good managers - it's important to realize this early on. A big department can be an advantage since there's a better chance that there are other profs doing research that you're interested in if you decide that you can't work with the advisor with whom you originally wanted to work.
If you have two years of undergrad study left, there is a lot you can do to help figure out what you want to do in grad school, and to increase your chances of getting in. First of all, try to take a couple of graduate level CS classes in areas that you're interested in. See if you like them, and if you're comfortable with the workload. Second, you should definitely try to work for a professor in your current department. There are two ways that undergrads can be compensated for their work: money and credit hours. You will end up doing grunt work for a research group, but it's a great way to get to know the professors and grad students, and to start to understand how research works.
Read _A PhD is Not Enough_ by Peter Feibelman.
The cost of applying to a grad school is the application fee plus the time it takes to fill out the forms, have GREs and transcripts sent, get letters of recommendation, etc. Apply to as many schools as possible, given these costs. I know a little bit about how admission committees work, and there is a fair amount of randomness - hedge your bets.
Think about why you want to go to grad school. Remember that after a few years of grad school, your stock option loaded ex-undergrad-classmates will be laughing at you.
This is a good time to be applying to grad school in CS. The job market is great, so grad schools are competing for students. Will this still be true in two years? Probably so, but keep an eye out.
After you get accepted at a number of schools, talk to your professors about the schools, and talk on the phone or email professors at the other schools. Visit the ones whose offers you are seriously considering accepting. Go out to lunch with some grad students there, and learn some dirt about the department. It would be a mistake to enter a department without visiting first.
Be sure to read Olin Shivers's advice to graduate students. Also check out my reading list for computer scientists.
I agree -- it is probably best to decide based on what SPECIFICALLY you want to do. I know that in general, as a starting point the top schools are MIT, Stanford, UC Berkeley, and UIUC (no particular order).
I go to UCB, undergrad, and I haven't spoken to too many EECS grad students, but those I have talked to are very excited about the resources the school has. The faculty at UCB (and in collaboration with some other good schools) are responsible for things like RISC, RAID, and distributed web servers. Kinda neat. =)
--Gabe
Before I start my rant, here's the link for the CS department at Purdue University:
http://www.cs.purdue.edu/
Sounds like you were one of the people who couldn't cut the mustard in CS at Purdue, eh? Don't take too much offense, I got dropped from CS, as well as a few of my friends.
Purdue isn't THAT big, either. Geographically speaking, it's a fairly compact campus! There are quite a few students, but from my personal experience it isn't too difficult to get ahold of your profs during their office hours. They will remember you if you make the attempt to talk to them.
Lastly, thank you for your opinion on how Purdue's campus looks! I've been to a few other universities, and I have to say that although Purdue's brick buildings do start to look the same after a while, the campus is well laid out and the grounds crew does a decent job of keeping it clean.
I am no longer a student at Purdue, but I still live in Lafayette and work in West Lafayette, for Purdue University.
Col., I've thinking about grad school, too. Since I live in rural America, I've been looking at non-traditional programs, i.e. computer-based with limited on-site requirements.
The University of Pheonix has some pretty compelling curriculums (spcifically, MBA / Technology Management and MS / MIS), and based on my research they seem to be well accredited and respected.
gnerd
*to each his own*
-raj jr
ps: the smallest bit of 'non-advice' on this page
Don't forget to check out Cornell. It has great (and very highly ranked) CS and engineering departments. However, for a top 5 school has gets
surprisingly little attention. Go to the best school you get into (calibrated by your field).
Give me a break! Industry is good as turning out toys, but when was the last time it produced something truly profound? And I don't mean WYSIWIG. I mean something at the level of Turing's results or Von Neumann's cellular automata, or Herbert Simon first AI program, or Knuth's Art of Scientific Computing or Holland's genetic algorithms or Koza's genetic programming....
And don't cite Bell Labs and similar institutions at IBM. They are far more tied to academia than industry. I'm referring to the great commercial unwashed. Institutions which are confronted by the market economy and its emphasis on profit over quality.
And while we're on the subject of technology instead of big think, I think it is clear that LINUX could not have been developed without the help of many universities. Many an undergrad, grad, and professor were allowed the time to work on LINUX. This is a luxury few in industry have.
I completely agree with your judgment of American "Values." I would argue, however, that elite American universities are some of the few places in American society where excellence (instead of profit) plays an important part. The strong presence of European, Indian and Chinese faculty and students is one of the key reasons for this--:)
When excellence is an issue, one is by definition an elitist. Some work is better than other. And some people smarter than others.
I went to a graduate school to avoid getting a real job and ended up putting myself in a big hole carreer-wise. Make up your mind what kind of job you want and what field you like. Talk to engineers in that field in that position and ask them what path you should take. Knowledge is power here: talk to as many people as you can. For instance: if you are interested in DSP applications, UT Austin has a big pipeline to TI. Whether or not that school has a good "reputation" may not be important for you. Find out what schools have good recruitment connections with what companies. Good luck!
www.mcs.drexel.edu
[ truth-in-advertising: I'm a graduate student in CS at the University
h tml
:-) Visit as many schools as you can. The grad schools are
of Washington (in Seattle, WA). I've been here two years, and i was in
grad school at UC-Berkeley for a year before that. The following is
random, biased opinion based only on going through the
grad-school-picking exercise twice. BTW, i love both the University of Washington and UC-Berkeley. ]
o First, read this page on "Choosing Graduate School in Computer Science":
http://www.cs.washington.edu/homes/rap/grads.html
This page was put together by Rachel Pottinger, also at the University of
Washington.
o Next, find a list of CS grad programs. usnews.com is one place to
start. Another is:
http://www.cra.org/statistics/nrcstudy2/rankcs.
o Surf the web to find out about the programs that seem most
interesting to you, based at first on their location and ranking. Look
at what kind of research is going on, how big the department is, and
for faculty whose interests match your own. Be aware that research
project web sites are often a year or two out of date; they tend to be
made at the beginning of research projects and fall out of date as the
research progresses. The list of publications on the project home page
or grad student home pages tends to be far more indicative of what
(and how much) is going on than the rhetoric at the top of project
home pages.
o You don't need to necessarily shoot for the very top programs, but
from the schools that seem interesting to you, pick a dozen or so and
write for applications in September of your senior year.
o Pick a set of at least 5-6 of the best schools that you think you
have a shot at. Rankings aren't everything, but for better or worse,
departmental reputations are real, and you do want smart, fun
officemates with whom to collaborate and hang out, a good advisor that
knows something about how to do research, and a department with lots
of interesting things going on.
o In December, apply to at least 5-6 schools. You never know how many
you'll get into, or which ones they'll be, so apply to a few you
aren't sure if you'll get into; you may be pleasantly surprised. When
possible, you may want to wait until fall semester/quarter is over
before applying, since doing the applications can be time
consuming. But remember to get transcripts and recommendations done in
time.
o In February, March, and April you should get several admission
offers, and hopefully a rejection letter or two, if you picked schools
well!
picking up the tab, so you may as well take advantage of it! Even for
schools where you think there's only a small chance you'd end up
there, you'll learn a lot about grad school and hot research topics by
talking with grad students and professors. These are going to be
colleagues that you'll be seeing at conferences and whose papers
you'll be reading; visiting grad schools is a great way to meet them
and get 30 minutes of great one-on-one time with them.
o Pick the school where you feel most at home; the school where you
hit it off with at least a few professors doing research you think is
interesting, you get along with the grad students, you like the
campus, and you like the city where the campus is located. Remember,
you may be there for 5-7 years if you go for a PhD, so you want to
know that you'll enjoy the whole environment for a long period of
time.
o When picking schools, don't sweat the money stuff. Nearly all decent
grad students at nearly all decent CS departments have no problems
finding funding, be it with TA-ships or research assistantships. You
may have to TA your first year or longer, but that's a good experience
in and of itself.
o Remember that in the end, the school only matters so much. One thing
i learned from transferring between grad schools is that what you do
and how you spend your time has far more to do with your grad school
experience than where you go. You'll want to pick a grad program with
good people and good tools, but in the end, it's up to you!
Hope that helps,
Neal
The right way to plan graduate school is NOT to pick a school and try to fit in but rather to pick the professor/project you wish to work with and then choose the school where s/he/it is.
I know that UT was probably not even in your mind, but I have heard really good things about the Comp Sci program there, and it's supposed to be one of the best in the nation.
I agree... UT has a nice CS program, and there are a lot of good job opportunities in the area.
this guy seems to be talking out of his _ss....hey accept it man!...in the longer run the graduate degree does pay much much more than what a bachelor could ever think of..and who says that a MS or PhD doesnt know how to solve coding problems and other technical shit..u think only BS guys spend nites on MFC, QT and pico screens! ..wake up pal!
Just a reminder, the people who started the study of computational complexity theory are still here at Cornell University. How can you possibly make a mistake of putting those second-rated schools ahead of Cornell? Where do you get these damn information from, anyway? US News and World Report!? Or are you too inspired by Carl Sagan and start smoking weed these days? (by the way, Sagan is also from Cornell)
You should be searching for a professor you
want to work with and do research under.
Read up on what profs are doing what in your
field of interest.
If you used a style of writing that wasn't so lazy then people might have less difficulty understanding you. Writing in a manner similar to the way you speak isn't a good idea: people speak English differently all over the word (normally more in line with the British than Americans), and a lot of detail that is conveyed in speech is lost. But I don't need to tell you that.
;)
As an American - a supposition on my part - you don't have any right to tell somebody how to speak English. English being the language of the English, the people from England. See the Oxford English Dictionary (British Edition) for any queries concerning the language, including pronunciation.
Blime' guv'nor! I'm a pompous twat tonight, in-I?!
(Biases: I spent my undergraduate and graduate years at one of the big-name
schools, getting a PhD in C.S. from MIT about 3 years ago.)
If you're interested in cutting-edge computer science, I'd encourage you to try
for one of the big-name schools. Here's why:
Graduate study, at least at the PhD level, is much less about classwork than
about research. Often for undergraduate classwork the same textbooks and
curricula are used in many schools, and a smart and diligent student can learn
as well at one place as another. But graduate research is different.
Most PhD students spend years exploring different areas trying to find a niche
that they enjoy and excel in. It's harder than you think: there are so many
avenues for exploration in computer science, and so many people working in the
field, that it's easy to end up working on problems that famous people solved 50
years ago, or that to be properly solved demand skills you don't have, or that
are so obviously the next step that every Tom, Dick and Harry will be writing
exactly the same code as you. It takes time to become aware of this and to
learn to judge what work is worthy of sustained investigation.
In my opinion, the biggest advantage that top-tier schools offer is that the
people around you, professors and (more importantly) students, provide examples
of what kinds of problems are worth pursuing, and help evaluate your own ideas.
At smaller schools, or schools where few students are capable or driven enough
to participate in leading research, you're much less likely to find excited
people who can fairly evaluate your own ideas, and who can explicitly or
implicitly guide you to interesting topics. (For this reason, when choosing
schools I would pay more attention to the caliber and interests of your fellow
students than to measures like the breadth of class offerings.)
The difference between different schools' students is often glaringly apparent
at conferences. Relative to the students from the big-name schools, students
from the small-name schools tend to submit work that isn't bad per se, but is
often out of date or subsumed by more general results others have produced. I
feel this is more a reflection of a poor environment around them than their own
capabilities.
Best of chances, regardless.
On a sidenote, does anyone have any experience
with undergraduate CS studies in Edinburgh?
(i.e. University of Edinburgh or University of
Heriot-Watt). I'm planning on studying there
from next year, so if anyone has any comments/experiences
from there, I'd appreciate if they reply'd or mail me.
Øystein Eftevaag
-------
Don't fear the penguins.
Don't automatically rule out MIT, CMU or others. If you're going to be spending about 400 bucks on applications, you might as well try for a couple 1st tier schools.
If you're a "good" undergraduate student, there's no reason why you wouldn't be accepted in schools ranked from 50 down to 20...you have a slightly better shot if you're going for a Ph.D. and you're in a better position to get funded.
Don't be fooled by prestige, however. Try to find a school that excels in your interest area. For example, Purdue is number one in security (or was when I visited), but has virtually nothing in AI. Even among subfields, such as AI, you have to look for schools that have specifically what you want, such as natural language processing, robotics, etc.
If you're not sure what you want to do, then by all means, take geography into account. If you like living in a large city, then it doesn't really matter if you're in a great program if you're surrounded by cow pastures (ahem Purdue). Also consider the requirements for the program, especially qualifiers. Find out how many you have to pass, and how many opportunities you have.
Remember, once you get into grad school, you can always transfer, and if your grades are good enough, you may be able to get into a better school (if you don't start out in one already).
A Doctoral degree can be worthwhile for other than financial reasons.
You may want to think about trying for one to see if you can do it - to see whether you made of the stuff that can make a "significant contribution to the field".
You may want to think about trying for one because you have a topic you passionately believe in and want a chance to show the world you're right.
Don't automatically rule a PhD out because you could probably make more money taking your B.S. (B.A. or B.Sc.) to industry directly.
S.
As a PhD student in the Purdue CS department, I can testify that the Purdue CS department is pretty decent.
While Purdue as a whole is huge, the CS graduate portion is reasonably cozy. We have on the order of 30 PhD students, and 150 Masters students.
As the oldest CS PhD granting department, we have a sizeable presence in the Numerical Analysis field, and in other mathematics/theory areas. Purdue CS's other areas of strength include security, (inter)networking, databases, and parallel computing. However, if you are not interested in one of these general areas, you should probably look elsewhere.
I agree strongly with the other posts that advise prospective grad students to examine carefully each school's strong research areas; also, definately try to correspond with faculty whose work interests you -- there's really no other way to reliably judge whether or not you'll like the research there.
I came to Purdue without looking closely into the CS department's research areas, assuming that a well-known school at the top of the second-tier would have cool research that interested me. Fortunately, I lucked out, and stumbled across truly fascinating work with a great professor. But many of the friends I started here with have not been nearly as lucky.
The campus is compact, as convenient as can be expected for 37,000 students, and quite beautiful if you like red brick and elaborate fountains.
As for there being "nothing to do here," I will agree that the town is somewhat sedate. But if you're genuinely interested in graduate study in the Computer Sciences, you won't have much time for tangential distractions in the next couple of years anyway.
The Purdue CS department is much better at the graduate school level.
Personally, having taught at the Purdue CS undergrad level, I would not recommend the undergraduate program here. Class sizes are absurdly large, and still growing. While there are many bright, talented undergraduates here, they are far outnumbered by lackluster placeholders, looking for nothing more than a place to hide out from the Real World(tm) for a couple of years.
As for the graduate level, there are a variety of really good professors here. (They, too, are outnumbered by lackluster Elder Gods of FORTRAN, but they are here.) If you can find a professor to work with whose research really interests you, you're in business wherever s/he is.
Thank you for mentioning Michigan. Again it will sound like a plug because I did get my MS there but I found them to be strong on a variety of subjects. Particularly OS/Distributed Systems, Algorithims, and Architecture. The only area I felt was week was in AI though they had some interesting cross disciplinary programs that were psuedo AI. I would strongly recommend at least looking into their programs.