Community Builder
If we need more information from a registered user than the standard Joomla! fields (name, user name, password, and email) we use Community Builder. It allows you to create your own fields that the user can fill in (age, gender, interests, etc). It looks a bit clunky out of the box, but with some work it looks ok. It is a free extension, and offers a plethora of free and paid plug-ins.