On the last point, my experience is in CS, but it's worked similarly in other departments where I know PhD students and/or profs. When a professor at the places I've been hires a research assistant on grant money, the grant account is charged stipend + tuition (plus overhead, but that's usually already been taken out up front). It might be a reduced tuition, e.g. at state universities it's common to give an out-of-state tuition waiver so the grant is only charged the in-state graduate tuition rate, even for out-of-state students. But that's often still in the $10-20k range.
If the student isn't grant-funded, then yes, the prof isn't expected to pay them anything: the department will cover their tuition, and they'll work as a TA to earn their stipend. But at R1 universities it's nowadays expected that profs will fund at least a substantial proportion of their PhD students each year on RAships paid out of grant money.
The difference is not always obvious from the student perspective, though: when departments say they guarantee funding for 3 years, they just mean that somehow the student will be funded each year, not that the department will pick up the funding each year. The goal is to get the profs to pay for as much as possible out of grants, with departmental internal funding as a backstop.
Thanks for that info, I wasn't aware of how PhDs worked in CS.
It sounds very similar to Bio with the exception that the department typically has money for their students coming in(the best schools have training grants from NIH which cover incoming students). Tuition is always covered and is only up to the PI to pay when the student's departmental money runs out, but in practice, the dept. picks it up if the student TAs.
At good schools, students are encouraged (and in some cases, mandated) to submit a grant to NIH which covers their tuition/stipend and provides some travel money for conferences. That grant is really difficult to get, so most 3-6th year students are covered under their PIs grant, or they teach to cover tuition.
Ah interesting, I wasn't aware of that. Doing some googling it seems to be a thing specific to bio and related areas, related to how NIH funding is differently structured from NSF funding. The NSF doesn't really have the equivalent of these training grants, but is more structured around 3-year projects, so students are hired onto specific projects as research assistants, or TA in years when no project money is available. Project budgets always include requests for money to support grad students, so the NSF indirectly funds a lot of training, but it's routed through the PIs proposing projects, rather than allocated at the school or department level. There's also quite a bit of DARPA funding, which is even more project-driven.
Hey, sorry I missed this. Actually NSF does have training funds http://www.nsf.gov/funding/pgm_summ.jsp?pims_id=6201 . Be sure to tell your friends about this as it has to be submitted within the first 2 years of grad school (whereas the NIH grant can be applied for at anytime). It is actually much more generous than the NIH grant(stipend and research $), and is quicker to apply for.
ALso, and I think this may apply to CS people, there are dissertation grants which give a small amount of cash (when I applied it was ~$15k) to improve a dissertation project.
NSF has some really nice programs out there. I've been funded by them on 2 different occasions and I really like what they support.