From my head:
Joomla!(yes, with the exclamation mark) is an open source, PHP-based, CMS (Content Management System). It was created from Mambo, another CMS. I personally use Drupal, but it's always your choice.
Please read above, Joomla! is a CMS (Content Management System), it is basically an already made website engine for you, you don't have to do the coding, just login to the admin panel and change things the way you like.