OS X has a design philosophy of simplicity for the average user. Putting commom settings into guis, and having the more complex ones in terminal. Homebrew follows this. Its great for installing, removing, and searching, but if you want to do something complex have fun.
Desktop Linux distros caters to the power user. Its idea is why have lots of GUIs which hide the 'advanced configuration', and instead uses command line. Lots of UX design has gone into these commands to insure that they remain simple enough.
Finally windows on the other hand decided to avoid the terminal at all costs. They decided to put every single setting into a gui with little consideration on what the 'average' user will use.
Description: simple and unified package management for Debian Wajig is a single commandline wrapper around apt, apt-cache, dpkg, /etc/init.d scripts and more, intended to be easy to use and providing extensive documentation for all of its functions.
The output of a `brew install` command is much easier to parse than the output of a `apt-get install` command. So is the output of a `--dry-run`.
The UI for dependency conflict resolution in `apt-get` is bizarre. And the one in `aptitude` isn't much better.
I also like that brew is built on git. This is part of the UI for managing versions (the other being the semi-undocumented and unpublicized `brew switch` command), and `brew` is a lot more understanding of being able to switch between versions of packages on the fly.
EDIT:
It seems that people think I meant "GUI" when I said UI. I strictly meant User Interface; in this case, the command line is the front-end to the user interface. I feel that homebrew has a better CLI than things like apt-get or pacman.