No foot-long human hair in this house.
QED. While there are a proliferation of highly competent vacuums that can cope with pretty much anything else, it seems that removal of long hair from carpet is an engineering problem that's yet to be solved satisfactorily.
Cylinders can't do it, because suction alone is insufficient to remove long hair from carpet. Airflow-driven rollers (including the otherwise excellent Zipp Brush) can't do it, because as soon as they begin to clog, they stall and become useless.
Uprights with powered rollers will do an admirable job of winding the hair around the roller, with sufficient force to break the hair and prevent jams, so there's no major loss of performance. This gets the carpet clean, but leaves you with a roller wound in hair to unclog.
Most uprights only expect you to remove the roller infrequently, for drive belt replacement. This often requires the cleaner be lain on its side, and perhaps (as in the case of the Dysons we've had) screws removed to gain access to the roller. This is a complete arse when you have to do it on average every other hoovering session. I chose the Kirby not because it's particularly innovative, but because its classic design means the entire roller unit is easily removed and worked on separately, without need for tools (other than something sharp to cut the hair).